Trying to record compressed webcam video without choppiness
Posted: 03 Feb 2012 13:07
Ever since I migrated from WinXP to Win7, I've been trying to find a replacement for the extremely easy-to-use video recording facility in Windows Movie Maker which, for reasons beyond my comprehension, has been removed in more recent versions of the program. MS's official position on this is to "use the software that comes with your webcam" but of course this isn't always possible, either because a webcam doesn't have any software or because the software that comes with it is such a poorly-written joke as to be useless. I'm not sure why MS would think removing webcam-recording functionality from a popular program of theirs in the age of Youtube would be a good idea but I guess it's just something I have to live with.
I recently found out VLC could do just this. I've been playing around with it this evening (I'm using v1.1.11), and here are my results.
The "record" button exposed by the "Advanced Controls" option, while it works and is easy to use, saves uncompressed video. Maybe this would be fine if I had a 2TB drive, but with only 80GB free on my drive this makes the record button a bit impractical. However the resulting video is buttery smooth, with no choppiness.
But if I use the Convert/Save option to open my webcam and save to a file on disk (and I've tried a number of different transcoders -- WebM, Theora, WMV, H.264), I end up with a choppy recording. My computer isn't sluggish by any means. I have an i7 2600k with 4GB RAM. Even so, VLC uses more than a full core's worth of CPU and seems to struggle with the operation, sometimes causing several-second pauses while recording. It's not just the view while recording, either; the resulting video has these stutters and pauses as well. I've tried lowering the bitrate considerably with no improvement. I'm a little surprised considering I used to be able to record 1Mbit/s WMV with WMM on my old Pentium M laptop with no difficulty. We're talking about a CPU that's seven years older, single-core, and 32-bit.
I've dug around in the preferences and found the Stream Output -> Sout stream -> Transcode -> Number of Threads option, and tried increasing it to no avail.
Now I don't know what to do. I don't think it's IO-bound because the stutters and pauses don't correspond to HDD access, but instead to fluctuations in the amount of memory that VLC is using. Besides, the uncompressed recording works fine, and it absolutely dumps data to the HDD, and the compressed video is MUCH smaller. If it is CPU-bound, I can't fathom why; my computer is hardly breaking a sweat doing it, and yet it stutters anyway.
Has anyone else been able to figure this out?
I recently found out VLC could do just this. I've been playing around with it this evening (I'm using v1.1.11), and here are my results.
The "record" button exposed by the "Advanced Controls" option, while it works and is easy to use, saves uncompressed video. Maybe this would be fine if I had a 2TB drive, but with only 80GB free on my drive this makes the record button a bit impractical. However the resulting video is buttery smooth, with no choppiness.
But if I use the Convert/Save option to open my webcam and save to a file on disk (and I've tried a number of different transcoders -- WebM, Theora, WMV, H.264), I end up with a choppy recording. My computer isn't sluggish by any means. I have an i7 2600k with 4GB RAM. Even so, VLC uses more than a full core's worth of CPU and seems to struggle with the operation, sometimes causing several-second pauses while recording. It's not just the view while recording, either; the resulting video has these stutters and pauses as well. I've tried lowering the bitrate considerably with no improvement. I'm a little surprised considering I used to be able to record 1Mbit/s WMV with WMM on my old Pentium M laptop with no difficulty. We're talking about a CPU that's seven years older, single-core, and 32-bit.
I've dug around in the preferences and found the Stream Output -> Sout stream -> Transcode -> Number of Threads option, and tried increasing it to no avail.
Now I don't know what to do. I don't think it's IO-bound because the stutters and pauses don't correspond to HDD access, but instead to fluctuations in the amount of memory that VLC is using. Besides, the uncompressed recording works fine, and it absolutely dumps data to the HDD, and the compressed video is MUCH smaller. If it is CPU-bound, I can't fathom why; my computer is hardly breaking a sweat doing it, and yet it stutters anyway.
Has anyone else been able to figure this out?