我正在将一些YouTube搜索功能构建到iPhone应用中,并希望确保我只接收可在设备上播放的结果。根据{{3}},这似乎相对简单:
format参数指定视频必须以特定视频格式提供。您的请求可以指定以下任何格式:
我尝试将“format = 1”设置为限制为:
用于移动视频播放的RTSP流媒体网址。 H.263视频(最高176x144)和AMR音频。
这提供了很高比例的可播放视频但有些仍然无法播放,我担心它不会返回其他可播放的视频。
当我将格式字段留空时,我会收到更高比例的不可流式网址。
答案 0 :(得分:2)
这听起来不合适。我的理解是,iPhone不会流式传输RTSP,而是支持Apple的HTTP流式分段文件,用于通过范围请求实时和HTTP流式传输MPEG4视频文件。我还希望视频是H.264和AAC音频。
您的设置听起来适合低端手机特别是176x144是非智能手机常用的QCIF分辨率。
答案 1 :(得分:1)
当您查看通过调用
返回的XML文件时http://gdata.youtube.com/feeds/api/videos/<your video id>
然后您会注意到iPhone上无法播放的视频将具有以下标记:
<yt:state name='restricted' reasonCode='limitedSyndication'>Syndication of this video was restricted by its owner.</yt:state>
如果标签存在,请确保查找上述标记并忽略该视频。