Firefox says mp4s with crf 0 are corrupt
Categories
(Core :: Audio/Video: Playback, defect, P3)
Tracking
()
People
(Reporter: kimockb, Unassigned)
Details
(Keywords: parity-chrome)
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0
Steps to reproduce:
Created an mp4 video using ffmpeg with the options:
ffmpeg -r 30 -f image2 -s 1920x1080 -i %03d.png -vcodec libx264 -crf 0 -pix_fmt yuv420p video.mp4
Actual results:
Attempting to open this mp4 file with Firefox displays the message "Video can't be played because the file is corrupt"
Expected results:
The video should play. VLC plays it and as far as I can tell 0 is a valid crf value.
I've tried this with multiple videos but all my examples are huge with crf 0. If you can't whip up something on your end I'm happy to provide an example.
Updated•7 years ago
|
Looking into the files generated I think the issue is that crf forces yuv444p despite the pix_fmt arg. I suppose this makes sense in that crf 0 is lossless and if you start subsampling you're introducing loss. Because of limitations in the decoders we on different platforms, we cannot ensure the ability to decode 444.
Description
•