Multi channel audio

From Buzztard

Jump to: navigation, search

One song could contain sources with various formats. We need a behaviour that always mixes to the better format. One on the last conversion we will down-mix to the output-format.

[edit] Extending bt-core

The adder element that we use to mix streams, currently switches formats whenever a buffer comes in. We could add a capsfilter behind the adder in BtMachine and calculate filtercaps whenever we add/remove links to it.

This needs to result in a chain reaction down the pipeline. Sources have no adder, thus the format is determined by the actual machine. Effects need to propagate the negotiated format and the sink has to evenetually limmit it to the output format.

[edit] Mixing rules

We need clever audio channelconversion

  • each source and sink need a channel format
  • the converter places the src-emitters and the dst-consumers in a virtual room
  • then it renders a mapping (function for the each dst-channel with the factor for each src-channel)
src/dst mono stereo quadro surround1
mono - 1->n 1->n ?
stereo n->1 - 2->4 ?
quadro n->1 4->2 - ?
surround1 n->1 ? ? ?
Personal tools
collaboration

SourceForge Logo

GStreamer Logo

MediaWiki

Valgrind

GNU Library Public Licence

GNU Free Documentation License 1.2