* [Qemu-devel] dsound: warning: Voice is already playing @ 2009-02-16 21:49 Robert Riebisch 2009-02-16 21:59 ` malc 0 siblings, 1 reply; 8+ messages in thread From: Robert Riebisch @ 2009-02-16 21:49 UTC (permalink / raw) To: qemu-devel Hi! I'm getting "dsound: warning: Voice is already playing", when starting QEMU (VM still at POST screen stage). I built my own Win32 version of QEMU SVN r6626 using MinGW. I used --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus", --audio-drv-list="dsound sdl fmod", and "-soundhw all". Robert Riebisch -- BTTR Software http://www.bttr-software.de/ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-16 21:49 [Qemu-devel] dsound: warning: Voice is already playing Robert Riebisch @ 2009-02-16 21:59 ` malc 2009-02-16 22:02 ` Robert Riebisch 0 siblings, 1 reply; 8+ messages in thread From: malc @ 2009-02-16 21:59 UTC (permalink / raw) To: qemu-devel On Mon, 16 Feb 2009, Robert Riebisch wrote: > Hi! > > I'm getting "dsound: warning: Voice is already playing", when starting > QEMU (VM still at POST screen stage). I built my own Win32 version of > QEMU SVN r6626 using MinGW. What is the exact sequence of events that leads to it? > I used --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus", > --audio-drv-list="dsound sdl fmod", and "-soundhw all". > > Robert Riebisch > -- mailto:av1474@comtv.ru ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-16 21:59 ` malc @ 2009-02-16 22:02 ` Robert Riebisch 2009-02-16 23:16 ` malc 0 siblings, 1 reply; 8+ messages in thread From: Robert Riebisch @ 2009-02-16 22:02 UTC (permalink / raw) To: qemu-devel malc wrote: >> I'm getting "dsound: warning: Voice is already playing", when starting >> QEMU (VM still at POST screen stage). I built my own Win32 version of >> QEMU SVN r6626 using MinGW. > > What is the exact sequence of events that leads to it? What do you mean by "sequence"? Robert Riebisch -- BTTR Software http://www.bttr-software.de/ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-16 22:02 ` Robert Riebisch @ 2009-02-16 23:16 ` malc 2009-02-17 19:54 ` Robert Riebisch 0 siblings, 1 reply; 8+ messages in thread From: malc @ 2009-02-16 23:16 UTC (permalink / raw) To: qemu-devel On Mon, 16 Feb 2009, Robert Riebisch wrote: > malc wrote: > > >> I'm getting "dsound: warning: Voice is already playing", when starting > >> QEMU (VM still at POST screen stage). I built my own Win32 version of > >> QEMU SVN r6626 using MinGW. > > > > What is the exact sequence of events that leads to it? > > What do you mean by "sequence"? Step by step actions after which the following message is seen, including all command line parameters. -- mailto:av1474@comtv.ru ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-16 23:16 ` malc @ 2009-02-17 19:54 ` Robert Riebisch 2009-02-17 22:27 ` malc 0 siblings, 1 reply; 8+ messages in thread From: Robert Riebisch @ 2009-02-17 19:54 UTC (permalink / raw) To: qemu-devel malc wrote: >> > What is the exact sequence of events that leads to it? >> >> What do you mean by "sequence"? > > Step by step actions after which the following message is seen, including > all command line parameters. Build QEMU using: MSYS-1.0.10.exe msysDTK-1.0.1.exe + binutils-2.17.50-20060824-1.tar.gz gcc-core-3.4.5-20060117-3.tar.gz gcc-g++-3.4.5-20060117-3.tar.gz mingw32-make-3.81-20080326-2.tar.gz mingw-runtime-3.14.tar.gz mingw-utils-0.3.tar.gz w32api-3.13-mingw32-dev.tar.gz + fmodapi375win.zip ./configure --prefix="C:/Programme/qemu-trunk" --target-list="i386-softmmu" --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus" --audio-drv-list="dsound sdl fmod" --fmod-inc="$FMOD_PATH/api/inc" --fmod-lib="$FMOD_PATH/api/lib/libfmod.a" && make && make install Run QEMU with "C:\Programme\qemu-trunk\qemu.exe -fda empty.img -soundhw all -localtime -no-kqemu" on Windows 2000 Professional SP4. I narrowed it down to GUS emulation, because this warning also appears, when I just use "-soundhw gus" (not "all"). Robert Riebisch -- BTTR Software http://www.bttr-software.de/ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-17 19:54 ` Robert Riebisch @ 2009-02-17 22:27 ` malc 2009-02-18 20:18 ` Jan Kiszka 0 siblings, 1 reply; 8+ messages in thread From: malc @ 2009-02-17 22:27 UTC (permalink / raw) To: qemu-devel; +Cc: Jan Kiszka On Tue, 17 Feb 2009, Robert Riebisch wrote: > malc wrote: > > >> > What is the exact sequence of events that leads to it? > >> > >> What do you mean by "sequence"? > > > > Step by step actions after which the following message is seen, including > > all command line parameters. > [..snip..] > > I narrowed it down to GUS emulation, because this warning also appears, > when I just use "-soundhw gus" (not "all"). > It's actually fallout from r6402: "Rework vm_state_change notifiers (Jan Kiszka)" GUS, unlike all other cards emulated by QEMU, is mixing sound at all times and as such it calls AUD_set_active_out during intialization stage which happens before vm_start is called and when it does audio vm change state notification callback is invoked which tries to enable underlying audio subsystem's voice, but it is already enabled and in case of dsound will, rightfully, complain. Jan, can you please check that this doesn't break Musicpal or the other ARM stuff you have written and i have no means to test: diff --git a/audio/audio.c b/audio/audio.c index b0a5f3b..a2636cb 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -1127,6 +1127,7 @@ void AUD_set_active_out (SWVoiceOut *sw, int on) hw = sw->hw; if (sw->active != on) { + AudioState *s = &glob_audio_state; SWVoiceOut *temp_sw; SWVoiceCap *sc; @@ -1134,7 +1135,9 @@ void AUD_set_active_out (SWVoiceOut *sw, int on) hw->pending_disable = 0; if (!hw->enabled) { hw->enabled = 1; - hw->pcm_ops->ctl_out (hw, VOICE_ENABLE); + if (s->vm_running) { + hw->pcm_ops->ctl_out (hw, VOICE_ENABLE); + } } } else { @@ -1170,12 +1173,15 @@ void AUD_set_active_in (SWVoiceIn *sw, int on) hw = sw->hw; if (sw->active != on) { + AudioState *s = &glob_audio_state; SWVoiceIn *temp_sw; if (on) { if (!hw->enabled) { hw->enabled = 1; - hw->pcm_ops->ctl_in (hw, VOICE_ENABLE); + if (s->vm_running) { + hw->pcm_ops->ctl_in (hw, VOICE_ENABLE); + } } sw->total_hw_samples_acquired = hw->total_samples_captured; } @@ -1623,6 +1629,7 @@ static void audio_vm_change_state_handler (void *opaque, int running, HWVoiceIn *hwi = NULL; int op = running ? VOICE_ENABLE : VOICE_DISABLE; + s->vm_running = running; while ((hwo = audio_pcm_hw_find_any_enabled_out (s, hwo))) { hwo->pcm_ops->ctl_out (hwo, op); } diff --git a/audio/audio_int.h b/audio/audio_int.h index c1da710..fc87458 100644 --- a/audio/audio_int.h +++ b/audio/audio_int.h @@ -192,6 +192,7 @@ struct AudioState { LIST_HEAD (cap_listhead, CaptureVoiceOut) cap_head; int nb_hw_voices_out; int nb_hw_voices_in; + int vm_running; }; extern struct audio_driver no_audio_driver; -- mailto:av1474@comtv.ru ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-17 22:27 ` malc @ 2009-02-18 20:18 ` Jan Kiszka 2009-02-18 20:44 ` malc 0 siblings, 1 reply; 8+ messages in thread From: Jan Kiszka @ 2009-02-18 20:18 UTC (permalink / raw) To: malc; +Cc: qemu-devel [-- Attachment #1: Type: text/plain, Size: 1212 bytes --] malc wrote: > On Tue, 17 Feb 2009, Robert Riebisch wrote: > >> malc wrote: >> >>>>> What is the exact sequence of events that leads to it? >>>> What do you mean by "sequence"? >>> Step by step actions after which the following message is seen, including >>> all command line parameters. > > [..snip..] > >> I narrowed it down to GUS emulation, because this warning also appears, >> when I just use "-soundhw gus" (not "all"). >> > > It's actually fallout from r6402: > "Rework vm_state_change notifiers (Jan Kiszka)" > > GUS, unlike all other cards emulated by QEMU, is mixing sound at all times > and as such it calls AUD_set_active_out during intialization stage which > happens before vm_start is called and when it does audio vm change state > notification callback is invoked which tries to enable underlying audio > subsystem's voice, but it is already enabled and in case of dsound will, > rightfully, complain. > > Jan, can you please check that this doesn't break Musicpal or the other > ARM stuff you have written and i have no means to test: Sounds good, at least on the MusicPal (I haven't written the "other stuff" nor do I have test setups at hand). Jan [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 257 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] dsound: warning: Voice is already playing 2009-02-18 20:18 ` Jan Kiszka @ 2009-02-18 20:44 ` malc 0 siblings, 0 replies; 8+ messages in thread From: malc @ 2009-02-18 20:44 UTC (permalink / raw) To: Jan Kiszka; +Cc: qemu-devel On Wed, 18 Feb 2009, Jan Kiszka wrote: > malc wrote: [..snip..] > > Jan, can you please check that this doesn't break Musicpal or the other > > ARM stuff you have written and i have no means to test: > > Sounds good, at least on the MusicPal (I haven't written the "other > stuff" nor do I have test setups at hand). Thanks. -- mailto:av1474@comtv.ru ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2009-02-18 20:44 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-02-16 21:49 [Qemu-devel] dsound: warning: Voice is already playing Robert Riebisch 2009-02-16 21:59 ` malc 2009-02-16 22:02 ` Robert Riebisch 2009-02-16 23:16 ` malc 2009-02-17 19:54 ` Robert Riebisch 2009-02-17 22:27 ` malc 2009-02-18 20:18 ` Jan Kiszka 2009-02-18 20:44 ` malc
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).