Hello, I am using the master version of v4l2-utils, found the example to Stream video from a capture video device (/dev/video1) to an output video device (/dev/video2) here: https://manpages.debian.org/unstable/v4l-utils/v4l2-ctl.1.en.html Here are the steps I have followed. 1) sudo modprobe vivid 2) v4l2-ctl -d0 --stream-mmap --out-device /dev/video3 --stream-out-dmabuf Here's the output v4l2-ctl --list-devices <snip> vivid (platform:vivid-000): /dev/video2 /dev/video3 /dev/radio0 /dev/radio1 /dev/vbi0 /dev/vbi1 /dev/swradio0 /dev/media1 HD WebCam: HD WebCam (usb-0000:00:14.0-7): /dev/video0 /dev/video1 /dev/media0 </snip> Error out on running the program: <snip> VIDIOC_G_FMT returned -1 (Invalid argument) <VIDIOC_QBUF: failed: Invalid argument handle out -1 handle out2in -1 </snip> > https://git.linuxtv.org/v4l-utils.git/tree/utils/v4l2-ctl/v4l2-ctl-streaming.cpp#n2669 While I was able to solve the VIDIOC_G_FMT returned -1 (Invalid argument) by changing the "fd.g_fmt" to "out_fd.g_fmt" Regards, Vedant