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 747972 - vaapidecode: make it work with waylandsink
vaapidecode: make it work with waylandsink
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gstreamer-vaapi
unspecified
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks: 748634
 
 
Reported: 2015-04-16 09:08 UTC by Víctor Manuel Jáquez Leal
Modified: 2017-11-09 19:16 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Víctor Manuel Jáquez Leal 2015-04-16 09:08:52 UTC
Right now, if you play a video using as video sink waylayndsink, the pipieline fails:

0:00:00.213794717  5057 0x7f949c26ee80 DEBUG            waylandsink gstwaylandsink.c:535:gst_wayland_sink_preroll:<waylandsink0> preroll buffer 0x7f94a00c4890
0:00:00.213930788  5057 0x7f949c26ee80 DEBUG            waylandsink wlshmallocator.c:170:gst_wl_shm_memory_construct_wl_buffer:<wlshmallocator0> Creating wl_buffer of size 4 (1 x 1, stride 4), format BGRx
0:00:00.213978233  5057 0x7f949c26ee80 DEBUG            waylandsink wlshmallocator.c:170:gst_wl_shm_memory_construct_wl_buffer:<wlshmallocator0> Creating wl_buffer of size 8355840 (1920 x 1088, stride 7680), format BGRA
0:00:00.0 / 0:09:56.4                                                                ^MPrerolled.^M0:00:00.264382448  5057 0x7f949c26ee80 DEBUG            waylandsink wlshmallocator.c:170:gst_wl_shm_memory_construct_wl_buffer:<wlshmallocator0> Creating wl_buffer of size 8355840 (1920 x 1088, stride 7680), format BGRA

** (gst-play-1.0:5057): CRITICAL **: gst_wl_shm_memory_construct_wl_buffer: assertion 'shm_mem->fd != -1' failed
0:00:00.306617236  5057 0x7f949c26ee80 ERROR            waylandsink gstwaylandsink.c:700:gst_wayland_sink_render:<waylandsink0> could not create wl_buffer out of wl_shm memory
0:00:00.307085939  5057 0x7f94ac0044f0 ERROR            vaapidecode gstvaapidecode.c:324:gst_vaapidecode_push_decoded_frame: video sink rejected the video buffer (error: error [-5])
0:00:00.307108041  5057 0x7f94ac0044f0 ERROR            vaapidecode gstvaapidecode.c:412:gst_vaapidecode_handle_frame: push loop error after decoding -5
Comment 1 Scott D Phillips 2015-11-25 21:25:57 UTC
I'm not seeing this issue. This pipeline runs ok for me: `videotestsrc ! x264enc ! vaapidecodebin ! waylandsink`
Comment 2 Víctor Manuel Jáquez Leal 2015-11-27 09:14:43 UTC
(In reply to Scott D Phillips from comment #1)
> I'm not seeing this issue. This pipeline runs ok for me: `videotestsrc !
> x264enc ! vaapidecodebin ! waylandsink`

Cool!

I guess now waylandsink can handle external buffers. Though, I would be nice if vaapidecode/vaapipostproc could accept wayland buffers, to avoid memcopy. But that feature would need to stabilize the gstwayland API.
Comment 3 sreerenj 2016-03-24 16:56:11 UTC
Moving to Product:GStreamer, Component:gstreamer-vaapi
Comment 4 Víctor Manuel Jáquez Leal 2017-11-09 19:16:27 UTC
well, I have neglecting this since long ago. waylandsink works with memcopy.

I'll close this as NOTABUG 

If we need zero copy, we will create another bug.