如何在Android系统中播放SRT(Secure Reliable Transfer)协议视频
Android端播放SRT(Secure Reliable Transfer)协议视频的可行方案
可以实现Android端播放SRT协议视频,以下是三种成熟的落地方式:
- 基于ExoPlayer自定义数据源实现
ExoPlayer支持自定义扩展数据源组件,你可以集成SRT原生库后自行实现适配SRT协议的DataSource逻辑,也可以直接使用社区已经封装好的SRT扩展组件。完成适配后将自定义DataSource工厂配置到ExoPlayer实例,即可直接传入srt://开头的地址进行播放。该方案定制性强,适配灵活,适合有自定义播放需求的项目。 - 使用内置SRT支持的第三方播放器
底层依赖FFmpeg的播放器如ijkPlayer、VLC Android SDK原生支持SRT协议,只要你使用的编译版本开启了SRT编译选项,无需额外做协议适配,直接传入srt://资源地址即可播放。该方案集成成本低,适合需要快速上线的场景。 - 本地HTTP代理中转
如果你的项目不方便替换现有播放器内核,可以在App内部启动一个本地HTTP代理服务:播放器请求本地的HTTP代理地址,代理服务后台拉取SRT协议的视频流,再将流数据转换成HTTP格式返回给播放器。该方案无需修改原有播放逻辑,但存在额外的中转性能开销,适合临时或小范围使用的场景。
提示:查找相关开发资料时可以搭配「SRT传输协议」「SRT流」「Secure Reliable Transport」作为关键词,避免和SRT字幕文件的内容混淆。
内容的提问来源于stack exchange,提问作者Dr BigKitkat
相关产品推荐
相关产品推荐

