RPI 1.4.5 gst_memory_map: subclass map failed

Matthew Waters ystreet00 at gmail.com
Tue May 19 18:56:28 PDT 2015


How recent is your gst-plugins-bad checkout?

Adding the glshader probably means uridecodebin is performing a
videoconvert before glshader (You can check that with the --verbose
option to gst-launch and the caps that are set on the element pads).  To
solve, depending on your checkout, add either "glupload !
glcolorconvert" or maybe just glcolorconvert is enough before the
glshader to perform colour conversion on the GPU.
Another option is to encapsulate your gl stuff in a convenience bin. 
Either glfilterbin or glsinkbin should work. e.g. uridecodebin !
glsinkbin sink="glshader ! glimagesinkelement"

On 20/05/15 03:52, Arnaud Loonstra wrote:
> When I remove the "glshader ! glimagesink" bin and just use the
> glimagesink it works (smooth also)
>
> Seems to be something with either the combined bin or the glshader?
>
> On 2015-05-19 19:33, Arnaud Loonstra wrote:
>> Hi all,
>>
>> I'm running into an issue where a gst-launch is working on a
>> Raspberry Pi but the same python code isn't...
>>
>> gst-launch-1.0 -v uridecodebin
>> uri=file:///opt/vc/src/hello_pi/hello_video/test.h264 ! glshader
>> location=shader.glsl preset=preset.glsl vars="float alpha =
>> float(1.);" ! glimagesink  sync=false
>>
>> Is working (although slow)
>>
>> But the same in a python script is giving:
>>
>> 0:00:00.675878718 10258  0x1938b40 WARN                 basesrc
>> gstbasesrc.c:3470:gst_base_src_start_complete:<source> pad not
>> activated yet
>> 0:00:00.695690831 10258  0x1938b40 WARN                 basesrc
>> gstbasesrc.c:3470:gst_base_src_start_complete:<source> pad not
>> activated yet
>> <__main__.GstURIDecodeBin object at 0xb5d358f0 (GstURIDecodeBin at
>> 0x191e058)> <GhostPad object at 0xb5d4faa8 (GstGhostPad at 0x193a630)>
>> <Bin object at 0xb5d35bc0 (GstBin at 0x1934080)>
>> 0:00:01.313655144 10258  0x1a2d800 FIXME               glshader
>> gstglshader.c:440:gst_gl_shader_compile: vertex shader info log:
>> Compiled
>> 0:00:01.316240028 10258  0x1a2d800 FIXME               glshader
>> gstglshader.c:472:gst_gl_shader_compile: vertex shader info log:
>> Compiled
>> (python3:10258): GStreamer-CRITICAL **: gst_buffer_pool_get_config:
>> assertion 'GST_IS_BUFFER_POOL (pool)' failed
>> (python3:10258): GStreamer-CRITICAL **:
>> gst_buffer_pool_config_get_params: assertion 'config != NULL' failed
>> (python3:10258): GStreamer-CRITICAL **: gst_structure_free: assertion
>> 'structure != NULL' failed
>> (python3:10258): GStreamer-CRITICAL **: gst_buffer_pool_get_config:
>> assertion 'GST_IS_BUFFER_POOL (pool)' failed
>> (python3:10258): GStreamer-CRITICAL **:
>> gst_buffer_pool_config_get_params: assertion 'config != NULL' failed
>> (python3:10258): GStreamer-CRITICAL **: gst_structure_free: assertion
>> 'structure != NULL' failed
>> (python3:10258): GStreamer-CRITICAL **:
>> gst_query_add_allocation_pool: assertion 'size != 0' failed
>> 0:00:01.507338466 10258 0xb1008f20 ERROR             GST_MEMORY
>> gstmemory.c:318:gst_memory_map: mem 0x19ace18: subclass map failed
>> 0:00:01.508560411 10258 0xb1008f20 ERROR                default
>> video-frame.c:138:gst_video_frame_map_id: failed to map video frame
>> plane 0
>> 0:00:01.564639899 10258  0x1a2d800 FIXME               glshader
>> gstglshader.c:440:gst_gl_shader_compile: vertex shader info log:
>> Compiled
>> 0:00:01.567068790 10258  0x1a2d800 FIXME               glshader
>> gstglshader.c:472:gst_gl_shader_compile: vertex shader info log:
>> Compiled
>> 0:00:01.630446950 10258 0xb1008f20 ERROR             GST_MEMORY
>> gstmemory.c:318:gst_memory_map: mem 0x1951a68: subclass map failed
>> 0:00:01.631518902 10258 0xb1008f20 ERROR                default
>> video-frame.c:138:gst_video_frame_map_id: failed to map video frame
>> plane 0
>> 0:00:01.685431487 10258 0xb1008f20 ERROR             GST_MEMORY
>> gstmemory.c:318:gst_memory_map: mem 0x19ad0c0: subclass map failed
>> 0:00:01.686610434 10258 0xb1008f20 ERROR                default
>> video-frame.c:138:gst_video_frame_map_id: failed to map video frame
>> plane 0
>> 0:00:01.731516422 10258 0xb1008f20 ERROR             GST_MEMORY
>> gstmemory.c:318:gst_memory_map: mem 0x19acdc0: subclass map failed
>> 0:00:01.732589374 10258 0xb1008f20 ERROR                default
>> video-frame.c:138:gst_video_frame_map_id: failed to map video frame
>> plane 0
>> 0:00:01.781968162 10258 0xb1008f20 ERROR             GST_MEMORY
>> gstmemory.c:318:gst_memory_map: mem 0x19acf78: subclass map failed
>> 0:00:01.783184107 10258 0xb1008f20 ERROR                default
>> video-frame.c:138:gst_video_frame_map_id: failed to map video frame
>> plane 0
>> 0:00:01.829022053 10258 0xb1008f20 ERROR             GST_MEMORY
>> gstmemory.c:318:gst_memory_map: mem 0x1a16b88: subclass map failed
>>
>> Code is here:
>>
>> https://github.com/sphaero/ZOCPApps/blob/zvideo/zvideo/zvideoplayer.py
>>
>> Any thoughts?
>>
>> Rg,
>>
>> Arnaud
>
>
>


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150520/d52f5012/attachment.sig>


More information about the gstreamer-devel mailing list