我希望将YouTube视频流式传输到iOS应用。是否有任何框架或库可以这样做? AVFoundation能做到这一点吗?其他一些Apple框架或第三方库? (就我所知,Matt Gallagher的AudioStreamer不支持视频。)
修改
答案 0 :(得分:3)
查看有关如何执行此操作的information on playing back YouTube content with Objective-C的YouTube官方开发页面。基本上,文档建议使用UIWebView
来处理视频播放。
答案 1 :(得分:1)
你应该使用ffmpeg库,因为这个库可以连接任何流媒体服务器(支持rtsp,mms,tcp,udp,rtmp ...)然后将图片绘制到屏幕上..(对于绘图你可以使用opengles或uiimage也有效)
首先,使用avformat_open_input连接到您的IP地址,然后使用avcodec_find_decoder& avcodec_open2找到编解码器并打开它们(你应该为音频和视频调用它们)
然后,在while循环中使用av_read_frame方法从服务器读取数据包当你得到帧时,如果是音频然后将它发送到AudioUnit或AudioQueue,如果它是视频,则使用sws_scale将其从yuv转换为rgb格式方法并将图片绘制到屏幕上。
就是这样。
看看这个包装器(http://www.videostreamsdk.com),它写在ffmpeg库上并支持iOS
答案 2 :(得分:0)
如果您选择使用ffmpeg,请查看kxmovie项目。它是使用ffmpeg和OpenGLES的iOS电影播放器。现在项目处于稳定阶段,您可以尝试使用它。