レンダリングされたAvmutableCompositionのビデオと同期していないオーディオ

StackOverflow https://stackoverflow.com/questions/4459528

質問

を持っています AVMutableComposition 次のトラックセグメントで:

video:
    empty: Y, {{0/1 = 0.000}, {48/100 = 0.480}}
    empty: N, {{48/100 = 0.480}, {600/600 = 1.000}}
    empty: Y, {{888/600 = 1.480}, {900/600 = 1.500}}
    empty: N, {{894/300 = 2.980}, {1040/600 = 1.733}}
audio:
    empty: Y, {{0/1 = 0.000}, {48/100 = 0.480}}
    empty: N, {{48/100 = 0.480}, {45056/44100 = 1.022}}
    empty: Y, {{66224/44100 = 1.502}, {65194/44100 = 1.478}}
    empty: N, {{894/300 = 2.980}, {77824/44100 = 1.765}}

タイミングはとして表現されます CMTimeRange, 、 最初 CMTime 開始時間、2番目の時間は期間です。言い換えれば、2つのオーディオ+ビデオチャンクがあり、それらの前後に空のパディングスペースがあります。

問題は、この構成をエクスポートしてエクスポートされたビデオを再生すると、2番目の空のパディングオーディオセグメントがエクスポート中に無視されたかのように、2番目のオーディオセグメントが早すぎることです。正しいオーディオで最初のビデオセグメントを取得し、すぐに2番目のオーディオセグメントを取得し、その後、オーディオなしで2番目のビデオセグメントを取得します。

何が間違っているのでしょうか?

役に立ちましたか?

解決

問題は輸出でした。トラックセグメントを結果のファイルにコピーするだけで、パススルーエクスポートモードを使用していました。タイムスタンプも単にコピーされていると思います。これは、エクスポートされた映画のタイムラインに混乱を引き起こします。エクスポートモードをパススルー以外の何かに設定すると、問題が解決します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top