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 739714 - [SNB|IVB|BYT|HSW|BDW Regression][Media][Decode]Internal data stream error when doing JPEG decoding test
[SNB|IVB|BYT|HSW|BDW Regression][Media][Decode]Internal data stream error whe...
Status: VERIFIED FIXED
Product: gstreamer-vaapi
Classification: Other
Component: general
git master
Other Linux
: Normal major
: ---
Assigned To: gstreamer-vaapi maintainer(s)
gstreamer-vaapi maintainer(s)
Depends on:
Blocks: 731852
 
 
Reported: 2014-11-06 08:04 UTC by zhixinx.liu
Modified: 2014-11-18 07:11 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
vaapidecode: only expose supported profiles when needed (2.24 KB, patch)
2014-11-12 06:51 UTC, Gwenole Beauchesne
none Details | Review

Description zhixinx.liu 2014-11-06 08:04:09 UTC
Internal data stream error when doing JPEG decoding test, regression fail.

1. Testing Steps:
========================================================================
1.run command "gst-launch-1.0 filesrc location=/media/mjpeg/CITY_704x576_30_orig_01.jpg ! jpegparse '!' vaapidecode '!' videoconvert '!' vaapisink sync=false"
2.check the screen that there is no video output. log:
[root@x-bdwmedia opt]# gst-launch-1.0 filesrc location=/media/mjpeg/CITY_704x576_30_orig_01.jpg ! jpegparse '!' vaapidecode '!' videoconvert '!' vaapisink sync=false
libva info: VA-API version 0.36.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /opt/X11R7/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_36
libva info: va_openDriver() returns 0
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;
ERROR: from element /GstPipeline:pipeline0/GstVideoParse:videoparse0: Internal data stream error.
Additional debug info:
gstrawparse.c(471): gst_raw_parse_loop (): /GstPipeline:pipeline0/GstVideoParse:videoparse0:
stream stopped, reason not-negotiated
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

2. Bisect Information:
========================================================================
the Bisect information will be uploaded later.

3. Testing Env:
========================================================================
Libva:(master)ccd93de5a707e92a629cccd595757c8d436fa3cc
Libva_intel_driver:(master)24cba20a119c96556ae4dc9a90043896ea70e567
Gstreamer10:(1.2)861ca3d6787d84c9bea7110cb46821e9b8f63aff
Gst_plugins_base10:(1.2)df7e7daa29ba14447b4d8dd43c35d8a3ad9e4984
Gst_plugins_good10:(1.2)08ab260b8a39791e7e62c95f4b64fd5b69959325
Gst_plugins_bad10:(1.2)277b8c34e7214177764833b73f17e43ced496f8f
Gst_plugins_ugly10:(1.2)2233d97e6ad1a3988d9a9ca0fc0cf00ec4031a8f
Gst_plugins_vaapi10:master)eeb43989c1cf92aa3bd88e330ecea95bb8ab3319

4. Frequency of Occurence:
========================================================================
100%
Comment 1 zhixinx.liu 2014-11-11 06:23:14 UTC
Bisect Information:

b58bdd1a1239c2996c42b417db31632d596de9c4 is the first bad commit
commit b58bdd1a1239c2996c42b417db31632d596de9c4
Author: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Date:   Wed Oct 29 15:46:47 2014 +0200

    vaapidecode: Expose the supported profiles as caps to upstream

    This will allows the playbin to fallback to Software Decoder
    if the Hardware Decoder does not support a particular profile.

    https://bugzilla.gnome.org/show_bug.cgi?id=730997
Comment 2 Gwenole Beauchesne 2014-11-12 06:21:37 UTC
The concept of "profile" does not really exist in JPEG. However, we could use the SOFn markers to expose them. Since this is a jpegparse related feature that might only appear in upstream GStreamer (towards version 1.6), this is not something I could formally support from within gstreamer-vaapi.

However, we could opt for (i) bypassing profile appends for JPEG at the gstreamer-vaapi decoder level, or (ii) reporting explicit profiles only for GStreamer >= 1.6.
Comment 3 Gwenole Beauchesne 2014-11-12 06:51:30 UTC
Created attachment 290454 [details] [review]
vaapidecode: only expose supported profiles when needed

Please try the attached patch. Thanks.
Comment 4 zhixinx.liu 2014-11-13 07:15:29 UTC
using this patch to retest JPEG decoding, it can work well. But
using this patch to retest VP8 decoding, the issue still existed.
Comment 5 Focus.Luo 2014-11-14 04:01:54 UTC
Changed to High priority, because it caused many test cases failed and big pass rate drop.
Comment 6 Gwenole Beauchesne 2014-11-14 05:39:42 UTC
(In reply to comment #5)
> Changed to High priority, because it caused many test cases failed and big pass
> rate drop.

So, the patch doesn't help in the end?
Comment 7 Gwenole Beauchesne 2014-11-14 14:37:34 UTC
commit d1b7dc21f82124718da5f8560319b43d190f3fdd
Author: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
Date:   Wed Nov 12 07:46:53 2014 +0100

    vaapidecode: only expose supported profiles when needed.
    
    JPEG and VP8 codecs do not really support the concept of "profile". So,
    don't try to expose any set that wouldn't be supported by jpegparse, or
    ivfparse for instance.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=739713
    https://bugzilla.gnome.org/show_bug.cgi?id=739714
Comment 8 zhixinx.liu 2014-11-18 07:11:38 UTC
Verify Pass with new commit.