菜鸟教程小白 发表于 2022-12-12 10:22:25

ios - 根据视频的纵横比调整 AVPlayerItem 容器 View 的大小


                                            <p><p>我有一个名为 <code>videoView</code> 的容器 UIView。我在该 View 中添加了一个 AVPLayerLayer。我不知道如何将 <code>videoView</code> 调整为与 avplayer 层相同的比例。使用 <code>videoGravity</code> 并没有达到预期的效果。 </p>

<pre><code>AVPlayerItem* playerItem = ;

_videoPlayer = [ initWithPlayerItem:playerItem];

AVPlayerLayer *layer = ;

;
.CGColor];
;
;
;
</code></pre>

<p>我正在使用自动布局,我的布局将适应 _videoView 高度的变化。 </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>videoGravity 不会改变 View 的帧,而是用视频填充当前帧。</p>

<p>我认为您应该检查每个视频的 <a href="https://stackoverflow.com/a/34364942/2066810" rel="noreferrer noopener nofollow">resolution</a>在播放之前调整 <code>videoView</code> 的高度限制(应该是一个 ivar 并限制为 <code>videoView</code> 的宽度)<a href="https://developer.apple.com/library/ios/documentation/AppKit/Reference/NSLayoutConstraint_Class/#//apple_ref/occ/instp/NSLayoutConstraint/multiplier" rel="noreferrer noopener nofollow">multiplier</a> . <code>videoView</code> 宽度应限制为屏幕宽度。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 根据视频的纵横比调整 AVPlayerItem 容器 View 的大小,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/35118676/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/35118676/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 根据视频的纵横比调整 AVPlayerItem 容器 View 的大小