Applying WMP9_Template to UW CSE 142 Videos

Description
In order to watch the videos alongside the automated slideshow, the Windows Media Video embed a page switching script command for the JPEG (or Power Point) files.  So you'll need Windows with Internet Explorer and Windows Media Player for viewing the slide show.  Newer versions of Windows Media Player 9, require this "UW TV - Using TVI Archives with Windows Media Player 9 or Later", or the updated WMP9_template.zip template file is mirrored locally here.

ASF Scripting
The UW CSE 142 video.wmv WMV/WMF files are embedded with time markers or script commands for changing slide JPEG images or Power Point presentation.

Windows Users:  If you have Windows Media Player 9 or later, apply the updated WMP9_template including my fixes noted below.  You maybe presented with a prompt at the top or bottom of IE requesting you to allow a script to run.  Click OK or Allow, and the video should play as expected.  These video.wmv WMV files can also be opened within the free "Windows XP's Windows Media File Encoder".  From what I can recall, later Windows versions appear to omit this program or have renamed the program while omitting this feature of the program.  Clicking the "Markers" button will reveal the times for switching the JPEG Power Point slide show.  I have also successfully tested the WMP9_Template patched Lecture Files (including my fixes noted below) on Windows Professional "7 SP1" and "8.1" using the latest Windows Media Player 12 and Internet Explorer 11.  Also successfully tested is a VirtualBox installation up-to-date patched 32 bit Windows XP SP3 installed with a Windows Media Player Version 9, while omitting any further updated versions of Windows Media Player, but later versions should likely work.

Linux and Other Operating Systems:  There is a utility called wmclear which will print the embedded ASF script commands, but wmreader isn't recognizing the ASF metadata of the UW CSE 142 WMV files correctly, and I have added patches to my site for partially fixing wmreader.

Applying the Update WMP9_Template

The UW Method
1) Unzip both WMP9_Template.zip and the target LectureNum.zip files.
2) Copy over the WMP9_template/1024x768.html and Files/movie10x7.html files into your targeted LectureNum folder, replacing the original Lecture#/ files respectively.  Notice this only fixes the 1024 screen resolution files!
3) The files require two more trivial fixes pertinent to CSE 142 Lecture files; the case of the "files" folder should be "Files" and the suffix for "video.asf" should be changed to "video.wmv".  See my wmp9_template-FixForCSE142.diff.

Automated Method; using DiffUtils, PatchUtils, and CYGWIN Friends!
Prerequisites are CYGWIN with installed diffutils, patchutils, and unzip.  (A Linux Distribution can suffice for CYGWIN.)
1) Move all your CSE 142 Lecture Zip Archive files into their own folder.  (No other folders or files should be present within this folder!)
2) Open a command shell of CYGWIN and cd (change dir) to the previous folder containing all your Zip Archive files.
3) Get and execute the multi-unzip-to-folder.sh script to automatically extract all Zip Archive files into their associated folder names.
3) Copy my CSE142-Lectures-wmp9-fix-2.patch into the root folder containing all your Zip Archive files, cd to the folder you want to patch and issue the command

$ patch -p1 --dry-run < ../CSE142-Lectures-wmp9-fix.patch"

Removing "--dry-run" when you're satisfied it will work.  Else, using "patch -p1 -r < ../CSE142-Lectures-wmp9-fix.patch" to reverse the application of the patch may or may not work.  This patch also now fixes all resolutions compared to the UW Method only fixing one resolution, albeit trivial.

4) Can easily script something to recursively patch all the sub folders.  Issue the following command from the root folder of CSE 142 Lecture Zip Archive files within a CYGWIN shell, after first using the multi-unzip-to-folder.sh script.

$ for Folder in $(find ./* -maxdepth 0 -type d); do patch -d $Folder -p1 --dry-run < CSE142-Lectures-wmp9-fix-2.patch; done

Again, omitting "--dry-run" when you're satisfied the incantation is working.

TODO
After gathering all the information for the past years and finally sorting and publishing the data, should be quite simple to implement a patch for patching all screen resolution files.  Hence, create one nice patch to be applied to recurse over all Lecture Folders, along with the implemented above fixes for CSE 142 files.  (Might do this tomorrow or soon.) -- MARKED DONE AS OF 2013.12.16  Eh, albeit a little late! ;-)