[FFmpeg-user] Ffmpeg + VAAPI on Polaris GPU not recovering after corrupt video

Tom W teeedubb at gmail.com
Thu Dec 2 12:12:26 EET 2021


Hi All,

I have been experiencing heavy artifacting in dvb-t live TV streams 
after corruption in videos with ffmpeg + vaapi + AMD polaris GPU 
(rx560). The video in question is a live TV stream and I am able to 
reproduce the issue when the recording is played from a local harddisk. 
The issue occurs in linux and windows, in kodi, vlc and ffplay and the 
videos recover OK when played on nvidia and intel gpu's on both windows 
and linux. The video plays ok if I disable vaapi (most of my testing is 
done in linux).

I have tried updating mesa to the current release, using a 5.15 kernel 
and tried various operating systems (manjaro, libreelec nighty, ubuntu 
20.04, windows 10).

output of
ffmpeg -hwaccel vaapi -i Downloads/The\ Project.ts -vcodec rawvideo 
-acodec copy -f matroska -sn - | ffplay -report -i -
https://paste.ubuntu.com/p/tP9zrjZ796/

snippets of kodi.log from when the corruption occurs (I can provide more 
logs)
2021-11-30 20:36:36.863 T:333115   DEBUG <general>: 
ffmpeg[0x56321c011040X]: [mpegts] Packet corrupt (stream = 0, dts = 
2007374635).

2021-11-30 20:52:18.128 T:366796   DEBUG <general>: 
ffmpeg[0x56321b9c1730X]: [mpegts] Packet corrupt (stream = 0, dts = 
2209044203).
2021-11-30 20:52:33.301 T:372941   DEBUG <general>: 
ffmpeg[0x7f559c0dec80X]: [image2] Custom AVIOContext makes no sense and 
will be ignored with AVFMT_NOFILE format.

vainfo
http://ix.io/3EE0 <http://ix.io/3EE0>

mediainfo of a longer version of the sample video
https://paste.ubuntu.com/p/wthYZhVMMf/ 
<https://paste.ubuntu.com/p/wthYZhVMMf/>

video of artefacting
https://youtu.be/EJCfi4RP5Pg <https://youtu.be/EJCfi4RP5Pg>

Sample video (200mb) Corruption occurs at around 4m40s.
https://www.dropbox.com/s/aaiwgvsou10aq2w/corruption-recovery-amd.ts?dl=0

I can provide more info and samples if requested.
Anyone have any thoughts on the issue?
Thanks in advance.


More information about the ffmpeg-user mailing list