GSOC 2012/Student Application feroze/Fedora Audio Spin

Contact Information
Email Address: ferozenaina [at] gmail com Telephone: +91-9789966786 Blog URL: blog.feroze.in   Freenode IRC Nick: feroze

Why do you want to work with the Fedora Project?
I’ve used Linux as my primary OS for 6 years now often switching between Fedora and Ubuntu. I’ve now fully moved to Fedora for its GNOME support. I believe in Fedora’s philosophy and their support to other open source projects. Fedora also has a very friendly community and has the latest updates in their repository. I first used Fedora in 2008 and a user on IRC helped me with all (now) newbie questions.

Do you have any past involvement with the Fedora project or another open source project as a contributor?
I’ve been involved with PiTiVi during GSoC 2011 where I implemented a media presets system and an uploader to upload videos to YouTube, Vimeo and DailyMotion from the desktop application itself.

https://github.com/feroze/pitivi/commits/profiles

https://github.com/feroze/pitivi/commits/maghoff

Some of the commits I'm proud of:

https://github.com/feroze/pitivi/commit/0b1f1c475607d59bf6fa1f7fa465c464bbb48ced

https://github.com/feroze/pitivi/commit/654b172badd30ecd027bd3e2bf8c6f59225e2961

https://github.com/feroze/pitivi/commit/baba3db2d1d6d68b7fc0a94fc2980e92db82e2df

https://github.com/feroze/pitivi/commit/fec8e3215c118d04a28f189b487d7b8abecb1e63

https://github.com/feroze/pitivi/commit/dc440f91f1a5e0eab059814d6a137c04ef004f02

Did you participate with the past GSoC programs, if so which years, which organizations?
I successfully completed GSoC 2011 working for PiTiVi under GStreamer.

Will you continue contributing/ supporting the Fedora project after the GSoC 2012 program, if yes, which team(s), you are interested with?
Creating the Audio Spin requires a lot of work and cannot be completed fully within the GSoC period. I will stay around around and help until it is completed. I hope to continue as a Fedora package maintainer.

Why should we choose you over other applicants?
I have recorded and edited music. Users shy away from Linux for music production as it has a learning curve and they would have to learn how to add repositories and build packages. I hope to make it simple enough for users with no prior linux experience to just pop the Fedora Audio Spin Live CD and start producing music right away instead of searching for the proper applications and plugins.

I am proficient in python and gtk. I have created small bash scripts for renaming music and cron jobs. I understand how packages and repositories work. I have created a customized Ubuntu Live CD. I also have experience with c++ and qt.

I want Fedora Audio Spin to be showcased as the best Linux audio production workstation out there.

Proposal Description
I would like to work on the Fedora Audio Creation Spin

http://fedoraproject.org/wiki/Summer_coding_ideas_for_2012#Fedora_Audio_Creation_Spin

Currently, I need to switch to Windows for any serious audio production work. Also, Fedora repositories lack many crucial and updated packages and I have to use the Planet CCRMA repository. It is also a little shocking to not find a dedicated Fedora flavour or spin similar to Ubuntu Studio for audio production.

I've read through the discussions at http://lists.fedoraproject.org/pipermail/music/2012-April/001004.html

Right now, I don’t have an updated list of default packages to be included. I will use https://fedoraproject.org/wiki/Audio_creation_spin_development#Primary_Packages as the base and find out what other packages are the most required from the mailing list and the mentors

Current List:

QTractor Ardour Ingen Audacity Lilypond Rosegarden Fresobaldi Muse LV2 Plugins Hydrogen Fluidsynth Fedora Musician's Guide

Another necessity would be having PulseAudio and JACK daemon working correctly. Ubuntu Studio already has this working. Currently in Fedora, the user has to make a workaround to prevent Qjackctl muting PulseAudio (http://www.harald-hoyer.de/linux/pulseaudio-and-jackd). These steps would be a little intimidating to beginners.

The Audio Spin would have this fixed and working out-of-the-box. We would also have to specify kernel commands for optimal real-time audio recording performance.

We would also need to include an alternate desktop theme as music studios usually have low lighting conditions. For this, we would need to use high-contrast themes and icons.

At the end of GSoC, I will have a working Audio Spin LiveCD and have the updated audio packages in the Fedora Repository.

Live CD: The Live CD would run a lightweight LXDE and would contain the most essential packages. Due to its size limitations, the Live CD would focus mainly on one aspect like live recording and mixing or computer production.

Full DVD: The DVD would be KDE/Razor based as Qt is usually the preferred GUI for audio applications.

Communication is a major part of this project. I will be coordinating with Audio SIG, project owners and my mentor. I would mostly be using email, IRC and wiki. I am familiar with open source workflows.

I would be having my semester exams from April end and holidays would start on June 19th and I would be working full-time on my GSoC with no other commitments. My college would reopen around the 2nd or 3rd week of July and I would have 6 hours of classes everyday with very little coursework or homework. I would compensate for this by working late into the evening.

Tasks
Coordinate with the Audio SIG to develop a list of primary audio packages which are Fedora license compliant. If already available on Planet CCRMA repository, port it to Fedora, otherwise create packages. Get these packages approved and into the Fedora repository Coordinate with the Spins SIG Prepare the Fedora Audio Creation Spin and make PulseAudio <--> JACK bridging work out-of-the-box Run it by the Spins SIG and through the acceptance process Include kernel commands to optimize real-time recording Package Fedora Musician's Guide

Timeline
Since some of the tasks would run simultaneously and time would depend on many variables, I'm giving a rough estimate.

The GSoC Coding Period is from May 21 to August 20th

During Community Bonding Period: Prepare a list of applications to be packaged and get feedback from the Fedora Audio SIG

By Midterm Evaluation: Port existing license-compliant packages from Planet CCRMA repositories and get them into the Fedora repositories. Update any out-dated Fedora audio packages. Decide upon packages to be included in LiveCD.

By Final Evaluation: Package the LV2 plugins and Musician's Guide. Create the Audio Creation LiveCD with the required packages. Coordinate with Spins SIG for approval.

Have you communicated with a potential mentor? If so, who?
I’ve communicated with Brendan Jones through email and IRC.