hyzp_ybqx-Commit178:优化,已经实现违章视频的循环播放
This commit is contained in:
@@ -2078,6 +2078,7 @@ Future playUrl({@required int index, String url, BuildContext context}) {
|
||||
id: index + 1,
|
||||
dwip: listDwinfoGetList2[index]['dwip'],
|
||||
url: urlnew,
|
||||
urlType: 'rtmp',
|
||||
title: '点位视频\n${(index + 1)}、${listDwinfoGetList2[index]['dwmc']}',
|
||||
)));
|
||||
|
||||
|
||||
@@ -22,17 +22,19 @@ const _kControlViewTypes = [kControlViewTypeDefault, kControlViewTypeWithout];
|
||||
class SuperPlayerPage extends StatefulWidget {
|
||||
SuperPlayerPage(
|
||||
{@required this.url,
|
||||
this.urlType = 'mp4', // 视频类型:mp4,rtmp
|
||||
this.id = -2, // 播放点位视频的点位编号,-2 表示播放违章视频
|
||||
this.dwip = '', // 点位IP,用于点位视频控制球机方向
|
||||
this.loop = 1,
|
||||
this.title = 'Tencent Player',
|
||||
Key key})
|
||||
: super(key: key);
|
||||
String dwip;
|
||||
String url;
|
||||
String title;
|
||||
int loop; //设置播放循环,默认播放器的循环次数是1, 即不循环播放。如果设置循环次数0,表示无限循环。
|
||||
String urlType;
|
||||
int id;
|
||||
String dwip;
|
||||
int loop; //设置播放循环,默认播放器的循环次数是1, 即不循环播放。如果设置循环次数0,表示无限循环。
|
||||
String title;
|
||||
|
||||
@override
|
||||
_SuperPlayerPageState createState() => _SuperPlayerPageState();
|
||||
@@ -79,13 +81,13 @@ class _SuperPlayerPageState extends State<SuperPlayerPage> with SuperPlayerListe
|
||||
print('mounted = ${mounted}');
|
||||
|
||||
await _playerController.setLoop(widget.loop); // 0无限循环,1循环一次,2循环两次,以此类推
|
||||
if (widget.loop == 0) {
|
||||
await _playerController.setOption(FijkOption.playerCategory, "mediacodec-all-videos", 1);
|
||||
await _playerController.setOption(FijkOption.hostCategory, "enable-snapshot", 1);
|
||||
await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1);
|
||||
await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1);
|
||||
await _playerController.setOption(FijkOption.hostCategory, "enable-accurate-seek", 1);
|
||||
} else {
|
||||
// 播放“rmtp”等网络视频设置
|
||||
if (widget.urlType != 'mp4') {
|
||||
/// fijkplayer播放点位视频延迟比较大优化-OK,改完后约1秒钟就能打开 - Being
|
||||
// 是否开启预缓冲,一般直播项目会开启,达到秒开的效果,不过带来了播放丢帧卡顿的体验
|
||||
await _playerController.setOption(FijkOption.playerCategory, "packet-buffering", 0);
|
||||
@@ -102,8 +104,8 @@ class _SuperPlayerPageState extends State<SuperPlayerPage> with SuperPlayerListe
|
||||
|
||||
/// fijkplayer播放点位视频延迟比较大优化-OK,改完后半秒钟就能打开 - End
|
||||
|
||||
await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1);
|
||||
await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1);
|
||||
// await _playerController.setOption(FijkOption.hostCategory, "request-screen-on", 1);
|
||||
// await _playerController.setOption(FijkOption.hostCategory, "request-audio-focus", 1);
|
||||
}
|
||||
|
||||
await _playerController.setDataSource(widget.url, autoPlay: true).catchError((e) {
|
||||
|
||||
Reference in New Issue
Block a user