使用SRT Streamer开启手机APP直播推流

SRT Streamer是一个开源的SRT协议直播推流框架,适用于安卓手机端,支持RTMP直播和SRT直播。该框架支持多种视频编码格式,如H264、H265,以及音频编码格式,如AAC、OPUS,功能十分强大。

相比之下,另一款APP直播框架RTMP Streamer支持RTMP直播和RTSP直播,但不支持SRT协议的直播。本文将介绍如何使用SRT Streamer开启手机的APP直播推流。

一、下载SRT Streamer

SRT Streamer采用全Kotlin编码,需要在Android Studio Jellyfish(小水母版本)上编译运行,并且依赖最新的JDK17。博主花费了较长时间才找到可用的SRT Streamer源码。如果需要获取SRT Streamer源码,可在京东自营购买《FFmpeg开发实战:从零基础到短视频上线》一书,联系作者获取。
SRT Streamer源码采用Kotlin编写,需使用小水母版本的AS打开。因此,需要先安装小水母版本的AS,即Android Studio Jellyfish。

二、加载SRT Streamer

下载的SRT Streamer源码是一个完整的AS项目。启动小水母版本的Android Studio,依次选择菜单:File→Open,在弹出的文件对话框中选择解压后的SRT Streamer源码目录。Android Studio将自动下载相关组件,并执行gradle同步等操作。为了加快SRT Streamer项目的加载速度,可打开项目级别的build.gradle,在repositories节点内部补充配置以引入国内的仓库地址,以便加快相关依赖包的下载速度。
等待SRT Streamer项目成功加载完毕,查看Android Studio左侧的导航图,可见SRT Streamer项目由五个模块组成:core模块、demo-camera模块、demo-screenrecorder模块、extension-rtmp模块和extension-srt模块。

三、启动SRT Streamer

Android Studio成功加载SRT Streamer后,即可在手机上安装SRT Streamer的演示APP。SRT Streamer的演示APP在手机上安装完毕后,启动后的初始界面如下图所示。

首次使用SRT Streamer需要先配置SRT服务器信息。点击界面左上角的三点设置按钮,打开服务器设置页面进行以下四个SRT服务器配置:Endpoint区域的Type字段、SRT Server区域的IP字段、SRT Server区域的Port字段和SRT Server区域的Stream ID字段。

SRT Streamer提供了丰富多样的直播形式,既可以通过手机摄像头直播,还能对手机的屏幕操作进行直播。具体的直播协议又包括RTMP和SRT两种,可以满足绝大多数场景的直播需求。SRT Streamer是个开源软件,提供了完整的APP直播录制全套代码,非常适合开发者学习和研究。

更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

标签:游戏攻略