1
NSURL *youTubeURL = [NSURL URLWithString:@"http://www.youtube.com/watch?v=HPwyVw_6vsQ&feature=youtu.be"]; // URL is a string which needs to be placed in @"" and close method call with ].
MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:youTubeURL];
imageSel = [player thumbnailImageAtTime:1.0 timeOption:MPMovieTimeOptionNearestKeyFrame];

ビデオからサムネイルを取得するためにこのコードを使用していますが、これはimageselでnull値を返します.YouTubeのURLを使用しています.メインバンドルにあるビデオにこのコードを使用しているとき、誰でもこの問題を解決できますか?それは正常に動作しています。

4

4 に答える 4

5

これを行う:

まず、ビデオURLリンクからvideoIDを抽出します。

ビデオのサムネイルを取得するには、このリンクを参照してください。

于 2012-10-04T13:14:07.417 に答える
4

各 YouTube リンクには 4 つのサムネイルがあります

   http://img.youtube.com/vi/<insert-youtube-video-id-here>/0.jpg
   http://img.youtube.com/vi/<insert-youtube-video-id-here>/1.jpg
   http://img.youtube.com/vi/<insert-youtube-video-id-here>/2.jpg
    http://img.youtube.com/vi/<insert-youtube-video-id-here>/3.jpg

このコードは非常に適しています

たとえば、私はこのリンクを持っています:

       http://www.youtube.com/watch?v=HPwyVw_6vsQ&feature=youtu.be

YouTubeビデオIDは次のとおりです。

      HPwyVw_6vsQ

このリンクから生成されたサムネイルは次のとおりです。

        http://img.youtube.com/vi/HPwyVw_6vsQ/1.jpg

これはとても使いやすいです

于 2012-10-08T10:19:35.070 に答える
0

YouTube の動画再生ページの URL があり、サムネイルの URL を取得したい場合、「正しい」方法は oEmbed を使用することです。

http://apiblog.youtube.com/2009/10/oembed-support.html

そうすれば、URL からビデオ ID を解析する必要がなくなります。

しかし...本当にすべきことは、iframe埋め込みを使用して Web ページ (またはUIWebView) にビデオを表示することです。YouTube API サービス利用規約では、サポートされている YouTube コンテンツへのアクセス方法について説明しています。

https://developers.google.com/youtube/terms

于 2012-10-04T16:55:35.957 に答える