Microsoft PowerPoint 2007
Hacking
My PowerPoint has embedded audio and video that only works on my computer
The ppt file is actually a compressed archive using pkzip containing a number of xml and mostly image media. Using the vim editor it is possible to open the ppt file and navigate though the various xml files, select one, and successfully make an edit. One notable example of a useful edit is to correct the path to what is called "External" media such as embedded video and audio within the PowerPoint presentation.
vim powerpoint.ppt
The vim editor shows a list of xml files contained within the ppt that you can navigate up and down via the keyboard. We will select a specific xml, in this case called:
ppt/slides/_rels/slide2.xml.rels
An embedded sound within the PowerPoint only works when the presentation is launched from the source computer or LAN. To make it portable, all specific paths need to be altered so that they are relative. Take note of this network path:
Target="file:///H:\My%20Documents\MHA%20Program\Capstone\week%2010\pack\Hospital_AlarmFatigue05.wav"
When the PowerPoint presentation is launched from another computer outside of the creator's own private network, the media file will not execute. In other words, there will be no sound.
Using the vim editor the original ppt file is opened, then the slide with the media is selected via cursor navigation and the XML is edited.
Target="file:///Hospital_AlarmFatigue05.wav"
Then the XML is saved, the container saved, and quit the vim editor. The ppt is not corrupted and the PowerPoint presentation is able to use the audio file as long as it is present in the same directory as the ppt file, no matter what computer (within parameters).
As a reference, the XML code format for the path was:
Target="file:///\Hospital_AlarmFatigue03.m4v" TargetMode="External"
Anything with the TargetMode "External" refers to a media that is not directly embedded in the ppt file itself. Microsoft did not design the ppt container to include audio and video clips until later versions of PowerPoint. This is a major fault in Microsoft PowerPoint that has frustrated users for decades. Imagine the marketing department creating an impressive PowerPoint presentation only to have it fail when ported to the boardroom computer now absent are all audio and video components.
Software to correct the hard-coded full path to external resources, a task that cannot be accomplished within PowerPoint, is available at a cost. However, vim is FOSS and with it the same task can easily be accomplished by the process described earlier.
Within PowerPoint there is an option to view the External audio and video:
Office Button -> Prepare -> Edit Links to Files
Apparently although this tool allows us to the objects, it was intended for OLE specific objects and will not allow us to directly edit the path. When the necessary "break link" button is grayed out we use vim.
Tip: This feature is available in 2007 and earlier, however in Office 2010 it is hidden and can't be used unless the classic menu is installed.
Tip: even relative path External media will not execute from the PowerPoint when within a pkzip container. The zip archive must first be extracted before relative path External media will execute.