2
私たちはオーディオ(.mov)を使用して既存のビデオを取り込み、より電子メールに適したバージョンを作成しようとしています。かなり簡単で、以下のコードは必要なものだけを処理します。AVAssetExportSessionオーディオなし(iPhone)、iPadで動作
iPad2(4.3.3)では、デバッグで動作します&リリースは常にビルドされています。 iPhone 4(4.3.3)または第4世代iPod Touchでは音声はありません。時々、それが何を引き起こすのかについて明確な相関はなく、iPhone上で作業を開始します。アプリを削除して再構築/インストールしても機能しなくなりました。
AVURLAsset* asset = [AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:sourcePath] options:nil];
session = [[AVAssetExportSession alloc] initWithAsset:asset
presetName:AVAssetExportPresetLowQuality];
session.outputURL = [NSURL fileURLWithPath:destPath];
session.outputFileType = AVFileTypeQuickTimeMovie;
session.shouldOptimizeForNetworkUse = YES;
[session exportAsynchronouslyWithCompletionHandler:^{
[self performSelectorOnMainThread:@selector(conversionFinished)
withObject:nil
waitUntilDone:NO]; }];
私はそれを両方の方法でテストしましたが、違いはありません。 AVAssetWriterを使用してムービーを作成し、[assetWriterInput markAsFinished]および[assetWriter finishWriting]を呼び出しています。それはデバイス上でうまくいく(またはxfer後のデスクトップ上で)。 – Jer
実際これは大きなヒントです!録画を終えてアプリケーションを強制終了し、小さなビデオを作成するために入ると、それは機能します。それでは、理由を調べてみましょう。 – Jer
私はこのAVスタッフが正しく動作するにはブードーが必要だと誓います。 –