#9953: Issues playing some files in 5.1.x (regression for yuv444p videos on x86
architecture?)
-------------------------------------+-------------------------------------
Reporter: Leon Styhre | Type: defect
Status: new | Priority: important
Component: avfilter | Version:
| unspecified
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Hi!
It seems as if there was a regression introduced in the 5.1.x release as
some files won't play properly when using avfilter_graph_create_filter()
on x86 processors.
I don't have conclusive information of exactly when this happens, but it
seems as if it's possibly only affecting yuv444p files as yuv420p works
fine according to my testing. I've seen the problem on Linux, Windows and
macOS x86. macOS M1/ARM works fine though.
You can find the relevant code for my application here:
https://gitlab.com/es-de/emulationstation-de/-/blob/master/es-
core/src/components/VideoFFmpegComponent.cpp
The problematic function is VideoFFmpegComponent::setupVideoFilters()
where the video width seems to trigger the issue. When using FFmpeg 4.4,
or 5.0.1 it works fine but with 5.1.1 and 5.1.2 the video output is
garbled. If I manually add 16 pixels to the video width for the
problematic videos and pass that to avfilter_graph_create_filter(), then
the rendering will look almost correct but a bit blurry as I guess
something is slightly off with the channel alignment?
Here is one problematic video file that you can test with:
https://es-de.org/temp/grdians.mp4
Here's an example image of the problem:
https://es-de.org/temp/video_issues.png
And here's what it looks like with the workaround applied:
https://es-de.org/temp/video_workaround.png
Note that these are just screenshots from a virtual machine so not direct
output from the application, it's just meant as an illustration of the
problem.
As the problem occurs on macOS x86 and not on macOS M1/ARM I guess this is
somehow restricted to the x86 architecture?
I also tried building FFmpeg from the master branch (last commit
b0c7352cd494c88d33f032be60b5e1c4e8b092a0) and it's the same problem as in
the stable releases.
This is a pretty serious issues as it makes some files unplayable. The
workaround mentioned above is not a feasible solution for my application
as I'm not sure under what circumstances the issue occurs and there are
some adverse side effects as well.
Thanks in advance!
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9953>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
_______________________________________________
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-trac
To unsubscribe, visit link above, or email
ffmpeg-trac-requ...@ffmpeg.org with subject "unsubscribe".