gpt4 book ai didi

ios - 如何在 iPhone 的应用程序中播放 youtube/vimeo 视频

转载 作者:IT王子 更新时间:2023-10-29 08:19:01 28 4
gpt4 key购买 nike

我正在构建一个应用程序,我想在其中播放来自 Youtube、Vimeo、Direct url 等 url 的视频。我正在制作自定义播放器,使用 AVPlayer 从视频剪辑的直接 url(如 www.abc/play.mp4)播放视频。但后来我在播放 youtube 和 vimeo 视频时遇到了一个大问题。经过大量搜索后,我找到了这些链接,上面写着不使用 UIWebview 我无法播放 Youtube 链接:

Play YouTube videos with MPMoviePlayerController instead of UIWebView

Playing video from youtube link without UIWebView

所以我只使用了这段代码:

NSString *youTubeVideoHTML = @"<html><head><style>body{margin:0;}</style></head> <body> <div id=\"player\"></div> <script> var tag = document.createElement('script'); tag.src = 'http://www.youtube.com/player_api'; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); var player; function onYouTubePlayerAPIReady() { player = new YT.Player('player', { width:\'100%%\', height:'200px', videoId:\'%@\', events: { 'onReady': onPlayerReady } }); } function onPlayerReady(event) { event.target.playVideo(); } </script> </body> </html>";

NSString *html = [NSString stringWithFormat:youTubeVideoHTML, videoId];
self.embedded_player_view.mediaPlaybackRequiresUserAction = NO;

[self.embedded_player_view loadHTMLString:html baseURL:[[NSBundle mainBundle] resourceURL]];

现在,当我从 tableview 单击 youtube/Vimeo 视频链接时,它会使用默认播放器(即 quicktime 播放器)播放视频。它不在 UIWebview 框架本身内运行视频。但我想在屏幕的第一半部分显示视频,即我的 UIWebview 框架。这可能吗?

在我的应用程序中我可以看到:

当点击红色播放按钮时,我可以在 quicktime 播放器中全屏观看视频,如下所示:

enter image description here enter image description here

但我想在同一个 webView 框架内显示视频,而不是通过 quick time 播放器。它应该像这样播放:

enter image description here

MusicTube 中也是如此和 PlayTube .

或者还有其他方法可以达到同样的目的吗?任何帮助将不胜感激。提前致谢。

最佳答案

enter image description here enter image description here

我用过 this class就为了那个。

您在 UIViewController 中看到的视频可以当前大小播放。

这是我使用过的唯一代码:

UIView *videoContainerView = [[UIView alloc]initWithFrame:CGRectMake(0, 50, 320, 200)];
[self.view addSubview:videoContainerView];
XCDYouTubeVideoPlayerViewController *videoPlayerViewController = [[XCDYouTubeVideoPlayerViewController alloc] initWithVideoIdentifier:@"_OBlgSz8sSM"];
[videoPlayerViewController presentInView:videoContainerView];
[videoPlayerViewController.moviePlayer play];

关于ios - 如何在 iPhone 的应用程序中播放 youtube/vimeo 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21088471/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com