名称 | EvilsLive |
---|---|
语言 | Android |
平台 | GitHub |
作者 | hinkKeep |
链接 | 点此进入 |
今天推荐的是关于安卓视频直播的范例,主要实现了视频直播的采集、推流、预览、播放、美图支持。
功能特点
已支持:
-
视频编码:H.264
-
推流协议:RTMP
-
预览与推流分辨率可分别自由设置
-
支持前、后置摄像头动态切换
开发中:
-
支持软编、硬编及软编兼容模式
-
网络自适应,可根据实际网络情况动态调整目标码率,保证流畅性
-
音频编码:AAC
-
支持动态横竖屏推流
-
音视频目标码率:可设
使用方法
- 流媒体服务提供:
在进行推流之前,你需要有流媒体服务(视频上传默认rtmp协议),本地搭建或搭建在公有云上都行。例如:rtmp://127.0.0.1/live/hjd_phone
- 客户端设置:
具体如何使用可以参照 app 中的代码
builder = EvilsLiveStreamerConfig.Builder.newBuilder();
//设置分辨率
builder.setVideoResolution(Defines.EvideoResolution.E720P);
//设置摄像头方向
builder.setCameraFacing(Defines.EcameraFacing.CAMERA_FACING_BACK);
//设置视频预览帧率
builder.setPreviewFrameRate(25);
//设置推流url
builder.setStreamUrl(url);
EvilsLiveStreamerConfig config = builder.build();
//设置预览视图
streamer.setDisplayPreview(mPreviewView);
streamer.setStreamConfig(config);
//停止预览
streamer.stopPreview();
//开启预览
streamer.startPreview();
//开启推流
streamer.startStream();
//停止推流
streamer.stopStream();
该项目还存在不少问题,但基本实现了视频直播的功能,有兴趣的朋友可以阅读其GitHub代码,或fork一个分支,参与开发完善。
网友评论