http://bugs.winehq.org/show_bug.cgi?id=58425
Bug ID: 58425 Summary: video/x-h264 alignment=au caps causes artifacts and crashes with nal-aligned streams Product: Wine Version: 10.11 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winegstreamer Assignee: wine-bugs@winehq.org Reporter: mkrsym1@gmail.com Distribution: ---
Multiple applications try to playback nal-aligned streams, but Wine always sets the alignment caps to au. This causes h264parse to work incorrectly, which in turn leads to various unpleasant effects, depending on the decoder used.
Some examples: - libav's avdec_h264 is the most tolerant one, and only displays brief image artifacts when au-alignment is broken. - OpenH264 displays major image and temporal artifacts on au-alignment break, sometimes hangs. - NVIDIA's nvh264dec immediately crashes the entire application on au-alignment break.
This issue is completely fixed by not setting the alignment caps at all and letting h264parse do it's job, as done in this commit: https://github.com/ValveSoftware/wine/commit/0304a42
Not sure why it's set in the first place. Maybe that patch can be merged into Wine master, or is there something that I'm missing?