我正在尝试将我的 android 应用程序与 FTP 服务器连接,该服务器使用动态 Http 流以不同的比特率广播多个流。Flash 消息服务器(FMS)正在使用 H.264 编解码器以 flv 格式广播视频。在客户端(Android)我得到 f4m(manifest (xml) file)) 具有不同的流。我无法使用 f4m 文件从 FMS 获取 android 中的视频。
String url = "http://d2233avv69kunu.cloudfront.net/hds-live/livepkgr/_definst_/liveevent/livestream.f4m";
Uri uri = Uri.parse(url);
// videoView.setVideoURI(uri);
videoView.setVideoPath(str);
MediaController mc = new MediaController(this);
//VMRuntime.getRuntime().setMinimumHeapSize(40);
mc.setAnchorView(videoView);
videoView.setMediaController(mc);
System.out.println("Max Memory - "+java.lang.Runtime.getRuntime().maxMemory());
videoView.requestFocus();
videoView.setOnPreparedListener(new OnPreparedListener()
{
public void onPrepared(MediaPlayer mp)
{
videoView.start();
}
});
在上面的代码中,我试图通过传递 f4m 文件的链接在 Video View 组件中运行视频。Flash 编码器将视频转换为 3 种文件格式,如下所列
- .f4m(清单文件) - 引导信息、元数据、比特率、Flash 访问许可证 服务器位置
- .f4f(片段文件)- 扩展 F4V 格式,MP4 片段标准
- .f4x(索引文件)- 二进制
请提供通过 android 中的 Http Streaming 在不同的 android 设备上播放视频的解决方案。提前致谢。