Welcome!

Thanks for stopping by the site. You're on the blog tab. If you look to your left, you'll find the live show. To your right is information, a podcast, and a YouTube channel. Please enjoy your stay, and remember to return your seat to its full upright position before you leave. Also wear comfortable pants. The TSA doesn't kid around anymore.

Friday, November 11, 2011

Welcome!

Hi, thanks for stopping by the site. You're on the blog tab. If you look to your left, you'll find the live show which is live 11PM EST Monday Wednesday and Thursday. To your right is information, a podcast, and a YouTube channel. Please enjoy your stay, and remember to return your seat to its full upright position before you leave. Also wear comfortable pants. The TSA doesn't kid around anymore.

Saturday, January 29, 2011

Why Your Computer Looks Horrible Through TV Out

In Episode 3 of Increase Your Nerdiness, we discussed color subsampling. (Click on the Podcast tab for more information and episodes.) The visuals really weren't fair to my audio listeners, so this blog entry presents a summary and key images.

Unlike in RGB, YUV / YPbPr colorspaces sample color at a lower resolution than brightness. You've encountered YUV in JPEG images, DVD's, Blu-Rays, DV, HDV, YouTube videos, and broadcast television. Y is the luma channel, and the Pb / Pr channels make up the chroma information. RGB color is used in your computer monitor to display this webpage, and also in Photoshop, GIMP, and PNG files.

Text compared in RGB and YUV colorspaces
You wouldn't notice with black and white text, but color subsampling can be apparent on the edges of colored fonts. In this image, you see text in full RGB on the left, and a colorspace called 4:2:0 or YV12 on the right. In YV12 color information is sampled in blocks of 4x4. This means that four neighboring pixels share the same color! Let's zoom in really close to see some of the artifacts created:
Artifacts created by YV12 subsampling

On the left is an overscaled letter x from the word 'text' as you'd see it in 4:2:0 - on a DVD for example. On the right is the same letter, but with a grid superimposed to illustrate the borders of these 4x4 blocks. This should help you to look very carefully to see that the blue color bleeds outside what should be the borders of the character. Thankfully we don't watch TV 32 times closer than intended!

When the switch was made from black and white to color TV, viewers without color sets would simply view the Y (luma) channel. The two chroma channels were added, and would indicate the difference between Y and Blue (Pb), and the difference between Y and Red (Pr). Since Blue and Red are measured by how different they are from Y, their combined difference from Y is how Green is figured out! Weird, but true.

So the next time you plug in component cables, you'll know the green one is Y / luma, and the Blue and Red ones are Pb and Pr. Color subsampling is one of the reasons your computer looks trashy when viewed with a video out cable. (Resizing is another big factor). One more thing: If YPbPr is a mouthful, "Yipper" is an easier acceptable nickname.

Wednesday, November 18, 2009

YouTube Capable of 1080p Now (11-18-2009 Update)

Yes, YouTube now supports resolutions of up to 1080p. They've become very versatile now. Instead cramming everything into the same box, they now create a custom video based on your upload's settings. Here are some of the variables:

Player Size.
There are basically three sizes of players. The first is the smaller 640x360 box, with the description (or ads) to the right of the video. There's the SD sized player that's around 853x480. It's bigger, so you have to scroll down to view the description, or ads. You can toggle between those first two sizes by pressing the button at the top that looks like this:
The third player size is full screen. Obviously, the resolution depends on your own settings.

Video Resolution.
Many times, the file stored on YouTube's servers will be the native resolution of your video. This is very good. No need to have extra distorting because of an unnecessary resize. If you have a larger (HD) video, it will often be resized only for the lower quality version. The big one stays as is (it will be recompressed though). HD is now available at resolutions of up to 1920x1080. And like the other sizes, you will still get a custom size based on your video.

Quality.
I'm pretty sure everything is converted to AVC (H.264) now. YouTube's quality has improved dramatically because of that one change. So what will your video end up like in the end? I'll admit, I don't pay as much attention to that anymore, because they're doing a much better job in quality. But basically, if your video is really small, or slow moving (i.e. screen captures / still images / animation), you just get a normal quality video, probably of that same resolution. Even though you may not have the HQ button, these videos can actually look pretty nice. I've done screen captures that end up as 852x480 videos, even in normal quality! If your video requires a little more bandwidth, they'll assign you an HQ video. If you like the badge of honor of having the button, you'll be happy. But don't worry; even the normal quality videos can look quite good now.

And what's the other option? Oh yeah, HD! For 720p videos, the video bitrate is increased to about 2,500kbps; and for 1080p it can go as high as 5,000kbps! For internet video that's pretty darn good. I should mention there's a downside to HD: compatibility. There are still many, many, users whose PC's (laptops especially) or internet connection speeds aren't up to par to handle HD. So don't count on all your viewers to watch in HD. But it still is neat that it's there. Give it a couple years, we'll get there. One more thing: if you decide to go with 1080p, remember that in widescreen there are 1,152,000 more pixels than with 720p. So it will take you longer to render, and upload if you increase the bitrate to account for those extra pixels. If you're in a hurry to get a video out, you may want to reconsider.

Audio.
Audio is the one constant. It becomes a 44.1Khz 128k AAC. So don't worry about inferior audio just because you don't have an HQ/HD button.

Uploading Recommendations.
You really don't have to do anything crazy anymore. YT actually has good advice on their help page. ;) Keep it as close to the original as possible. Just be sure you're uploading progressive frames. Either deinterlace of inverse telecine if interlacing is visible in your video. Here is a link to a video describing interlacing and how to convert to progressive. Crop out any bars/pillars on the top/bottom/side.

For high quality audio I still recommend uncompressed (PCM), or losslessly compressed (Apple Lossless for example) streams. For extra care, you can render your audio at a 44.1Khz sampling rate (since most video cameras sample at 48Khz). Theoretically it wouldn't be as good to render 48Khz compressed (AAC or MP3) sound, then have YT decode it, then recompress to another sampling rate and bitrate. Not all programs give you the option for lossless audio, especially if you're rendering to MP4. So you may just have to pick the highest bitrate you can.

In my opinion, it's probably more important to produce your video well than to use some magic upload settings. Light it well so you don't have a noisy image. Use a microphone. Study up on quality video production. Garbage in, garbage out.

Monday, March 9, 2009

Latest YouTube Information

I've made this entry so you can avoid watching or reading a bunch of outdated stuff. As new updates arrive, you should look here to be directed to the most current information. I'll keep a link to this entry on the sidebar of the blog.

Here's the latest blog entry on YouTube's settings.

Here is a video explanation of the latest settings:

YouTube Uploading Update (March 9, 2009)

OK, I think I've got things figured out for the moment. There are three basic types of videos on YouTube: normal quality, high quality, and high definition. For normal and high quality, YouTube processes your video differently based on its content. For high definition it processes the video based on its settings. Thankfully, all the videos now use Advanced Video Coding with Advanced Audio Codec, with different bitrates and resolutions. This is a big improvement, and really improves the quality of the videos without just increasing the bitrate. Remember, if the bitrate is too high, your internet connection won't be able to handle it and you'll have to wait for it to buffer and load. Now you get more quality at the same bitrate.

Normal Quality.
There are a few types of normal quality videos. The common thread is the sound, which is 64kbps 22050Hz AAC. As for the video, the maximum bitrate is about 260kbps. I've encountered several resolutions. For widescreen, it could be 640x360, 480x270, or 320x180. For 4:3, it could be 640x480, 480x360, or 320x240. Those are just the common possibilities; odd sizes may pop up depending on your exact video. Which one will your video get? There's not really a magic setting you can tweak, YouTube seems to be making those decisions based on the content of your video; specifically how compressible it is. I'll be doing a lesson on compressibility in the future, but basically the more complex your video is, the less compressible it is. A video of a still image is far more compressible than sports footage filmed without a tripod.

Motion is probably the biggest factor in compressibility. Here's a rule of thumb: the faster your video moves, the lower the resolution it will get. I think this is a wise decision. Since the bitrate is limited to around 260kbps, a fast moving video will look yucky at the full player resolution of 640x360. Reducing the size to 480x270 or 320x180 cuts down on those issues, at the expense of reduced sharpness and clarity. Hopefully the amount of motion will make the reduced clarity less noticeable. In many cases it does.

High Quality.
Videos with the HQ button are pretty rare now. The only time I've gotten the HQ button is with videos with an insane amount of motion. Basically if there's a really good reason for your video to have a higher bitrate, you'll get the HQ button, but they're not giving it to just any video. Here are the improvements: the audio will be up to 128kbps. I think that's the max; it's hard to tell for certain since it's a variable bitrate rather than a fixed one. The sampling rate is 44100Hz instead of 22050Hz. Musicians will favor this greatly. As for the video, you'll get the native resolution of the player (640x360 or 480x360) with improved clarity. The video bitrate can be up to around 660kbps, for a total datarate of 800kbps, about 2.5 times that of the normal quality videos. Remember, that will be an issue for people with slower connections.

High Definition.
To get the HD button, in most cases you won't have to worry about the content of the video. The decision to give the button is based more on the settings of your video. I recommend using the size 1280x720, since that is the size of the video YouTube will create. Using that size should get you the link.

Occasionally, framerate and bitrate can be a factor. If you shot the footage on a camcorder, it should be fine. The only time this would happen is with a video of a still image, or something like screen capture with pretty much only the mouse pointer moving. I wouldn't worry about that stuff unless you already uploaded a video and you're having problems getting the HD button. First wait an hour or two because it sometimes takes time for the link to appear. Then if you still need help, continue reading. If you screen captured your footage, be sure the framerate is at least 24. Anything under that and you won't get the link. As for the bitrate, work on getting it over 1000kbps. PLEASE NOTE: even if you set the bitrate at 10,000 kbps, if your video is really compressible, it may in reality end up being under 1000kbps. The requirement isn't exactly 1000kbps, but it's pretty safe to assume if it is 1000 or higher you'll get the button. If you're having problems, see my entry on Screen Capturing for YouTube. Scroll to the section on purposely increasing the bitrate.

Recommendations.
Now that you have an idea of how YouTube handles your videos, I have some suggestions. Try to make your video more compressible. Avoid unnecessary motion by using a tripod. Light well so the picture isn't noisy. If you have interlaced footage, deinterlace it. For text, don't use fine print, and use fonts without those extra tails on the end (use Sans or Arial for example). It's tricky to do with a video camera, but see if you can get your background a little out of focus, so the quality is directed to the foreground instead. After you have a great looking video, you can add a noise filter to help out even more.

For the best sound quality, avoid MP3's. Use either uncompressed audio, or losslessly compressed audio (like an Apple lossless AAC). If you need to force high quality to get 128k 44100Hz, try making a video that moves around a lot. Or if you're going for HD, use a 1280x720 still image and increase the bitrate on purpose if necessary. If you're really concerned about getting decent sound and don't want to deal with these video issues, you can always urge your viewers/listeners to add &fmt=18 to the end of the video's URL for sure fire higher quality audio. You can even put the &fmt=18 link in an annotation that says "Click here for high quality."

Use a square pixel size. This means you shouldn't upload a 720x480 video; use 640x480 instead. For widescreen, try 640x360, 852x480, or 1280x720 for HD.

Monday, March 2, 2009

YouTube Update (March 2, 2009)

It seems YouTube has phased out the high quality link. Some people claim to know how to get it still, but it's becoming such a pain in the butt to find the loopholes, I don't think it's really worth it anymore. Don't panic though, they've increased the quality of the normal videos - so what used to be high quality is now the usual. Unlike the old "high quality videos," they haven't really increased the bitrate - but - they have really improved the technology used to deliver this video. Specifically, this is H.264 AVC up to 260kbps with 64k stereo AAC at 22050Hz. This means you get higher quality at the same connection speed. This is a great way to get the best quality for the most people. Remember, not everyone has FiOS caliber bandwidth.

For those of you who want the cold hard facts, here are the results of my tests. I took four videos with differing content, resized to five different resolutions, uploaded them, and recorded the results. I didn't notice a difference based on the bitrate of the uploaded video; the results seem to be based more on how your video looks, mainly in how fast it moves.

Plenty of motion
852x480 = 259k 480x270, 62k stereo
720x404 = 215k 320x180, 62k stereo
640x480 = 229k 480x360, 62k stereo
640x360 = 217k 320x180, 62k stereo
480x360 = 195k 320x240, 62k stereo

Color Bars (no motion)
852x480 = 25k 640x360, 62k stereo
720x404 = 21k 640x360, 64k stereo
640x480 = 31k 640x480, 62k stereo
640x360 = 27k 640x360, 62k stereo
480x360 = 25k 480x360, 62k stereo

Static, then motion
852x480 = 170k 640x360, 62k stereo
720x404 = 189k 480x270, 62k stereo
640x480 = 104k 640x480, 62k stereo
640x360 = 189k 480x270, 62k stereo
480x360 = 148k 320x240, 62k stereo

Motion, then static
852x480 = 256k 640x360, 63k stereo
720x404 = 233k 480x270, 63k stereo
640x480 = 210k 640x480, 63k stereo
640x360 = 215k 480x270, 63k stereo
480x360 = 177k 320x240, 63k stereo

The audio is the most consistent. The slight differences are probably just slight calculation differences; I'm pretty sure it was encoded as a stereo 64kbps VBR AAC with a 22050Hz sampling rate.

YouTube seems to take more notice of the first few seconds of the video; notice how a video with motion followed by a still image was given a higher bitrate than a video with a still image followed by motion.

It also seems the faster your video moves, the smaller resolution it is given. There is good reason for this. More pixels means more information. With the same settings (especially with the limitations of internet video), a fast moving video will look worse than a static one. Decreasing the amount of pixels reduces the load, avoiding problems like blocking. AVC can do some deblocking, but of course it's not perfect. However, the reduced size will take away the enhanced definition of a larger resolution. It's a compromise, but given the choice between huge ugly blocks, and a little less clarity, I'll take the latter. But 320x180 is pretty extreme, so I'd still try to go sparingly on the motion. If you have trouble using a tripod, you can always try for a job at MTV. Also notice how the video of a still image got the whole resolution of the player. This means if you were to upload a video with little motion in 640x360 (or 480x360 for 4:3), it would keep its native resolution, looking very sharp. So for screen capture, those are the sizes you should use - but don't let it move too much or you'll get one of those reduced resolutions. It's also interesting that a 640x480 video stayed 640x480. The player can't yet display that resolution, so perhaps it is a sign of things to come. (In the current HD player, 640x480 would be proper size for 4:3)

Though in most cases, these decisions are good on the part of YouTube, some of you will not like this. Like those of you with a very fast connection who don't care about people with slow connections. "Who cares about them?" you say. "I want the highest possible quality." At least take comfort in knowing the new normal quality videos are AVC. Remember the &fmt=18 versions? Essentially it's like that.

The other group that won't be happy about the improved normal quality versions is musicians. Yes, it's stereo. But if you worked hard on producing good music, 64k 22050Hz probably won't do it justice. In that case, I recommend going HD.

The settings for HD seem to be the same as before. The video bitrate requirement is around 1000kbps (not including audio). If you shot your video with a camera it shouldn't be an issue. If you have a screen capture video or just a still image, you still may need to purposely increase the bitrate. See my entry on Screen Capturing for YouTube on that. Resolution must be 1280x720, or larger (though odd sizes not in 16:9 can be a problem). The frame rate must be 23.976 or higher. If you do get the "watch in HD" link, the audio will end up being 128k stereo 44.1KHz AAC - after it's converted. I recommend uploading uncompressed, or losslessly compressed audio (not MP3 or lossy AAC) for the best possible sound. The normal quality version will be created as usual. Remember, HD is still not compatible with many viewers, because of slow connections and slow processors.

Thursday, February 26, 2009

How Derek Edits His Videos

You don't want to know. I had a computer (the Mac) crash over a year ago, so I started editing with AviSynth on the PC. It's insane. It's not an editor where you point and click and drag stuff around. You have to script commands line by line. Why didn't I just fork over the dough for a new editor? I don't know. Either it's because I'm stubborn or because I enjoy a challenge. Once in a while people ask, so here it is. Here is the madness that ended up being my latest video, "How a Bill Becomes a Log," a technical test for later episodes, which will be based on this script:

a=MPEG2Source("a.d2v").BicubicResize(1280,1080).TFM().TDecimate().BicubicResize(1280,720).Convolution3d(preset="moviehq")
a=AudioDub(a, NicMPASource("a MPA PID 814 DELAY 4ms.mpa")) .DelayAudio(0.004)
b=MPEG2Source("b.d2v").BicubicResize(1280,1080).TFM().TDecimate().BicubicResize(1280,720).Convolution3d(preset="moviehq")
b=AudioDub(b, NicMPASource("b MPA PID 814 DELAY 23ms.mpa")) .DelayAudio(.023)
Canal=MPEG2Source("canal.d2v").BicubicResize(1280,1080).TFM().TDecimate().BicubicResize(1280,720).Convolution3d(preset="moviehq")
Canal=AudioDub(canal,blankclip(a)).ConvertToRGB32().Trim(24,-144)

footage=(a++b).ConvertToRGB32()
slug=blankclip(footage)

fA=footage.Trim(346,4213-24)
fB=footage.Trim(4869,10904+240)

intro=AudioDub( AviSource("Intro.avi").ConvertToRGB32() , blankclip(footage) )
logo=ImageSource("logo.png",pixel_type="rgb32").AssumeFPS(footage)
fA=layer(fA,logo,"add",128)
canal=layer(canal,logo,"add",128)
#footage=layer(footage.ConvertToRGB32(),logo,"add",128)

fA=Dissolve(intro.Trim(0,239+48),fA,48)
fA=Dissolve(fA,Canal,24)
fA=FadeOut0(fA,12)

fB=Dissolve(fB.Trim(0,6034+48),fB.levels(60,1,255,0,164).Trim(6035,0),48)
fB=Fadeout0(fB,72)
fB=layer(fB,logo,"add",128)
fB=FadeIn0(fB,12)

cred=ImageSource("credits.png",pixel_type="rgb32").Trim(0,-240).\
KenBurnsEffect(startpany=1551,endpany=-1551).Crop(0,0,1280,720)
credA=ImageSource("credits.png",pixel_type="rgb32").ShowAlpha().Trim(0,-240).\
KenBurnsEffect(startpany=1551,endpany=-1551).Crop(0,0,1280,720)
cred=Audiodub(mask(cred,creda),blankclip(footage))
cred=cred.Trim(64,0)

fB=fB.Trim(0,6082)++layer(fB.Trim(6083,0),cred)

bills=MPEG2Source("comm\bils.d2v").BicubicResize(852,1080).TFM().TDecimate().BicubicResize(852,480).Convolution3d(preset="moviehq")
calc=MPEG2Source("comm\calc.d2v").BicubicResize(852,1080).Bob().BicubicResize(852,480).AssumeFPS(24000,1001).Convolution3d(preset="moviehq")
notice=MPEG2Source("comm\notice.d2v").BicubicResize(852,1080).TFM().TDecimate().BicubicResize(852,480).Convolution3d(preset="moviehq")
phonev=MPEG2Source("comm\phone.d2v").BicubicResize(852,1080).TFM().TDecimate().BicubicResize(852,480).Convolution3d(preset="moviehq")
cig=MPEG2Source("comm\cig.d2v").BicubicResize(852,1080).TFM().TDecimate().BicubicResize(852,480).Convolution3d(preset="moviehq")

bills=bills.Trim(48,-240).Crop(212,0,640,480).ConvertToRGB32()
calc=(calc.Trim(1027,-120)++calc.Trim(1027,-120).Reverse()).Crop(60,0,640,480).ConvertToRGB32()
notice=notice.Trim(90,-240).Crop(106,0,640,480).ConvertToRGB32()
phonev=phonev.Trim(173,-240).Crop(106,0,640,480).ConvertToRGB32()
cig=cig.Trim(48,-240).Crop(106,0,640,480).ConvertToRGB32()
bg=bills++phonev++notice++calc++cig

graph1=ImageSource("comm\mooch1.png",pixel_type="RGB32").AssumeFPS(24000,1001).Trim(0,-16)
graph2=ImageSource("comm\mooch2.png",pixel_type="RGB32").AssumeFPS(24000,1001).Trim(0,-16)
graph=(graph2++graph1).Loop().Trim(0,-240)
phone=ImageSource("comm\phonenumber.png",pixel_type="RGB32").AssumeFPS(24000,1001).Loop().Trim(0,-1200)
break=blankclip(phone).Trim(0,-12)++layer(bg,phone)++graph++blankclip(phone).Trim(0,-12)

Break=break.Spline36Resize(960,720).AddBorders(160,0,160,0)

(fA++audiodub(break,blankclip(fA))++fB)
Yes, believe it or not when that script is dragged into VirtualDub, out comes the video. Even the opening sequence was designed with another script. I don't just sit down and type it though once. First I start by loading the clips. After seeing how it looks, I trim them to just the parts I want. I design the graphics in GIMP, save them as PNG's, and load and layer them in the script. Then it's trial and error. Let's see how it looks when I dissolve on this frame. No, maybe a second earlier. Oh, these two clips have different framerates so I have to make them match to join them together. After a lot of tweaking and fiddling, I settle on the final script. It takes a while to render though, and I fine tune the audio with Audacity during that rendering.

So in conclusion, Derek W. Truesdale's productions are like sausage. It's a pretty nice product, but you don't need to see how it's made. That goes for the equipment too. If you saw my "studio," you'd laugh. "That's where you make videos?" It proves it's not the equipment you have: it's how you use it.

YouTube Goes AVC

In the course of my analysis of the new YouTube processing, I noticed the new videos are flash videos with AVC video and AAC audio. (Yes, I know that's redundant since the acronyms already contain a letter for video and audio.) On one hand it's a pain because it's so new it's very difficult to find a program that can play them (after download; they play fine on YouTube's player). On the other hand, the quality is much better!

For those of you that don't know, AVC is Advanced Video Coding, the standard where H.264 operates. In the past, viewers could watch an MP4 (with H.264) version of a YouTube video by typing &fmt=18 to the end of the video's link. Now the same technology is used in the now improved normal quality videos. AVC has replaced YouTube's not so impressive Sorenson H.263.

I was hoping they'd go this route. They haven't really increased the bitrate, but they have improved the technology - and due to this upgrade, you can see videos in significantly better quality - with the same connection speed. This is a wise decision, in my opinion. As I've said before: bitrate ain't everything. Better, more advanced codecs can show higher quality videos at lower bitrates.

To see the difference between the old YouTube and the new YouTube, upload a video. As soon as it goes live, you will see a temporary version with the old technology. It will look awful. After a few minutes, it will be replaced with an AVC flash video, which looks much nicer. Be happy.

YouTube is also processing videos differently, based on the content of the video. After I'm done interpreting data from test videos, I'll explain more. Stay tuned.

Monday, February 16, 2009

YouTube Update (02-16-2009)

Well, they've changed stuff again, and for the better! The normal quality videos are now improved significantly, thus the "watch in high quality" link only appears if for some reason the HQ version ends up being significantly better than the normal one.

Big improvement: resolution. Previously, the normal quality video was 320x240 of 4:3, and 320x180 for widescreen, both of which look really yucky when scaled up to the 640x360 player size. And when the widescreen player first came out, the "HQ" version of the widescreen movies was only 480x270 scaled up to be 640x360. Now, you can upload a video in 480x360, or 640x360 widescreen, and it will stay that way! This is especially helpful when you're uploading something you want to stay in its native resolution, like screen capture. Of course, you can still use other sizes like 640x480, 852x480, and 720x404.

Another annoying thing that has been fixed is the unforgiving bitrate requirement to get an HQ video. It used to be all or nothing. If you were successful, you'd get a 480x360 4:3 video, if not you'd be stuck with plain old 320x240. This was especially annoying with videos that had many repeated frames. For example, if you wanted to upload music with a still image, you'd get stuck with low quality, since the extremely compressible nonmoving video wouldn't make the required bitrate. Of course I had an ingenious workaround, but it was a huge pain in the buttocks. Now, even if you don't get the link, you'll get a "normal quality" video that's still in pretty high quality.

So in conclusion, the low quality videos aren't nearly as bad as they used to be, and in many cases they're as good as the "high quality" videos have been in the past.

We're almost to the point where we can trust YouTube with our videos, meaning as long as your video is produced well, you can upload, and set your mind at ease. And that's where my tutorials will be focusing in the coming months: producing higher quality videos. That production knowledge can be applied to DVD's, internet video, and whatever you do. And we'll be past the days when advice I give you today may be irrelevant tomorrow. I'm really liking the direction Google is taking YouTube.

Monday, January 26, 2009

Animating Cartoon Mouths with AviSynth

Animating a cartoon mouth can take a lot of time. To do it well, you can get a program that lets you select one of nine (or more) mouth positions, and go through your dialogue syllable by syllable to match it up. But what if you don't want to spend all that time? What if it's not worth all that labor for a quick joke? I've developed a way to automatically animate your mouth from the amplitude, which is kind of sort of the "loudness," of your WAV file. The method was "cleaned up" a bit with the help of some folks at Doom9's Forum, to make it usable for the slightly less tech-minded masses.

First, you need to install AviSynth. The current version is 2.5.8. Next, you need the MinMaxAudio plugin. Here is a link where you can download it. From that zip file, you need to get MinMaxAudio.dll and put it in your plugins folder (Start > Programs > AviSynth 2.5 > Plugins Directory). Next you need this script, which puts it all together. Just copy the following and paste it into Notepad:

#Load Sources
Aud=WavSource("mouthaudio.wav")#.Normalize(1) #If you need Normalizing.
m00=ImageSource("00.png",pixel_type="rgb32",0,0)
m25=ImageSource("25.png",pixel_type="rgb32",0,0)
m50=ImageSource("50.png",pixel_type="rgb32",0,0)
m75=ImageSource("75.png",pixel_type="rgb32",0,0)
m100=ImageSource("100.png",pixel_type="rgb32",0,0)

#Set Parameters
FRateNumerator = 30000
FRateDenominator = 1001
High = -6
Low = -36
Steps = 5

#Set up clip
Gap = (Low-High)/Steps
AudLength=AudioLengthF(Aud)/AudioRate(Aud)
Slug=BlankClip(m00).AssumeFPS(FRateNumerator,FRateDenominator).loop()\
.trim(0,Ceil(AudLength*FRateNumerator/FRateDenominator))
Mouth=AudioDub(slug,aud)

#"Animate" Clip
ScriptClip(Mouth,"AM=AudioMax(1)
AM >= High+Gap*0 ? m100 \
: AM >= High+Gap*1 ? m75 \
: AM >= High+Gap*2 ? m50 \
: AM >= High+Gap*3 ? m25 \
: m00")

#Fix ScriptClip Audio Glitch
AudioDub(last, WavSource("mouthaudio.wav"))

Save it as "MouthMover.avs" - yes, put the filename in quotes.

Now, you're ready to get going. You need five images, of your character and its mouth 0, 25, 50, 75, and 100 percent open. They should be the same size, in width and height. They should be named 00.png, 25.png, 50.png, 75.png, and 100.png. You need a WAV of your character's dialogue. Call it MouthAudio.wav. So at this point, the five images, MouthAudio.wav, and MouthMover.avs should be in the same folder. Now, just drag that AVS into VirtualDub and your mouth should be animated and ready to go!

If you only want the mouth with alpha transparency (and not the character too), you can design the mouth only and use AVS2AVI to save an AVI with transparency. Paste the following into Notepad, save as a .BAT file in the same directory as the other files, and AVS2AVI.exe:
avs2avi mouthmover.avs mouth.avi -w

Then double click the BAT file, and it will ask you for the codec you want. Pick Lagarith or HuffYUV and be sure to configure to RGB32. It must be 32 bit to have an alpha channel. Then OK everything and it will do its magic.

Thursday, January 8, 2009

Please Press the Button, Mr. Obama!


I just heard talk today that President Elect Obama may delay the switch to digital only television broadcast. No. Please no.

You know why I want the switch to happen? To get rid of that infernal cursed banner that keeps screwing up my shows! Sheesh! Some of us are trying to inverse telecine! And it really doesn't help when there's a crawler that moves at 30 frames per second imposed over telecined footage that's supposed to run at 24 frames per second! Is it so wrong to want a decent recording that has 24 progressive non-jerky frames per second, without some stupid banner that people already watching in HD do not need to see? Hello? I'm already watching digitally! Showing the banner to me over and over is like sending one hundred AOL CD's to an amish person!

And do you know anyone that still watches TV without cable or anything - just with a plain old antenna? I know two people, and one of them already has a converter box. The other one wouldn't miss TV if it was taken out forever by an EMP.

And is it really that much of a tragedy? It's not a banner saying "a nuclear plant just exploded in your area." It doesn't say "there's a lethal dosage of arsenic in your drinking water." It says "starting on some date that seems never to arrive, you're going to need equipment even more advanced than a set of rabbit ears - or - even have to pay $6 a month for the luxury of watching Jerry Springer and Rachael Ray."

Gasp! You mean two people per city may have to live without TV? How can this happen? Seriously, if staying connected is that important, get a computer or something. Or even one of those new fangled radios. I hear they're up to a whopping five dollars at the local drug store. Then you can stay up to the minute on whether bingo night is cancelled.

But come on. I thought you were going to bring us change. Please press the button. You won't be wiping out any cities by doing it. You'll just be cutting off network television to an audience that doesn't know the NBC logo is in color. Besides, they've probably got lots of Beta videos to keep them busy.

Wednesday, January 7, 2009

How to Install Codecs Without Executables on Wine


So I got AviSynth and VirtualDub working through Wine on Ubuntu. Xvid and x264 had nice little EXE's to click on for installation, and they worked. But what about those pesky ones like Lagarith and HuffYUV that only have INF files? Fear not; there's still a way to do it.

From the zip file, you need the DLL file for the codec. Let's work on Lagarith. Its file is appropriately named lagarith.dll. You need to put it in the Windows\System32 folder. Actually this is linux so I should say windows/system32, with a forward slash. To open the folder, click Applications > Wine > Browse C:\ Drive. Then go to windows/system32. Drag lagarith.dll into that folder. Now you need to open an empty file in that folder. Right click, then click Create Document > Empty File. Open it with gedit and paste this inside:

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\drivers.desc]
"[CODEC].dll"="[CODEC]"

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\drivers32]
"vidc.[FOURCC]"="[CODEC].dll"

Now you need to fill in the blanks for your codec. One of them is the fourcc for the codec. A fourcc is a four character code that tells the decoder which codec to use in order to play the video. You will need to look it up. Googling lagarith fourcc should give you the answer: lags. Fill it all in so it looks like this:

Save the REG in gedit.
Make sure you've filled in the blanks properly, and save the file as YourCodec.reg – in this case that's lagarith.reg. Again, make sure you've filled in the blanks properly because now we're going to put this in the registry. I don't know everything about Window's (or Wine's) registry, but I do know it's not something you want to screw up. Go back to the system32 folder in the File Browser. Click Go > Location, or click Ctrl-L. Copy that location with Ctrl-C.

The path of your system32 directory.
Now open a Terminal window (Applications > Accessories > Terminal). Type cd, then a space, then paste the location by right clicking, then click Paste. The line should read:

cd /home/yourusername/.wine/drive_c/windows/system32

Press enter. Now you type regedit, then a space, then the name of the REG file you created. For lagarith, it should be:

regedit lagarith.reg

The codec should now be installed. To verify it, open up VirtualDub. Click Video > Compression. Lagarith should now be on the list. Lather, rinse, and repeat for your other favorite codecs. Just be sure you properly enter the information in the REG file.

Lagarith is now on the list.

Friday, January 2, 2009

Screen Capturing for YouTube

Edit: I'm happy to announce that YouTube increased the quality of their normal videos, so you don't need to be concerned with the bitrate anymore! This saves a lot of aggravation. Also note there's no need for a non-widescreen size like 480x360 in non-HD; instead use 640x360.

Making quality videos of screen capture is tricky, especially for YouTube. There is plenty of technical stuff in this guide but if you want better videos you have to learn it. It has to be complicated. You'll probably have to educate yourself on some of the terms used in this guide (because if I explained everything in detail this would be a book, not an article).

If you just want to push a button and make it work there's a big chance you're not gonna be happy with the results. Perhaps it's best for you to try another easier guide, and come back here if you're not satisfied. I'll wait. For anyone still reading, here's the outline: Avoid resizing, pick a screen capture method, capture in high quality, how to do this with CamStudio, render a YouTube version, *CHECK THE BITRATE*, and purposely increase the bitrate if necessary.

The whole screen doesn't look so hot in this size, does it?Avoid Resizing. I don't know what program you use to edit your videos. You must educate yourself on how your program handles cropping and resizing. There are too many programs and they cost too much money for me to help you on each of them. Especially with screen capture, knowledge is quality and resizing is a bigger enemy than cropping, in my opinion. For example, if you've ever used a TV-out card to display your monitor on a TV set, you know what I mean. When you take a whole monitor and resize it down to something smaller it won't look as good. Let me explain what cropping and resizing are so you'll get what the terms mean:

Let's say we have a monitor of one size, and a video of another. In most cases, a YouTube video will be smaller than your monitor. There are two ways to get to the new size: cropping and resizing. Cropping is chopping a part of the picture off, like a crop at harvest. Let's say there's a video of my whole monitor. If I crop it, I'd take just a part of it – and that would be the new size of the video. Obviously, you lose the part you cropped out. Resizing is taking an image and scaling it down – losing detail. Whenever you resize, you lose detail (well... almost always).

Pick a screen capture method for your video. I have three methods: one method for high quality and two methods for HD. You need to decide which strategy you think is best for your video.

Method 1: high quality. Advantages: It's the sharpest for the most people. Even people with slower connections (for broadband) can likely keep up without the video pausing to load more. The low quality version won't look that bad. If you want maximum compatibility, use this method. Disadvantages: It has a 4:3 ratio, so there will be black bars on the sides. Only a portion of your monitor is captured. Following the mouse pointer around is a bit like tunnel vision. Of course, you can zoom in and out if your screen capture software allows it. How to do it: Create a 480x360 video. Either capture a 480x360 box that follows the mouse pointer around, or capture the whole screen and crop/zoom/resize to a 480x360 box. Remember, the video will look sharpest at a 100% zoom 1:1 ratio, so try to stay there. Zoom out and resize sparingly – when you want the big picture.

Method 2: HD player size. Advantages: It's widescreen and fits in the HD player nicely. It's a compromise between the smaller high quality video and full screen HD. You get more screen area than with method 1. Disadvantages: It will never have the sharpness of the original capture because of the resizing involved. The tunnel vision isn't as bad as in method 1, but you're not making use of the full HD resolution. People with slower connections or slower computers will have problems playing the video in real time. The low quality version will look pretty bad. How to do it: Capture an 854x480 region (or 852x480 is your software doesn't like that size), then scale it to 1280x720 in your editor. Or capture the whole screen and crop/resize/zoom to 854x480 – then resize to 1280x720. As with method 1, avoid zooming and resizing. And be sure to strongly advise your viewers to watch in HD.

Method 3: HD fullscreen. Advantages: you can fit your whole monitor, or most of it, in the video. Some viewers with 1280 pixels wide monitors will get a beautiful crisp image, clear as method 1, but with much more screen area. This may be a good future-minded strategy, meaning even though it's not compatible with a lot of people today, years from now it may be. Disadvantages: As with method 2, slower connections and slower computers will make for a bad experience for some viewers. Also, for monitors that aren't 1280 pixels wide, it will ruin the beautiful crisp image that some people can see. The low quality version will look atrocious. So you will alienate 1) people watching in low quality 2) people with slower computers and slower connections 3) people with monitors that aren't 1280 pixels wide. How to do it: Capture your whole screen, then do the cropping/pillarboxing necessary to make the video 1280x720. If your monitor is really huge, you could also capture a 1280x720 box that follows the mouse pointer around the screen. And be sure to advise your viewers to watch in HD.

Capture in high quality. With almost any screen capture program you'll have the opportunity to choose the type of file you save. There are some good formats. There are some bad ones. Pick one that gives you the quality you like without filling your whole hard drive. Worry about the final YouTube encode later. Just focus on getting high quality screen capture. If it works for you, CamStudio Lossless codec is excellent. It may not work with all your software. If not, and you have a very big hard drive, try Lagarith lossless codec. It's top quality. Get it from freecodecs.com if you don't have it. Xvid (also at freecodecs.com) is good for smaller file sizes. Feel free to experiment with other formats. Just make sure it looks good. Remember, you can reconvert to something else later; right now it's just important to get high quality footage. Capture in a resolution that works for you. You can capture your full monitor and crop and/or resize later (which may be tricky depending on your programs), or capture just a portion of the screen. Choose wisely.

How to do this with CamStudio. You don't have to use CamStudio, but it's free. One note: I do not record the audio with CamStudio because I've found it to be glitchy. I used to open Audacity and record at the same time, then put it together later. Now I use a separate field recorder so there's not an extra window open. But I mix the WAV in later; CamStudio is used to capture video only.

Pick the size of the region.Under Region, select Full Screen if you want to capture the whole thing. If you choose that method, you'll probably have to crop or resize in the final video, which can be a pain when you constantly want the screen region to move. The advantages are: it makes a good master so if you want to reedit the video someday or change the size you can, and it gives relatively small file sizes. Weird, huh? That's because the recorded region never moves, so only things that move need to be stored (your mouse pointer, a window as you drag it). Likely most frames of the video will be a repeat of the previous frame, saving data.

Check Enable AutopanSelect region or choose full screen.To record just a region of the screen, tracking your mouse pointer, click on Fixed Region. Then you need to fill in the width and height you want. Use 480x360 for method 1, and 854x480 for method 2. Warning: your software may reject this size so you may need to use 852x480 instead. Next under options, check Enable Autopan, so it will follow the mouse pointer around. I put the Autopan Speed to 71. See if that suits you.

Video optionsUnder options, click Video Options. 24 frames per second is required for high quality or HD on YouTube, so set Playback Rate to 24, but you can choose another rate if you want. For example you could capture at 12 frames per second, saving space, then convert to 24 later so YouTube will give you the high quality option. I uncheck Auto Adjust. Set quality to the max: 100. Keyframes every 200 frames should be fine. If you'll be waving the mouse around a whole bunch you can lower it though. For 24fps I set Capture Frames Every to 42 milliseconds (a 24th of a second). For 12fps I'd choose 83, for 15fps I'd choose 67, for 30fps I'd choose 33. Now you need to select your compressor. Camstudio's codec is great (get it at their website) – just make sure it works with your editing software before using it. If so, OK everything and you're ready to record. If it doesn't...

Set to RGB mode Try Lagarith lossless codec if you've got plenty of hard drive space. Click Configure. Under mode, make sure it's on RGB. OK everything. You're now ready to record.

Xvid encoding optionsOr try Xvid. It's a great way to save file space with pretty good quality. Click Configure. Tune it as shown. A target quantizer of 1 is maximum quality. I usually leave it there, but you can raise it if you want for smaller files. One more thing with Xvid. Click Other Options. Then you must uncheck the box for Display encoding status. If you don't, there will be a super annoying box that blocks the screen and won't go away. OK everything and you're ready to record.Uncheck this to save aggravation.

Render a YouTube version now that you captured in high quality and edited the video if necessary. This time file size is an issue, unless you love long upload times. Pick a maximum bitrate that's at least 1000kbps (AKA 1Mbps), and higher if 1000 isn't satisfactory. You want it to look great without being so big it takes forever to upload. Xvid/H.264/x264/WMV are some great options to consider. Don't worry so much about the file extension (AVI/MOV/MP4/WMV), it's what's inside that counts. Remember my warning about resizing. It's okay if you zoomed in and out with your screen capture software, but remember the video will be sharpest at 100% zoom and a 1:1 ratio. Zoom out for the big picture but zoom back in when you want detail. Your video should now be either 480x360 (method 1) or 1280x720 (method 2 or 3). You're ready to upload, right? Edit: Right!

Always double check with MediaInfo!

[Remember: thankfully, this part is now outdated!] Wrong. CHECK THE BITRATE! “But Derek I already set the bitrate to 1000kbps so I know it's OK.” Not good enough. This is important. If you mess this up you won't get the watch in high quality or HD option and it will come out crummy. When you set a bitrate, you're setting a maximum bitrate, but it could be lower in reality. For example, here's a video I encoded. I set the bitrate to 10,000kbps. But look what MediaInfo says: in reality it came out to 86.5kbps! MediaInfo is a great way to double check. Once it's installed you can just right click on your video then click MediaInfo. Configure it to text view. Read the line for "Bit rate" under the video section (not under the General section, which includes the audio bitrate!). If you can't install MediaInfo on your system, read my blog on “How the Heck Do I Find the Bitrate of My Video?” (Short version: divide the file size in bytes by 128, then divide that by the length of the video in seconds, then subtract the audio bitrate – and you have the actual bitrate in kbps.) Once you have the number – if it's less than 1000kbps, you need to purposely raise the bitrate. If it is, you're done.

Purposely increasing the bitrate. Sometimes it takes some extra work to make the bitrate higher. What you need to do is add more keyframes. Don't do this in maximum, or target bitrate mode, or you could lose quality. It's okay to add keyframes when you're encoding in lossless mode, target quantizer mode, or quantizer based mode. Here's how in Xvid and x264. Find the place where you can adjust the codec's settings (usually there's a Configuration button).

Adding keyframes in Xvid

With Xvid set to Target quantizer (not target bitrate), Click more, under Quality preset. Now you can lower the Maximum I-frame interval.

Adding keyframes in x264With x264 set to single pass lossless mode under Analysis & Encoding, or Rate Control depending on your version, lower either Min and Max GOP size, or Min and Max IDR-frame interval. It's the Max we're concerned about, but often you have to lower both or it rejects your changes.

I cannot tell you what your number is. It depends on your video. Here's what I know: if you pick a number too large, the bitrate won't be high enough. If it's too small, the file will be bigger than it needs to be, increasing your upload time. It could be 1, it could be 40. The only way to find out is to encode the video and check with MediaInfo. Annoying – yes – but at least you'll know for sure you're getting the link for high quality or HD – and you won't lose all. One click video converters can never guarantee that. Once you do get a bitrate over 1000kbps and the file size not super huge, you're done and you can upload the video.

Wednesday, December 31, 2008

Five Mythconceptions About Video


24p will make your video look like film.

24p causes problems. Motion is not as smooth and if you don't pan carefully you'll get strobing. The film industry tries hard to minimize those problems. So be careful or it will make your video look worse, not better. Here's the main advantage of 24p: the p. Progressive frames compress better (meaning you'll get higher quality frames), and they display better on PC's, and non tube televisions (basically anything that has to deinterlace). And fewer frames per second usually means sharper frames. For example imagine I told you to pay attention, showed you 5 pieces of construction paper per second, and asked you to tell me what color they were in what order. Then I showed you 4 pieces of paper per second and asked the same thing. Which would be easier to remember and more accurate? Probably the sequence of 4 frames per second, right? That's basically what happens with 30 frames per second compared to 24. The video can have more detail per frame, at the expense of smoother motion.

Besides that, there are other reasons that make big Hollywood films look better than video from your camera. They have entire teams of people focusing on quality: lighting, color grading, visual effects. Film handles contrast better than video. They use way better equipment like lenses that cost more than my house, cameras that cost several times that, and state of the art computers and software. If you want better looking footage, invest in a camera with a bigger and better sensor, or a better lense (with a 35mm adapter for example), and software that can handle color accurately (After Effects, Color, Sony Vegas Pro). Do not expect 24p to be a magic bullet.

If you do wish to carefully make use of 24p and you have a camera that can shoot it, here are some tips: don't use a Saving Private Ryan high speed shutter. In other words there should be some motion blur. This makes motion more fluid and less like a strobe light. Either pan really fast or really slow. Or if you're doing a medium speed pan, put something in the foreground and follow it (like your actor). It distracts from the juddery motion in the background. Think the feather on Forest Gump. It wasn't done all for show. If you don't have a 24p camera, do not convert your framerate to 24p, unless you really really know what you're doing. It will be more trouble than it's worth.

AVI = uncompressed video with huge file sizes.

Lots of things can fit inside an AVI. It's just a container. You've heard of Divx, Xvid, or MP3's, right? Well each of those are codecs, which can be stored inside an AVI. DV from your camera is commonly captured to AVI, and while the file sizes can be large, it's not uncompressed. DV typically has a 5:1 compression ratio, meaning if it was uncompressed it would be five times larger! A codec is a coder/decoder (that's how it got its name), that translates your video into a file, then back into a video again. It's like abbreviations in your text messages. The words “be right back,” are coded to the letters “BRB” - saving space - then decoded back to words again so the reader can understand (hopefully).

So don't discount an AVI as being too large for your video. And don't assume because you converted to AVI the video is a perfect copy. In many cases you can lose quality when converting to AVI. It's the codec that counts.

If one video has a higher bitrate than the other, it must be better.

Quality, not quantityAll things being equal, this may be true. However, there are many ways to create a video and they are not all the same. Bitrate only tells you one thing: how much space a video takes each second. It does not tell you how wisely the video was compressed, or how outdated the technology used to make it was. To the right is an example. I encoded one video at 300kbps, then another with deliberately bad settings at 400kbps. Even though the second one has more data at its disposal, the poor settings chosen make it look worse. Remember – wise decisions will give you more quality in less file size. Educate yourself on compression, and how to make it more effective.

You need a Mac to do serious video work.

Macs are great. If you've got the money, they can save a lot of time and hassle. But there's plenty of competition on the PC side. Take Mac's Final Cut Pro with Color and Motion, and PC's Premiere Pro with After Effects, for example. In my opinion, Final Cut Pro wins over Premiere. But After Effects has Color and Motion beat. There are advantages and disadvantages to each.

But here's where Mac can't compete: price and compatibility. For $500 you can get a PC that can edit HD video and run Adobe Production Premium. No, it won't be the fastest computer ever created. But you can do it. With Mac you're looking at a minimum of about $1200 for iMac/MacBooks and $2700 for Mac Pro desktops. With the money saved by not buying a Mac, you could buy Vegas Pro and have money to spare. You can get Vegas Pro (disc only) from B&H, a trusted and reliable vendor, for $130. So an adequate PC with Sony Vegas Pro is $570 less than a Mac. Why not throw in an insane amount of ram and a 1TB hard drive with that extra dough?

I'm not anti-Mac. I'm just saying for the hobbyist with a limited budget, PC's are a great way to save. You may wait longer to render, but you'll still get the job done. In the above example I used a low end to average PC's price range to show the money that can be saved, but if you did put the $2,700 it would take to get a Mac Pro into a PC you would have a very fine machine. Which reminds me of one more thing about price: there are no cheap Macs. At least not new ones.

What was the other thing? Compatibility. There's plenty of software for Mac. But most likely you'll end up paying every time. Here are some reasons I love my PC: AviSynth, IMG Burn, Video for Windows (the framework that allows tons of codecs to work), WinDV, HDV Split. All great things you can get free of charge. Okay, you have to pay for Windows, but technically you can get the Video for Windows framework to work under Linux. I'm getting off topic. The point is many many programmers have made fantastic little apps, and many of them are for Windows. Go to Download.com and notice how many things are not made for Mac. This isn't to say Macs aren't right for some people. I'm just trying to appeal to the frugal buyer and let you know: you can do more with less. This leads me to the last myth.

Getting the best software and equipment will make me a good film maker.

This can be both a good and a bad thing. On one hand, you don't have to feel bad about having less. On the other hand, if you just spent a crapload of money on equipment and software you may end of saying “well what do I do now?” If having the latest cool stuff made you the next Steven Spielberg, having Micro$oft Word would make you a best selling author. You are what can make you good. People have done very well for themselves on YouTube with very unimpressive equipment (like WebCams). Not me however, I still suck. But find what you're good at and do it. Work hard with what you have and get more tools as you go. Maybe video isn't your thing. That's ok; just do what you do best. In fact, it may be in your best interest to start out with very cheap affordable stuff and find out making videos isn't for you. Would you rather spend a couple grand figuring that out? So be sure to use technology and cool toys as tools in your toolbox, not a robot to do all your thinking for you. Be smart and do what's right for your budget. And if you end up being a world famous juggler, maybe you can hire me to be your videographer.

Thursday, December 25, 2008

AviSynth on Ubuntu!

Maybe I'm a little late finding this out, but I was thrilled to run AviSynth under Ubuntu! Wine was the magic that got it working. First I tried following complicated instructions, which are probably outdated. I tried installing Wine, then Winetools, but couldn't get Winetools to work.

Then I put aside all that technical stuff and tried something crazy. I used the plain old regular Wine installation. I downloaded things I wanted to install: AviSynth, VirtualDub, Xvid, x264. I installed those things by clicking on their .exe's and put VirtualDub on the C:\ Drive. Then I opened VirtualDub and dragged in an AVS script. It worked! The only thing I had to do was disable "Use DirectX for display panes," under Options > Preferences.

It wasn't nearly hard as I thought it should be. Sometimes we can get all concerned over whether a hammer is metric or not, when all we need to do is pick it up and smash stuff! Here is a screenshot of VirtualDub encoding an AVS script to an Xvid AVI, because a PNG is worth a thousand words:
AviSynth and VirtualDub on Ubuntu

Friday, December 12, 2008

How the Heck Do I Find the Bitrate of My Video?

Note: this entry deals with double checking the bitrate after you're done with your video, not finding an optimal bitrate that works best for it.

If you're aiming for YouTube's "watch in high quality" or "watch in HD" option, you'll need to make sure the bitrate of your video is 1000kbps or higher. "What?" you say. "How the heck do I know that?"

Many video editors let you set the bitrate of your video. But beware - when you set the bitrate, you are setting the maximum bitrate - the actual bitrate could end up being lower! And what if you have an ultra-user-friendly program like Windows Movie Maker - which usually hides the bitrate from you? Fear not. I shall impart some of my nerdy wisdom to thee. And as a bonus: I'll show you how to get the screen size and framerate while you're at it.

The easy way is to use MediaInfo. Once it's installed, you can right click on a video file, then click MediaInfo - and voila! There are the specs for which you are looking. Configure it to text view for easily copy & pasteable gory technical details. If you're interested mainly in the video bitrate, be sure to read the line for "Bit rate" under the video section (not under the General section, which includes the audio bitrate!).

Also notice that the "Bit rate" reading often differs from "Nominal bit rate" - and it's usually lower. Believe the "Bit rate" line. Then you can avoid setting the bitrate at 1000kbps in your program, then foolishly walking away and assuming the bitrate of the actual file really ended up being 1000kbps. I mention this because in videos with not a lot of motion (like screen capture, 2D video games, or still image videos), compression is so easy the bitrate may end up being much lower than you set it - and you'll never know unless you check. Sorry to be so technical here, but I often get questions from people asking why their video didn't get the high quality, or HD link on YouTube because of this very issue. But while I'm being technical...

Get file size in bytesWhat if you can't get MediaInfo working (on a Mac, for example)? It's still possible to get the bitrate by math. You need to right click (or command click as the case may be) on the file and click on properties. Then you need the file size in bytes, and the length of the video in seconds. My Mac is outdated, so I just grabbed some images from my PC. Hopefully you should see something similar. There's a slight difference between size on disk and actual size. It's not really a big deal which one you use. Use the bigger one if you're paranoid though. Next, jot down the audio bitrate. You'll need to subtract it later.
Jot down the audio bitrate. In Windows, you can get it under the advanced view (or just remember what you set it at when you encoded). Incidentally, this is where you can also find the resolution and (approximate) framerate of the video. Also jot down the length of the video in seconds. Now you need to use my brilliant equation. Okay, someone else has surely devised the same thing, but let's humor me and call it Truesdale's equation:Truesdale's equation.
Notice the parenthesis at the bottom of the fraction. For those of you who aren't currently familiar with high school algebra (can't imagine why), I put the parenthesis there to remind you to perform that part first. Or else use this semantically sloppier but more understandable equation: [File size in bytes] / 128 / [Length in seconds] - [Audio bitrate] = [The video's bitrate].

And there you have it. Your bitrate in kbps. Wasn't that fun?

Friday, December 5, 2008

HV30, the Best Consumer Camcorder

Note: I'm not getting checks from Canon to say this; I'm just excited about my new toy.

I think the HV30 is the best you can do without going into the prosumer +$2000 level. Here is what sets it apart from the average cheap camcorder:

1. The ability to shoot progressive frames. This is invaluable for those filming for the internet. Plus, progressive frames compress better; one of the reasons store bought movies look better than average joe's.
2. The ability to white balance. Especially with blue/green screening, this is very helpful. Good luck finding it on the average consumer camcorder.
3. Native 1920x1080 sensor times 3. This camera is not FakeD - it's real HD. When it scales, it scales DOWN, not up. It has three sensors for each primary color of light, and the sensors are larger than the Panasonic DVX100's (which is around $2,300). Granted the DVX100 is an SD camera, but it sure helps.
4. External mic jack. This feature is seldom found on consumer cameras.

Drawbacks: Viewfinder doesn't move and doesn't have impressive detail. Low light video with a CCD would probably come out better than with this camera's CMOS sensor, so keep in mind you'll want to light well for great video (as usual). The running of the tape mechanism will mess with your audio, so either use the external mic jack or record audio separately. The included battery isn't so hot. Order the better one when you buy this camera.

It does not have all the ease of control that a prosumer camera would, but notice I'm comparing it to cameras of that caliber to show its shortcomings. My rave review is based on other cameras in the HV30's price range; and of them I think it is the best. Also keep in mind that with prosumer cameras, an accessory like a tripod is going to cost you a lot more than it will with this little camera. And with its current Christmas price, if you don't have the budget for a high end camera but want a picture that is just as good or better, this is the one for you! Seriously, even if I did have the budget for one of those high-priced cameras, I'd still get an extra HV30 because this price is so good and it wouldn't be bad to have around as a very portable spare.

Wednesday, November 5, 2008

Budget Video Equipment Guide

Video costs money. I hate to break it to you. But hopefully this guide will help you to stretch your pennies, getting the most quality for the least money. The main components are: camera, audio equipment, lights, computer, and software. Feel free to start out with cheaper equipment, and upgrade as you go. No one ever has the equipment he wishes he had. I don't even have all the stuff in this guide yet – it's kind of a wish list for me too!

Just remember: the thing that will save you the most money is: education. I'm not saying you need to go to film school or anything. Just learn as much as you can. One way is by carefully watching TV. Another way is to start a video, run into a problem, and look for help on the internet (this is the most common way for me). I did go to school for video production, but I've learned far more by reading stuff on the web. In fact, why go to college when you can buy the text books and learn from them? The ultimate test of your knowledge is the quality of your videos, if you ask me, not the diploma on your wall.

Let's start with the camera. The camera is where I'd spend the most money. There are lots of articles where people try to make video look like film. I think it's far more worthwhile to get a great camera. Sure you want to do your best to make the footage look great after you're done filming - but that's no replacement for a great camera. Ideally you want a camera with a great professional lense (i.e. something in the +$2000 range). It's also great to have 3CCD's (or CMOS), and you want them to be as big as possible. A 0.5 inch CCD is better than a 0.25 inch one. Line in or microphone in is good to have because it's usually not the best to use the one mounted on the camera. I use the mic on my camera for emergency backup only.

While all those things are great to have, get what's right for your budget. If you're only doing web video, don't feel bad starting out with a single CCD cheapo model. You can start making videos and getting experience while you save for a better one. Halfway between cheapo and professional is the Canon HV30. It's about $900 (though now it's on sale for $625), can shoot HD in progressive mode, and has 3 CMOS sensors that are a whopping 1/2.7 inches. And if you really have money to spend, go for a prosumer camera. Whatever camera you have, educate yourself on how to use it well. Warning: always buy from a respected vendor, like B&H or Amazon. Don't fall for the price-watching "deal" sites - or you may be ripped off!

Audio equipment. Rule #1: almost anything is better than the mic on your camera. Even a $20 mic in some cases. Ideally you'd want a mixer, a few microphones (lavalier, handheld, shotgun) and a field recorder. But to start out, if you have a laptop you could buy a mic and record with Audacity. Or you could buy a field recorder like my Zoom H2 (around $180), which has built in microphones, line in, and mic in. With a 4GB memory card, it can record hours of CD quality WAV files. And it fits in the palm of your hand. I use it all the time.

For lighting, you can start out with some work lights from the hardware store – for as little as $20. You could light with car headlights if you want. Just be sure to light your scene well so your image doesn't look snowy. Lighting can get complicated. My advice: research lighting, then go out and learn from experience. Learn to see like a camera sees. What your eye sees a slightly darker area, a camera could see as a harsh dark shadow. To avoid shadows try using diffuse lights rather than directional ones, or aim your light at the ceiling and let it bounce off the paint and fill the room. Cloudy days are a goldmine if you're not good at lighting. If you've ever filmed on a bright sunny day and seen very dark shadows in your footage, you'll see what I mean by diffuse light vs. directional light. Of course there are lighting kits you can buy to (try photography stores), but feel free to experiment with cheaper alternatives.

Computer. If you're on a limited budget, I recommend a PC. The PC you're using right now is probably good enough to get the job done. PC's are cheaper and there is more software, especially free software. True, Macs are great with video, but you'll pay the price and be limited in your choices. Don't get me wrong; if you can afford it Mac is great and you'll find it to be very user friendly. But getting back to my point of educating yourself: you can save a lot of money by understanding as much as you can about video. AviSynth, for example, can accomplish very specific tasks that otherwise would only be possible with software well into the $1000 range. And a final word of warning: if you rely on easy point and click programs, you're depriving yourself of valuable knowledge that can save you cash and make you a more skilled videographer.

Things to look for: a dual core processor, extra RAM, large hard drive, a 1394 Firewire card (if you're using a DV camera). My computer is not a high end PC. I just have to wait longer for videos to render. And I'm willing to wait to save an extra $1500. You don't need to go nuts. A computer in the $500 range should get the job done. But do get a large hard drive. You won't regret it.

Software. If you're really on a budget, try Sony Vegas. If you've got the money, go for Adobe Production Studio (it comes with Premiere, After Effects, PhotoShop, Encore DVD, and Illustrator). For tweaking colors and doing visual effects, After Effects is king.

As you can see, there are many options. Of course you just need to do what's right for you. With more money, there's always some great new tool you can buy. No matter what your budget, do your best to make the most of it! My biggest piece of advice is: get in the habit of creating. Not every video you do has to be a masterpiece, but it will give you experience. And the more experience you have, the better you'll do when you do get your big idea. Now go get a job at WalMart, or start begging your parents for money!

Possible start kit:
HV30 ($900)
Sony Vegas (starting at $55)
Hardware store lights ($20)
Zoom H2 Field Recorder ($180)

Total: $1155

Wednesday, September 17, 2008

How to Get Widescreen HQ on YouTube

Note: Now there's a "watch in HD" option, which is better than "watch in high quality." I'll link you to the update when it's written but basically use 1280x720 instead of the resolution below.

For those who just want a quick answer, here goes:

1. Use a screen size of 480x360 or larger. You will get HQ with 480x360, but for widescreen I recommend 640x360.
2. Use a bitrate of 1000kbps or higher to be safe. The requirement for H.264 is about 600kbps and for Xvid/Divx it's about 900kpbs.
3. Use a frame rate of 24fps or higher. (Yes, nerds - 23.976 is fine too.)

That's the short of it. Here is some additional info:

The exact file type isn't critical: AVI, MOV, WMV, and MPEG have all worked. Inside that file, a variety of video codecs seem to work fine, so it's hard for me to tell you the exact ones that work. Flash has never worked for me though. Make the video look as good as you can. You be the judge of bitrate vs. file size (and upload time). Remember: it's also important to make the video look as good as you can before you upload: use a tripod to cut down on unnecessary motion, light it well so it's sharp (not snowy), and deinterlace (unless you shot in progressive mode). Audio does not affect YT's decision to show the HQ link. For best quality, I recommend uncompressed audio.

What if you don't see the link? It can take some time for the link to appear. Usually the larger the file, the longer it takes. It doesn't hurt to check with MediaInfo to make sure you did everything right. Beware, for example, of the bitrate. Just because you set it at 1000, doesn't mean it will end up being 1000 when it's all said and done. Videos that are at risk of having a lower bitrate are ones with not a lot of motion (like screen captures and videos with lots of still images). To resolve this problem, see this video:

Wednesday, May 21, 2008

HQ YouTube Uploading Guide

Note that this guide deals with the encoding, not processing and shooting, which precede encoding and also have a significant effect on the final quality of the video.

How to Get "Watch in High Quality" on Your YouTube Videos