Michael Walle
00e076795f
audio: split sample conversion and volume mixing
...
Refactor the volume mixing, so it can be reused for capturing devices.
Additionally, it removes superfluous multiplications with the nominal
volume within the hardware voice code path.
Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: malc <av1474@comtv.ru>
2011-01-12 18:36:22 +03:00
Michael Walle
d66bddd7a4
alsaaudio: add endianness support for VoiceIn
...
Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: malc <av1474@comtv.ru>
2011-01-09 03:06:08 +03:00
Jindrich Makovicka
38cc9b607f
issue snd_pcm_start() when capturing audio
...
snd_pcm_start() starts the capture process and ensures that the events
are delivered to the poll handler. Without the call, capture can be started
only when there is simultaneous playback running.
Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: malc <av1474@comtv.ru>
2010-10-18 00:39:06 +04:00
Jindrich Makovicka
22d948a2d9
fix 100% CPU load when idle with ALSA
...
Playback control function did not disable polling when playback stops.
Caused busy spinning of the main loop due to unprocessed events.
Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: malc <av1474@comtv.ru>
2010-10-18 00:39:02 +04:00
malc
8bb414d2aa
audio/alsa: Avoid snd_pcm_format_t vs audfmt_e mixup
...
Spotted by Serge Ziryukin and based on his patch, thanks.
Signed-off-by: malc <av1474@comtv.ru>
2010-04-21 15:40:23 +04:00
malc
d9812b033a
audio/alsa: Handle SND_PCM_STATE_SETUP in alsa_poll_handler
...
Signed-off-by: malc <av1474@comtv.ru>
2010-02-28 18:34:21 +03:00
Vagrant Cascadian
f093feb735
audio/alsa: Spelling typo (paramters)
...
Trivial patch to fix the spelling of "parameters".
Signed-off-by: malc <av1474@comtv.ru>
2010-02-28 18:20:25 +03:00
malc
a628b869be
oss/alsa: Do not invoke UB described in 7.15.1.1 (this time for ADC)
...
Signed-off-by: malc <av1474@comtv.ru>
2009-10-03 03:30:18 +04:00
malc
de2ca4fbb4
alsa: Change default buffer/period size
...
Increase buffer size but do not rely on ALSA picking up default period
size.
Signed-off-by: malc <av1474@comtv.ru>
2009-10-02 03:19:47 +04:00
malc
301901b56c
oss/alsa: Do not invoke UB described in 7.15.1.1
...
Additional argument (whether to try poll mode) is only passed with
VOICE_ENABLE command.
Thanks to Markus Armbruster for noticing the potential breakage.
2009-10-02 02:37:40 +04:00
malc
bdff253c8f
audio: internal API change
...
pcm_ops.run_out now takes number of live samples (which will be always
greater than zero) as a second argument, every driver was calling
audio_pcm_hw_get_live_out anyway with exception of fmod which used
audio_pcm_hw_get_live_out2 for no good reason.
Signed-off-by: malc <av1474@comtv.ru>
2009-09-18 14:04:36 +04:00
malc
541ba4e709
alsa: use audio_pcm_hw_clip_out
...
Signed-off-by: malc <av1474@comtv.ru>
2009-09-18 14:04:36 +04:00
malc
b4f763b86d
alsa: Use proper value when testing returned events in alsa_poll_handler
...
Signed-off-by: malc <av1474@comtv.ru>
2009-09-14 03:55:42 +04:00
malc
6ebfda13a6
alsa/oss: Remove fd transfer handlers before closing oss/alsa fd/handle
...
Signed-off-by: malc <av1474@comtv.ru>
2009-09-14 03:55:42 +04:00
malc
8b438ba3f5
alsa: poll mode handling
...
Signed-off-by: malc <av1474@comtv.ru>
2009-09-12 02:50:58 +04:00
malc
98f9f48ccb
Aesthetics
...
Reformat to make item borders more visible
Fix cases of stray tabs and vertical misalignments
Signed-off-by: malc <av1474@comtv.ru>
2009-08-11 20:51:24 +04:00
Juan Quintela
1a40d5e235
use C99 initializers for all audio/*
...
Signed-off-by: Juan Quintela <quintela@redhat.com>
2009-08-11 20:51:24 +04:00
Juan Quintela
1dd3e4d13d
use C99 initializers for audio_pcm_ops
...
Signed-off-by: Juan Quintela <quintela@redhat.com>
2009-08-11 20:51:24 +04:00
Juan Quintela
2700efa323
Use C99 initializers for audio_option
...
Signed-off-by: Juan Quintela <quintela@redhat.com>
2009-08-11 20:51:23 +04:00
Juan Quintela
bee37f32d4
Use proper struct initializers and remove INIT_FIELD() macro
...
Signed-off-by: Juan Quintela <quintela@redhat.com>
2009-08-11 20:51:23 +04:00
Bjørn Mork
866358211d
alsa: add host suspend/resume support
...
Both input and output streams may be in SND_PCM_STATE_SUSPENDED
after the host is suspended and resumed, meaning "Hardware is
suspended". snd_pcm_readi() and snd_pcm_writei() will return
-ESTRPIPE if called while the stream is in this state.
Call snd_pcm_resume() to enable audio output and capture after
host resume.
Signed-off-by: Bjørn Mork <bjorn@mork.no>
Signed-off-by: malc <av1474@comtv.ru>
2009-07-30 14:45:50 +04:00
malc
2637872ba8
Ignore -Waddress for alsaaudio.c
...
/usr/include/alsa/pcm.h contains:
#define snd_pcm_sw_params_alloca(ptr) do { assert(ptr); *ptr = (snd_pcm_sw_params_t *) alloca(snd_pcm_sw_params_sizeof()); memset(*ptr, 0, snd_pcm_sw_params_sizeof()); } while (0)
The assert generates: "error: the address of 'sw_params' will always
evaluate as 'true'" which combined with -Werror prevents alsaaudio.o
from being built with certain versions of GCC.
2009-07-17 05:57:04 +04:00
Gerd Hoffmann
97f155ddb7
alsa: fix warning
...
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2009-06-18 22:57:48 +04:00
malc
1ea879e558
Make audio violate POSIX less
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5864 c046a42c-6fe2-441c-8c8c-71466251a162
2008-12-03 22:48:44 +00:00
blueswir1
35f4b58c7a
Prepare for changing audio_pcm_ops dynamically (partially revert r5422)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5435 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-06 18:08:30 +00:00
blueswir1
8869defe62
Make audio_pcm_opsstatic const
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5422 c046a42c-6fe2-441c-8c8c-71466251a162
2008-10-05 10:01:05 +00:00
malc
adf7d8fb44
Restore old value of buffer_size
...
This brings latency down to acceptable levels when using dmix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4865 c046a42c-6fe2-441c-8c8c-71466251a162
2008-07-09 19:25:30 +00:00
malc
64333899dc
Warn about rejected buffer/period size/time when it was specified by the user
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4864 c046a42c-6fe2-441c-8c8c-71466251a162
2008-07-09 19:25:28 +00:00
malc
a7bb29ba87
Call proper function when trying to set period size
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4863 c046a42c-6fe2-441c-8c8c-71466251a162
2008-07-09 19:25:24 +00:00
malc
23fb600b87
Fix typo
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4835 c046a42c-6fe2-441c-8c8c-71466251a162
2008-07-03 11:29:15 +00:00
malc
f3b5298316
Emit warning message if user supplied buffer/period size/time was rejected
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4773 c046a42c-6fe2-441c-8c8c-71466251a162
2008-06-21 20:09:32 +00:00
malc
7a24c80011
Rework period/buffer size setting
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4768 c046a42c-6fe2-441c-8c8c-71466251a162
2008-06-21 17:14:57 +00:00
balrog
ca9cc28c62
pthreads-based audio and miscellaneous audio clean-up (malc).
...
ESD support (malc, Frederick Reeve).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3917 c046a42c-6fe2-441c-8c8c-71466251a162
2008-01-14 04:24:29 +00:00
ths
60fe76f386
Fix wrong signedness, by Andre Przywara.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3815 c046a42c-6fe2-441c-8c8c-71466251a162
2007-12-16 03:02:09 +00:00
pbrook
749bc4bf0b
Remove stray uses of vl.h.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3675 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-17 17:35:54 +00:00
ths
fe8f096b16
Spelling fix, by Stuart Brady.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3076 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-12 10:59:21 +00:00
balrog
5a1237c45f
Don't define HIGH_LATENCY for ARM, this was a workaround for an ALSA problem.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2766 c046a42c-6fe2-441c-8c8c-71466251a162
2007-05-02 02:11:51 +00:00
ths
f941aa256f
Qemu support for S32 and U32 alsa output, by Vassili Karpov.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2427 c046a42c-6fe2-441c-8c8c-71466251a162
2007-02-17 22:19:29 +00:00
bellard
d929eba5d4
audio endianness API changes (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2042 c046a42c-6fe2-441c-8c8c-71466251a162
2006-07-04 21:47:22 +00:00
bellard
8ead62cfc2
audio fixes + initial audio capture support (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2040 c046a42c-6fe2-441c-8c8c-71466251a162
2006-07-04 16:51:32 +00:00
bellard
32d448c470
added LF missing in logs (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1637 c046a42c-6fe2-441c-8c8c-71466251a162
2005-11-20 18:53:05 +00:00
bellard
571ec3d68d
audio merge (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1636 c046a42c-6fe2-441c-8c8c-71466251a162
2005-11-20 16:24:34 +00:00
bellard
4787c71d17
debug fix (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1619 c046a42c-6fe2-441c-8c8c-71466251a162
2005-11-11 00:06:10 +00:00
bellard
c0fe3827ea
audio merge (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1601 c046a42c-6fe2-441c-8c8c-71466251a162
2005-11-05 18:55:28 +00:00
bellard
1d14ffa97e
merged 15a_aqemu.patch audio patch (malc)
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1584 c046a42c-6fe2-441c-8c8c-71466251a162
2005-10-30 18:58:22 +00:00