当前位置: 首页 > news >正文

企业网站建设重庆用电脑做服务器的建一个网站

企业网站建设重庆,用电脑做服务器的建一个网站,做网站的业务分析,常熟网站建设公司fijkplayer flutter 直播流播放 fijkplayer 是 ijkplayer 的 Flutter 封装#xff0c; 是一款支持 android 和 iOS 的 Flutter 媒体播放器插件#xff0c; 由 ijkplayer 底层驱动。 通过纹理#xff08;Texture#xff09;接入播放器视频渲染到 Flutter 中。 前言 目前使用…fijkplayer flutter 直播流播放 fijkplayer 是 ijkplayer 的 Flutter 封装 是一款支持 android 和 iOS 的 Flutter 媒体播放器插件 由 ijkplayer 底层驱动。 通过纹理Texture接入播放器视频渲染到 Flutter 中。 前言 目前使用的服务端是 srs_stack 我的本地环境 [✓] Flutter (Channel stable, 3.13.1, on macOS 13.6.1 22G313 darwin-x64, locale zh-Hans-CN) • Flutter version 3.13.1 on channel stable at /Users/wangq/flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision e1e47221e8 (4 months ago), 2023-08-22 21:43:18 -0700 • Engine revision b20183e040 • Dart version 3.1.0 • DevTools version 2.25.0 • Pub download mirror https://pub.flutter-io.cn • Flutter download mirror https://storage.flutter-io.cn 加入依赖 pubspec.yaml中加入依赖 - 官方地址 fijkplayer: ^0.11.0配置(解决延迟) 连上视频流可能会发现有差不多10秒的播放延迟, 以下是有一些调整参数可以试下调整 我测试配置了analyzeduration: 1)后延迟就有很大改善(大概1秒多rtmp方案) 如果需要做到1秒内的延迟可能得用srt协议 注意:需要做到1秒内,录制端,传输和播放端均需要做好优化 player.setOption(FijkOption.playerCategory, fflags, nobuffer);player.setOption(FijkOption.playerCategory, fast, 1);player.setOption(FijkOption.playerCategory, framedrop, 5);player.setOption(FijkOption.playerCategory, start-on-prepared, 1);player.setOption(FijkOption.formatCategory, max-buffer-size, 0);player.setOption(FijkOption.playerCategory, packet-buffering, 0);player.setOption(FijkOption.formatCategory, analyzeduration, 1);player.setOption(FijkOption.formatCategory, analyzemaxduration, 100);player.setOption(FijkOption.formatCategory, rtsp_transport, tcp);player.setOption(FijkOption.formatCategory, probesize, 100);player.setOption(FijkOption.formatCategory, flush_packets, 0);player.setOption(FijkOption.playerCategory, reconnect, 5);测试源码 官方的demo 可能是基于久版本的flutter的,我无法直接用, 遇到有问题的可以用以下源码测试 import package:fijkplayer/fijkplayer.dart; import package:flutter/material.dart;void main() {runApp(VideoScreen(url: rtmp://192.168.31.91/live/test110));// runApp(VideoScreen(url: http://192.168.31.91:2022/live/test110.flv));// runApp(VideoScreen(url: http://192.168.31.91:2022/live/livestream-trans.flv)); }class VideoScreen extends StatefulWidget {final String url;VideoScreen({required this.url});override_VideoScreenState createState() _VideoScreenState(); }class _VideoScreenState extends StateVideoScreen {final FijkPlayer player FijkPlayer();_VideoScreenState();overridevoid initState() {super.initState();player.setDataSource(widget.url, autoPlay: true);// 解决播放延迟// player.setOption(FijkOption.playerCategory, fflags, nobuffer);// player.setOption(FijkOption.playerCategory, fast, 1);player.setOption(FijkOption.playerCategory, framedrop, 1);// player.setOption(FijkOption.playerCategory, framedrop, 5);// player.setOption(FijkOption.playerCategory, start-on-prepared, 1);// player.setOption(FijkOption.formatCategory, max-buffer-size, 0);// player.setOption(FijkOption.playerCategory, packet-buffering, 0);player.setOption(FijkOption.formatCategory, analyzeduration, 1);// player.setOption(FijkOption.formatCategory, analyzemaxduration, 100);// player.setOption(FijkOption.formatCategory, rtsp_transport, tcp);// player.setOption(FijkOption.formatCategory, probesize, 100);// player.setOption(FijkOption.formatCategory, flush_packets, 0);// player.setOption(FijkOption.playerCategory, reconnect, 5);}overrideWidget build(BuildContext context) {return MaterialApp(theme: ThemeData.from(colorScheme: ColorScheme.fromSeed(seedColor: Colors.red,brightness: Brightness.light,),useMaterial3: true,),home: Scaffold(appBar: AppBar(title: const Text(测试视频流播放),),body: Builder(builder: (context) {return Column(children: [Row(mainAxisAlignment: MainAxisAlignment.center,children: [IconButton(onPressed: () {// player.dispose();player.reset();player.setDataSource(widget.url, autoPlay: true);// player.start();},icon: Icon(Icons.not_started),color: Colors.green,),IconButton(onPressed: () {player.stop();},icon: Icon(Icons.stop),color: Colors.red,),IconButton(onPressed: () {var playable player.isPlayable();print(playable: ${playable});showSnackBar(playable: ${playable}, context: context);},icon: Icon(Icons.safety_check),color: Colors.blueAccent,),],),FijkView(player: player,width: 400,height: 300,),]);},),),);}overridevoid dispose() {super.dispose();player.release();}void showSnackBar(String text, {required BuildContext context}) {ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text(text, style: const TextStyle(fontSize: 12))),);} }
http://www.w-s-a.com/news/999321/

相关文章:

  • 平台式网站外贸网站建设基础
  • 什么是规划网站手机版的网站制作
  • 网页设计网站作业外贸出口流程步骤
  • 成都网站推广公司排名网站建设首选 云端高科
  • 网站怎么增加流量找网络推广策畿
  • 网站描述范例做网站好看的旅行背景图片
  • 网上商城开发网站建设宣传网站设计
  • 免费的开源网站wordpress建站不好用
  • 陕西建设厅人才网站ai生成logo免费
  • 建设家居网站村建站什么部门
  • 网站建设+青海龙岗区网站建设
  • 精品课网站建设网络公司名字怎么取
  • 化工网站制作用户体验设计案例
  • 如何在微信公众平台上建立微网站垂直门户网站怎么做
  • 关于销售网站有哪些内容品牌网站建设小科6a蚪
  • 免费制作网站平台哪个好湖南企业建网站
  • 灞桥微网站建设株洲百姓网
  • 儿童网站建设互联网怎么学
  • 重庆建网站的公司集中在哪里中煤第五建设有限公司网站
  • 成都网站建设987net运维需要掌握哪些知识
  • 网站建设师个人简介怎么写WordPress头像美化插件
  • 网站优化知识销售管理系统c语言
  • 桂林市网站设计厦门自己建网站
  • 网站seo哪里做的好东莞做网站优化的公司
  • 休闲采摘园网站建设政务公开和网站建设工作的建议
  • 长沙网站建设哪个公司好PHP amp MySQL网站建设宝典
  • 代码编辑器做热点什么网站好湛江网站建设哪家好
  • php网站开发概念网站开发岗位职责任职责格
  • asp 网站源码 下载西安自适应网站建设
  • 白领兼职做网站贵阳网站设计哪家好