Having a looping presentation on a television or projector is great for attracting attention. The presentation allows people to learn more even when your hands are full dealing with others.
Setting up a reliable presentation that will survive restarts, software updates, and changes in file formats is tricky. I have helped a sizeable number of customers schedule that perfect presentation. The process has become easier but still problems can arise.
Let's look at what it takes to build a robust presentation system. Our aim is to have something that is difficult to break and does not suffer when underlying software changes.
I mention this now because with OS X 10.10 problems have arisen with Microsoft PowerPoint. Before that undocumented changes in Apple Keynote broke existing AppleScripts. Before that still QuickTime Player's behaviour changed when Apple dropped all but MPEG4/h.264 as native files.
So what will work? Surprisingly, movies.
Creating Your Presentation
In this case, I recommend converting your presentations to QuickTime playable, MPEG4 encoded movies. I recommend this approach because this is a file format supported by a wide range of presentation tools and as a format can be shown on a wide range of players.
Consider your presentation software, be it Microsoft PowerPoint, Apple Keynote, or something else, as a tool for creating presentations but not one suitable for showing looping presentations. Presentation software is complex, interactive, and demands a human operator.
For our situation, we want simple software that does not need a human hand or interaction to work. We need our presentation to play, loop back, and play again. Looping forever.
The good news is that the two biggest presentation tools provide easy save as movie options:
- Microsoft PowerPoint.app : File > Save as Movie…
- Apple Keynote.app : File > Export To… > QuickTime
With any movie you create, put the resulting file through Handbrake to dramatically reduce the file size and create a version better suited to playing back on a modern player.
We now have a presentation in movie form that has been both crushed in file size and standardised in format.
Playing Your Presentation
So how to play your presentation? Despite Power Manager's built-in support for QuickTime Player, I am going to recommend something a touch more involved.
As I noted earlier QuickTime Player has had problems with changing behaviour and is likely to change again without warning. As part of the underlying operating system, QuickTime Player is subject to change as part of any Mac software upgrade. This adds risk that a minor update could break your presentation playback.
Instead we will use VideoLAN Client (VLC). VLC is a stalwart of the movie playing world. An open source and completely free product, VLC is available for nearly every platform and computing device available today.
You can download the Mac edition of VLC from the official VLC web site.
VLC has key benefits for our presentations. VLC can automatically open a file in fullscreen mode with looping turned on. This instantly deals with our key playback concerns. VLC will play and keep playing our presentation movie until quit or the computer is shut down.
VLC's Video preferences let you further customise how your movie will be presented.
Scheduling the Presentation
There are a few approaches to scheduling your presentation movie with Power Manager and VLC.
Open With Approach
The simplest way is to tell OS X to always open movies with VLC:
- Within the Finder, select Get Info on your presentation movie.
- Within Get Info's Open With: section, select VLC.
- Within Get Info's Open With: section, select Change All….
Now you can use the built-in launch application task in Power Manager to create your schedule. If all goes well, OS X will automatically open your movie in VLC.
If you find QuickTime Player is being launched, check the Get Info settings, or use the Scripted Approach below.
A less easy but more direct approach is to use a shell script to explicitly tell OS X what application to launch your presentation movie in.
For this example my presentation movie is located in the folder:
Following the run a shell script recipe, my event runs the following shell script:
#!/bin/sh open -b org.videolan.vlc /Users/Shared/presentation-movie.mp4
This shell script contains some redirection. The script does not talk to VLC directly, instead the script asks
open to open our presentation movie using the application with the bundle identifier
A more direct script would use:
#!/bin/sh /Applications/VLC.app/Contents/MacOS/VLC /Users/Shared/presentation-movie.mp4
This assumes VLC lives in your /Applications folder. Of course, that assumption is what the redirection script avoids.
open will try and find VLC regardless of its location on your Mac. Ideally, leave VLC in your /Applications folder.
As with any set up, test, test, and test again. If you encounter problems, be sure to use Console.app to review the
system.log file. The console logs often point directly to the problematic step.
Likely problems will be the path to your presentation movie. Be sure to check for white space and case sensitivity problems.
Once up and running, a movie and VLC approach will be far more reliable and robust than your presentation software alone.