hyzp_ybqx-Commit178:优化,已经实现违章视频的循环播放

master
WinUser01 3 years ago
parent b6a6d474d9
commit c38bfd7224

@ -2078,6 +2078,7 @@ Future playUrl({@required int index, String url, BuildContext context}) {
id: index + 1, id: index + 1,
dwip: listDwinfoGetList2[index]['dwip'], dwip: listDwinfoGetList2[index]['dwip'],
url: urlnew, url: urlnew,
urlType: 'rtmp',
title: '点位视频\n${(index + 1)}${listDwinfoGetList2[index]['dwmc']}', title: '点位视频\n${(index + 1)}${listDwinfoGetList2[index]['dwmc']}',
))); )));

@ -22,17 +22,19 @@ const _kControlViewTypes = [kControlViewTypeDefault, kControlViewTypeWithout];
class SuperPlayerPage extends StatefulWidget { class SuperPlayerPage extends StatefulWidget {
SuperPlayerPage( SuperPlayerPage(
{@required this.url, {@required this.url,
this.urlType = 'mp4', // mp4,rtmp
this.id = -2, // -2 this.id = -2, // -2
this.dwip = '', // IP this.dwip = '', // IP
this.loop = 1, this.loop = 1,
this.title = 'Tencent Player', this.title = 'Tencent Player',
Key key}) Key key})
: super(key: key); : super(key: key);
String dwip;
String url; String url;
String title; String urlType;
int loop; //1 0
int id; int id;
String dwip;
int loop; //1 0
String title;
@override @override
_SuperPlayerPageState createState() => _SuperPlayerPageState(); _SuperPlayerPageState createState() => _SuperPlayerPageState();
@ -79,13 +81,13 @@ class _SuperPlayerPageState extends State<SuperPlayerPage> with SuperPlayerListe
print('mounted = ${mounted}'); print('mounted = ${mounted}');
await _playerController.setLoop(widget.loop); // 012 await _playerController.setLoop(widget.loop); // 012
if (widget.loop == 0) { await _playerController.setOption(FijkOption.playerCategory, "mediacodec-all-videos", 1);
await _playerController.setOption(FijkOption.playerCategory, "mediacodec-all-videos", 1); await _playerController.setOption(FijkOption.hostCategory, "enable-snapshot", 1);
await _playerController.setOption(FijkOption.hostCategory, "enable-snapshot", 1); await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1);
await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1); await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1);
await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1); await _playerController.setOption(FijkOption.hostCategory, "enable-accurate-seek", 1);
await _playerController.setOption(FijkOption.hostCategory, "enable-accurate-seek", 1); // rmtp
} else { if (widget.urlType != 'mp4') {
/// fijkplayer-OK1 - Being /// fijkplayer-OK1 - Being
// //
await _playerController.setOption(FijkOption.playerCategory, "packet-buffering", 0); await _playerController.setOption(FijkOption.playerCategory, "packet-buffering", 0);
@ -102,8 +104,8 @@ class _SuperPlayerPageState extends State<SuperPlayerPage> with SuperPlayerListe
/// fijkplayer-OK - End /// fijkplayer-OK - End
await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1); // await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1);
await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1); // await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1);
} }
await _playerController.setDataSource(widget.url, autoPlay: true).catchError((e) { await _playerController.setDataSource(widget.url, autoPlay: true).catchError((e) {

Loading…
Cancel
Save