FFMPEG MXF XDCAM HD422 でセグメントをエンコードする方法

FFMPEG MXF XDCAM HD422 でセグメントをエンコードする方法

Decklink カードからのフィードをセグメントごとに MXF XDCAM HD422 にエンコードしようとしているので、次のコマンドラインを使用します。

ffmpeg.exe -f dshow -video_size 1920x1080 -r 25 -pixel_format uyvy422 -rtbufsize 702000k -framerate 25 ^
-i video="Decklink Video Capture":audio="Decklink Audio Capture" ^
-c:v mpeg2video -b:v 50M -maxrate 50M -minrate 50M -bf 2 -g 12 ^
-r 25 -pix_fmt yuv422p ^
-filter_complex "[0:a]channelsplit=channel_layout=stereo[left][right]" ^
-acodec pcm_s24le -ar 48000 -map 0:0 -map "[left]" -map "[right]" -f mxf ^
-flags +ilme+ildct -top 1 ^
-f segment -segment_time 20 -segment_atclocktime 1 -strftime 1 -reset_timestamps 1 ^
"REC__%%d-%%m-%%Y__%%Hh%%Mm%%Ss__XDCAM_422_Field_UP.MXF"

コマンドラインは正常に動作しますが、結果のセグメントは正しくありません。 最初のセグメントの後のセグメントでは、常に最初の 3 つのフレームが 3 番目のフレームと複製されます。 使用する ffmpeg のバージョンに関係なく、すべて同じ動作になります。

これを正しく実現する方法を知っている人はいますか? それともバグですか? FFmpeg バグ トラッカーにレポートを送信しました:https://trac.ffmpeg.org/ticket/9577

どのようなヒントでも大歓迎です。

あけましておめでとう。

関連情報