2012-12-19 110 views
0

在我的应用程序中,我有一个缓冲区接收flv流数据。由于Android不支持flv,那么怎么玩呢?如果我将flv流缓冲区转换为mp4,则会出现另一个问题,即:
如何定义MediaPlayer的数据源,因为它通常是文件路径或url。任何人都可以帮忙或给我一些建议。如何使用MediaPlayer播放flv流

回答

0

我个人使用VideoView.setVideo(uri)VideoView中设置视频。你可以简单地转换在服务器端或视频您自己的电脑与此ffmpeg命令行:

ffmpeg -i infile.flv outfile.mp4 

就像你应该知道的功能VideoView.setVideo()预计作为可成为HTTP本地路径或第一个参数一个Uri/https网址。

如果您需要发送的cookie的下载/与你的网络服务器流,你可以使用隐藏功能setVideo(Uri, Map<String, String>)与反思:

HashMap<String, String> header = new HashMap<String, String>(); 
header.put("Cookie", "--value--"); 
Method setVideo = videoView.getClass().getMethod("setVideoURI", Uri.class, Map.class); 
setVideo.invoke(videoView, Uri.parse(url), header); 

但是请注意,你需要捕捉可能的例外可能是两罚全中,为了简化,我在上面的代码中删除了它们。

+0

我无法得到它,你可以解释清楚队伍 – kobee

+0

检查我的更新。 – rekire