Adding spatializer to Phonon?

Colin Guthrie phonon at colin.guthr.ie
Sun Feb 27 12:16:35 CET 2011


'Twas brillig, and tim at 27/02/11 07:13 did gyre and gimble:
> 
> 
> On Tue, 2011-02-22 at 09:32 +0000, Colin Guthrie wrote:
>> 'Twas brillig, and Harald Sitter at 21/02/11 22:24 did gyre and gimble:
>>> Aloha!
>>>
>>> On Mon, Feb 21, 2011 at 9:27 PM, tim <tej at melbpc.org.au> wrote:
>>>> - Would you agree with this? Would Phonon be the right place to add a
>>>> spatializer? If not, what is a better place?
>>>
>>> No. The actual frameworks/libraries as used by the backends should
>>> have this, or if all fails one could also do it in the individual
>>> backends (given the underlying framework/library actually allows that
>>> sort of manipulation to the audio stream). What Phonon could and
>>> should do though is expose such functionality to the
>>> applications/user. For this we already have an interface ...
>>> BackendCapabilities::availableAudioEffects(), so if you want to have a
>>> quick success for starters you could try to expose VLC's existing
>>> spatializer (I hear libvlc_audio_filter_list_get is a related function
>>> needed there ;)).
>>>
>>> I am pretty sure GStreamer also has such a thing amongst its billion
>>> billion plugins, so you could easily cover the two important backends
>>> on Linux.
>>
>> And just to keep my PA theme going, there could be ways and means of
>> implementing this in PulseAudio so that all Linux backends would benefit
>> (although this may be overkill if it's supported in GST+VLC already).
>>
>> If it was implemented in PA, it could be done as a virtual sink (like
>> equaliser support and AEC already is), or perhaps you could just
>> configure a LADSPA sink (I'm not sure as I don't really know much about
>> LADSPA).
>>
>> I need to get the multi-channel LADSPA stuff merged now I come to think
>> of it....
>>
>> Cheers
>>
>> Col
> 
> Thanks. I learned that pulse-audio supports LADSPA and there is already
> a bs2b plugin for pulse-audio so it's all there already - all I need to
> do is configure it.
> 
> I'm thinking of writing a more ambitious one which I will probably
> target to the Jack plugin API as it seems a lot simpler to program.

JACK is designed for pro-audio systems and it only run by a very small
subset of users. So if you aim is mass appeal, then I would focus your
efforts on something that is part of a typical setup.

But if you're really just trying to scratch your own itch and don't mind
that this will have a limited usage, then by all means JACK is a great
platform to use for this.

Col

-- 

+------------------------+
|     Colin Guthrie      |
+------------------------+
| http://colin.guthr.ie/ |
+------------------------+



More information about the Phonon-backends mailing list