Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#53698 - [ffmpeg] 3.3 reliably muxes corrupted files
Attached to Project:
Arch Linux
Opened by c (c) - Monday, 17 April 2017, 18:39 GMT
Last edited by Maxime Gauduin (Alucryd) - Friday, 19 May 2017, 12:27 GMT
Opened by c (c) - Monday, 17 April 2017, 18:39 GMT
Last edited by Maxime Gauduin (Alucryd) - Friday, 19 May 2017, 12:27 GMT
|
DetailsDescription:
ffmpeg muxing corrupts file Additional info: * 1:3.3-1 Solution: * I've build ffmpeg n2.8.11 and that doesn't show the regression. Steps to reproduce: ffmpeg -i original.mp4 -c:a libopus -c:v copy new.mkv or ffmpeg -i original.mp4 -c:a aac -c:v copy new.mkv or anything that remuxes for that matter. Play original.mp4 and new.mkv to see the corruption. When not using hw-decoding (vaapi) some of the corruption is papered over and invisible but that just means the software decoders is more forgiving towards the corrupted stream. |
This task depends upon
Closed by Maxime Gauduin (Alucryd)
Friday, 19 May 2017, 12:27 GMT
Reason for closing: Fixed
Additional comments about closing: 3.3.1
Friday, 19 May 2017, 12:27 GMT
Reason for closing: Fixed
Additional comments about closing: 3.3.1
[ffmpeg/video] h264: co located POCs unavailable
or
WARNING: Invalid RefPicListX[] entry!!! It is not included in DPB
The same file muxed by ffmpeg 2.8.11 gives no such error and doesn't start off with visible artifacts.
It doesn't have to be mp4 -> mkv. Muxing mp4 to mp4 and just recoding the audio track will have the same effect.
Corruption of files is a severe regression and even more so since recoding media files is heavy on cpu time and maybe impossible because the source material is not available. Since there's a simple fix in the form of promoting 3.2.4/2.8.11 in arch stable index until upstream releases a fix, I'm unable to understand why users' files should knowingly be corrupted anytime they remux while changing the audio track (volume adjustments, codec changes, filters etc.).
If arch testing was ffmpeg 3.3 and it didn't land in stable yet, I wouldn't ask, but I think silent corruption is the worst bug. If it crashed, users would notice something is up.
Admittedly Arch Linux is not an LTS distro, but we have a fix for a serious regression, and waiting for upstream which has been aware of the bug long before 3.3 has been taged, if you read the duplicate upstream tickets, doesn't seem like the logical decision. The earliest bug report is https://trac.ffmpeg.org/ticket/6227 (7 weeks ago) (which I didn't find before submitting my ticket since I didn't search for dropped packets).
To be clear, I'm not mad about this and I would just like to protect the rest of the arch users.
At the very least, I would appreciate a news post on arch announce or the homepage, letting users know that they should install 2.8.11 from archive.archlinux.org and pacman ignore ffmpeg in the meantime. This could work since arch users can be expected to follow.
FYI, I just pushed a new ffmpeg2.8 to [testing], this one includes binaries which you can use instead of the 3.3 ones.
Please, if you can spare a moment, I'd like to know the implications of a downgrade which make it a hard decision to take. It's possible I don't know the problems (of a downgrade) and have been suggesting it too quickly.