Jump to: navigation, search

Videos/A Digital Media Primer For Geeks/making

620 bytes added, 00:17, 26 February 2013
I encoded by hand external to Cinelerra using mplayer for final postprocessing, the example_encoder included with the [Ptalarbvorm] Theora source distribution, and ivfenc for WebM. I synced subtitles to the video by hand with Audacity (I already had the script) in SRT format [for easy editing/translation and syncing with the video in HTML5], and transcoded to Ogg Kate using kateenc. The Kate subs were then muxed with the Ogg video encoding using oggz-merge, and finally indexing added to the Ogg with OggIndex.
(For the record, scaling with mplayer below is done mostly for convenience. It should not be used for professional as the libswscale resampler used in mplayer tends to shift the colors in the result.)
<center><div style="background-color:#DDDDFF;border-color:#CCCCDD;border-style:solid;width:80%;padding:0 1em 1em 1em;text-align:left;">
<br style="clear:both;"/>
'''Important Update as of 2013-02-23'''
A few things have changed slightly with the WebM tools since episode-I was first released. It also turns out that mkvmerge/clean don't generate strictly correct WebM files. The mkvmerge/clean problem can cause playback in Chromium to freeze due to out-of-order timestamps. There's more information here: []
As a result, I've updated the examples below to use the current tool names and options, as well as use ffmpeg to perform WebM muxing rather than mkvtoolnix.
<center><div style="background-color:#DDDDFF;border-color:#CCCCDD;border-style:solid;width:80%;padding:0 1em 1em 1em;text-align:left;">
oggz-rip -c vorbis A_Digital_Media_Primer_For_Geeks-360p.ogv -o vorbis.ogg
* Produce VP8 encoding from the y4m file used for Theora
ivfenc filtered.y4m vp8.ivf vpxenc -p 2 -t 4 --best --target-bitrate=1500 --end-usage=0 --auto-alt-ref=1 -v --minsection-pct=5 --maxsection-pct=800 --laginlag-in-frames=16 --kf-min-dist=0 --kf-max-dist=120 --static-thresh=0 --drop-frame=0 --min-q=0 --max-q=60-o vp8.webm filtered.y4m* Mux the audio and video into our first-stage the final WebM filemkvmerge ffmpeg -i vorbis.ogg -i vp8.ivf webm -o firstc:v copy -stage.webm* mkvmerge by itself doesn't generate c:a fully-compliant WebM file; mkclean will make the last necessary alterationsmkclean --remux first-stage.webm copy A_Digital_Media_Primer_For_Geeks-360p.webm
===Control pop/unpop===
Oddly enough this is was the hardest part, not because it's hard to do, but it's hard to make it consistent across browsers. Every browser fires radically different UI events for the same mouse/keyboard actions.
...In retrospect, not as gratuitous as it seemed when I first wrote it. Many aspects about how video is made and presented assume viewing in a relatively dim environment, where the video being watched is the brightest thing in sight [or close to it]. Xiph's web styling uses white backgrounds, which I found actively distracting and out of place, but altering the style of the site for just the video pages also seemed clearly wrong. So I added an animated dim/undim on playback/pause (instantaneous dim/undim was jarring). I'm now convinced it was a good call, assuming it actually works everywhere as intended (it won't work on browsers using the Cortado fallback).

Navigation menu