Video Blogging
As mentioned, I got a wp:Flip Video camera. Here then are some notes about video blogging with the camera.
Contents
Recording
Although the camera will indicate that it has 60 minutes of record time available when the memory is completely empty, I was able to record over two hours of a User Group presentation. Perhaps the extended available time was due to the high compressibility of a mostly static scene (slides on a screen). More testing is in order.
The zoom capability is a digital effect rather than an optical zoom, so basically you don't want to ever use the zoom because all you will do is make your source more grainy.
Downloading Video
Simply plugging the camera's USB connector into your computer's USB port will mount the internal storage of the camera, and you can copy the files to any disk space you have. Since the camera supports the USB2 interface, file transfers go at a rate of about 5MB/second in my case.
Watching Video
The Flip Video gives you .avi files. You can watch or upload and share these with almost no effort. The ffmpeg project provides decoding capabilities because essentially, no matter what the encoding algorithm is, the decoding of an MPEG-4 file is standard. What this means in practice is that you can use KMPlayer, Totem, Xine or any media player you want to watch the videos you recorded.
Video Editors
When you want to edit these files, you can use an editing tool like Kino (consumer oriented) or Kdenlive (pro-sumer oriented). These tools are similar in function to Adobe Premier, but without the $800 pricetag. If you already have files in DV format, then Kino is probably the best choice (and relatively easy to use). However, Kino will not edit .avi directly, and so it will offer to convert any .avi file to .dv -- which not only takes time, but will also increase the filesize by almost a factor of 10. So, for direct editting of .avi files, you are best off getting familiar with the more advanced interface of the Kdenlive tool.
I should mention that Windows users can use the simple (as in plain, very limited) video editing tools provided with the Flip Video camera. It looks like the only thing it does is "clip" the video (allowing you to choose a later start and an earlier end). The software also interacts with a web service to combine videos but with no control over titling, effects, and sound tracks.
Kdenlive
Note that Kdenlive has been ported to KDE4, and so you will probably want to use that version if you are setup to run the KDE4 desktop. |
To get started, see the wiki book
Watch the short example video
Visit the website
Kdenlive has instructions on how to make and add a tutorial to their site, including how to create and upload desktop recordings onto vimeo.com (see section below on sharing) http://kdenlive.org/contribution-manual/how-make-video-tutorial Note that in the latest Kdenlive, RecordMyDesktop is integrated so that you can just open Kdenlive to start your desktop recording project.
Avidemux
Using Avidemux, it would prompt me to reindex the file with every FlipVideo avi file that I opened. So, perhaps that is an indication of some internal decoding issue that the FlipVideo presents to any codec trying to read the standard avi container format.
I tried using Avidemux to cut an original. Unfortunately, I've had problems trying to slice an original file produced by the FlipVideo. I tried to cut an orginal 2hr video down to two 45 minute sessions and a 30 minute session. The video cut fine, but the audio was left behind. Presumably this is due to sync issues which I have yet to figure out.
HandBrake
I used HandBrake successfully to re-encode the avi file into mp4 format. It took 9hours to do the conversion which I left unattended while I went to work. The 954MB source was turned into a 1.4GB mp4 In the log, you can see that it adds several microseconds of silence to keep audio and video in sync.
[08:08:59] lingui: Handbrake Version: 0.9.3 (2008112300) [08:08:59] hb_init: checking cpu count [08:08:59] hb_init: starting libhb thread [08:08:59] hb_init: checking cpu count [08:08:59] hb_init: starting libhb thread [08:10:01] hb_scan: path=/media/disk/video.blog/2009-01-14.12.30.avi, title_index=0 [08:10:01] scan: trying to open with libdvdread [08:10:01] dvd: not a dvd - trying as a stream/file instead Input #0, avi, from '/media/disk/video.blog/2009-01-14.12.30.avi': Duration: 02:01:43.41, start: 0.000000, bitrate: 1084 kb/s Stream #0.0: Video: mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 30.00 tb(r) Stream #0.1: Audio: adpcm_ms, 44100 Hz, mono, s16, 177 kb/s [08:10:02] scan: decoding previews for title 1 [08:10:02] scan: 10 previews, 640x480, 30.000 fps, autocrop = 0/0/0/0, aspect 1.33:1, PAR 1:1 [08:10:02] scan: title (0) job->width:640, job->height:480 [08:10:02] libhb: scan thread found 1 valid title(s) [08:14:05] hb_scan: path=/media/disk/video.blog/2009-01-14.12.30.avi, title_index=1 [08:14:05] scan: trying to open with libdvdread [08:14:05] dvd: not a dvd - trying as a stream/file instead Input #0, avi, from '/media/disk/video.blog/2009-01-14.12.30.avi': Duration: 02:01:43.41, start: 0.000000, bitrate: 1084 kb/s Stream #0.0: Video: mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 30.00 tb(r) Stream #0.1: Audio: adpcm_ms, 44100 Hz, mono, s16, 177 kb/s [08:14:06] scan: decoding previews for title 1 [08:14:06] scan: 10 previews, 640x480, 30.000 fps, autocrop = 0/0/0/0, aspect 1.33:1, PAR 1:1 [08:14:06] scan: title (0) job->width:640, job->height:480 [08:14:06] libhb: scan thread found 1 valid title(s) [08:14:06] lingui: Preset: Basic->Normal [08:14:06] 2 job(s) to process [08:14:06] starting job [08:14:06] work: sanitizing track 0 mixdown Stereo to Mono [08:14:06] job configuration: [08:14:06] * source [08:14:06] + /media/disk/video.blog/2009-01-14.12.30.avi [08:14:06] + title 1, chapter(s) 1 to 1 [08:14:06] + container: avi [08:14:06] + data rate: 1084 kbps [08:14:06] * destination [08:14:06] + /home/greg/Desktop/mediawiki/2009-01-14.12.30.mp4 [08:14:06] + container: MPEG-4 (.mp4 and .m4v) [08:14:06] + chapter markers [08:14:06] * video track [08:14:06] + decoder: mpeg4 [08:14:06] + frame rate: same as source (around 30.000 fps) [08:14:06] + loose anamorphic [08:14:06] + storage dimensions: 640 * 480 -> 640 * 480, crop 0/0/0/0 [08:14:06] + pixel aspect ratio: 1 / 1 [08:14:06] + display dimensions: 640 * 480 [08:14:06] + encoder: x264 [08:14:06] + options: ref=2:bframes=2:me=umh:ref=1:subme=1:me=dia:analyse=none:trellis=0:no-fast-pskip=0:8x8dct=0:weightb=0 [08:14:06] + bitrate: 1500 kbps, pass: 1 [08:14:06] * audio track 0 [08:14:06] + decoder: Unknown (ADPCM_M) (track 1, id 1) [08:14:06] + mixdown: Mono [08:14:06] + encoder: faac [08:14:06] + bitrate: 160 kbps, samplerate: 44100 Hz [08:14:06] dvd: not a dvd - trying as a stream/file instead [08:14:06] encx264: keyint-min: 31, keyint-max: 301 [08:14:06] encx264: encoding with stored aspect 1/1 x264 [info]: using SAR=1/1 x264 [info]: using cpu capabilities: MMX2 SSE2 Cache64 x264 [info]: profile Main, level 3.0 [08:14:06] sync: expecting 219132 video frames [08:14:07] reader: first SCR 0 [09:07:45] sync: adding 100 ms of silence to audio 0 start 207793188, next 207784187 [10:00:16] sync: adding 100 ms of silence to audio 0 start 415582221, next 415573220 [10:46:40] sync: adding 100 ms of silence to audio 0 start 623375409, next 623366408 [10:54:16] reader: done. 1 scr changes [10:54:27] sync: got 219089 frames, 219132 expected [10:54:27] work: average encoding speed for job is 22.772926 fps [10:54:28] mpeg4-decoder done: 219091 frames, 0 decoder errors, 0 drops [10:54:28] render: lost time: 0 (0 frames) [10:54:28] render: gained time: 0 (0 frames) (0 not accounted for) x264 [info]: slice I:734 Avg QP:11.91 size: 32553 PSNR Mean Y:51.97 U:53.81 V:54.35 Avg:52.55 Global:52.39 x264 [info]: slice P:76107 Avg QP:12.47 size: 9659 PSNR Mean Y:49.26 U:50.86 V:51.46 Avg:49.79 Global:49.61 x264 [info]: slice B:142249 Avg QP:13.27 size: 4273 PSNR Mean Y:49.10 U:50.67 V:51.31 Avg:49.62 Global:49.44 x264 [info]: consecutive B-frames: 1.3% 4.1% 94.7% x264 [info]: mb I I16..4: 27.3% 0.0% 72.7% x264 [info]: mb P I16..4: 11.7% 0.0% 0.0% P16..4: 84.0% 0.0% 0.0% 0.0% 0.0% skip: 4.3% x264 [info]: mb B I16..4: 2.8% 0.0% 0.0% B16..8: 49.8% 0.0% 0.0% direct:26.8% skip:20.6% L0:41.9% L1:52.0% BI: 6.1% x264 [info]: final ratefactor: 19.77 x264 [info]: SSIM Mean Y:0.9947361 x264 [info]: PSNR Mean Y:49.162 U:50.749 V:51.374 Avg:49.688 Global:49.505 kb/s:1497.25 [10:54:28] adpcm_ms-decoder done: 0 frames, 0 decoder errors, 0 drops [10:54:28] starting job [10:54:28] work: sanitizing track 0 mixdown Stereo to Mono [10:54:28] job configuration: [10:54:28] * source [10:54:28] + /media/disk/video.blog/2009-01-14.12.30.avi [10:54:28] + title 1, chapter(s) 1 to 1 [10:54:28] + container: avi [10:54:28] + data rate: 1084 kbps [10:54:28] * destination [10:54:28] + /home/greg/Desktop/mediawiki/2009-01-14.12.30.mp4 [10:54:28] + container: MPEG-4 (.mp4 and .m4v) [10:54:28] + chapter markers [10:54:28] * video track [10:54:28] + decoder: mpeg4 [10:54:28] + frame rate: same as source (around 30.000 fps) [10:54:28] + loose anamorphic [10:54:28] + storage dimensions: 640 * 480 -> 640 * 480, crop 0/0/0/0 [10:54:28] + pixel aspect ratio: 1 / 1 [10:54:28] + display dimensions: 640 * 480 [10:54:28] + encoder: x264 [10:54:28] + options: ref=2:bframes=2:me=umh [10:54:28] + bitrate: 1500 kbps, pass: 2 [10:54:28] * audio track 0 [10:54:28] + decoder: Unknown (ADPCM_M) (track 1, id 1) [10:54:28] + mixdown: Mono [10:54:28] + encoder: faac [10:54:28] + bitrate: 160 kbps, samplerate: 44100 Hz [10:54:28] dvd: not a dvd - trying as a stream/file instead [10:54:28] encx264: keyint-min: 31, keyint-max: 301 [10:54:28] encx264: encoding with stored aspect 1/1 x264 [info]: using SAR=1/1 x264 [info]: using cpu capabilities: MMX2 SSE2 Cache64 [10:54:28] reader: first SCR 0 x264 [info]: profile Main, level 3.0 [10:54:51] sync: expecting 219132 video frames [12:44:10] sync: adding 100 ms of silence to audio 0 start 207793188, next 207784187 [14:42:28] sync: adding 100 ms of silence to audio 0 start 415582221, next 415573220 [16:42:30] sync: adding 100 ms of silence to audio 0 start 623375409, next 623366408 [17:01:15] reader: done. 1 scr changes [17:01:50] sync: got 219089 frames, 219132 expected [17:01:50] work: average encoding speed for job is 9.949869 fps [17:01:52] mpeg4-decoder done: 219091 frames, 0 decoder errors, 0 drops [17:01:52] render: lost time: 0 (0 frames) [17:01:52] render: gained time: 0 (0 frames) (0 not accounted for) x264 [info]: slice I:734 Avg QP:12.25 size: 32048 PSNR Mean Y:51.61 U:54.77 V:55.34 Avg:52.47 Global:52.38 x264 [info]: slice P:76108 Avg QP:12.63 size: 9347 PSNR Mean Y:49.92 U:52.48 V:53.08 Avg:50.67 Global:50.49 x264 [info]: slice B:142248 Avg QP:13.60 size: 4460 PSNR Mean Y:49.67 U:52.04 V:52.73 Avg:50.39 Global:50.23 x264 [info]: consecutive B-frames: 1.3% 4.1% 94.7% x264 [info]: mb I I16..4: 25.4% 0.0% 74.6% x264 [info]: mb P I16..4: 4.9% 0.0% 7.2% P16..4: 62.4% 11.1% 10.1% 0.0% 0.0% skip: 4.3% x264 [info]: mb B I16..4: 4.0% 0.0% 0.0% B16..8: 51.8% 3.3% 2.1% direct:18.5% skip:20.3% L0:45.7% L1:47.3% BI: 7.0% x264 [info]: ref P L0 77.4% 22.6% x264 [info]: SSIM Mean Y:0.9959802 x264 [info]: PSNR Mean Y:49.766 U:52.200 V:52.860 Avg:50.494 Global:50.327 kb/s:1500.06 [17:01:52] adpcm_ms-decoder done: 0 frames, 0 decoder errors, 0 drops [17:01:52] libhb: work result = 0
Video Sharing
YouTube didn't like my 945MB avi and was unable to import it.
Google has announced that they will no longer be accepting new video uploads - preferring to be the search engine for videos rather than the host.
Vimeo supposedly offers higher definition than YouTube, however YouTube does offer Hi Definition.