<div dir="ltr">Hi,<div><br></div><div>Im running on Raspbian Jessie Lite, with gstreamer 1.8 that I've compiled, with OMX 1.0</div><div>I followed these instructions to disable X, and enable egl - but I am still having an issue.</div><div><br></div><div><a href="https://u2567673.ct.sendgrid.net/wf/click?upn=g-2BuuLoKFh9oCyrl0W26NGfSk5Lp12yLYSw499dzbp-2FarNjQiumv-2BJJzK5Go3g-2FYLSCkdJOsYvpO76iQrvTGR0wYfgJbmJUItqDddnJ5xj6qkW6u21CzdUB0cDotPxngPHZ1xvOOM5RSo1DixwYkw-2Bg-3D-3D_SqM5JSCW4zvvQIaoW1CDvMIem8taQSUrkrbhR3x77XRu7BshtfhBNpLhgP2ozglLDnCOhj2cgrtE-2FcPbN2xmoYx22VNUlQZE-2BxTzUvB-2F0PCc3x-2F7e09VQYBMqTIjiVFD5bf-2FLrF2TwVVFC-2FotgtQRnq2-2Fl0u9Ak4eTgWWfhnjQ04TQXoz-2B3yPaiYBhbpr80VaKj5WZrnR2z1wH0bQDe6reIPajQs8Oitny9ZYdGd9m9HmQvbnIiA4PX1xws50QyY">http://gstreamer-devel.966125.n4.nabble.com/gstreamer-1-0-plugin-for-videosink-without-X-td4678151.html</a><br></div><div><br></div><div>My goal is to decode h264, then re-encode it again, with utilising some opengl transform filters in between - at 720@24.</div><div><br></div><div>This is my pipeline (approximately)</div><div><span style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gst-launch-1.0 -e -vvv  uvch264src do-timestamp=1 is-live=1 device=/dev/video0 name=src auto-start=true src.vidsrc     ! h264parse ! omxh264dec ! glupload ! identity silent=0 ! gldownload ! fakesink</span><br></div><div><br></div><div>And this is the error I'm getting:</div><div><br></div><div><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Setting pipeline to PAUSED ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0: num-buffers = -1</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0: device = /dev/video0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0: num-buffers = -1</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0: device = /dev/video0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src: ready-for-capture = false</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0: num-buffers = -1</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0: device = /dev/video0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstCapsFilter:capsfilter0: caps = "video/x-h264\,\ width\=\(int\)\[\ 1\,\ 2147483647\ \]\,\ height\=\(int\)\[\ 1\,\ 2147483647\ \]\,\ framerate\=\(fraction\)\[\ 0/1\,\ 2147483647/1\ \]"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Pipeline is live and does not need PREROLL ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstIdentity:identity0: last-message = event   ******* (identity0:sink) E (type: stream-start (10254), GstEventStreamStart, stream-id=(string)2b7f5679e9f0cee0776e7c9d96ffc3b4682b26f7b8931798b4254fc99bdb<wbr>­de9b, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE, group-id=(uint)1;) 0xcaadb8</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Got context from element 'gluploadelement0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayEGL\)\ gldisplayegl0";</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Setting pipeline to PLAYING ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">New clock: GstSystemClock</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src: fixed-framerate = false</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src: rate-control = Constant bit rate</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src: average-bitrate = 2000000</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src: peak-bitrate = 2000000</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src/GstV4l2Src:v4l2src0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src.GstGhostPad:vidsrc: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ parsed\=\(boolean\)true"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ parsed\=\(boolean\)true"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstUvcH264Src:src.GstGhostPad:vidsrc.GstProxyPad:proxypad2: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ parsed\=\(boolean\)true\,\ profile\=\(string\)high\,\ level\=\(string\)4"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)au\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ parsed\=\(boolean\)true\,\ profile\=\(string\)high\,\ level\=\(string\)4"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0.GstPad:src: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ texture-target\=\(string\)2D"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstIdentity:identity0: last-message = event   ******* (identity0:sink) E (type: caps (12814), GstEventCaps, caps=(GstCaps)"video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ texture-target\=\(string\)2D"<img src="https://weddings.bitrix24.com/bitrix/images/main/smiles/4/bx_smile_wink.png" border="0" alt=";)" width="20" height="20" title="Wink" class="gmail-bx-smile" style="border: medium none;"> 0x71104110</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstIdentity:identity0.GstPad:src: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ texture-target\=\(string\)2D"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstFakeSink:fakesink0.GstPad:sink: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ texture-target\=\(string\)2D"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstIdentity:identity0.GstPad:sink: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)2:4:7:1\,\ framerate\=\(fraction\)30/1\,\ texture-target\=\(string\)2D"</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">EOS on shutdown enabled -- waiting for EOS after Error</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Waiting for EOS...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0: Internal data stream error.</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstomxvideodec.c(1670): gst_omx_video_dec_loop (): /GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">stream stopped, reason not-negotiated</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">/GstPipeline:pipeline0/GstIdentity:identity0: last-message = event   ******* (identity0:sink) E (type: eos (28174), ) 0x711041a0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">ERROR: from element /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0: Can't open display</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Additional debug info:</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">gstglbasefilter.c(445): gst_gl_base_filter_decide_allocation (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">^Chandling interrupt.</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Interrupt: Stopping pipeline ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Interrupt while waiting for EOS - stopping pipeline...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Execution ended after 0:00:07.260136528</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Setting pipeline to PAUSED ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Setting pipeline to READY ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Setting pipeline to NULL ...</p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">                                                                           </p><p style="color:rgb(83,92,105);font-family:"helvetica neue",helvetica,arial,sans-serif;font-size:14px">Freeing pipeline ...</p></div><div><br></div><div><br></div><div>Final short question - if I am using the openmax components to simply transcode h264 from one bitrate to another (i.e h264 -> omxh264decode -> omxh264encode), would forcing the data to go through glmemory provide a performance improvement?</div><div><br></div><div>Thanks</div><div><br></div><div>Adam</div><div><br></div></div>
<img src="https://u2567673.ct.sendgrid.net/wf/open?upn=SqM5JSCW4zvvQIaoW1CDvMIem8taQSUrkrbhR3x77XRu7BshtfhBNpLhgP2ozglLDnCOhj2cgrtE-2FcPbN2xmofImf4PmvgR8ONlV5SIcGCMzbR8DXsN3NymnI8eD5sQL3IQatgcyzjZ3SyZ5fGkhV-2B5lUvmqsPQnZhU6alrJiFdoHdHDk9EiFpSAzNGzNcWt71iB-2Fp3zZl2geS19v1fUo3cxxdLBQqncO3ekCi9XJubFNnpdqKbxynmQ1MaSb3gR" alt="" width="1" height="1" border="0" style="height:1px !important;width:1px !important;border-width:0 !important;margin-top:0 !important;margin-bottom:0 !important;margin-right:0 !important;margin-left:0 !important;padding-top:0 !important;padding-bottom:0 !important;padding-right:0 !important;padding-left:0 !important;"/>