#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".

Reply via email to