4

Appleを使用してビデオを分割するときはいつでもmediafilesegmenter、次のコマンドを使用しますmedifilesegmenter video.ts -t 10。最初のセグメントを除く各セグメントで次のエラーが発生します。

segment does not contain sync frame

分割する前に、次のコマンドを使用して.MP4バージョンを.TSに変換しました。

avconv -y -i video.mp4 -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -s 640x480 -vcodec libx264 -b 64k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 7 -trellis 0 -refs 0 -coder 0 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 200k -maxrate 64k -bufsize 64k -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 30 -qmax 51 -qdiff 4 -level 30 -aspect 640:480 -g 30 -async 2 sample_64.ts

このエラーが発生する理由を誰かに教えてもらえますか?

4

2 に答える 2

1

avconvを使用する代わりに、ffmpegの最新バージョンに更新することで問題を修正しました。MP4私が最終的にビデオを変換するために使用したコマンド:

ffmpeg -y -i video.mp4 -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -s 640x480 -vcodec libx264 -b 150k -flags +loop -cmp chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 7 -trellis 0 -refs 0 -coder 0 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 200k -maxrate 150k -bufsize 150k -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 30 -qmax 51 -qdiff 4 -level 30 -aspect 640:480 -g 30 -async 2 sample_150.ts
于 2013-03-11T22:03:25.930 に答える
1

これは、10 秒の時点で I ピクチャが必要になるためです。動画のフレーム レートを確認します。10 秒のセグメントが必要な場合は、10 秒ごとに I フレームが必要です。したがって、1 秒ごと、2 秒ごと、5 秒ごと、または 10 秒ごとに挿入できます。これを行うには、sc_threshold を 0 に、keyint_interval を frame_rate*[1,2,5,10 のいずれか] に、必要なキー フレーム間隔に応じて設定します。

于 2013-03-10T18:20:11.423 に答える