[MPlayer-dev-eng] Runtime interface for audio (and video) filters
Anders Johansson
ajh at watri.uwa.edu.au
Tue Dec 31 07:53:42 CET 2002
Hi,
I am about to start writing on an interface to the audio filter
layer, to be included after release 0.90. As it is now the runtime
interface to the audio filters is huge (a lot of functions are not
covered by the commandline interface) and hard to understand for a
person who isn't into sound processing. My plan is to extend the mixer
interface in mixer.c to give a user friendly interface to the audio
filter layer.
The filters I have implemented covers the functionality of a
professional mixer board (actually modeled on the Mackie digital 8
mixer board). I am planning to implement two different interfaces:
1. Playback interface: simple and easy to use functions for playback,
pretty much what you find in a combined external AC3 decoder and
power amplifier. Functions include:
1.1 Listening position: The user enters where in the room his
speakers are and the sound is delayed accordingly to center
the sound around the listening position.
1.2 Per channel volume control + master volume: The user sets
the volume on a per channel basis to give an even sound
field (this must be done interactively). SW master fall back
if mixer master is missing.
1.3 Width of center channel: The width of the center channel is
changed with a 0 - 100% level setting.
1.4 Equalizer
1.5 Surround sound decoded if available (not yet implemented)
1.6 Insertion of subwoofer channel if desired (not yet implemented)
1.7 Auralisation (not yet implemented)
A solution for saving the settings the user makes is desirable!
Anyone interested in a joint effort to implement this? I would like
to see something along the lines of alsamixer (perhaps graphical)
as a user interface and the possibility to save changes in a config
file.
When this step is finished I want to remove the old audio plugins
in libao.
2. Professional mixer interface for combined video and audio mixing:
All the functions found in a audio mixer for video use, for example
see http://www.mackie.com/record/d8b_v5/index.html
This includes adding support for automation. Automation is
basically keyed events i.e. one uses a time line in which event
keys are inserted (volume increases, channels are panned added,
removed, new tracks inserted, etc). To make this useful one
have to be able to playback multiple tracks a the same time
(tracks also needs to be dynamically insertable and removable). It
would also be nice to be able to insert keys for the video filters
and for the playback of video channels (I guess).
I want to know if anyone else is interested in this? Or if it is
even desirable for mencoder/mplayer to have it?
Cheers,
//Anders
More information about the MPlayer-dev-eng
mailing list