AVPlayer がビデオを再生しているときに iPhone5s でのみ発生する問題を見つけようとしています。問題は、5s 64 ビット モデルを除いて、これまでにテストしたすべてのデバイスで映画が再生されることです。
私の理論では、それは 64 ビットであることに関連しているということですが、私はそれを何にも結び付けることができませんでした。autolayout の使用に関連付けられている修正に関する同様の問題に関連する別のスタックオーバーフローの投稿を見つけました。ただし、自動レイアウトは使用していません。
このコードは、5 秒までうまく機能しています。
-(void)viewWillAppear:(BOOL)animated
{
self.player = [[AVPlayer alloc] initWithURL:[NSURL URLWithString:@"http://www.somemovieurlhere.mp4"]];
AVPlayerLayer *playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
playerLayer.frame = self.view.bounds;
playerLayer.backgroundColor = [UIColor orangeColor].CGColor;
[self.view.layer addSublayer:playerLayer];
[self.player play];
}
背景色を設定するとビューに表示されるため、レイヤーが追加されたことはわかっていますが、ムービーは再生されません。私のプロジェクトでは、次のように「currentTime」プロパティをログアウトすることで、映画が再生されていることがわかります。
float time = CMTimeGetSeconds([player currentTime]);
これは、iPhone4s からの映画の画像と、iPhone5s で見たものです。また、これをオリジナルのiphone5でテストしましたが、問題なく動作します。
これを引き起こしている可能性のあるものについてのアイデアはありますか? 助けてくれてありがとう。