我希望在我的项目中实现视频流,是否有适用的教程?视频存储在服务器端,因此需要使用URL获取视频并在Android上播放。我尝试了一些示例,但是出现错误:"抱歉,无法播放此视频"。我正在尝试使用MP4格式。
我曾经遇到相同的问题,但最终找到了解决方法。
以下是具体步骤:
1- 在您的计算机(服务器)上安装VLC,然后前往“媒体”->“流式传输”(Ctrl+S)
2- 选择要流式传输的文件,或者如果您想流式传输您的网络摄像头等内容,请单击“捕获设备”选项卡并进行配置,最后单击“流式传输”按钮。
3- 在这里,您应该进行流式传输服务器的配置,只需转到“选项”选项卡并粘贴以下命令即可:
:sout=#transcode{vcodec=mp4v,vb=400,fps=10,width=176,height=144,acodec=mp4a,ab=32,channels=1,samplerate=22050}:rtp{sdp=rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/}
注意:将YOURCOMPUTER_SERVER_IP_ADDR替换为您的计算机IP地址或运行VLC的任何服务器...
注意:可以看到,视频编解码器是MP4V,Android支持该编解码器。
4- 转到Eclipse并创建一个新项目以进行媒体播放。 创建一个VideoView对象,在OnCreate()函数中编写如下代码:
mVideoView = (VideoView) findViewById(R.id.surface_view);
mVideoView.setVideoPath("rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/");
mVideoView.setMediaController(new MediaController(this));
5- 在设备上运行apk(不是模拟器,我没有检查过),等待播放开始。请考虑缓冲过程需要大约10秒钟...
问题:有人知道如何减少缓冲时间并实现几乎实时播放视频吗?
我曾经遇到同样的问题,但找到了一个解决办法让代码正常运行。
给定在 android-Sdk/samples/android-?/ApiDemos
的代码可用。将每个文件夹复制粘贴到Android项目中,然后在MediaPlayerDemo_Video.java中将要流式传输的视频路径放入path变量中。 代码中留空。
以下视频流对我有效: http://www.pocketjourney.com/downloads/pj/video/famous.3gp
我知道RTSP协议应该用于流媒体传输,但是代码中提到,MediaPlayer类支持http进行流媒体传输。
我在Google上搜索了视频的格式,并发现使用Quicktime Pro将视频转换为mp4或3gp格式可以正常进行流媒体传输。
我在安卓2.1上测试了最终apk。这个应用程序不适合在模拟器上使用。请在设备上尝试。
希望这会有所帮助..
你的问题很可能是由于视频文件本身,而不是代码引起的。你的视频很可能不适合流媒体播放。请查看在安卓上通过流媒体播放视频应该把视频放在哪里获取更多信息。
问题:有人知道如何减少缓冲时间并实现几乎实时播放视频吗?
- sonu thomas