{subsection: Creating the video files}
 
-_{link: http://diveintohtml5.info/video.html#what-works Dive Into HTML5}_ has a good overview of what you need to do.  The situation is even better if you're willing to require a "recent" web browser (2011+), in which case you can ignore Flash and Theora+Vorbis+Ogg and exclusively rely on H.264(baseline)+AAC(low complexity)+MP4 and WebM.
+We're limiting support to "recent" web browsers (2011 and newer).  To cover everyone, we need two files: H.264(baseline)+AAC(low complexity)+MP4 (Safari, Chrome, IE, Android, and iOS) and WebM (Firefox).
 
-_Dive Into HTML5's_ recommendations for creating the files should work, but are probably overkill.  If you've got a good ffmpeg install (Try /u/a/d/adesmet/bin/opt/ffmpeg/bin/ffmpeg ) it can do the job.  {link: https://superuser.com/questions/424015/what-bunch-of-ffmpeg-scripts-do-i-need-to-get-html5-compatible-video-for-everyb The full details are a bit long}, but here is a summary:
+If your video editing software will export the required formats, you're good to go.  If not, the easiest solution is to use ffmpeg.  (Try /u/a/d/adesmet/bin/opt/ffmpeg/bin/ffmpeg )
 
 {code}
 ffmpeg -i input.mp4 -c:v libvpx -qmax 42 -qmin 10 -b:v 1M -c:a libvorbis -q:a 4 -f webm out.webm
@@ -43,11 +43,21 @@
 
 Warning: iPhones (as of 3S) can apparently only accept video up to 640x480. (Maybe? Double check.)  If this is true, we may want to also export low-resolution versions and have a link to a different place to view the videos for lower end devices.
 
-(Instead of libfdk_aac, you can use libfaac. The original source did so. It appears that libfdk_aac is a superior replacement.)
+By default ffmpeg seems to use a number of threads equal to the number of cores you have minus 1.  You can speed things up by specifying your actual number of cores.  For example "-threads 2" forces 2 threads.
 
-Note that the above adds "-movflags faststart" to the mp4 creation. This causes a second pass on the file (slow, sadly) that moves the metadata to the start of the file, making it faster for a web browser to seek into the middle of the file.  Instead of "-movflags faststart" you can use the tool qt-faststart.
+{subsubsection: FastStart and mobile browsers}
 
-By default ffmpeg seems to use a number of threads equal to the number of cores you have minus 1.  You can speed things up by specifying your actual number of cores.  For example "-threads 2" forces 2 threads.
+MP4 files should have the "moov" block (the index correlating times in the video to bytes into the file) before the "mdat" block (the actual video).  This is sometimes called "faststart."  If you don't do it, many browsers will be unable to quickly seek into the middle of the video.  In some cases, especially on mobile devices, the browser will refuse to play the video at all.
+
+The ffmpeg commands above already worry about this ("-movflags faststart"). If you have MP4 files but they aren't correctly set up, the easiest solution is probably to use qtfaststart to fix it.  There is
+{link: https://github.com/danielgtaylor/qtfaststart a Python version that can be used without installing}.  ffmpeg may also ship with a qt-faststart.
+
+
+{subsubsection: Notes on creating video files}
+
+For a discussion on the general techniques involved as well as how to support even older browsers, you can look at _{link: http://diveintohtml5.info/video.html#what-works Dive Into HTML5}_
+
+For more details on the ffmpeg commands used, see {link: https://superuser.com/questions/424015/what-bunch-of-ffmpeg-scripts-do-i-need-to-get-html5-compatible-video-for-everyb This SuperUser question}.  This version has been modified.  It uses the newer libfdk_aac instead of the older libfaac. It adds "-movflags faststart"; see the "FastStart and mobile browsers" section for details.
 
 {subsection: Extracting a poster}