4

我有一个使用 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. Proxy 将 VideoView 对 M3u8 和 ts 的请求转发到 HLS 服务器。
3. 代理检查传输流请求并在向 VideoView 发送响应之前解密传输流并将其发送到 VideoView。
4. VideoView 播放视频流。

这工作正常,但有时我会收到以下错误:
output buffer is smaller than decoded data size Out Length

当我在 logcat 中收到此错误时,我的视频变成垃圾(绿色视频)
我通常会在视频流比特率大小增加时看到此问题,是否有解决此问题的方法?

4

0 回答 0