Opened 12 years ago
Closed 8 years ago
#631 closed defect (fixed)
Broken mp4 files need the h264_mp4toannexb filter and the parser
| Reported by: | Carl Eugen Hoyos | Owned by: | |
|---|---|---|---|
| Priority: | normal | Component: | avcodec |
| Version: | git-master | Keywords: | mov h264 |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | yes | |
| Analyzed by developer: | no |
Description
http://thread.gmane.org/gmane.comp.video.ffmpeg.user/33553
http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20111108/dae58f17/attachment.mp4
http://cache.gmane.org//gmane/comp/video/ffmpeg/user/33553-001.bin
File is said to play fine with WMP12, plays (too small but) without artefacts with QuickTime, shows many artefacts with FFmpeg.
Works mostly with
ffmpeg -i noStartCode.mp4 -vcodec copy -bsf h264_mp4toannexb out.h264
$ ffmpeg -i noStartCode.mp4 -qscale 2 out.avi
ffmpeg version N-34594-g3bdfef3, Copyright (c) 2000-2011 the FFmpeg developers
built on Nov 9 2011 09:56:19 with gcc 4.5.3
configuration: --cc=/usr/local/gcc-4.5.3/bin/gcc
libavutil 51. 24. 0 / 51. 24. 0
libavcodec 53. 29. 0 / 53. 29. 0
libavformat 53. 20. 0 / 53. 20. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 47. 0 / 2. 47. 0
libswscale 2. 1. 0 / 2. 1. 0
[h264 @ 0x1390720] no frame!
Seems stream 0 codec frame rate differs from container frame rate: 59.94 (60000/1001) -> 60.00 (60/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'noStartCode.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isom
creation_time : 2011-09-26 19:20:57
Duration: 00:00:37.81, start: 0.000000, bitrate: 881 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x480 [SAR 8:9 DAR 4:3], 875 kb/s, 60 fps, 60 tbr, 600 tbn, 59.94 tbc
Metadata:
creation_time : 2011-09-26 19:20:57
handler_name : ?Apple Alias Data Handler
[buffer @ 0x13885c0] w:720 h:480 pixfmt:yuv420p tb:1/1000000 sar:8/9 sws_param:
Output #0, avi, to 'out.avi':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isom
creation_time : 2011-09-26 19:20:57
ISFT : Lavf53.20.0
Stream #0:0(eng): Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 720x480 [SAR 8:9 DAR 4:3], q=2-31, 200 kb/s, 60 tbn, 60 tbc
Metadata:
creation_time : 2011-09-26 19:20:57
handler_name : ?Apple Alias Data Handler
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> mpeg4)
Press [q] to stop, [?] for help
[h264 @ 0x1390720] no frame!
Error while decoding stream #0:0
[h264 @ 0x1390720] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x1390720] no frame!
Error while decoding stream #0:0
[h264 @ 0x1390720] mmco: unref short failure
Last message repeated 1 times
...
[h264 @ 0x1390720] no frame!
Error while decoding stream #0:0
[h264 @ 0x1390720] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x1390720] no frame!
Error while decoding stream #0:0
[h264 @ 0x1390720] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x1390720] no frame!
Error while decoding stream #0:0
frame= 85 fps= 54 q=2.0 Lsize= 6264kB time=00:00:06.03 bitrate=8505.1kbits/s
video:6250kB audio:0kB global headers:0kB muxing overhead 0.226366%
Change History (4)
comment:1 by , 12 years ago
| Summary: | h264 in mov shows artefacts → h264 in mp4 shows artefacts |
|---|
comment:2 by , 12 years ago
| Status: | new → open |
|---|---|
| Summary: | h264 in mp4 shows artefacts → Broken mp4 files need the h264_mp4toannexb filter and the parser |
comment:3 by , 12 years ago
comment:4 by , 8 years ago
| Component: | undetermined → avcodec |
|---|---|
| Resolution: | → fixed |
| Status: | open → closed |
Fixed since 1534ef87c74cc66a117bf61c467641c2129bc964
Note:
See TracTickets
for help on using tickets.



That is a seriously broken file, it has each NAL in a separate "frame".
Plays fine with -flags2 chunks (if that does not work with your FFmpeg version, try -flags2 0x8000 instead).