在使用NanoHTTPD时,MediaPlayer显示错误(100,0)

时间:2013-01-15 13:48:09

标签: android video-streaming media-player nanohttpd

我正在制作一个视频流应用程序。在服务器上我已经保护了m3u8文件。其中包含加密的ts文件(AES-128加密)。我正在解析安全的m3u8文件然后我下载了ts文件&解密它们。

我将所有解密文件存储在设备的外部存储位置。然后我创建一个新的m3u8文件,指向所有解密的ts文件。

我正在使用NanoHTTPD类在设备本身上创建自定义服务器&这指向一个目录,我已经把我所有解密的ts文件&新的m3u8文件。

然后我使用VideoView&我在自定义服务器上传递了一个m3u8文件的URL。

当我开始播放VideoView时,它会很好地启动视频,但过了一段时间后会显示错误消息“无法播放此视频”

在日志中我收到此消息

01-15 18:53:52.072: W/AudioSystem(16009): AudioFlinger server died!
01-15 18:53:52.072: W/IMediaDeathNotifier(16009): media server died
01-15 18:53:52.072: E/MediaPlayer(16009): error (100, 0)
01-15 18:53:52.072: E/MediaPlayer(16009): Error (100,0)
01-15 18:53:52.072: D/VideoView(16009): Error: 100,0

我没有得到问题所在。 在我的服务器或VideoView中。

我已检查所有已加密的ts文件已正确解密。 &安培;我已经将自定义服务器的m3u8网址播放到Android播放器,它运行良好。

我还尝试过来自apple的样本m3u8 url,这里我只是下载了ts文件&动态创建我自己的m3u8文件。工作正常。

请指导我在哪里&我究竟做错了什么。

1 个答案:

答案 0 :(得分:0)

我解决了我的问题。问题在于解密。