利用者:Hcube/SummerOfCode2007/Proposal

提供: wiki
移動先: 案内検索

Blender audio system cleanup and upgarde

Introduction

The main purpose is to remove every other sound code references from blender source except SoundSystem library. The other task is removing unneccessary dependencies (fmod, openal) from SoundSystem code with keeping API unchanged. The only used library is SDL, because its good multiplatform support. Openal will be replaced with verse projects audio system code. (UVAS)

Synopsys

The main purpose is to remove every other sound code references from blender source than SoundSystem library. The other task is removing unneccessary dependencies (fmod, openal) from SoundSystem code with keeping API unchanged. The only used library is SDL, because its good multiplatform support. Openal will be replaced with verse projects audio system code (code is available in verse blender source).

Benefit to the blender community

Support for other audio formats than wav will be added. e.g mp3 or ogg or flac. This can be done using ffmpeg or importing souce code from a proper licensed codec open source. Done this, the sound editing and game engine`s audio output feature will work as a charm.

Deliverables

The most of changes will be made in SoundSystem library, but of course there are neccesery changes in other parts of blender source to replace ex. SDL mixer refernces. The replaced features will be implemented in internal Sound System library.

Functionality details

The User Interface will not change. The cleanup is done at developer side. The only user side feature addition is supporting more audio formats. At the developer side the benefit is porting verseblender`s audio code back to the main source.

Implemenation details

Sound System needs directory refactor and restructure.The SoundSystem`s API will not be changed except feature addtion. This also applyes to C-API too. Main tasks: Import verse audio code, Implement internal SDL mixer feature replacement.

Project Schedule

At the first week, i will be inspecting the difference between the audio systems of verseblender and blender, and searching for the libs containing the new audio formats. Then i will import them, for example from the libavcodec. At first, the depends of sdl mixer, then the openal will be replaced, and i will integrate the verseblender audio sources. After that, the source parts of new audio formats will be added.

About Me

I'm a 22 years old student, studying at the Budapest University of Technology and Economics. I've started programming 10 years ago, and I've been using the C language for 8 years, and the C++ language for 5 years. I've been using opensource software for 7 years, and i've got known of the basics of Blender in 2003. I used it for complex modelling for my car racing game on the summer of '06. I used the SDL in 2003 for a jukebox software of mine. I spend much time with searching for new opensource libraries, getting familiar with them, and then i use them in my projects. I'm also familiar with the following programming languages:

  • python (1 year)
  • java (4 years)
  • SML (3 years)
  • Prolog (3 years)

I've started to study the source code of blender on the summer of 2006, an I'm tracking the integration of ogre 3d engine and the blender game engine (echo-plugin project).


i`m familiar with: ogre3d.org bullet.sf.net clanlib.org libsdl.org openal audiere.sf.net ffmpeg.mplayerhq.hu

my game project: stuntcarracer.sf.net