I am having the most wretched time trying to capture video using Kdenlive (or anything else for that matter). Any hints would be welcome.
My ultimate goal is to create a Let's Play video. I bought a Pinnacle Dazzle+ DVC100, which is an em28xx-based USB video capture device. The kernel recognizes the device without problem.
After fiddling around with it for far too long, I worked out how to view video from it using mplayer2:
mplayer2 tv:// -tv driver=v4l2:normid=0:width=720:height=480:forceaudio:immediatemode=0:amode=1:audiorate=48000:alsa:adevice=hw.1 -ao alsa
I also worked out how to see video using ffplay:
ffplay -f v4l2 -i /dev/video0
However, xawtv stutters all over the place, and cheese locks up eating 100% of a CPU core.
As a sort of last-ditch effort, I tried using the capture facilities in Kdenlive. I set up for an 'ffmpeg' capture from a video4linux2 device, set up the resolutions and frame rate, clicked the Play button... And nothing happened.
I tried launching Kdenlive from a terminal to see if any errors were printed out. This is what I found (apologies for the long line):
[video4linux2,v4l2 @ 0xa9004220] ioctl set time per frame(100/2997) failed [video4linux2,v4l2 @ 0xa9004220] Cannot open video device video4linux2:/dev/video0?width:720&height:480&frame_rate:29.97 : No such file or directory
I have no idea what this means, or why any application would would expect opening a URI of "video4linux2:/dev/video0?..." to work.
I note that Kdenlive does seem to partially recognize the device, since it later prints out these messages:
detected format: 16 bpp YUY2, 4:2:2, packed: YUYV Size: 48x720: detected format: 16 bpp RGB 565, LE: RGBP Size: 48x720: detected format: 8 bpp Bayer BGBG..GRGR: BA81 Size: 48x720: detected format: 8 bpp Bayer GRGR..BGBG: GRBG Size: 48x720: detected format: 8 bpp Bayer GBGB..RGRG: GBRG Size: 48x720: detected format: 12 bpp YUV411: 411P Size: 48x720:
This is consistent with the messages I've gotten from other V4L2 tools.
Anyone have any suggestions on what to try next? If I can't get this work in Linux, I may be stuck having to do it in Windows. Which would suck.