現在、iPadから外部ディスプレイにビデオを出力するときに、コントロールとすべてを外部ディスプレイに移動します。これは、コントロールが外部ディスプレイにあるときにムービーを制御できないため、有用ではありません。アプリのコードスニペットをいくつか紹介します。ipadのコントロールで外部ディスプレイにビデオを出力するには?
これは画面のセットアップコードである:これはMPMoviePlayerViewControllerの作成である(setupExternalScreen呼ばれる方法)
if ([[UIScreen screens] count] > 1) {
external_disp = [[UIScreen screens] objectAtIndex:1];
[external_disp setCurrentMode:[[external_disp availableModes] objectAtIndex:0]];
self.external_window = [[UIWindow alloc] init];
external_window.screen = external_disp;
[external_window makeKeyAndVisible];
}
:
[self setupExternalScreen]; //Calls the code above
MPMoviePlayerViewController *mpv = [[MPMoviePlayerViewController alloc] initWithContentURL:url];
[self presentMoviePlayerViewControllerAnimated:mpv];
IもMPMoviePlayerControllerを有し、また、これを試みました。
self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playerDidFinish:) name:MPMoviePlayerDidExitFullscreenNotification object:[self moviePlayer]];
[self.view addSubview:moviePlayer.view];
if (!external_window) {
[self setupExternalScreen];
}
if (external_window) {
[external_window addSubview:moviePlayer.view];
}
[moviePlayer setControlStyle:MPMovieControlStyleDefault];
[moviePlayer setFullscreen:YES];// animated:NO];
if (![moviePlayer isPreparedToPlay]) [moviePlayer prepareToPlay];
[moviePlayer play];
現在、2番目の実装では、addi self.viewとexternal_windowの両方には、外部ディスプレイ(コントロール付き)にビデオが表示され、iPadの画面はムービーコントロールが消えたときに消えるステータスバー以外は何も起こっていないように見えます。私もmoviePlayer.viewをself.viewに追加しようとしました。そしてiPad上でムービーを再生する前に "tv on content"メッセージの効果をちらつきます。現在ビデオはボタンを押すことによって起動されます。シミュレータとTV出力オプションを使用するとデバッグが簡単になります。 Xcodeバージョン3.2.5とiOSの最新バージョンを実際のデバイスにインストールします。どのようにこれを修正することができますか?それはiPad上のYouTubeアプリのように動作するはずです。
は私が探していただけのものを、ブリリアント。 6ヶ月前に誰も解決策を投稿していないのは残念ですが、 – Kaili
これはiOS9で動作しません – Chris