Statistics
| Branch: | Revision:

root / audio @ d9cbb0f3

# Date Author Comment
d9cbb0f3 06/14/2011 04:08 am Alexandre Raymond

Fix compilation warning due to incorrectly specified type

In audio/coreaudio.c, a variable named "str" was assigned "const char" values,
which resulted in the following warnings:

-----8<-----
audio/coreaudio.c: In function ‘coreaudio_logstatus’:
audio/coreaudio.c:59: warning: initialization discards qualifiers from pointer target type...

9bf0960a 06/08/2011 11:04 am Alexandre Raymond

Fix compilation warning due to missing header for sigaction (followup)

This patch removes all references to signal.h when qemu-common.h is included
as they become redundant.

Signed-off-by: Alexandre Raymond <>
Signed-off-by: Stefan Hajnoczi <>

578c7b2c 05/31/2011 11:14 pm Juha Riihim?ki

audio: fix integer overflow expression

Fix an integer overflow that can happen for signed 32 bit types
when using FLOAT_MIXENG. (Note that at the moment this is only true
when using the MacOSX coreaudio audio driver.)

Signed-off-by: Juha Riihim?ki <>...

4ff9786c 04/03/2011 10:42 pm Stefan Weil

Fix trivial "endianness bugs"

Replace endianess -> endianness.

Signed-off-by: Stefan Weil <>
Signed-off-by: Aurelien Jarno <>

74475455 03/21/2011 10:23 am Paolo Bonzini

change all other clock references to use nanosecond resolution accessors

This was done with:

sed -i 's/qemu_get_clock\>/qemu_get_clock_ns/' \
$(git grep -l 'qemu_get_clock\>' )
sed -i 's/qemu_new_timer\>/qemu_new_timer_ns/' \
$(git grep -l 'qemu_new_timer\>' )...
bf1064b5 01/25/2011 06:56 pm Gerd Hoffmann

pulseaudio: tweak config

Zap unused divisor field.
Raise the buffer size default.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: malc <>

e6d16fa4 01/25/2011 06:56 pm Gerd Hoffmann

pulseaudio: setup buffer attrs

Request reasonable buffer sizes from pulseaudio. Without this
pa_simple_write() can block quite long and lead to dropouts,
especially with guests which use small audio ring buffers.

Signed-off-by: Gerd Hoffmann <>...

6315633b 01/25/2011 06:56 pm Gerd Hoffmann

pulseaudio: process 1/4 buffer max at once

Limit the size of data pieces processed by the pulseaudio worker
threads. Never ever process more than 1/4 of the buffer at once.

Background: The buffer area currently processed by the pulseaudio thread
is blocked, i.e. the main thread (or iothread) can't fill in more data...

00e07679 01/12/2011 05:36 pm Michael Walle

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 <>...

d66bddd7 01/09/2011 02:06 am Michael Walle

alsaaudio: add endianness support for VoiceIn

Signed-off-by: Michael Walle <>
Signed-off-by: malc <>

b6c9c940 01/09/2011 02:05 am Michael Walle

ossaudio: add endianness support for VoiceIn

Signed-off-by: Michael Walle <>
Signed-off-by: malc <>

8a7d0890 01/04/2011 02:53 am Michael Walle

noaudio: correctly account acquired samples

This will fix the return value of the function which otherwise returns too
many samples because sw->total_hw_samples_acquired isn't correctly
accounted.

Signed-off-by: Michael Walle <>
Signed-off-by: malc <>

85882c71 12/10/2010 04:25 am Michael Walle

noaudio: fix return value for read()

Read should return bytes instead of samples.

Signed-off-by: Michael Walle <>
Signed-off-by: malc <>

ab9de369 12/04/2010 10:51 pm Stefan Weil

audio: Use GCC_FMT_ATTR (format checking)

Cc: Blue Swirl <>
Signed-off-by: Stefan Weil <>
Signed-off-by: Blue Swirl <>

39deb1e4 11/18/2010 01:30 pm malc

audio: Only use audio timer when necessary

Originally proposed by Gerd Hoffmann.

Signed-off-by: malc <>
Acked-by: Gerd Hoffmann <>

cf2c1839 11/11/2010 04:59 pm Gerd Hoffmann

add copyright to spiceaudio

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: malc <>

3e313753 11/09/2010 10:39 pm Gerd Hoffmann

spice: add audio

Add support for the spice audio interface. With this patch applied
audio can be forwarded over the network from/to the spice client. Both
recording and playback is supported.

The driver is first in the driver list, but the can_be_default flag is...

38cc9b60 10/17/2010 11:39 pm Jindrich Makovicka

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 <>...

22d948a2 10/17/2010 11:39 pm Jindrich Makovicka

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 <>
Signed-off-by: malc <>

8b7968f7 10/03/2010 09:34 am Stefan Weil

Use GCC_FMT_ATTR (format checking)

Signed-off-by: Stefan Weil <>
Signed-off-by: Blue Swirl <>

e5924d89 10/03/2010 09:34 am Stefan Weil

Replace most gcc format attributes by macro GCC_FMT_ATTR (format checking)

Since version 4.4.x, gcc supports additional format attributes.
attribute ((format (gnu_printf, 1, 2)))
should be used instead of
attribute ((format (printf, 1, 2))...

fd5723b3 09/29/2010 07:24 am Wu Fengguang

pulse-audio: fix bug on updating rpos

Fix a rpos coordination bug between qpa_run_out() and qpa_thread_out(),
which shows up as playback noises.

qpa_run_out()
qpa_thread_out loop N critical section 1
qpa_run_out() qpa_thread_out loop N doing pa_simple_write()...
575c153f 09/28/2010 07:56 am malc

audio: Fix memory size for resampling buffer in DAC case

Signed-off-by: malc <>

9c9e7d51 09/22/2010 11:15 pm Stefan Weil

Move macros GCC_ATTR and GCC_FMT_ATTR to common header file

By moving the definition of GCC_ATTR and GCC_FMT_ATTR
from audio_int.h to qemu-common.h these macros are
now generally available for further patches which add
the gcc format attribute.

Newer gcc versions support format gnu_printf which is...

60592edd 08/07/2010 07:04 pm malc

audio/sdl: return on error

Signed-off-by: malc <>

d087bb3e 08/06/2010 12:15 pm malc

audio/sdl: be more anal about errors

Signed-off-by: malc <>

4b7c0418 08/06/2010 12:15 pm malc

audio: make audio_pt_init block all signals

Signed-off-by: malc <>

0be71e32 07/06/2010 06:36 pm Alex Williamson

savevm: Add DeviceState param

When available, we'd like to be able to access the DeviceState
when registering a savevm. For buses with a get_dev_path()
function, this will allow us to create more unique savevm
id strings.

Signed-off-by: Alex Williamson <>...

0bfcd599 05/22/2010 11:02 am Blue Swirl

Fix %lld or %llx printf format use

Signed-off-by: Blue Swirl <>

6c557ab9 04/22/2010 02:21 pm Serge Ziryukin

audio/sdlaudio: remove unused variable

Remove unused 'shift' variable spotted by clang.
Also clean up aud_to_sdlfmt which used to get the value
of shift.

Signed-off-by: Serge Ziryukin <>
Signed-off-by: malc <>

8bb414d2 04/21/2010 02:40 pm malc

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 <>

8631b608 03/16/2010 05:55 pm Markus Armbruster

monitor: Separate "default monitor" and "current monitor" cleanly

Commits 376253ec..731b0364 introduced global variable cur_mon, which
points to the "default monitor" (if any), except during execution of
monitor_read() or monitor_control_read() it points to the monitor from...

ad483a51 03/11/2010 05:28 pm malc

audio: fix comment

Signed-off-by: malc <>

d9812b03 02/28/2010 05:34 pm malc

audio/alsa: Handle SND_PCM_STATE_SETUP in alsa_poll_handler

Signed-off-by: malc <>

f093feb7 02/28/2010 05:20 pm Vagrant Cascadian

audio/alsa: Spelling typo (paramters)

Trivial patch to fix the spelling of "parameters".

Signed-off-by: malc <>

82584e21 01/17/2010 01:03 am malc

audio: include more information into audio_bug's output

Signed-off-by: malc <>

ff541499 01/16/2010 11:25 pm malc

Revert "sdlaudio: make it suck less"

This reverts commit 4839abe78fd466a3cf06faa7c362154afd5404f1.

The commit was badly broken, Gentoo has sdl as the default driver,
consequently 5 gentoo users have hit the breakage and were kind enough
to report, so thank you:...

72ff25e4 01/13/2010 12:59 am Juergen Lock

Workaround for broken OSS_GETVERSION on FreeBSD, part two

Turns out on those versions of FreeBSD (>= 7.x) that know OSS_GETVERSION
the ioctl doesn't actually work yet (except in the Linuxolator), so if
building on FreeBSD assume the sound drivers are new enough if the ioctl...

3d709fe7 01/09/2010 05:07 pm malc

oss: fix fragment setting

Previous patch introduced subtle regression, in cases when
OSS_GETVERSION fails the code wasn't falling back to
SNDCTL_DSP_SETFRAGMENT.

Signed-off-by: malc <>

6d246526 01/09/2010 04:55 pm malc

oss: issue OSS_GETVERSION ioctl only when needed

Signed-off-by: malc <>

78d9356d 01/08/2010 11:28 pm malc

oss: refactor code around policy setting

This fixes a problem with a previous patch spotted by Juergen Lock,
thanks to him again.

Signed-off-by: malc <>

e726fe7d 01/08/2010 10:26 am malc

oss: workaround for cases when OSS_GETVERSION is not defined

Thanks to Juergen Lock.

Signed-off-by: malc <>

a244eb74 12/03/2009 05:41 pm Juan Quintela

audio: fix compilation of DEBUG_PLIVE

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

d959fce9 12/03/2009 05:41 pm Juan Quintela

audio: port to vmstate

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

7cbb28ed 11/18/2009 06:22 pm malc

audio: Remove conditional around sw which can not be NULL

Noticed by Steve Grubb.

Signed-off-by: malc <>

a58c16dc 10/15/2009 09:43 am malc

winwave: ADC support

Signed-off-by: malc <>

cb4f03e8 10/15/2009 01:40 am malc

audio: remove last remnants of _t

Signed-off-by: malc <>

bc578fe0 10/15/2009 01:15 am malc

winwave: make error logging more consistent

Signed-off-by: malc <>

2a117d40 10/15/2009 01:11 am malc

winwave: follow the rules when closing the output device

a. call waveOutReset to drain the queue
b. unprepare headers before freeing underlying memory

Signed-off-by: malc <>

1a4ea1e3 10/13/2009 05:14 pm Michael S. Tsirkin

qemu: allow pulseaudio to be the default

We're seeing various issues with the SDL audio backend and want to
switch to the pulseaudio backend. See e.g.

https://bugzilla.redhat.com/495964
https://bugzilla.redhat.com/519540
https://bugzilla.redhat.com/496627...
6165a426 10/11/2009 05:52 am malc

winwave: pause/restore playing upon seeing VOICE_DISABLE/ENABLE

Signed-off-by: malc <>

875ef647 10/11/2009 05:38 am malc

winwave: close event handle and delete wait object after closing HWAVEOUT

To avoid possibly being called back and thus racing.

Signed-off-by: malc <>

f4e8d0b7 10/11/2009 04:39 am malc

winwave: remove wait object when finalizing DAC voice

Signed-off-by: malc <>

e0bda367 10/10/2009 04:16 pm malc

winwave: poll mode

Signed-off-by: malc <>

d5631638 10/10/2009 12:18 am malc

Windows Waveform Audio driver (no ADC support yet)

Signed-off-by: malc <>

a628b869 10/03/2009 02:30 am malc

oss/alsa: Do not invoke UB described in 7.15.1.1 (this time for ADC)

Signed-off-by: malc <>

de2ca4fb 10/02/2009 02:19 am malc

alsa: Change default buffer/period size

Increase buffer size but do not rely on ALSA picking up default period
size.

Signed-off-by: malc <>

301901b5 10/02/2009 01:37 am malc

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.

4839abe7 09/30/2009 03:34 pm malc

sdlaudio: make it suck less

Signed-off-by: malc <>

68f6dc7e 09/18/2009 01:04 pm malc

coreaudio: fix sloppy "posixification" by 1ea879e5580f63414693655fcf0328559cdce138

Signed-off-by: malc <>

4f4cc0ef 09/18/2009 01:04 pm malc

audio: use muldiv64 where it makes sense

Signed-off-by: malc <>

ddabec73 09/18/2009 01:04 pm malc

audio: introduce audio_pcm_hw_clip_out helper function

Signed-off-by: malc <>

541ba4e7 09/18/2009 01:04 pm malc

alsa: use audio_pcm_hw_clip_out

Signed-off-by: malc <>

9d168976 09/18/2009 01:04 pm malc

oss: use audio_pcm_hw_clip_out

Signed-off-by: malc <>

3fd7f635 09/18/2009 01:04 pm malc

sdlaudio: use correct function names in sdl_XXX calls

Signed-off-by: malc <>

bdff253c 09/18/2009 01:04 pm malc

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....

155a8ad3 09/18/2009 01:04 pm malc

audio: use correct email address

Signed-off-by: malc <>

6ebfda13 09/14/2009 02:55 am malc

alsa/oss: Remove fd transfer handlers before closing oss/alsa fd/handle

Signed-off-by: malc <>

b4f763b8 09/14/2009 02:55 am malc

alsa: Use proper value when testing returned events in alsa_poll_handler

Signed-off-by: malc <>

0a90e344 09/13/2009 09:50 pm Jan Kiszka

audio: Fix typo that broke QEMU_AUDIO_ADC_TRY_POLL

Signed-off-by: Jan Kiszka <>
Signed-off-by: malc <>

0b3652bc 09/13/2009 10:15 am malc

oss: OSS v4 support

a. Use SNDCTL_DSP_POLICY instead of SNDCTL_DSP_SETFRAGMENT
b. Add ability to open device in exclusive mode, thus bypassing vmix

Signed-off-by: malc <>

54762b73 09/13/2009 10:15 am malc

oss: Simplify mmap code

Signed-off-by: malc <>

72cf2d4f 09/12/2009 10:36 am Blue Swirl

Fix sys-queue.h conflict for good

Problem: Our file sys-queue.h is a copy of the BSD file, but there are
some additions and it's not entirely compatible. Because of that, there have
been conflicts with system headers on BSD systems. Some hacks have been
introduced in the commits 15cc9235840a22c289edbe064a9b3c19c5f49896,...

2182349d 09/12/2009 01:50 am malc

oss: Unbreak mmaping the ability to mmap oss fd on Linux

Signed-off-by: malc <>

713a98f8 09/12/2009 01:50 am malc

audio: poll mode infrastructure

Signed-off-by: malc <>

dd8a5649 09/12/2009 01:50 am malc

oss: poll mode handling

Signed-off-by: malc <>

8b438ba3 09/12/2009 01:50 am malc

alsa: poll mode handling

Signed-off-by: malc <>

057fa65c 09/12/2009 01:50 am malc

audio: remove lsbindex/popcount in favour of host-utils's ctz32

Signed-off-by: malc <>

6ee093c9 09/11/2009 06:19 pm Juan Quintela

Unexport ticks_per_sec variable. Create get_ticks_per_sec() function

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

3c854e47 09/10/2009 08:09 pm malc

Remove bit-rotten threshold handling

Thanks to Toshiya Takeda for bringing up an unrelated issue which led
to this.

Signed-off-by: malc <>

f9c7b77c 09/02/2009 03:46 pm Kirill A. Shutemov

Fix warning on x86_64

audio/esdaudio.c: In function 'qesd_thread_out':
audio/esdaudio.c:136: error: format '%d' expects type 'int', but
argument 3 has type 'ssize_t'
audio/esdaudio.c: In function 'qesd_thread_in':
audio/esdaudio.c:366: error: format '%d' expects type 'int', but...

15c875a3 08/26/2009 12:55 pm Consul

Fix dsound typos

Dsound currently does not compile due to the typos in the code. This
patch makes it compile again.{PATCH}

Signed-off-by: Alex Ivanov <>
Signed-off-by: malc <>

197bc219 08/12/2009 10:11 pm malc

Fix typo

1dd3e4d1 08/11/2009 07:51 pm Juan Quintela

use C99 initializers for audio_pcm_ops

Signed-off-by: Juan Quintela <>

1a40d5e2 08/11/2009 07:51 pm Juan Quintela

use C99 initializers for all audio/*

Signed-off-by: Juan Quintela <>

98f9f48c 08/11/2009 07:51 pm malc

Aesthetics

Reformat to make item borders more visible
Fix cases of stray tabs and vertical misalignments

Signed-off-by: malc <>

bee37f32 08/11/2009 07:51 pm Juan Quintela

Use proper struct initializers and remove INIT_FIELD() macro

Signed-off-by: Juan Quintela <>

2700efa3 08/11/2009 07:51 pm Juan Quintela

Use C99 initializers for audio_option

Signed-off-by: Juan Quintela <>

660f11be 08/01/2009 12:16 am Blue Swirl

Fix Sparse warnings: "Using plain integer as NULL pointer"

Signed-off-by: Blue Swirl <>

86635821 07/30/2009 01:45 pm Bjørn Mork

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....

2358a494 07/27/2009 10:10 pm Juan Quintela

Generate config-host.h from config-host.mak

Generate CONFIG_AUDIO_DRIVERS. Order is important here, because the
first driver in the list is the one used by default.

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

e2542fe2 07/27/2009 10:09 pm Juan Quintela

rename WORDS_BIGENDIAN to HOST_WORDS_BIGENDIAN

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

aea86747 07/24/2009 04:16 am malc

Fix period initialization

Signed-off-by: malc <>

14658cd1 07/22/2009 06:58 pm Juan Quintela

use struct initializer for audio.c

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

2637872b 07/17/2009 04:57 am malc

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...

5d928867 06/19/2009 01:46 am Jean-Christophe Dubois

fix qemu_alloc/qemu_free for audio subsystem

Signed-off-by: Jean-Christophe DUBOIS <>

97f155dd 06/18/2009 09:57 pm Gerd Hoffmann

alsa: fix warning

Signed-off-by: Gerd Hoffmann <>

1a7dafce 05/14/2009 02:20 am malc

Remove any pretense that there can be more than one AudioState

0d9acba8 05/12/2009 02:02 pm Paul Brook

Make AUD_init failure fatal

Failure to initialize the audio subsystem is not handled consistently.
Where it is handled it has guest visible effects, which is wrong.
We already have a "nosound" audio driver as a last resort, so trying to
proceed without an audio backend seems pointless....

140f8f25 05/01/2009 10:31 am Consul

Remove redundant #define

Suppress a warning
audio/dsoundaudio.c:35:1: warning: "WIN32_LEAN_AND_MEAN" redefined
<command line>:4:1: warning: this is the location of the previous definition

Signed-off-by: Alex Ivanov <>