Commit Graph
100 Commits
Author SHA1 Message Date
beveloper d91580cd9a removed/fixed warnings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 02:18:11 +00:00
beveloper 188b5de0bf renamed atomic_read() into atomic_get() (since we already have atomic_set(), but not a atomic_write())
renamed user_??? functions into the new _user_??? naming style.
changed implementation of PPC 64 bit atomic functions to use (un)lock_memory()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 01:21:56 +00:00
beveloper a54e42d79a removed debugger call,
added name to BLocker


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-30 23:47:55 +00:00
beveloper b93355ab58 it was missing these two functions...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 01:28:00 +00:00
beveloper 3c839f3f7b fixed description
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 01:22:44 +00:00
beveloper 6ecb8ce9a0 removed stupid type cast
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 01:19:01 +00:00
beveloper ad159f4343 cleaned up meaning of first constructor parameter
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 00:54:54 +00:00
beveloper 2fc06b8774 Replaced the broken BBlockCache implementation.
According to the BeBook, it is NOT allowed to allocate one large
pool, instead the memory blocks must be allocated individually.
To achieve O(1) for both Save() and Get() function, only one list
of free blocks is maintained.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 00:27:08 +00:00
beveloper 188ad70f3d Replaced the broken BBufferCache implementation.
According to the BeBook, it is NOT allowed to allocate one large
pool, instead the memory blocks must be allocated individually.
To achieve O(1) for both Save() and Get() function, only one list
of free blocks is maintained.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 00:25:56 +00:00
beveloper 5fe840b9b5 fixed address checking in ppc atomic functions.
fixed compilation on x86.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-21 23:36:06 +00:00
beveloper 50e0ce4bee Implemented new syscalls for 32 and 64 bit atomic operations.
They are only used if the architecture doesn't support them directly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-21 23:02:00 +00:00
beveloper fb16941a02 added atomic_read
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-21 17:55:56 +00:00
beveloper 0163e36659 Added 32 bit atomic read.
Implemented all 64 bit atomic operations.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 23:21:26 +00:00
beveloper ea8af9630a renamed test_and_set into atomic_test_and_set
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:56:22 +00:00
beveloper 40ac5c5195 cvs server: Up-to-date check failed for `src/kernel/core/vm/vm.c'
cvs [server aborted]: correct above errors first!
cvs commit: saving log message in /tmp/cvsFPtfaj


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:48:15 +00:00
beveloper 5f993f93ff renamed test_and_set into atomic_test_and_set
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:35:24 +00:00
beveloper b4e05c0eb8 On most systems, atomic functions do not need to be implemented as syscalls.
ATOMIC_FUNCS_ARE_SYSCALLS is only defined on architecture like SH4.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:34:42 +00:00
beveloper abe798f30b fixed spelling error
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:33:00 +00:00
beveloper 867695ddb7 architecture specific CPU things, like defines
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:29:36 +00:00
beveloper 3cbce96a24 removed no longer used include file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:26:30 +00:00
beveloper 2fdb794edc The atomic and system_time function are now included in the
kernel_os_arch_x86.o file that is genereated by libroot.
Removed duplicate implementations from this file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:23:44 +00:00
beveloper 67fd74cd28 moved atomic user functions to SH4 atomic.c
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:21:57 +00:00
beveloper 6f54d569e9 added 64 bit atomic functions (implementation still pending),
removed non atomic functions from this file


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:19:42 +00:00
beveloper a36eac86ac Removed system_time from atomic.S file and added it in a separate one.
The atomic and system_time function are now included in the kernel_os_arch_x86.o file


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:16:43 +00:00
beveloper 890b96d5c5 removed system_time from atomic.S file and added it in a separate one.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:15:23 +00:00
beveloper 74aad02bac SH4 needs atomic operations to be implemented as syscalls, other
architecture can do this better. Removed from generic cpu.c file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:13:45 +00:00
beveloper d3e72fa555 added missing 32 bit atomic functions,
and added all their 64bit counterparts.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-20 02:08:13 +00:00
beveloper a4cd9d18a1 input connection settings are saved now, too
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-17 18:49:27 +00:00
beveloper 1165d5e18a added support for a settings file,
some fixes in the deferred saving code,
added save/load to mixer connections


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-17 16:03:46 +00:00
beveloper c3465a64ee added full balance control to all input channels
removed performance display control and settings


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-17 01:34:54 +00:00
beveloper 5fa60b3b64 added balance control to output
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-17 00:34:48 +00:00
beveloper 4224efc3c7 implemeted non linear gain controls (similar to BeOS R5)
allow to select gain control slider modus in setup
(either controls physical input, or virtual output channels)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-16 19:40:31 +00:00
beveloper 26bf7cd399 added mixer setup tab functionality and storage of settings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-16 17:40:28 +00:00
beveloper 7c5fb432b0 if DEBUG was not defined, it will now be defined with a value smaller than null.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-26 01:10:55 +00:00
beveloper 44327fe2c2 Added a setup tab
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-26 01:10:05 +00:00
beveloper 904c699d7f changed debug message
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 23:28:47 +00:00
beveloper d96a1bd846 removed non-needed map include file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 23:27:26 +00:00
beveloper c3b1c2a692 Implemented proper handling of latency changes that occur when connecting
a chain of mixer nodes. Also added a small hack to always pick the optimal
frame rate and channel count when connecting multiple audio mixer nodes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 21:36:38 +00:00
beveloper 914ab8f76f fixed the macro names
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 19:55:54 +00:00
beveloper 9a32a037e5 this is really annoying
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 00:09:20 +00:00
beveloper 0f221b9065 bugfix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3823 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-03 23:47:53 +00:00
beveloper 643e1b2e76 other input mapping
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-03 23:39:59 +00:00
beveloper ab276ac888 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
2003-07-03 23:30:27 +00:00
beveloper 69517c1537 Removed gain controls from input channel mapping group.
Gain for each virtual mixer channel is now controlled in the main control group.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-03 22:38:21 +00:00
beveloper 9c3be6a557 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
2003-07-03 22:01:27 +00:00
beveloper e0dc5b6d1f 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
2003-07-03 01:05:21 +00:00
beveloper b6270d60b2 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
2003-07-03 00:27:47 +00:00
beveloper 0c63c7d061 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
2003-07-02 22:30:51 +00:00
beveloper c378a5ecf8 limit maximum latency
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 20:58:34 +00:00
beveloper 6c8c941ac3 moved max() function and added min() function
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3795 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 20:57:42 +00:00
beveloper 8936182d3c preparing for input/output channel mapping.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 19:36:10 +00:00
beveloper 57b75f140b 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
2003-07-01 01:53:42 +00:00
beveloper b326a30e21 implemented muting of the master output
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 00:49:23 +00:00
beveloper 2cb2bc4111 Use B_MASTER_GAIN kind for master gain control to allow Deskbar volume control to work.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 00:38:11 +00:00
beveloper 087e6a8afd fixed MediaPlayer volume control bug by using R5 like ID assignments (taken from media kit SoundPlayer.cpp)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 00:29:38 +00:00
beveloper 1c237c1852 implemented mute support for input channel, fixed casting bugs
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 00:13:24 +00:00
beveloper 9391f0a552 added mixer gain controls
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 23:57:13 +00:00
beveloper b5a088d01f avoid creation of loopback connections
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 16:21:01 +00:00
beveloper af8d0a4d4e Fixed the input buffer looping bug that existed if an input wouldn't receive new buffers. Now kips inputs that have no available data.
When no input is connected, use a fast path for sending an empty buffer.
No more debugging output when DEUBG < 1


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 15:45:37 +00:00
beveloper a2ca472394 cleanup of debugging code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3761 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 13:59:11 +00:00
beveloper 1081d7ce81 now supports endian adjustment at the output
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3760 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 11:36:36 +00:00
beveloper 15dca7402c a minor performance improvement
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3759 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 11:05:45 +00:00
beveloper fcfad7f823 cosmetic change
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3758 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 10:43:29 +00:00
beveloper fbd392018b uses about 20% less CPU now
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 10:42:23 +00:00
beveloper 20789329c3 a simple list template that uses realtime memory
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3756 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 10:41:09 +00:00
beveloper 52ae1ec688 disabled double rate mixing, it's not useful with the current resampling implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 00:16:53 +00:00
beveloper aef8495f7b fixed memory leaks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 00:06:01 +00:00
beveloper 60e2e68ce4 finally it does mixing, but we should get rid of the CPU eating List template
at this place, as it internally calls malloc, free, new and delete quite often


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 23:08:00 +00:00
beveloper 806cf56077 default channel assignment profiles
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 21:44:11 +00:00
beveloper fae6ce82e3 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
2003-06-29 20:03:44 +00:00
beveloper 7619f562d5 fixed the debug output, added a workaround for missing samples if the
mixer framerate is not an integral multiple of the input framerate


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3734 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 16:02:15 +00:00
beveloper cb595db745 added an additional sanity check
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 14:55:46 +00:00
beveloper 7d970b3122 finally fixed the last major bug that was reponsible for plops
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 14:54:00 +00:00
beveloper 191033ef76 debugging improvement, fixed locking, fixed sample copy bug in channel 1
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 11:36:39 +00:00
beveloper 356855c3f6 ugly workaround, create a new pool for each input mix buffer,
to avoid running out of default pool memory. It would be much
better if a pool would grow if more memory is requested than
available.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 01:17:52 +00:00
beveloper dfe7be41fb small work around
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 01:15:49 +00:00
beveloper d5848e21a4 rewrote start and stop handling to allow connecting an input without
having an output, followed by starting the node.
fix some bugs of handling an unconnected output
added better locking to the mix thread


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 00:31:36 +00:00
beveloper 90f98241f4 added some sanity checks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 00:29:08 +00:00
beveloper 8d28117ff7 multiple bugfixes, but still many pops in output audio stream
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 23:07:47 +00:00
beveloper 5ca6a7e85e renamed the media node
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 23:05:56 +00:00
beveloper c47e5a5ae9 added format change function
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 23:04:21 +00:00
beveloper 2560202bae additional helper functions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 22:59:53 +00:00
beveloper b3d75d0db3 removed leftover of debugging instrumentation
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 22:00:32 +00:00
beveloper 6b5e150832 most likely fixed downsampling bugs
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 21:55:58 +00:00
beveloper 8df36cdd65 Added experimental copying of the left channel from either input 1 or 0,
there seem to be some resampling related bugs


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 21:27:00 +00:00
beveloper 78563dcaec use sample size when calculating channel offsets, no more buffer overruns
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 18:04:34 +00:00
beveloper 16cecbde36 some workarounds, fMixStartTime is now always 0,
delay mix thread if timesource has negative time,
calculate correct time and frame base for mix thread


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3663 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 16:21:41 +00:00
beveloper b9bc85776c added mixing thread, as well as start and stop
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3660 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-25 00:19:49 +00:00
beveloper 7b0daf5cca allocate mixer buffers of the correct size,
place incoming data in input specific mix buffer


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 22:41:02 +00:00
beveloper 299d70ad2d added helper functions for buffer<->framerate<->duration conversions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-24 22:39:13 +00:00
beveloper aa1480c7be cleanup disassembly output by using local labels
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-21 02:31:58 +00:00
beveloper 50be0c99cf GCC is way too smart or buggy and will (at least in this case) remove (optimize away) non __volatile__ asm statements :(
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-21 02:08:03 +00:00
beveloper 88777023cd support endian adjustment,
other small changes


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-21 01:57:39 +00:00
beveloper 526735b289 There we go, a dedicated byte swapping class for endian adjustment.
I even throw in a piece of premature optimization.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-21 01:56:30 +00:00
beveloper a4b8db8530 identify mixer channels by a type number (0 to 31)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-20 21:39:01 +00:00
beveloper c6f7aae127 synced
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-20 21:01:09 +00:00
beveloper 2e9d660756 mixer input buffer assignment and gain setting implemented
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-20 16:55:19 +00:00
beveloper 5ac4fbd70d clean up of debugging functions
FATAL is now replaced by ERROR and active at DEBUG=1 or above
TRACE is active at 2 or above
PRINT(level, ...) can be used for DEBUG= level or abode
INFO is removed


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3578 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-19 14:53:41 +00:00
beveloper 5657491aac changed format into ioFormat to indicate that this is a input and output parameter
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-19 14:48:52 +00:00
beveloper e6c7c99fc9 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
2003-06-19 14:09:00 +00:00