java - Android 从自定义网络流播放视频数据?

标签 java android linux video video-streaming

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/

相关文章:

java - 将值从弹出 portlet 发送回父 portlet

java - ReplaceAll 方法无法正常工作 - 用正则表达式模式替换正则表达式

android - API-21 上的 Fragment 事务替换处于落后状态

c++ - 在 Matlab mex 文件中编译 c++11 代码时出错

linux - 从 CRON 开始使用 xvfb 虚拟显示器进行测试 - 缺少键盘设备

c++ - 记录数据时磁盘写入延迟

java - Java 中的垂直文本滚动

java - 带有 RDF/XML 文件的 Hadoop MapReduce

java - 如何从 PagerAdapter 启动 fragment

android - Google Maps Android API v2 是免费的吗?