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 768122 - [gstreamer-vaapi-master][h264] run2run is not bit match in h264 encoder
[gstreamer-vaapi-master][h264] run2run is not bit match in h264 encoder
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gstreamer-vaapi
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 728843 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2016-06-28 03:23 UTC by Jun Zhao
Modified: 2018-05-04 13:59 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jun Zhao 2016-06-28 03:23:18 UTC
This is the reproduce step for this issue.

DISPLAY=:0 gst-launch-1.0 filesrc location=~/bits/320x240.264 ! h264parse ! vaapidecode ! vaapiencode_h264 ! filesink location=a.264

DISPLAY=:0 gst-launch-1.0 filesrc location=~/bits/320x240.264 ! h264parse ! vaapidecode ! vaapiencode_h264 ! filesink location=b.264

diff a.264 b.264, sometimes a.264 and b.264 is not same.

CPU: BSW
OS : Ubuntu 14.04
An used inter-driver/libva master branch.
Comment 1 sreerenj 2016-06-28 13:39:01 UTC
(In reply to Jun Zhao from comment #0)
> This is the reproduce step for this issue.
> 
> DISPLAY=:0 gst-launch-1.0 filesrc location=~/bits/320x240.264 ! h264parse !
> vaapidecode ! vaapiencode_h264 ! filesink location=a.264
> 
> DISPLAY=:0 gst-launch-1.0 filesrc location=~/bits/320x240.264 ! h264parse !
> vaapidecode ! vaapiencode_h264 ! filesink location=b.264
> 
> diff a.264 b.264, sometimes a.264 and b.264 is not same.
> 
> CPU: BSW
> OS : Ubuntu 14.04
> An used inter-driver/libva master branch.

I am not sure whether the output of encoders are deterministic all the time.

In case of a decoding scenario, Output of decoded frames should be bit exact similar for any decoder implementations , at any time.

But for encoders, this is not the case. For eg: If you run the x264encoder on same input multiple times, the output encoded stream won't have similar md5 all the time (explicitly making thread count to one may give the same output though).


Are you getting the bit exact match when encoding with x264enc?

gst-launch-1.0 filesrc location= sample_i420_320_240_30.yuv ! videoparse format=i420 width=320 height=240 framerate=30 !   x264enc !  filesink location=out1.264

md5sum out*
Comment 2 sreerenj 2016-06-29 08:13:10 UTC
Had few chats with driver guys and it seems we *should * get deterministic output. 

Good that you already filed the bug against driver.
https://bugs.freedesktop.org/show_bug.cgi?id=96703

Most probably it should be something investigated from driver side.
Comment 3 Jun Zhao 2016-06-30 03:14:19 UTC
srerenj, I will follow the driver issue, Tks.
Comment 4 Víctor Manuel Jáquez Leal 2018-05-04 13:58:29 UTC
*** Bug 728843 has been marked as a duplicate of this bug. ***
Comment 5 Víctor Manuel Jáquez Leal 2018-05-04 13:59:59 UTC
This looks fixed in the driver, thus marking as invalid since it is not related with gstreamer-vaapi.

If it is not the case, please reopen