2012-04-27 20 views
11

ネストされた階層でAVMutableCompositionを使用しようとしています。そのために私は他のコンポジションにコンポジションを入れなければなりません。ネストされたAVMutableComposition

AVCompositionTest [45347:10703]次のエラーメッセージに結果そうCOMP2は>>>操作が

を完了することができなかった私が切り取ら、次のコードを使用します。

AVAsset *audioAsset = [AVAsset assetWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"02 Undefined" ofType:@"mp3"]]]; 

AVMutableComposition *comp1 = [AVMutableComposition composition]; 

BOOL success = YES; 
NSError *error = nil; 

success = [comp1 insertTimeRange:CMTimeRangeMake(kCMTimeZero, audioAsset.duration) 
         ofAsset:audioAsset 
          atTime:kCMTimeZero 
          error:&error]; 

if (!success) { 
    NSLog(@"comp1 >>> %@", [error localizedDescription]); 
} 

AVMutableComposition *comp2 = [AVMutableComposition composition]; 

success = [comp2 insertTimeRange:CMTimeRangeMake(kCMTimeZero, audioAsset.duration) 
         ofAsset:comp1 
          atTime:kCMTimeZero 
          error:&error]; 

if (!success) { 
    NSLog(@"comp2 >>> %@", [error localizedDescription]); 
} 

組成物を入れ子にすることは可能ですか?

+0

解決策を見つけましたか? – Davyd

+0

この問題を回避するために全く異なる実装を行った。このフレームワークの開発者は次のように述べています。「AVMutableCompositionのネストについては考えていませんでした。 –

+0

答えがありがとう、それを知っておいてよかったです。 – Davyd

答えて

3

それは巣AVMutableComposition資産には不可能です。