【问题标题】:AVPlayer not playing video file in iOSAVPlayer 在 iOS 中不播放视频文件
【发布时间】:2015-10-16 10:49:40
【问题描述】:

我正在尝试使用以下代码播放存储在我的设备上的视频。问题是我在屏幕上什么都看不到,只是一个白屏。

本例中filePath的值为file:///var/mobile/Containers/Data/Application/0E87EF09-B87C-443F-9BFB-E9A68AC4A162/Documents/TMRecordedVideos/2015-07-25T18-57-19Z.mov

NSString *filePath = [self.video fileURL];
NSURL *fileUrl = [NSURL fileURLWithPath:filePath isDirectory:NO];

AVAsset *videoAsset = [AVAsset assetWithURL:fileUrl];
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithAsset:videoAsset];

self.videoPlayer = [AVPlayer playerWithPlayerItem:playerItem];

self.videoPlayerLayer = [AVPlayerLayer playerLayerWithPlayer:self.videoPlayer];
[self.videoPlayerLayer setFrame:self.view.frame];

[self.view.layer addSublayer:self.videoPlayerLayer];
[self.videoPlayer play];

【问题讨论】:

    标签: ios avfoundation avplayer avplayerlayer


    【解决方案1】:

    我正在使用 AVPlayerLayer 播放视频。我使用了下面的代码,它工作得很好。 URL(在我的例子中是 outputFileURL)类似于你的 filePath。

    AVPlayer *avPlayerq = [AVPlayer playerWithURL:outputFileURL];
    avPlayerq.actionAtItemEnd = AVPlayerActionAtItemEndNone;
    AVPlayerLayer *videoLayer = [AVPlayerLayer playerLayerWithPlayer:avPlayerq];
    videoLayer.frame= self.view.bounds;
    videoLayer.videoGravity=AVLayerVideoGravityResizeAspectFill;
    [self.view.layer addSublayer:videoLayer];
    [avPlayerq play];
    

    希望这可以帮助您解决问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-23
      • 1970-01-01
      • 1970-01-01
      • 2015-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-07
      相关资源
      最近更新 更多