设置圆角AVPlayer视频帧

设置圆角AVPlayer视频帧,avplayer,avplayerlayer,cornerradius,Avplayer,Avplayerlayer,Cornerradius,有人知道如何使用AVPlayer设置视频帧的圆角吗? 我正在尝试这样做: - (void)loadVideoWithPlayer:(AVPlayer*)playerVideo { dispatch_async(dispatch_get_main_queue(), ^{ AVPlayerLayer *avLayer = [AVPlayerLayer playerLayerWithPlayer: playerVideo]; [avLayer setC

有人知道如何使用AVPlayer设置视频帧的圆角吗? 我正在尝试这样做:

- (void)loadVideoWithPlayer:(AVPlayer*)playerVideo
{    
    dispatch_async(dispatch_get_main_queue(), ^{

        AVPlayerLayer *avLayer = [AVPlayerLayer playerLayerWithPlayer: playerVideo];
        [avLayer setCornerRadius:20];
        [avLayer setMasksToBounds:YES];

        [self.playerViewController setPlayer:playerVideo];

        [self insertSubview:self.playerViewController.view belowSubview:self.interactView];

        [self.playerViewController.player play];
    });
}

但它不起作用。我无法将圆角设置为AVPlayer.playervewcontroller.view,因为视频帧可能不同。

我只能这样做。这种变化甚至可以设置动画,从没有圆角到圆角

我和你没什么不同。目前正在使用iOS 10。已确认也在iOS 9.3.5设备上工作

        self.viewVideo?.layer.masksToBounds = SHOW ? true : false
        self.viewVideo?.layer.cornerRadius = SHOW ? 10 : 0
我也许应该注意到viewVideo是UIView的一个子类。唯一真正的变化是layerClass返回为AVPlayerLayer.self

override static var layerClass: AnyClass {
    return AVPlayerLayer.self
}

所以顺便说一句,我没有使用AVPlayServiceWController等。我只是将UIView的子类添加到我通常的UIViewController视图中。

我刚刚能够做到这一点。这种变化甚至可以设置动画,从没有圆角到圆角

我和你没什么不同。目前正在使用iOS 10。已确认也在iOS 9.3.5设备上工作

        self.viewVideo?.layer.masksToBounds = SHOW ? true : false
        self.viewVideo?.layer.cornerRadius = SHOW ? 10 : 0
我也许应该注意到viewVideo是UIView的一个子类。唯一真正的变化是layerClass返回为AVPlayerLayer.self

override static var layerClass: AnyClass {
    return AVPlayerLayer.self
}
所以顺便说一句,我没有使用AvPlayServiceController等。我只是将UIView的子类添加到我常用的UIViewController的视图中