Once we ship the firefogg extension support for the uploading videos; commons should request that users select the highest quality source video footage available ie the HD video their camera captured or DV original edited footage from their local computer and then commons will supply the transcode settings.
I think it would be good if we wrote up some documentation to explain this to uploaders... any volunteers to help on that front?
Presently for the firefogg upload support I have arbitrarily chosen 400 pixels wide with keep-aspect ratio and 500kbs bitrate.
Firefogg could let us request multiple encodes or profiles from the user.
Should we plan on supporting multiple "profiles" ie multiple quality settings? Ie one version at around 320 wide 300kbs for low bandwidth / resolution environments, cell phones etc (300kbs should be "acceptable quality" once the new Thusnelda theora encoder lands).
We could additionally read the source file resolution that users provide and choose a "maximum quality preservation version" we could probably even ship the Dirac codec with firefogg (Dirac is a high quality at high resolution wavelate codec for more on dirac see your favorite info source ;)
If we want to support multiple quality settings for a single "stream" this will require a bit more infrastructure. Specifically I propose we add another namespace for temporal media called Stream: and have it directly map to ROE xml something like: http://tinyurl.com/72x57r more info on ROE http://wiki.xiph.org/index.php/ROE
File:my_movie_low_quality.ogg and File:my_movie_high_quality.ogg would soft redirect to Stream:my_movie and all the meta info would be stored there. The Stream namespace also allows us to group other media tracks that share a temporal meaning such as multiple language audio dubbing and multilingual transcripts/ subtitles. The javascript player can then dynamically select audio language and or subtitles based on the user language.
Stream namespace could also store "mirrors" or point to "torrents" improving syndication and bandwith cost distribution for high traffic HD content ie (Miro could read the ROE file and grab the torrent rather than hit our servers) and or a Firefox torrent extension could be detected by our javascript player and choose the torrent over hitting our servers for the HD content.
Not to say all these things will happen at once ... just pointing out the need for a new namespace to group idential temporal meaning files.
--michael