MPMoviePlayerController를 사용하여 일부 youTube 비디오를 스트리밍하려고하는데 문제가 있습니다. 내가 사용하는 코드는 매우 간단하며 URL을 initWithContentURL에 전달하여 .m4v 동영상을 재생할 수 있습니다. 동영상 플레이어를 실행하면 플레이어가 나오지만 약 20 초 후에 사라집니다. 시뮬레이터에서 시도하면 서버가 올바르게 구성되지 않았다는 경고보기가 나타납니다. Google에서 특정 유형의 비디오 피드를 가져 오기 위해 URL과 함께 전달해야하는 인수가 있습니까?
NSURL *videoURL = [NSURL URLWithString:@"http://www.youtube.com/v/HGd9qAfpZio&hl=en_US&fs=1&"];
MPMoviePlayerController *moviePlayer;
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];
[moviePlayer play];
다음 URL의 http://www.youtube.com/watch?v=HGd9qAfpZio 도 시도했습니다
.
나는 또한 & format = 1 인수를 보았고 그것을 두 문자열의 끝에 추가하려고했지만 운이 없었습니다.
답변
자신의 앱에서 YouTube 동영상을 재생하는 유일한 방법 UIWebView
은 UIWebView's
콘텐츠 로 재생하려는 영화에 대해 Youtube의 embed 태그 를 사용하여를 만드는 것 입니다 . UIWebView
삽입 된 개체가 Youtube 링크임을 감지하고 웹보기의 콘텐츠가 동영상의 YouTube 미리보기가됩니다. 사용자가 미리보기를 클릭하면 비디오가 MPMoviePlayerController에 표시됩니다. 이것은 Muxecoid가 제공 한 링크 ( 애플리케이션 내에서 YouTube 비디오를 재생하는 방법)에 설명 된 기술 이며, 이것이 애플리케이션 내에서 YouTube 비디오를 재생 하는 유일한 방법입니다. Youtube URL을에 전달하여 Youtube 응용 프로그램을 시작할 수 -[UIApplication openURL:]
있지만 물론 이것은 종종 바람직하지 않은 자체 응용 프로그램을 닫습니다.
불행히도 MPMoviePlayerController
YouTube는 비디오 파일에 대한 직접 링크를 노출하지 않기 때문에 YouTube 비디오를 직접 재생할 수있는 방법 이 없습니다.
답변
코드를 사용하는 경우 :
- (void)embedYouTube:(NSString*)url frame:(CGRect)frame {
NSString* embedHTML = @"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: white;\
}\
</style>\
</head><body style=\"margin:0\">\
<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>";
NSString* html = [NSString stringWithFormat:embedHTML, url, frame.size.width, frame.size.height];
if(videoView == nil) {
videoView = [[UIWebView alloc] initWithFrame:frame];
[self.view addSubview:videoView];
}
[videoView loadHTMLString:html baseURL:nil];
}
출처:
시뮬레이터가 아닌 장치에서 테스트해야합니다. 시뮬레이터는 항상 파란색 상자에 물음표를 표시하기 때문에 (퀵타임 플레이어가 없습니다).
답변
위에서 언급 한대로 작업중인 프로젝트에서이 작업을 수행해야했습니다. 이 문제를 해결하고 github에 코드를 제출했습니다.
기본적으로 YouTube URL을 사용하고 모든 iOS 호환 비디오 URL을 가져옵니다.
이것이 도움이되기를 바랍니다!
건배
답변
.NET 파일에 YouTube
동영상 을 넣을 수있는 사람을 발견 했습니다 MPMoviePlayerController
. 지금은 가능해 보입니다.
답변
튜브 비디오를 재생하려면 URL을에 전달하기 전에 URL을 추출해야합니다 MPMoviePlayer
. 직접 재생할 수 없습니다.
내 github 저장소에는 이것의 데모 구현이 있습니다.
보다:
https://github.com/DpzAtMicRO/IOSYoutubePlayer
그것을 시도하면 MPMoviePlayer
다른 비디오와 마찬가지로 YouTube 비디오를 직접로드하고 재생할 수 있으며 꽤 좋은 접근 방식입니다.
편집 : 프로젝트에서 이것을 사용하기 전에 Readme.md를 잘 살펴보십시오.
답변
새 소스 코드를 위해 iframe의 src 요소를 가져 와서 호출하는 것만 큼 간단합니다.
[self.webView loadRequest:[NSURLRequest requestWithURL:self.url]];
답변
다음 링크를 확인하십시오. 나는 그것이 당신을 도울 것이라고 생각합니다.
https://mobiletechfeast.blogspot.in/2014/08/youtube-player-for-ios.html