我有用於顯示AVPlayer播放的PlayerView類。代碼從documentation。如何獲取AVPlayer的視頻幀?
#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
@interface PlayerView : UIView
@property (nonatomic) AVPlayer *player;
@end
@implementation PlayerView
+ (Class)layerClass {
return [AVPlayerLayer class];
}
- (AVPlayer*)player {
return [(AVPlayerLayer *)[self layer] player];
}
- (void)setPlayer:(AVPlayer *)player {
[(AVPlayerLayer *)[self layer] setPlayer:player];
}
@end
設置我的AVPlayer(包含視頻與資產的大小爲320x240)在此PlayerView(與frame.size.width = 100,frame.size.height = 100)和我的視頻大小。如何在PlayerView中添加視頻後獲取視頻大小?
對我來說,videoRect只是返回CGRectZero,即使我可以在屏幕上看到視頻。我正在使用iOS 8 – tettoffensive
等待currentItem.status爲== AVPlayerStatusReadyToPlay,然後您將獲得幀 – YoCoh
這不起作用,即使我已添加KVO以等待狀態爲AVPlayerStatusReadyToPlay。 videoRect仍然返回所有的零 – codingrhythm