After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 765041 - [MVC][decode] md5 mismatch.
[MVC][decode] md5 mismatch.
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer-vaapi
git master
Other Linux
: Normal normal
: 1.9.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-04-14 11:08 UTC by Fei
Modified: 2016-10-31 14:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Fei 2016-04-14 11:08:31 UTC
1. Testing Steps:
========================================================================
gst-launch-1.0 -q filesrc location=/media/mvc/MVCICT-1.264 '!' h264parse '!' video/x-h264,stream-format=avc,alignment=au '!' vaapidecode '!' vaapipostproc format=i420 '!' videoconvert '!' fdsink | /opt/X11R7/ffmpeg/bin/ffmpeg -v 0 -f rawvideo -s 768x480 -pix_fmt yuv420p -i pipe:0 -filter:v crop=720:480:0:0 -f md5 -

gst-launch-1.0 -q filesrc location=/media/mvc/MVCICT-1.264 '!' h264parse '!' video/x-h264,stream-format=byte-stream,alignment=nal '!' vaapidecode '!' vaapipostproc format=i420 '!' videoconvert '!' fdsink | /opt/X11R7/ffmpeg/bin/ffmpeg -v 0 -f rawvideo -s 768x480 -pix_fmt yuv420p -i pipe:0 -filter:v crop=720:480:0:0 -f md5 -

gst-launch-1.0 -q filesrc location=/media/mvc/MVCICT-1.264 '!' h264parse '!' video/x-h264,stream-format=byte-stream,alignment=au '!' vaapidecode '!' vaapipostproc format=i420 '!' videoconvert '!' fdsink | /opt/X11R7/ffmpeg/bin/ffmpeg -v 0 -f rawvideo -s 768x480 -pix_fmt yuv420p -i pipe:0 -filter:v crop=720:480:0:0 -f md5 -

2. md5 info:

MVCICT-1.264:
out md5:c12dd5be2eca69fc55bb27cbc191c83e
ref md5:394e14805bad1626ea4210008bcfe3ee

MVCICT-2.264:
out md5:9fcd7e681e27d484e98322db8be04dff
ref md5:394e14805bad1626ea4210008bcfe3ee

3. Testing Env:
========================================================================
gst_plugins_vaapi:   (master)506c9e2b5bbc50730b0083598b346b0fcc41ec78
libva:               (master)2339d10b9a39ba4f7173053b9eab8d6a151717a5
Libva_intel_driver:  (master)2c1bec03889fe759a33c087a7c107ad84bbb72fb

4. Frequency of Occurence:
========================================================================
100%

5. fail case:
Media_Dec_MVC_Gstreamer/MVCICT-1.264    FAIL
Media_Dec_MVC_Gstreamer/MVCICT-2.264    FAIL
Media_Dec_MVC_Gstreamer_nal/MVCICT-1.264    FAIL
Media_Dec_MVC_Gstreamer_nal/MVCICT-2.264    FAIL
Media_Dec_MVC_Gstreamer_au/MVCICT-1.264    FAIL
Media_Dec_MVC_Gstreamer_au/MVCICT-2.264    FAIL
Comment 1 sreerenj 2016-04-14 12:56:38 UTC
This seems to be because of the same issue we are tracking here :https://bugzilla.gnome.org/show_bug.cgi?id=764633

Driver issue: https://bugs.freedesktop.org/show_bug.cgi?id=94845
Patches not yet landed in upstream intel-driver.

Working fine for me with software converter:

gst-launch-1.0 -q filesrc location=MVCICT-1.264 ! h264parse ! video/x-h264, stream-format=avc, alignment=au ! vaapidecode ! videoconvert ! video/x-raw, format=I420 !  checksumsink2 frame-checksum=FALSE file-checksum=TRUE

394e14805bad1626ea4210008bcfe3ee
Comment 2 Fei 2016-04-29 02:09:37 UTC
libva-intel-driver:4643f94991e4e36ce3a23de63cce9fe543ed1725
gst-vaapi:018ea8b2fc193f64bcaf8f2a58e67d6a806dfce9

I checked with the latest code of intel-driver&gst-vaapi, but problem still exist.
Comment 3 sreerenj 2016-05-31 11:23:50 UTC
Your reference md5 values are based on non-interlaced content. When you use vaapipostrproc, it is doing deinterlacing by default, which will give 2*X frame md5s. 

Disable the deinterlacing using "deinterlace-mode" property of vaapipostproc for md5 comparison with your reference values.

sample pipleline:
gst-launch-1.0 -q filesrc location= MVCICT-1.264 ! h264parse ! video/x-h264, stream-format=byte-stream, alignment=nal ! vaapidecode ! vaapipostproc format=i420 deinterlace-mode=disabled !   checksumsink2 frame-checksum=FALSE file-checksum=TRUE

I have tested all reference MVC streams and no issues.
Please let us know if issue still reproducible, and close the bug otherwise.
Comment 4 Fei 2016-06-15 01:23:57 UTC
with "gst-launch-1.0 -q filesrc location= MVCICT-1.264 ! h264parse ! video/x-h264, stream-format=byte-stream, alignment=nal ! vaapidecode ! vaapipostproc format=i420 deinterlace-mode=disabled !   checksumsink2 frame-checksum=FALSE file-checksum=TRUE"

all case pass, so close this bug.

libva:
commit aa8df4c3d10d0609ffac235ffdc76c5e05763a23
libva-intel:
commit 8b1e436793360880f54402161a9f469e9b42e143
gst-vaapi:
commit fec82052d54daf1338f30d655a12fe6a72ea0a7f