I’m currently working on an eLearning project for which I need to use Captivate along with vmWare Fusion. If virtualization brings a lot of advantages to the eLearning developer, I found out that Captivate and virtualization do not get along very well. While I’m still looking for the perfect solution, I’d like to share some of my findings and some tips and tricks that I acquired along the way.
What is vmWare Fusion?
vmWare Fusion is a virtualization software for the Mac. (see the vmWare fusion page on the official vmWare website) It allows you to run multiple computer systems in a single hardware package.
With vmWare Fusion (or Parallel Desktop), you can create virtual computers, install an operating system into those virtual computers and run the virtual system s(called the guest systems) along with your real operating system (called the Host system). It is even possible to create a virtual network between the Host and the Guest systems and to make the Guest part of your LAN!
Benefits of Virtualization for eLearning developers
Make multiple operating system run at the same time.
If you are using vmWare Fusion, your Host operating system has to be a Macintosh computer (there are other vmWare products for Windows available - see the vmWare home page for more), but the guest operating system can be Linux or Windows or another Mac OS X system.
Being a Mac user, Fusion enables me to run a Windows system at the same time of my Mac system (different from BootCamp where you need to choose one or the other system at startup). So, I can accept windows, eLearning project... without buying another computer!
The following screenshot shows the desktop of my MacBook Pro with a Linux Ubuntu vmWare Fusion virtual Machine running
Create a project-specific environment.
For the project I’m working with, I need to shoot my desktop full screen, and full screen means with all my custom icons, wallpapers and notifications! To make things easy, I did a fresh install of another Mac os X system in a vmWare Fusion virtual Machine. I can now capture a clean default desktop environment without modifying my personal desktop!
If my next project requires a specific environment, with special icons an a corporate wallpaper, I just create a new virtual machine for that one project with all the customizations required by the customer!
Localize your content.
My computer is installed in English, but, for the project I’m currently working on, my Captivate movies need to showcase the French version of Mac OS. This is not a problem for my virtual computer. I can install the French version of Mac OS in my virtual machine and leave my English Host system untouched.
The following screenshot illustrates a French Windows OS running in a virtual machine installed on an English version of Mac os X Mountain Lion (10.8)
Better manage the resolution of your Captivate projects.
When using Captivate to capture full screen, you probably found yourself digging into the System Preferences (or the Windows Control Panel) in order to adjust the resolution of your screen before the shooting. With virtualization, giving your virtual machine the exact resolution the project requires is as simple as resizing a window!
The following screenshot shows the desktop of my MacBook Pro with the same Linux virtual machine as the first screenshot, but with a different resolution
How to use Captivate with a virtual Machine?
There are two scenarios possible when using Captivate with a virtual computer. Taking for granted that the applications we want to capture will always be installed in the guest operating system, Captivate can run on the Host operating system or inside the Guest operating system as well. Both configurations have their pros and cons.
Captivate on the host captures the guest
This was the first configuration I used when I started to work with vmWare Fusion and Captivate. Captivate was installed on my Host operating system and the applications that I needed to capture were installed in the virtual (Guest) system. The red recording area of Captivate was placed around the virtual machine’s window as described in the screenshot below.
This configuration is the easiest one to set up, but it raises 2 major issues.
Wrong automatic Captions
As far as Captivate is concerned (Remember, captivate runs on the Host system), when you click somewhere during the Capture, you interact with the vmWare Fusion application, not with the applications that runs in the virtual machine.
Consequently, when using the automatic recording modes of Captivate (which I assume you do) you always get the same automatic Text Caption “Click on the Ubuntu Window”. This is valid for the standard Text Captions, but also for the Failure Captions, Hint Captions and Success Captions as shown in the screenshot below.
Misplaced click boxes and mouse items.
When using this configuration, it looks like Captivate has a hard time detecting the exact location of a mouse click. Actually, I found out that the mouse clicks (and the Click boxes and Text Entry boxes) are located more of less 20 pixels above and to the left of the spot that was actually clicked during the Capture.
While it is pretty easy to relocate a Click Box or a mouse item in a Demonstration or a Simulation, it becomes much more of a hassle when using the new Video Demo Capture mode. In the above screenshot, notice the location of the Click Box as compared to the FR link that was clicked during the capture.
The video below has been made with the Video Demo recording mode of Captivate 6. During the capture, I clicked on the FR link, then on the EN link. Notice the bad location of the mouse!
After spending countless hours re-locating the mouse in Video Demos (using the 'Edit -> Edit mouse points' menu item), I decided that I had lost enough time and that I needed to find another solution.
Captivate on the Guest operating system
As far as Captivate is concerned, this is the usual situation. Both Captivate and the applications to capture work on the same system. This configuration automatically solves the wrong Text Caption issue and the Mouse location issue. When it comes to resolution, give your virtual machine the desired resolution and make Captivate shoot full screen! No big deal!
But other problems arise.
Installing Captivate in your virtual system is like installing Captivate on another computer. Make sure you have enough activation left on your serial number! If you have a Mac and want to install Captivate in a Windows Virtual Machine, you need an entirely new Windows license. And, last but not least, this solution is not available if you need to capture a Linux Virtual Machine! Of course, the Captivate trial can help, but it last 30 days only! Enough for your project?
No way to hide the Captivate dock icon
I know there are these two checkboxes ‘Hide Dock Icon’ and ‘Hide Notification area icon’ in the preferences of Captivate but... they don’t work! This issue is not related to the use of virtual machines, but with the previous configuration (Captivate on the Host, apps to capture on the Guest) it was easy to avoid the Captivate Dock icon being Captured. The Dock icon was present on the Host system, but the Guest system was shot! so, no problem!
I found no solution to this issue so far, and the Captivate dock icon appears in my final projects!
The sound is awful!
Now, my real problem with this configuration is related to the narration I record during the shooting. When shooting a Demonstration or a Simulation, you’ll probably record the sound afterwards, but when shooting a new Captivate 6 Video Demo, you’ll be likely to record the narration along with the video.
Remember that when creating virtual machines, you make multiple computer systems share the same hardware! When recording the narration, it means that the stream of audio data needs to go through the virtualization software layer to make its way to its final destination. It appears that this extra layer is not reliable enough and causes cracks and saturation into the sound, which is completely inaudible!
The configuration I decided to use.
There are so many benefits on using a virtual machine that I decided to use such configuration despite the problems that it causes. For my current project, I decided to go on with the second configuration (Captivate on the virtual machine). Thanks to this configuration, the mouse is correctly captured and I do not have to spend hours re-aligning mouse items and click boxes! I decided that this advantage is well worth the trade off of having the dock icon of Captivate captured!
As for the awful sound, I found the following Workaround
- In the Virtual Machine, make Captivate shoot the video demo in Full screen mode and with narration.
- On the Host System, get Adobe Audition ready to record your narration.
- Hit the red recording button of Captivate in the Guest System.
- During the count down of Captivate, return to the Host system. Press the red record button of Audition in sync with the end of the Captivate countdown.
- Record the video demo. You are actually recording two separate files. One with the video and an awful sound and one with the sound only.
- After the recording, save the .cptx (or .cpvc) file on the Host hard drive (use the virtual network between the Host and the guest) and shut the guest down.
- Open your Captivate file on the host system, go to the Library of the Video Demo, right click on the audio clip and choose Edit With Adobe Audition CS6
- In Audition, copy paste the sound data of the audio clip you recorded during the shooting into the audio clip coming from the Video Demo (some adjustments may be needed for synchronisation)
- Save everything!
The following screenshot shows Captivate in the guest system and Adobe Audition on the Host, both ready to record a new Video Demo
Using Captivate along with a virtualization solution offers many great benefits. You can better manage the resolution of your projects, you can shoot multiple operating systems on a single machine, you can capture a localize version of a piece of software and you can fine-tune the configuration of the computer you want to capture.
On the practical side, you have 2 solutions
- Captivate on the Host, apps to capture on the guest
- Captivate and the apps to capture both on the guest.
None of these two solutions are perfect! Using the first one, the mouse is not well captured and the automatic recording modes do not work well. Using the second solution, you cannot hide the Captivate dock icon (on the Mac) and you have a hard time getting the right sound!
Despite these difficulties, I stick with my virtualization solution and I wish that Adobe comes up with some new features to make Captivate Virtualization friendly! (maybe an Adobe Captivate add-in to install into the virtual machine, so the mouse clicks and the texts are correctly captured! That would be awesome Adobe....).
Don't hesitate to share your thoughts and experience in the comments. Do you have the same issues with Parallel Desktop? Do you have similar problems on Windows?
Waiting for your answers and reactions...