Monika Patel
Monika Patel

Reputation: 2375

How to play youtube video using MPMoviePlayerController?

I want to play video of youtube url. I'm using below code but it is not working.

-(void)playVideoFromURL
{
    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%s","https://www.youtube.com/embed/96ReVjMAXEE?autoplay=1&vq=small"]];
    self.videoController = [[MPMoviePlayerController alloc] initWithContentURL:url];
    [self.videoController setControlStyle:MPMovieControlStyleNone];
    self.videoController.repeatMode=MPMovieRepeatModeOne;
    self.videoController.fullscreen=YES;
    self.videoController.scalingMode=MPMovieScalingModeFill;
    self.videoController.view.frame=CGRectMake(0,0,self.videoplayview.frame.size.width, self.videoplayview.frame.size.height);
    [self.videoplayview addSubview:self.videoController.view];
    [self.videoController play];
}

Upvotes: 2

Views: 1350

Answers (2)

Ketan Parmar
Ketan Parmar

Reputation: 27448

Unfortunately, there's no way to directly play a youtube video with MPMoviePlayerController because youtube does not expose direct links to the video files.

The only way to have a youtube video play inside your own app is to create a UIWebView with the embed tag from Youtube for the movie you want to play as the UIWebView's content. UIWebView will detect that the embedded object is a Youtube link, and the web view's content will be the youtube preview for the video. When your user clicks the preview, the video will be shown in an MPMoviePlayerController.

Upvotes: 0

Yogesh MV
Yogesh MV

Reputation: 1051

You cannot play a YouTube vidoe URL in MPMoviePlayerController. For this you have to use

youtube-iso-player-helper - But you cannot play private video URL in youtube-iso-player-helper

XCDYoutubeKit - It is against YouTube Terms and Service.

Upvotes: 5

Related Questions