History log of /haiku/src/add-ons/media/media-add-ons/mixer/MixerOutput.cpp
Revision Date Author Comments
# a9cf57cf 02-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34437 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bf7ab50d 03-Oct-2007 Stephan Aßmus <superstippi@gmx.de>

large patch by Bek (HOST team):
* style improvements, header reformatting, small refactoring and adding
of missing copyrights

(to Marcus: this is not the original patch, it has already been revised two
times by myself and I thought it was very nice now)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22426 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f916862c 13-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

Switched to using a local debug header file, instead of using the private media kit file.
This should prevent mixer from beeing build with debug enabled, when media kit is build with debug.
Thus CPU usage will be reduced as mixer no longer prints a lot of information to stdout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16759 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69316791 19-Feb-2004 beveloper <beveloper@nowhere.fake>

added side left and side right channels to default output mix for better 8 channel playback


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6658 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d91580cd 30-Aug-2003 beveloper <beveloper@nowhere.fake>

removed/fixed warnings


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4418 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0f221b90 03-Jul-2003 beveloper <beveloper@nowhere.fake>

bugfix


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3823 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab276ac8 03-Jul-2003 beveloper <beveloper@nowhere.fake>

added a dedicated mono channel type, allows nicer mapping of 1 channel input


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3821 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9c3be6a5 03-Jul-2003 beveloper <beveloper@nowhere.fake>

Fixed some debug macros.
Cleanup of MixerInput class.
Implemented output destination mapping controls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3819 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e0dc5b6d 02-Jul-2003 beveloper <beveloper@nowhere.fake>

introduce a gain cache for non active sources to allow changing of gain without activating them, and to avoid gain value beeing reset to 0.0 each time enable is cycled.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3814 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b6270d60 02-Jul-2003 beveloper <beveloper@nowhere.fake>

Cleanup of MixerOutput class, the channel type is now used instead of channel designation or channel_mask
Implemented output channel remapping controls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3813 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0c63c7d0 02-Jul-2003 beveloper <beveloper@nowhere.fake>

Started implementing input and output channel mapping controls.
Optimized inner loop of mix thread, up to 10% faster now.
Moved some #includes around.
Added #define for maximum supported channel types.
Removed static buffers.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3812 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 57b75f14 30-Jun-2003 beveloper <beveloper@nowhere.fake>

The mixer gain controls must change the physical input channels, not the virtual mixer internal channels.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3781 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b326a30e 30-Jun-2003 beveloper <beveloper@nowhere.fake>

implemented muting of the master output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3780 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9391f0a5 30-Jun-2003 beveloper <beveloper@nowhere.fake>

added mixer gain controls


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3775 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a2ca4723 30-Jun-2003 beveloper <beveloper@nowhere.fake>

cleanup of debugging code


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3761 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1081d7ce 30-Jun-2003 beveloper <beveloper@nowhere.fake>

now supports endian adjustment at the output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3760 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 806cf560 29-Jun-2003 beveloper <beveloper@nowhere.fake>

default channel assignment profiles


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3747 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fae6ce82 29-Jun-2003 beveloper <beveloper@nowhere.fake>

added output channel control functions,
made most often called functions inline


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3746 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c47e5a5a 28-Jun-2003 beveloper <beveloper@nowhere.fake>

added format change function


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3723 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e6c7c99f 19-Jun-2003 beveloper <beveloper@nowhere.fake>

added connecting/disconnecting of inputs/outputs
changed debug functions
added multiaudio format correction
added workaround for broken BeOS R5 media_format:SpecializeTo()
fixed AudioMixer::Connect function to use correct destination
added utility functions
fixed locking bugs


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3575 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ee2c804 15-Jun-2003 beveloper <beveloper@nowhere.fake>

Internal API rewritten, BMediaNode and derived classes functionality implemented.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3525 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be2a2489 11-Jun-2003 beveloper <beveloper@nowhere.fake>

Mixer rewrite, work in progress.
Moved Input and Output handling into the MixerCore class,
format and connection negotiation remains in AudioMixer class.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3481 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 678c2017 06-Jun-2003 beveloper <beveloper@nowhere.fake>

added new mixer components


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a9cf57cff5dfe040f74a96705d98d6711b6b1b50 02-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34437 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bf7ab50d4ced3f1735551c8f6d9032a42e548f7e 03-Oct-2007 Stephan Aßmus <superstippi@gmx.de>

large patch by Bek (HOST team):
* style improvements, header reformatting, small refactoring and adding
of missing copyrights

(to Marcus: this is not the original patch, it has already been revised two
times by myself and I thought it was very nice now)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22426 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f916862c2ebbbf3a1fdeac1541fc75ded977bccf 13-Mar-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

Switched to using a local debug header file, instead of using the private media kit file.
This should prevent mixer from beeing build with debug enabled, when media kit is build with debug.
Thus CPU usage will be reduced as mixer no longer prints a lot of information to stdout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16759 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69316791006c78bf088747061a39f651489ee500 19-Feb-2004 beveloper <beveloper@nowhere.fake>

added side left and side right channels to default output mix for better 8 channel playback


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6658 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d91580cd9a9f39e74f086d5ca31d997a56c111a9 30-Aug-2003 beveloper <beveloper@nowhere.fake>

removed/fixed warnings


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4418 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0f221b9065f4d33b83a7c78e2e10babfaf41382e 03-Jul-2003 beveloper <beveloper@nowhere.fake>

bugfix


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3823 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab276ac888364ea2a0af144d16d62d6505ac48a7 03-Jul-2003 beveloper <beveloper@nowhere.fake>

added a dedicated mono channel type, allows nicer mapping of 1 channel input


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3821 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9c3be6a55723d8024dc868f2e7119496f26295c5 03-Jul-2003 beveloper <beveloper@nowhere.fake>

Fixed some debug macros.
Cleanup of MixerInput class.
Implemented output destination mapping controls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3819 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e0dc5b6d1fa01d403ef2296625583807fa82f064 02-Jul-2003 beveloper <beveloper@nowhere.fake>

introduce a gain cache for non active sources to allow changing of gain without activating them, and to avoid gain value beeing reset to 0.0 each time enable is cycled.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3814 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b6270d60b29ad49ae09811b7d0b4968989229908 02-Jul-2003 beveloper <beveloper@nowhere.fake>

Cleanup of MixerOutput class, the channel type is now used instead of channel designation or channel_mask
Implemented output channel remapping controls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3813 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0c63c7d061f2d4490205d48b1e5008c8a2cf95f2 02-Jul-2003 beveloper <beveloper@nowhere.fake>

Started implementing input and output channel mapping controls.
Optimized inner loop of mix thread, up to 10% faster now.
Moved some #includes around.
Added #define for maximum supported channel types.
Removed static buffers.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3812 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 57b75f140bf7bad2683aef8cd5a343f9552ce1cb 30-Jun-2003 beveloper <beveloper@nowhere.fake>

The mixer gain controls must change the physical input channels, not the virtual mixer internal channels.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3781 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b326a30e21605eb8b3bb4a2b7598bb30bfcd8957 30-Jun-2003 beveloper <beveloper@nowhere.fake>

implemented muting of the master output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3780 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9391f0a5526a6a1efb50e7ca73f1d07ac1c93ee2 30-Jun-2003 beveloper <beveloper@nowhere.fake>

added mixer gain controls


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3775 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a2ca4723941de50864eb7ef575591629cabb3318 30-Jun-2003 beveloper <beveloper@nowhere.fake>

cleanup of debugging code


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3761 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1081d7ce81eaf819dbac48eaa95be2eabad7d269 30-Jun-2003 beveloper <beveloper@nowhere.fake>

now supports endian adjustment at the output


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3760 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 806cf560779319fd7bf7af4672926dcbaef3cc59 29-Jun-2003 beveloper <beveloper@nowhere.fake>

default channel assignment profiles


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3747 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fae6ce82e324e852c65c0d791056e749994bbfd6 29-Jun-2003 beveloper <beveloper@nowhere.fake>

added output channel control functions,
made most often called functions inline


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3746 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c47e5a5ae99cf125772959212cc3eae0d7324607 28-Jun-2003 beveloper <beveloper@nowhere.fake>

added format change function


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3723 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e6c7c99fc916e8a498ef51a4940838d9f864df6c 19-Jun-2003 beveloper <beveloper@nowhere.fake>

added connecting/disconnecting of inputs/outputs
changed debug functions
added multiaudio format correction
added workaround for broken BeOS R5 media_format:SpecializeTo()
fixed AudioMixer::Connect function to use correct destination
added utility functions
fixed locking bugs


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3575 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ee2c8049caebce89fd72e544a5db9f94cc6613f 15-Jun-2003 beveloper <beveloper@nowhere.fake>

Internal API rewritten, BMediaNode and derived classes functionality implemented.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3525 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be2a24894fa4b3e2578b1d1994d33bbb2b935216 11-Jun-2003 beveloper <beveloper@nowhere.fake>

Mixer rewrite, work in progress.
Moved Input and Output handling into the MixerCore class,
format and connection negotiation remains in AudioMixer class.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3481 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 678c20170c8b023b7d2e297b3ac436dbdea61e52 06-Jun-2003 beveloper <beveloper@nowhere.fake>

added new mixer components


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3446 a95241bf-73f2-0310-859d-f6bbb57e9c96