PapaJohn Productions

Newsletter #43 - March 5, 2005

Movie Maker 2 and Photo Story

 

 
 
Encoder Screen Capture Session - World Wind
 

The current issue of Wired magazine has a page devoted to NASA's World Wind software... after a 179 MB download, installation, and some playing with it, I had to check how best to use it in a Movie Maker project. 
 
The software includes a screenshot feature... that's too easy. Let's go for a video, using either the Windows Media Encoder doing a screen capture, or a camcorder shooting the laptop screen.
 
My first test was a capture session. That resulted in this 33 second, 2.4 MB file on neptune. It shows you where World Wind starts... a global view of earth.
 
Spinning Globe
 
World Wind was using 80 to 90% of my laptop's CPU (2.4 Ghz), and I know that a screen capture session needs a good bit of CPU energy for smooth video.
 
My next quick test was my camcorder shooting the laptop screen as I zoomed from an altitude of 44,645.93 km to 600 meters above my daughter's house. It's too crude a video to showcase, but it was fun and gives you an idea of what you can do with the software. The file is 320x240, 7.7 MB, with a 2 minute duration:
 
From Space to a House
 
Zoom like that into anyplace on earth... or glide over the planet like you see in flight simulation games... but these use actual photos taken from space.
 

 
In this issue, we'll use the Windows Media Encoder to capture an area of the screen to get a video clip for Movie Maker, using the World Wind app. It'll be a mini-tutorial about one feature of the Encoder.
 
... before getting into it, a couple notes...
 

 
What's Happening?
 
My library workshop schedule is being finalized all the way through next February... alternating between introducing Movie Maker to beginners and covering advanced topics. I'll add the dates to the bottom section of the newsletters when they are available.
 
Pegson's Windows Movie Maker Archive is a new website (about a month old now). It's a library of the custom transitions and effects that have been developed by those who have put a lot of effort into developing them... figuring out how to tweak various settings to achieve all kinds of neat things. Their tweaking of XML files is even moving into text clip features. There's been lots of posts, but Pegson's site is the first to collect all the info and present it in an easy way for viewing, complete with graphics to illustrate them.
 

 
NASA's World Wind
 
A free download, the NASA World Wind app comes right from NASA, with an assist from the community of those involved in the open source software project...
 

World Wind
 
Open World Wind
 
After a 180 MB download, an installation that included a couple prerequisite pieces of software, here's the opening view of the world.
 
The goal of this newsletter is to use the Encoder to capture some video from it. The fewer pixels being dynamically displayed and captured, the theory is the easier it will be to play and capture smooth movement. For the sake of testing, let me set the bar high and go for full DVD quality at 640x480. I'll lower the bar if I need to.
 
Move the World Wind window so it snugs up to the upper left corner of your computer monitor. It's too big a window when first opened, but let it sit there as we open the encoder... we'll adjust the size of the World Wind window to align with an Encoder 640x480 capture area.
 

 
the Windows Media Encoder
 
If you don't have it, the Encoder is a free download from Microsoft: Windows Media Encoder
 
It's a package of utilities, but we'll focus on the encoder itself, a video processing studio with all kinds of neat features.
 
With a default installation, the path to the encoder is C:\Program Files\Windows Media Components\Encoder\wmenc.exe. You'll have it in your startup menu.
 
When you open the Encoder, there's a wizard to guide you...
 
Encoder Wizard
 
... the first choice is easy - the Capture screen option
 

Capture Screen Option
 
Region of the Screen
 
If you were putting together an animated tutorial about how to use Movie Maker, capturing the selected window would be appropriate.
 
A full screen capture would be used for something like a video game (if the screen resolution wasn't set too high - I run my laptop at 1600x1200 and never tried a full screen capture... too many pixels for smooth capturing if there's lots of motion.
 
The region of the screen is a good choice for the World Wind app. You can position and size the area so the capture results in a standard sized video clip - 640x480 or 320x240.
 
If you were narrating a capture as it went along, you would opt to include the audio. I'd rather add the narration later in Movie Maker and let more of the computer's energy go into making a smooth capture.
 

 
Set the Area to be Captured
 
In this next page of the screen capture wizard, you pick the area of the screen. Screen Region
 
I did some testing to find the right numbers to enter when working with World Wind. The coordinates of the top left corner are 10 and 55, and the width x height are 640x480 for a normal DVD sized video.
 
You can use 320x240 if that's the video size you want. For this tutorial and some testing I'll start with 640x480.
 
Opt to have the encoder flash the border of the capture area during the session... at least during the first test capture to be sure things are aligned. Beyond that it's optional.
 
File Name/Location
 
In the next page of the wizard, pick a folder location and give it the name of the video file you'll be creating.
 
Settings Selection
 
On the next page of the wizard you'll pick from Low, Medium and High quality... but it has a tip that you can view (and adjust) the settings later, after you finish getting started. Let's opt for Medium, not knowing what settings that means.
 
Display Information
 
A wizard page for optional info... title, author, copyright, rating, and description...
 
Settings Review
 
This final page of the wizard summarizes the choices you made in the wizard, and has an important little checkbox at the lower left - leaving it checked will kick off the capture session when you click the Finish button... lets leave it checked and see what happens.
 
Finish
 
Here's what happens:
  1. It thinks a few secondsFinish Button Message.
  2. It gives you this message... an interesting one in that it has an option to go forward but not to cancel or go back.... so we say OK and go forward.
  3. If you have a file of the same name, it gives you another message to confirm you want to overwrite it.
  4. Going forward, the encoder minimizes itself and you can tell it's recording the screen area because there's a red flashing border around the capture area you defined... here's why we wanted that border for the initial test capture.
This screen shot captured the initial size of my World Wind window with the red flashing border set to capture the 640x480 area. What we need to do is resize the window to align with the red border...
Initial Capture Process
 
Grab the lower right corner of the window and resize it... the encoder will continue to record as you make the change. The red border and pixels it covers are not included in the captured file, just the area inside the red border.
 

 
Capture Session Settings
 
When you start encoding the Encoder window minimizes and the area being captured is bounded by the slowly blinking red frame. When you maximize the encoder, the capturing pauses... and you're no longer in the wizard. You're in the encoder's main working window. Press the Properties button to change the session settings.
 
Session PropertiesThere are 9 tabs of settings... note that, at this point, all settings are grayed out and you can't change them. That's because you've only paused the encoding; you haven't completed or cancelled the session.
 
Click the green Start Encoding button to continue the capturing and add more footage to the file in progress. Click the red Stop button to finish the session. As this was a test encoding to setup the area to be captured, I'll Stop it.
 
Once stopped, the encoder will give you a window showing the Encoding Results for the capture session... info such as the duration of the capture, the bit rate, frames per second, etc. It's interesting that it expected an average of 5 frames per second but got only 0.63... so a 2 minute capture ended up with a total of 75 frames, the number we'd expect in a 2-1/2 second movie at 30 frames per second. I'll be using those reports during the testing later on.
 
I had many other programs running during the setup phase, things that took the computer's energy away from the session, so it's not a fair assessment...
 
Let's go into the actual test phase. Press the Close button for the capture session and all of the grayed options will be un-grayed, open for changes.
 

 
Save the Encoding Session
Open a Saved Session
 
An Encoding session is similar to a Movie Maker project... it's time to save the session file for the first time. Session files have an extension of .wme (Windows Media Encoder). I named this one World Wind.wme.
 
A saved session lets you reopen it the next time and start where you left off... no need to step through the wizard or do the positioning settings again. It also let's me put a .wme file on my website and make it available for downloading, similar to a .prx profile for a movie.
 
Close the encoder after saving the session file... the next time you open the encoder, cancel the wizard window and use File > Open or select one of your recent session files... in this case World Wind.wme.
 
Before opening it again, I'll get ready for some test captures. My goal is a good looking, smooth playing wmv video clip when viewed in the Windows Media Player... a standard size to incorporate into a movie... non-standard would make for a noticeably egg-shaped world.
 

 
Prep for the Capturing
 
My laptop has a 2.4 Ghz CPU, not low but not high by today's standards. What's Running
 
Here's what the Performance tab of the Task Manager shows: World Wind is using 20 to 43% of the CPU while it's just sitting there with no motion of the earth, the encoder is open, capturing, and showing the blinking frame... and using 51 to 67% of the CPU. And 4 other processes are using some CPU energy.
 
It's time to turn off other things that are using or might use some CPU during the capture sessions... we want to give it all to World Wind and the Encoder, and balance the settings of the 2 apps as best we can.
 
I'll turn off (if I can) things I see using some CPU:
 
- msimn.exe - I write my newsletters using Outlook Express. I'll close it and keep test notes on a yellow pad.
- taskmgr.exe - the Task Manager was running just to get the CPU stats. It won't run during testing.
- explorer.exe - a basic process that I'll leave running.
- lsass.exe - a security process that I can't turn off.
 
I'll turn off some other stuff to save a bit more or avoid interruptions:
 
- the flashing red border of the Encoder during a capture session was helpful when positioning the world, but not needed once it's in place.
- switch the WiFi antenna off on the laptop to disconnect it from the internet and our home network, so it's not interrupted by instant messages or auto updates.
- shut down the Microsoft AntiSpyware app running in the background
- close or disable Norton anti-virus
 

 
Session Properties
 
Going across the tabs of the properties:
  1. The Sources are fine... a screen capture with the 640x480 area defined.
  2. The Output file has an appropriate name and folder location.
  3. The Compression tab needs a bit of work. By opting for medium quality in the wizard, we didn't know we were saying we wanted 5 frames per second with a video bit rate of 100Kbps. Press the Edit button and you'll be into something that looks like the profile editor... because that's what it is.
  4. The other 5 tabs don't need any setting changes.
It's time to run some tests to see what settings work best.
 

 
Test Captures at Various Compression Settings
 
The worlds been sitting still during the setup... it's time to give it a nudge so it rotates through the capture session tests. Press the keyboard's left arrow key a few times to get it going in the usual direction.
 
Encoder Results
You don't have to play the output file to see how well you did with your capture session. As soon as you stop a session, you see this window tallying up the results. That's what I used to assess the 36 test captures.
 
The figure shows what you would like to see... the average bitrate meeting the expected, the average frames per second meeting the expected, and zero frame dropped.... a perfect score.
 
The scores I saw were far from perfect. For this screen shot, I ran a session without World Wind running, just to see a perfect scoresheet for a 640x480, 29.97 fps, uncompressed video.
 

 
Test Results
 
When capturing at the 640x480 size, the best was an average of 4.53 frames per second when I was asking for 29.97. It was with the V7 codec with a setting of 1000Kbps and a smoothness setting of 85. Although the best, it wasn't good.
 
The lowest actual frame rate at that size was 0.59, using the Video 9 screen capture codec.
 
I next tried the 320x240 size and did another 14 test captures. The best averaged 14.55 frames per second when capturing to an uncompressed file.
 
The worst at the reduced size was 4.74 fps using the video 9 codec, CBR85, 2000 Kbps bitrate.
 
The patterns that emerged were:
  1. Capturing at 640x480 didn't give results worth using. Go with 320x240 when capturing from World Wind.
  2. Uncompressed was clearly better. Forget trying to find the right codec or the right settings. In 6 tests without compression, the worst case was 8.90 fps when I gave it a target of 15 fps... interesting that I got better results when I gave it higher targets of 30 or 60 frames per second.
  3. The newer the codec, the lower the actual frame rate. V7 codecs did better than V8, and V8 better than V9.
  4. A setting of 100 for smoothness versus a lower target of 95, or a normal setting of 85, didn't seem to make much difference...
  5. The only sessions which resulted in dropped frames were those using the V9 codec with a smoothness setting of 100. And the lower the bitrate target in that group of 6 tests, the worse the performance. The lowest target bitrate I tried was 100 Kbps, and it reported more frames dropped than captured. 
After looking over the results and patterns, I did my last and biggest capture test for this newsletter. 320x240 with lots of world motion, uncompressed, and for a longer time - 3 minutes, 55 seconds. The saved file was 306+ MB.  The actual frame rate averaged 11.29 and there were no dropped frames. I ran it through Movie Maker to get a more reasonably sized (13 MB) compressed file and put a copy on the website to show you... here's the link to the:
 
Snapshot - Final Test
final test capture
 
It's the best I could get from World Wind using the Encoder... but its insufficient frame rate makes it still not good enough.
 

 
Closing
 
World Wind is a great software package... and so is the Encoder. But, if I want decent quality video clips from World Wind, I'll setup my camcorder on a tripod and shoot footage from my laptop's screen.
 
The test clip shown in the opening of this newsletter, taken with the camcorder, was shot in daylight hours, with lots of reflections going on in the laptop screen... it's best to do it in the dark so the light source is only the laptop monitor. 
 
Even if you don't get video skimming over your neighborhood using World Wind and the Encoder, I hope you've gotten something from the exercise. Get your camcorder ready.
 

Have a great week...
 
PapaJohn