[Libva] Using VA-API with a Logitech (HD Pro Webcam C920)

VanCutsem, Geoffroy geoffroy.vancutsem at intel.com
Fri Sep 21 11:51:49 PDT 2012


Hi folks,

I am trying to use the new VA-API elements to display the content captured by a Logitech HD Pro Webcam C920 on a Sandy Bridge platform.

The versions I'm using are:
- Gstreamer 0.10.36
- libva: 0.34.0
- vaapi: 0.4.0.pre1

I am using the following pipeline: gst-launch-0.10 v4l2src device=/dev/video0 ! vaapisink
But I'm getting the error below [1]

Is this something wrong in the way I construct the pipeline?

I have verified that the following pipelines work fine (i.e. not using VA-API):
- gst-launch-0.10 v4l2src device=/dev/video0 ! xvimagesink

Any idea?

Thanks,
Geoffroy

[1] Error when using vaapisink:
Setting pipeline to PAUSED ...
error: XDG_RUNTIME_DIR not set in the environment.
libva info: VA-API version 0.34.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_34
libva info: va_openDriver() returns 0
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)2304, height=(int)1536, interlaced=(boolean)false, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)2/1
Pipeline is live and does not need PREROLL ...
Got message #2 from element "vaapisink0" (element): prepare-video-context, types=(GStrv)NULL;
Got message #3 from element "vaapisink0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING;
Got message #4 from element "v4l2src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING;
Got message #5 from element "pipeline0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_PAUSED;
Got message #9 from pad "v4l2src0:src" (stream-status): GstMessageStreamStatus, type=(GstStreamStatusType)GST_STREAM_STATUS_TYPE_CREATE, owner=(GstElement)"\(GstV4l2Src\)\ v4l2src0", object=(GstTask)"\(GstTask\)\ v4l2src0:src";
Got message #10 from element "v4l2src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
Got message #12 from pad "v4l2src0:src" (stream-status): GstMessageStreamStatus, type=(GstStreamStatusType)GST_STREAM_STATUS_TYPE_ENTER, owner=(GstElement)"\(GstV4l2Src\)\ v4l2src0", object=(GstTask)"\(GstTask\)\ v4l2src0:src";
Got message #11 from element "pipeline0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
Setting pipeline to PLAYING ...
Got message #13 from element "pipeline0" (new-clock): GstMessageNewClock, clock=(GstClock)"\(GstSystemClock\)\ GstSystemClock";
New clock: GstSystemClock
Got message #14 from element "v4l2src0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING, pending-state=(GstState)GST_STATE_VOID_PENDING;
Got message #15 from element "vaapisink0" (element): prepare-xwindow-id;
Got message #16 from element "vaapisink0" (element): have-xwindow-id, xwindow-id=(gulong)8388609, window-handle=(guint64)8388609;
/GstPipeline:pipeline0/GstVaapiSink:vaapisink0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)2304, height=(int)1536, interlaced=(boolean)false, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)2/1
Got message #18 from element "vaapisink0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_READY, new-state=(GstState)GST_STATE_PAUSED, pending-state=(GstState)GST_STATE_VOID_PENDING;
Got message #20 from element "pipeline0" (async-done): no message details
Got message #23 from element "vaapisink0" (state-changed): GstMessageState, old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING, pending-state=(GstState)GST_STATE_VOID_PENDING;
Got message #7 from element "pipeline0" (eos): no message details
Got EOS from element "pipeline0".
Execution ended after 1599738214 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
/GstPipeline:pipeline0/GstVaapiSink:vaapisink0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps = NULL
Setting pipeline to NULL ...
Freeing pipeline ...

** (gst-launch-0.10:578): CRITICAL **: gst_vaapi_video_pool_put_object: assertion `G_IS_OBJECT(object)' failed
Intel Corporation NV/SA
Kings Square, Veldkant 31
2550 Kontich
RPM (Bruxelles) 0415.497.718. 
Citibank, Brussels, account 570/1031255/09

This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.



More information about the Libva mailing list