Flutter直播_在Flutter中实现rtmp直播
关于Flutter直播的视频教程:https://www.itying.com/goods-1120.html
1、Flutter直播的实现流程
直播主要通过两步实现: 1、推流 2、拉流
推流:指的是把采集阶段封包好的内容传输到服务器的过程。推流的设备可以是计算机也可以是摄像机、或者手机。
拉流:指服务器已有直播内容,用指定地址进行拉取播放的过程。
2、Flutter直播推流拉流工具介绍
1、推流工具:OBS(可以用于 win、linux、Mac)、RTMP推流摄像机
2、拉流工具:VlC(mac、linux、win 、手机)
3、Flutter中实现直播
Flutter中实现直播的话,我们可以使用第三方插件flutter_ijkplayer来实现。
https://pub.dev/packages/flutter_ijkplayer
1、安装依赖
dependencies:
flutter_ijkplayer: ^0.3.5+1
2、引入插件
import 'package:flutter_ijkplayer/flutter_ijkplayer.dart';
3、实例化IjkMediaController
IjkMediaController controller = IjkMediaController();
4、设置拉流地址
@override
void initState() {
super.initState();
this.initPlayer();
}
initPlayer() async{
await controller.setNetworkDataSource(
'http://192.168.0.11:8000/live/itying.flv',
autoPlay: false);
print("set data source success");
}
5、定义视频播放组件
Widget buildIjkPlayer() {
return Container(
height: 200, // 设置高度
child: IjkPlayer(
mediaController: controller
),
);
}
6、销毁
@override
void dispose() {
controller.dispose();
super.dispose();
}