How To: Creating Great Quality Screencasts

Making screencasts Lenovo X1 Carbon HP DesktopSeveral times over the past few weeks I’ve had to create screencasts or asked to advise how they are best created. There are a variety of approaches to this task, but I’ve found that my preferred technique is perhaps uncommon, and worth sharing.

Over the years there have been many times when screencasts were the most appropriate method for conducting user training or addressing specific support issues. At different times I’ve used various software tools in these pursuits. Techsmith’s Camtasia Studio was the most common solution in years past, although Adobe Captivate was also notable.

More recently I’ve sought a lower-cost solutions and settled upon the freeware CamStudio as a passable solution. CamStudio is apparently the open source progenitor of Camtasia Studio.

There are also a myriad of free, online services that do their magic by way of a browser downloadable applet. I have little experience of these as I prefer another approach entirely.

As in other matters, I’ve long held the belief that a more hardware-centric approach can hold a distinct advantage. This has become increasingly true as common PC screen resolutions have come into alignment with frame sizes common in HD video production. A screencast that looks as good a broadcast TV is likely going to be more than adequate.

The problem I have found with  wholly software-based screencast solutions is that they often can’t capture a high-resolution display at suitably high frame rates to provide consistently smooth motion. This is entirely understandable since the display of the host platform is being taxed in several ways. It’s being used to play the presentation, which may itself be a considerable workload. Then some additional software is capturing the screen periodically and storing those images to disk.

That can be a lot of workload for a single display sub-system. There may be undesirable interaction between the presentation software, the capture software and the video driver. At best the captured video suffers less than ideal frame rate.

In contrast, when using a one computer to capture the output of another computer the workload is distributed. The PC running the presentation need only do that. The PC capturing the presentation has all of its resources available for that task. The result is more consistent way to capture a presentation as a video with high frame rates and good image quality.

The most recent project I faced was when I was asked to create a video capture of a Prezi presentation.

prezi-app-ipadPrezi is a PowerPoint-like application that can be used as an online tool (software-as-a-service) or an installed application. Prezi is Flash-based and has a range of snazzy 3D transitional effects that would be tedious to implement from scratch in Flash. However, as the company wants to promote the use of their service, which includes hosted playout, Prezi doesn’t allow the download of a SWF file or export to a rendered video clip.

The other issue with Prezi is that it lacks a timeline-based way of controlling the advance from slide-to-slide. It offers only manual control or a fixed time per slide where the options are only 4, 10 or 20 seconds. This makes accurate alignment of transitions with a soundtrack extremely difficult.

If the Prezi was captured as a video clip it could be brought into an editor and the sound added in a precision manner. The individual slide durations could be altered slightly so that the transitions matched the music track. It would be a perfect presentation in the end.

My friend needed both an HD version and an SD version so I decided to capture the presentation at HD resolution to start. The SD version could be derived from that later on.

I started by connecting my laptop to the BMD Intensity Pro HDMI capture card in my desktop PC. Since the Lenovo X1 Carbon laptop has only a Mini Displayport output I had to use a Mini DisplayPort-to-HDMI Adapter Cable . These are inexpensive and readily available.

Lenovo X-1-Carbon cable to BMD card

I set the laptop display resolution to 1280×720 pixels. I also used the projection control to make the laptop duplicate its output to the LCD onto the displayport connection.

On the desktop I launched the BMD Desktop Video Utility and set the Intensity Pro card to 720p60. It’s obvious when the display and the capture card settings match as that’s the only time when the laptop screen shows up in the BMD utilities preview window.

BMD Desktop Video Utility Screenshot

I also set the BMD software to record the video as an AVI file using it’s M-JPEG codec. To be blunt, my desktop doesn’t have the sheer disk performance to record an uncompressed HD video stream. That would require an array of hard drives where I have only a single, commonplace, 7200 RPM SATA disk. From experience I know that it will record any JPEG compressed HD clip without dropping frames.

Returning to the laptop I used the link provided by my friend to access the Prezi project, forcing it to full screen. I found that Prezi puts a few menu items up that I didn’t want in the recorded presentation. These items disappear once the presentation has been underway for a few moments. It also loops the presentation by default. In this case looping works in my favor. I just recorded the presentation twice in one pass. The second iteration didn’t have the menu items cluttering up the opening few slides.

Two passes through the presentation resulted in a 3 GB AVI file. I took that file to my wife’s PC which has Adobe Premiere Pro CS6. There I was able to trim the start and finish, adding the music track and making the various minor tweaks necessary to match the timing of the music.

Finally, I rendered the project to files. The first render was a 720p30 H.264 compressed clip. The second was a 480p30 H.264 compressed clip. Both clips were 16:9 widescreen format and progressive video. I adjusted the H.264 compression quality setting to get the file size under 50 MB in both cases. This is the maximum file size that the web team would accept for online deployment.

Both of the clips looked great. I wish that I could show you the results here, but the contents are copyrighted and I don’t want to get anyone into trouble. The screen shots that you see here are actually from a presentation that I gave at IT Expo in 2009.

If the content had been built in PowerPoint it might have been easier to export the slides as PNG files then edit them into a video clip in Premiere Pro. Although that would give up any transitions or effects from PowerPoint. It might well be faster to give the presentation as if it were being done live, recoding the result via the BMD card. Then only remedial steps would be required in the editor.

software vs hardware

Often when creating screencasts we immediately reach for a software tool. Such software can run into some serious money. Camtasia Studio 8 costs $300 and Adobe Captivate runs to a whopping $899! To be fair those software packages have a greater depth of tools than may be required for simple projects like this one. They might make perfect sense for someone who creates such screencasts as a matter of routine.

In my case, the BMD Intensity Pro card cost around $130 and the Mini-DP adapter cable another $20. We already had Premiere Pro, but in times past I’ve done such work in-a-pinch by downloading the time-limited trial of the software.

One could use something simpler, like Microsoft’s Windows Live Movie Maker, which is included in Windows 7+. I prefer to use professional tools that give me more explicit control of the project.

I might like to try Light works, which was once a leading video editing system for film and television. Over time it’s use has waned, eventually resulting in a change of ownership. In 2012 it was updated and released under a freemium model. The baseline version is free and offered for both Windows and Linux. A Mac version is reputed to be in-the-works.

The BMD Intensity Pro card may not be the most flexible solution for capturing a desktop screen. In particular, it does support capture at 1080p60, which can occasionally be a problem. The Elgato Game Capture HD or AVERMEDIA Game Broadcaster HD may be better choices if 1080p60 video capture is required.

Of course there are many ways to create screencasts. This is just my approach, based largely upon the tools that I prefer to use and the sensibilities that I bring to bear. I spent nearly a decade editing video professionally, so I’m most comfortable with that toolset. In my view “video” implies both frame rates that convey fluid motion and high-perceived image quality. I’ve found that I can consistently achieve such results using this approach.

On the other hand, it is also true that when you have a hammer…