Power Point Dias Autoplayer

to index

This script turns your windows pc with a powerpoint installation, into a client machine that downloads and plays pptx diasshows from a network drive.

The script can be downloaded below as a single file, which is tested with a python 2.6 and 2.7 installation

Why I made this:

My girlfriend was asked to do a powerpoint based info screen system on a school. They had chosen powerpoint for creating daily information slides as the users was familiar with powerpoint. They wanted to be able to include video, and other standard powerpoint features, and was promised that the bought info screens could load and show powerpoint slides from the build in web export feature.

I was impressed to say the least that powerpoint could export a diasshow with embedded media, and decided to test it. Quickly I realized that the build in export feature depended heavily on IE, and exploited old security flaws in the javascript implementation, to play the dias show.

Still I had to admit, that when I ran it in IE, it showed up nicely, and played the dias slideshow... However, the embedded media files did not start automatically, as I expected from the powerpoint animations..

The embedded videos could only be played manually by clicking them in the browser. So much for an automatic playback of the slides. It did offcourse work when I played the slideshow within powerpoint..

I decided there was now only 3 options:

  1. forget it, and let the school deal with it
  2. hack some javascript that forced the embedded player to start on slide load..
  3. get powerpoint to automatically load the file and start it

The first is offcourse not interesting, and was quickly dropped. The second ment figuring out how the export tool worked, and build a script that modifies the original javascript made by powerpoint. That takes too long. The third option however, promises that if the diasshow looks good on a test run, it also works on the info screen :D

Analysis of the problem:

While this script is not a production ready script, it still had to posees some robustness features towards network problems. The first thing I did was to analyse how much robustness I wanted. For this I created a small diagram of which actions I wanted covered. (I like flowcharts for vizualisation of ideas, so I chose a flowchart like diagram)




Henrik Dalsager Christensen · Ranunkelvej 211 8471 Sabro · (safemail)