Opened 11 years ago
Closed 7 years ago
#5090 closed defect (fixed)
fragmented mp4 have bad dts on video track
| Reported by: | alberto.zacchetti | Owned by: | |
|---|---|---|---|
| Priority: | important | Component: | avformat |
| Version: | git-master | Keywords: | mov regression |
| Cc: | Michael Niedermayer, michel.gutierrez@gmail.com, v0qiu24elio.ldb63qpfmjrkkiv9el@gmail.com | Blocked By: | |
| Blocking: | Reproduced by developer: | yes | |
| Analyzed by developer: | no |
Description
ffmpeg version 2.8.3-39.1
As you can see from the attached log file, any fragments of video track begin with a dts that is not the continuation of the previous fragment, while in the audio track, dts grows properly, but both audio and video have tfdt box with the correct timing.
Indeed ffplay it does not play the video, but audio only.
However this has started to happen only recently, because before everything was ok.
Attachments (2)
Change History (13)
by , 11 years ago
| Attachment: | log-ffplay.txt added |
|---|
by , 11 years ago
| Attachment: | videofrag.mp4 added |
|---|
comment:1 by , 11 years ago
| Analyzed by developer: | unset |
|---|---|
| Component: | ffplay → undetermined |
| Keywords: | regression added; fragmented mp4 dts tfdt removed |
| Priority: | critical → important |
Please test current FFmpeg git head and provide the command line that allows to reproduce the issue together with the complete, uncut console output to make this a valid ticket.
comment:2 by , 11 years ago
The command line is included in log-ffplay.txt attached and the fragmented mp4 file used in this test is videofrag.mp4 also attached. I will try the last release.
comment:3 by , 11 years ago
| Component: | undetermined → avformat |
|---|---|
| Keywords: | mov added |
| Reproduced by developer: | set |
| Status: | new → open |
| Version: | 2.8.3 → git-master |
Regression since 4ab56667594842283dc5ae07f0daba2a2cb4d3af - related to ticket #3842.
$ ffmpeg -i videofrag.mp4 -qscale 2 out.avi
ffmpeg version N-77351-gec1b95d Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.7 (SUSE Linux)
configuration: --enable-gpl
libavutil 55. 11.100 / 55. 11.100
libavcodec 57. 18.100 / 57. 18.100
libavformat 57. 20.100 / 57. 20.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 21.100 / 6. 21.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'videofrag.mp4':
Metadata:
major_brand : iso5
minor_version : 1
compatible_brands: avc1iso5dash
creation_time : 2015-12-16 17:00:57
Duration: 00:00:56.08, start: 0.000000, bitrate: 265 kb/s
Stream #0:0(ita): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x480, 14589 kb/s, SAR 1:1 DAR 3:2, 29.97 fps, 90k tbr, 90k tbn, 180k tbc (default)
Metadata:
creation_time : 2015-12-16 17:00:57
handler_name : VideoHandler
Stream #0:1(ita): Audio: aac (LC) (mp4a / 0x6134706D), 32000 Hz, stereo, fltp, 63 kb/s (default)
Metadata:
creation_time : 2015-12-16 17:00:57
handler_name : SoundHandler
Please use -q:a or -q:v, -qscale is ambiguous
Output #0, avi, to 'out.avi':
Metadata:
major_brand : iso5
minor_version : 1
compatible_brands: avc1iso5dash
ISFT : Lavf57.20.100
Stream #0:0(ita): Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 720x480 [SAR 1:1 DAR 3:2], q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn, 29.97 tbc (default)
Metadata:
creation_time : 2015-12-16 17:00:57
handler_name : VideoHandler
encoder : Lavc57.18.100 mpeg4
Side data:
unknown side data type 10 (24 bytes)
Stream #0:1(ita): Audio: ac3 ([0] [0][0] / 0x2000), 32000 Hz, stereo, fltp, 192 kb/s (default)
Metadata:
creation_time : 2015-12-16 17:00:57
handler_name : SoundHandler
encoder : Lavc57.18.100 ac3
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> mpeg4 (native))
Stream #0:1 -> #0:1 (aac (native) -> ac3 (native))
Press [q] to stop, [?] for help
Past duration 0.985344 too large
Past duration 0.999016 too large
Past duration 0.999443 too large
Past duration 0.999260 too large
Past duration 0.999748 too large
Past duration 0.998711 too large
Past duration 0.999199 too large
Past duration 0.999992 too large
frame= 121 fps=0.0 q=2.0 size= 3638kB time=00:00:41.18 bitrate= 723.7kbits/s dup=0 drop=15[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f2b3c0] DTS 336330 < 357968 out of order
frame= 121 fps=0.0 q=2.0 Lsize= 4341kB time=00:01:00.00 bitrate= 592.6kbits/s dup=0 drop=1678 speed= 105x
video:2892kB audio:1406kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.975764%
The output file is completely broken.
comment:5 by , 10 years ago
I tried to find out why this was broken in 2.8 but I wasn't successful:
http://thread.gmane.org/gmane.comp.video.ffmpeg.cvs/95515/focus=96922
comment:6 by , 10 years ago
| Cc: | added |
|---|
comment:7 by , 10 years ago
Still no change: ffplay 2.8.6 continues to give the same problem.
I'm sorry, because now many videos are fragmented because of the dash technology and ffmpeg is not more able to handle them.
I find it strange that it can not be fixed this bug that clearly refers to the dts of the video track.
comment:9 by , 9 years ago
| Cc: | added |
|---|
comment:10 by , 8 years ago
| Cc: | added |
|---|
comment:11 by , 7 years ago
| Resolution: | → fixed |
|---|---|
| Status: | open → closed |
Fixed by Jun Li in c23797bc336c507188a502a5758b24a4595f14ec



fragmented mp4