Android MediaPlayer 是否只能处理文件源?我想从网络流中播放媒体(视频),但该流采用非标准协议(protocol),因此我必须以某种方式仅向 Android MediaPlayer 提供数据。
有什么办法吗?我发现一些网页建议对缓冲的媒体数据等使用临时文件,但我想尽可能地减少 I/O 使用,所以我正在寻找仅 API 的解决方案(如果有的话)? JNI 怎么样?但看起来权限也会成为一个问题。
最佳答案
Does Android MediaPlayer can only work with file sources?
不,它也处理 HTTP 和 RTSP 流。
I would like play media (video) from a network stream, but the stream comes in a non-standard protocol, so I have to somehow feed Android MediaPlayer with the data only.
那会很困难。如果这是音频,您可以使用 AudioTrack,但没有对应的视频。
一个解决方案是创建一个服务器端代理,将您的非 HTTP、非 RTSP 流转换为 HTTP 或 RTSP 流,这样现有的 Android 流支持就可以工作了。
关于java - Android 从自定义网络流播放视频数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2437251/