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 729085 - Denoise failed when denoise value is not equal to 0
Denoise failed when denoise value is not equal to 0
Status: RESOLVED NOTABUG
Product: gstreamer-vaapi
Classification: Other
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: gstreamer-vaapi maintainer(s)
gstreamer-vaapi maintainer(s)
Depends on:
Blocks: 731852
 
 
Reported: 2014-04-28 08:11 UTC by zhenxiang.li
Modified: 2014-08-25 07:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
scrot (1.12 MB, image/png)
2014-04-28 08:14 UTC, zhenxiang.li
Details

Description zhenxiang.li 2014-04-28 08:11:40 UTC
Command line:
----------------------------

(1)gst-launch-1.0 -v filesrc location=/root/media_tools/$F.enc.mp4  ! qtdemux ! vaapidecode ! vaapipostproc denoise=0.3 ! vaapisink sync=false

The *.mp4 file in the above command line is generated by: 
gst-launch-1.0 -v filesrc location=$F ! videoparse format=i420 width=${WIDTH} height=${HEIGHT} ! ${vaapienc} rate-control=cqp init-qp=${QPVALUE} ${period}=${intra_period} max-bframes=${b_frame_num} ${cabac} qtmux faststart=true ! filesink location=$F.enc.mp4 

Summary:
----------------------------
The video played with blurred screen when the vaapipostproc denoise != 0(0-1 and include 1);

See the attachment file for more details about the image.

Testing Env:
----------------------------
Libva:          (master)254f05c124094b544aaa2b92ed3bb17acf56e771
Libva_intel_driver:             (master)da837dc0334e95b77be7389771732494f6f3917a
Gstreamer10:            (1.0)4e880d4d1e151ea64f83c28b5c3e1bbc06c57903
Gst_plugins_base10:             (1.0)2dd3f028c1e6dea799d7496639f53220818b20b1
Gst_plugins_good10:             (1.0)643d425f51f81b56deec16c01162637546708ee5
Gst_plugins_bad10:              (1.0)0587ab41b4f9979e9cfc11011ed5c970569ee3d3
Gst_plugins_ugly10:             (1.0)c7c911b8320576429e4a4234a1e29ec7436e6814
Gst_plugins_vaapi10:            (master)f2b0d02168e73feaae0023ccf864cea4805a0b88
Comment 1 zhenxiang.li 2014-04-28 08:14:07 UTC
Created attachment 275300 [details]
scrot
Comment 2 zhenxiang.li 2014-04-28 08:15:42 UTC
This issue can be reproduced with a common *.MP4 file
Comment 3 zhenxiang.li 2014-04-29 10:43:09 UTC
Besides, gst-vaapi-010 cannot reproduce this issue.
Comment 4 Gwenole Beauchesne 2014-06-18 17:15:28 UTC
Hi, I don't see this issue. What platform are you using?
Comment 5 zhixinx.liu 2014-07-04 08:50:03 UTC
BDW/HSW can reproduce this issue with gsteamer 1.2.
test command:
gst-launch-1.0 filesrc location=/home/Stream/MP4_h264_nHD_30FPS_580Kbps_AAC_44.1KHz_64Kbps_10sec0.7Mb_BBB-300.MP4 ! qtdemux ! vaapidecode ! vaapipostproc denoise=1 ! vaapisink sync=false

test env:
Libva:                 (master)c61d8c6ce9ffc27320e9e177c1e1123d5f1b5014
Libva_intel_driver:    (master)c5cb17ea86f0065a939d3636dd26651c93d497c8
Glib:                  (master)c3842d1969feace4bfb12919be730e75e53877d9
Gstreamer10:           (1.2)b8b6dbd36dd28b97b3e6ec7ef512fc01c270f4ec
Gst_plugins_base10:    (1.2)4c31880bf0a4b720ab90fc8753fbbcc72275d6f8
Gst_plugins_good10:    (1.2)177dfaebdc1560b7e8830a29e1bc4966eba3d736
Gst_plugins_bad10:     (1.2)277b8c34e7214177764833b73f17e43ced496f8f
Gst_plugins_ugly10:    (1.2)2233d97e6ad1a3988d9a9ca0fc0cf00ec4031a8f
Gst_plugins_vaapi10:   (master)e6cdacee65f221e4c464cff5cc5f2bbb74a75146
Comment 6 Gwenole Beauchesne 2014-08-20 11:58:39 UTC
(In reply to comment #5)
> BDW/HSW can reproduce this issue with gsteamer 1.2.
> test command:
> gst-launch-1.0 filesrc
> location=/home/Stream/MP4_h264_nHD_30FPS_580Kbps_AAC_44.1KHz_64Kbps_10sec0.7Mb_BBB-300.MP4
> ! qtdemux ! vaapidecode ! vaapipostproc denoise=1 ! vaapisink sync=false

Verified. The NoiseReduction feature is not properly implemented in the VA intel-driver.

Note: if you believe this worked in a previous version of GStreamer, this is most likely because the test is wrong or the output did not get denoised at all... I can't see how this could work in the current state.
Comment 7 Gwenole Beauchesne 2014-08-20 14:55:12 UTC
Please try with the following components:

* libva-intel-driver:
  <https://github.com/gbeauchesne/libva-intel-driver/> ("17.vpp.vebox" branch)

* gstreamer-vaapi:
  <https://github.com/gbeauchesne/gstreamer-vaapi/> ("vpp.fixes" branch)

The VA driver changes are the key.

Note that fine-grained denoise level is not handled yet either. So, anything that is not the default denoise value would generate the same.
Comment 8 Gwenole Beauchesne 2014-08-25 07:24:08 UTC
This is not a gstreamer-vaapi bug. Tested with the above mentioned patches. It works. Closing.