我很难让 playbin 元素在VM上正常工作。当我运行管道时:
gst-launch-1.0 playbin uri=https://www.freedesktop.org/software/gstreamer-sdk/data/media/sintel_trailer-480p.webm
我收到以下错误:
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'source': gst.soup.session=context, session=(SoupSession)NULL, force=(boolean)false;
Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0";
Got context from element 'playsink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0";
Redistribute latency...
ERROR: from element /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstGLImageSinkBin:glimagesinkbin0/GstGLColorConvertElement:glcolorconvertelement0: Failed to convert video buffer
Additional debug info:
gstglcolorconvertelement.c(218): gst_gl_color_convert_element_prepare_output_buffer (): /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstGLImageSinkBin:glimagesinkbin0/GstGLColorConvertElement:glcolorconvertelement0
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
有人知道为什么元素 glcolorconvertelement0 无法转换视频缓冲区吗?
我目前正在使用xubuntu(18.04.1),最后安装了gstreamer pakage(1.14.1)的VM上工作。
其他信息:当我尝试播放本地.mp4文件时,我也遇到了相同的错误。在VM外部,一切正常。
谢谢大家