MPMoviePlayerController中没有扩展名的HTTP流

时间:2010-04-18 19:35:13

标签: http video-streaming mpmovieplayercontroller vlc

我目前正在让VLC流式传输WMV文件,同时将文件转换为带有MP3音频的H264。这意味着您获得的URL只包含IP和端口(http://127.0.0.1:1234/)。当我试图让MPMoviePlayerController流这个时,它说它无法打开那个扩展...

我该怎么办?我听说你必须创建一个M3U8文件,但我不知道该怎么做。

是否有针对此问题的解决方案,或者是否有MPMoviePlayerController的替代方案?

提前致谢

1 个答案:

答案 0 :(得分:1)

我只是尝试了这个并且对我有用......我不知道它是否正是你要找的......

在使用VLC的计算机中,我运行了[1]:

/Applications/VLC.app/Contents/MacOS/VLC --intf=rc SOME_VIDEO \\
'--sout=#transcode{fps=25,vcodec=h264,venc=x264{aud,profile=baseline,level=30,\\
keyint=30,bframes=0,ref=1,nocabac},acodec=mp3,ab=56,audio-sync,deinterlace}:\\
standard{mux=ts,access=http,dst=192.168.80.26:8080/test.mp4}'

现在,如果你这样做,你应该可以直接连接任何媒体播放器,如VLC本身,但是,正如你已经说过的那样,没有使用MPMoviePlayerController ..所以我做了...我创建m3u8文件就像这个和我命名为“test.m3u8”

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:10, 
http://192.168.80.26:8080/test.mp4

这个文件只是指向流,然后我把它放在一个web服务器,如apache ... 它工作..我能够使用MPMoviePlayerController观看流... 现在我只需要弄清楚如何离开那里,因为我只是学习如何使用MPMoviePlayerController而我不知道如何设置“完成”按钮:-)

btw ...在源代码中...我分配给MPMoviePlayerController的字符串是这样的:     NSString * path = @“http://192.168.80.26/~user/test.m3u8”;

我不知道这是最有效还是正确的做法..但至少它是有效的;)

孢霉素A