我有一个使用VideoView播放HLS(Http Live Streaming)视频的Android应用程序。
我正在使用本地http代理将HTTP请求从VideoView转发到主HLS服务器,因为我的流(传输段)已加密。
Flow of my application:
0.使用本地代理URL准备VideoView。恩。 “http:// localhost:9878 / index.m3u8”
1. VideoView向我的代理发送M3U8和ts段的请求
2.代理将M3u8和ts的请求从VideoView转发到HLS服务器
3.代理检查传输流请求,并在发送对VideoView的响应之前解密传输流并将其发送到VideoView
4. VideoView播放视频流。
这是正常工作但有时我得到以下错误:
output buffer is smaller than decoded data size Out Length
当我在logcat中收到此错误时,我的视频变为垃圾(绿色视频)
我通常在视频流比特率增加时看到此问题,是否有针对此问题的解决方法?