User:Wywin/mediaConvert

Identity
Name: Wyatt Winters Email: mediawikiGSoC at wyattwinters.com Project title: Up to Ogg

Contact/working info
Timezone: UTC -5 (CDT) Typical working hours: Super flexible IRC or IM networks/handle(s): irc://irc.freenode.net - wywin

Project summary
While a number of applications support Ogg Vorbis and Theora, not many people want, need, or know how to work with it. To lower the barrier of contributing media content to Wikimedia projects while still maintaining free formats, the bugs linked present a compelling idea - don't make them think about converting!

Once it finishes converting and pops the user to the screen with the results of the upload, assuming it was successful, perhaps a little note or link to text explaining why and how we converted their file.

Required deliverables

 * Generic Mediawiki extension supporting background, transparent conversion of .mp3 files to .ogg Vorbis.

If time permits

 * Wikimedia Commons specific hooks, possibly making use of the Internet Archive's conversion services, to reduce CPU strain on Wikimedia servers (see, )
 * WMA, and RA support
 * Video support! Start with AVI and MPEG, move to RM and FLV if all goes well with the more common formats
 * Pull from other site (publicly facing files)
 * Youtube support? This could be a mess both copyright wise as well as everything breaking when Youtube changes how their stuff works... but think of all the CC-licensed cat videos!

Project schedule

 * 1) Implementation of basic extension: ~2 weeks
 * 2) Breaking it (big files, not actually mp3 but still named .mp3 files, etc): ~1 week
 * 3) Fixing what I broke: ~1 week
 * 4) Review, merging: ~4 weeks
 * 5) Leftovers, for implementing more formats, or for when something goes kablooie: ~2 week

About you
I am wrapping up my second year of study at Rochester Institute of Technology, majoring in Information Security and Forensics / Computing Security (they're changing my major name halfway through!), and am having a blast. I have grown up on computers, which has been both a blessing and somewhat of a curse. According to parental reports, I could operate a Windows 95 environment at the age of two.

My first exposure to the magic of media formats was getting a 5th generation iPod for Christmas in 2006. Trying to find legitimate, not virus-filled, free software that I could use to convert my DVDs into files that I could convince the iPod to play was a nightmare. While the whole "getting things to play on other things" process has improved (mostly thanks to VLC being ported to Android and things like PS3 media server), it still requires the user to go out of their way to get everything working where they want it to. Once this project is implemented, everything will be transparent to the user, while making their media freely available in freely usable formats!

Participation
I always have my email and IRC open. I would ideally condense all mentor-directed into a daily "digest" mail to reduce my disruption, with urgent or time-sensitive issues addressed via IRC / other mentor-preferred real-time communication method.

I am a fan of Github, and would likely push there so I don't taint the offical repo with my in-production code. I would push commits at least daily, likely much more frequently.

Should I run into any bugs (which is unlikely, considering I am hacking on a single file from the core Mediaiwiki), reporting those with detailed, logical, and thorough bug reports are priority one. We should fix existing functionality before adding new functionality!

Past open source experience
Despite playing with computers since I was born, I have been learning programming (I started in Visual Basic... that was a mistake), using Linux, and other open source projects since 6th grade. Up until recently, I had tried to contribute to open source projects, but various obstacles (git is complicated!) impeded any formal commits. While filing a bug or two here and there, my breakthrough moment was taking the Humanitarian Open Source Software course at my university.

Having a fantastic professor (Justin Sherril of DragonflyBSD), and teaching assistants from the "FOSSBox" to guide me through the minefield that is git, best practices for coding with others in mind, and guiding my group and I through our work on a mail application for the Sugar OLPC environment: Sweetermail

While I don't have any code contributions to MediaWiki, I am a semi-active editor at the English Wikipedia.

Any other info
Nothing here yet, I might try and do some proof-of-concept stuff, but finals... :(

Thanks!
Thanks for reading my proposal, and please give me any and all feedback you have! Either my talk page here, my talk page on en.wikipedia, email, or IRC is fine.