scheutzo <[email protected]> added the comment:
Current command line:
ffmpeg -fflags +genpts -r 30000/1001 -f h264 -i infile.h264 -vcodec copy -f
mpegts out.ts
I have debugged this partially. The mpegts muxer is unhappy because the PTS is
not set on the first AVPacket. And putting a breakpoint on the only
av_read_frame() in ffmpeg.c confirms that it is not set:
Breakpoint 3, av_transcode (output_files=0x8614a80, nb_output_files=1,
input_files=0x860e7e0, nb_input_files=1, stream_maps=0x8616b80,
nb_stream_maps=0)
at ffmpeg.c:2544
2544 if(ret == AVERROR(EAGAIN)){
(gdb) print pkt
$6 = {pts = -9223372036854775808, dts = -9223372036854775808, data = 0x8b89b10
"",
size = 9669, stream_index = 0, flags = 1, duration = 20020,
destruct = 0x810a270 <av_destruct_packet>, priv = 0xbfffec94, pos = 0,
convergence_duration = 0}
(gdb)
The pkt.duration field is correct.
My input file contains field pictures, not frame pictures.
Maybe the genpts code does not handle field pictures correctly?
________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2081>
________________________________________________