如果您的MP4文件长度超过10分钟,则需要使用HLS来传输文件。 对于实时流,您可以使用这样的软件对其进行实时编码: http://www.mcommstv.com/products/mcomms-transcode
如果是VoD文件,则使用您最喜欢的H.264 / AAC编码器对其进行预编码。
请记住包含文件的多个比特率版本,包括64kbps。如果您不包含64kbps流,Apple将拒绝该应用程序。我们通常使用: 64K 120K 240K 480K 800kbps 1200kbps 您在多速率m3u8文件中首先列出的比特率将在前30秒播放,首先放入中等比特率,这样当用户在慢速3G网络上时,开始流式传输不会花费太长时间。这是一个例子:
#EXTM3U #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=120000 120k/Playlist.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=60000 60k/Playlist.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=240000 240k/Playlist.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=480000 480k/Playlist.m3u8
我们必须将任何音频文件转换为m3U8 formnat。
在运行时我找不到任何插件。我搜索得很少。
因此我们在使用URl时设置了IIS服务器。
http://www.hanselman.com/blog/CommentView.aspx?guid=86968cd5-feeb-47f2-b02e-1eb4fa556379#commentstart
得到了链接。喜欢 http://4a75a0cce3694e29bc670b3d574fec92.cloudapp.net/push.isml/manifest
通过修改它 http://4a75a0cce3694e29bc670b3d574fec92.cloudapp.net/push.isml/manifest(format=m3U8-aapl)
我们可以使用视频标记在HTML5中使用此URL。 我们也可以上传点播视频。
我只能评论预先录制的视频,而不是直播...
我必须将mp4视频转换为M8U8吗?
我想你的意思是.m3u8。基本上,您需要获取.mp4文件并:
将其编码为友好的比特率以获得移动带宽。您可以使用Apple的Compressor *应用程序,它具有HTTP Live Streaming的预设。如果你正在玩的话,选择大约1000kbps的东西。
使用Apple的mediafilesegmenter将输出切片。你最终会得到许多小的.ts文件和一个列出它们的清单(.m3u8)。
点击播放器中的.m3u8文件(initWithContentURL ...)即可关闭。
重复上面的步骤1和2并指定不同的带宽。我们去了Compressor的预设。
您将最终得到不同版本的视频,每个带宽1个,使用Apple的variantplaylistcreator工具创建一个主播放列表文件,该文件将指向您的播放器每个带宽,以便它可以自动切换。
将所有.ts文件和.m3u8文件粘贴在网络上,并使用mediastreamvalidator工具检查主播放列表文件是否正常并正确指向每个版本。
确保在主播放列表文件中首先获得合适的质量比特率,因为这是首先播放的版本。我们去了大约1000kbps的标记。
我必须使用MPMoviePlayer吗?
我不能评论其他库,我们使用MPMoviePlayer。
我可以在运行时将mp4视频转换为M8U8格式以及如何实现实时流媒体
您可以使用实时流,但对于预先录制的视频,可以在此之前完成。将所有文件置于在线状态,验证播放列表(.m3u8)并使用主.m3u8文件播放视频。
是否有可用于HTTP直播的示例代码?
在我们的实现中,iOS中的客户端完成所有工作(例如,根据可用带宽切换流)。因此,您只需要确保所有文件都在正确的位置。
压缩机 - http://www.apple.com/finalcutpro/compressor/ mediafilesegmenter和mediastreamvalidator工具命令行工具可从Apple开发人员网站下载。
这些文章包含您需要知道的一切: https://developer.apple.com/library/ios/#documentation/networkinginternet/conceptual/streamingmediaguide/Introduction/Introduction.html https://developer.apple.com/library/ios/#technotes/tn2288/_index.html#//apple_ref/doc/uid/DTS40012238
在Safari中打开它: https://developer.apple.com/resources/http-streaming/examples/advanced-stream.html - 每个'Gear'是不同的比特率流
在文本编辑器中打开此.m3u8文件以获取示例主播放列表文件: https://devimages.apple.com.edgekey.net/resources/http-streaming/examples/bipbop_16x9/bipbop_16x9_variant.m3u8
希望一切都有道理:)