2016-12-07 3 views
1

私はSpotifyのようなアプリで見られるように、ログイン画面にビデオを表示しようとしています。AVPlayerをレターボックスなしのフルスクリーンにする

私はAVPlayer使用していますこれを行うには

をやって何

hereを説明するよう

self.videoPlayer = AVPlayer(playerItem: item) 
self.videoView.player = self.videoPlayer 
self.videoPlayer.play() 

videoViewは、カスタムUIViewクラスです。

私はAVLayerVideoGravityResizeAspectFillにAVLayerのvideoGravityを設定します。

self.videoView.playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill 

問題

を、私はそれが私の見解の境界を記入作るしようとすると、しかし、私のビデオはまだレターボックス化されています

enter image description here

私が欲しいもの

私が望むのは、ビデオを黒いバーなしで境界全体に書き込むことです。私はビデオの一部が切り取られている場合は気にしない:

enter image description here

追加情報

を私はdeprecated MPMoviePlayerController's scaling mode propertyを見たとき、私はaspectFillプロパティの以下の記述を見つけました

ムービーがビューの可視範囲を満たすまで、ムービーを均一に拡大/縮小します。他のディメンションがビューに正確にフィットするように、2つのディメンションのうち大きい方のエッジのコンテンツがクリップされます。映画のアスペクト比は保存されています

この説明から判断すると、これは私が望む動作です。しかし、既に述べたように、私のビデオはレターボックス化されています。間違ったことをやっているのですか、アップルはこのタイプのスケーリングをサポートしていませんか?クリップされているビデオの一部が気にならない場合は、自分でこのスケーリングを実装する必要がありますか?

ご協力いただきありがとうございます。

+0

videoView.frameがself.view.frameと同じであるかどうかを確認してください – Ponja

答えて

3

これは恥ずかしいです。私は最終的にビデオ自体に焼き文字ボクシングがあることに気づいた:(AVPlayerが行っていたスケーリングはうまくいきました。

+0

ああ、仲間を心配しないでください:) –

+0

私の本では、率直なことが投票です。 – Jonny

関連する問題