On 2019-07-11 16:37, Markus Armbruster wrote: > "Zoltán Kővágó" <dirty.ice...@gmail.com> writes: > >> On 2019-07-10 06:06, Markus Armbruster wrote: >>> "Kővágó, Zoltán" <dirty.ice...@gmail.com> writes: >>> >>>> Audio functions no longer access glob_audio_state, instead they get an >>>> AudioState as a parameter. This is required in order to support >>>> multiple backends. >>>> >>>> glob_audio_state is also gone, and replaced with a tailq so we can store >>>> more than one states. >>>> >>>> Signed-off-by: Kővágó, Zoltán <dirty.ice...@gmail.com> >>>> --- >>> [...] >>>> diff --git a/hmp-commands.hx b/hmp-commands.hx >>>> index bfa5681dd2..23196da3fe 100644 >>>> --- a/hmp-commands.hx >>>> +++ b/hmp-commands.hx >>>> @@ -819,16 +819,17 @@ ETEXI >>>> >>>> { >>>> .name = "wavcapture", >>>> - .args_type = "path:F,freq:i?,bits:i?,nchannels:i?", >>>> - .params = "path [frequency [bits [channels]]]", >>>> + .args_type = "path:F,freq:i?,bits:i?,nchannels:i?,audiodev:s?", >>>> + .params = "path [frequency [bits [channels [audiodev]]]]", >>>> .help = "capture audio to a wave file (default >>>> frequency=44100 bits=16 channels=2)", >>>> .cmd = hmp_wavcapture, >>>> }, >>>> STEXI >>>> -@item wavcapture @var{filename} [@var{frequency} [@var{bits} >>>> [@var{channels}]]] >>>> +@item wavcapture @var{filename} [@var{frequency} [@var{bits} >>>> [@var{channels} [@var{audiodev}]]]] >>>> @findex wavcapture >>>> -Capture audio into @var{filename}. Using sample rate @var{frequency} >>>> -bits per sample @var{bits} and number of channels @var{channels}. >>>> +Capture audio into @var{filename} from @var{audiodev}. Using sample rate >>>> +@var{frequency} bits per sample @var{bits} and number of channels >>>> +@var{channels}. >>>> >>>> Defaults: >>>> @itemize @minus >>> @item Sample rate = 44100 Hz - CD quality >>> @item Bits = 16 >>> @item Number of channels = 2 - Stereo >>> @end itemize >>> ETEXI >>> >>> Defaults for the other optional arguments are listed here. Why not for >>> @audiodev? >> >> There's no default listed because there's no default when you use the >> -audiodev options, since there's no good default. When you don't use >> -audiodev, it'll use the implicitly created audiodev which doesn't have >> a name, so it can't be specified. > > Double-checking to avoid misunderstandings: there is a default > *behavior*, but no default *value*, i.e. there is no VALUE that makes > audiodev=VALUE give you the same behavior as no audiodev. Correct?
Yes. If there is no audiodev=VALUE, and no -audiodev on the command line, use the legacy config. If there is audiodev=VALUE and -audiodev id=VALUE, use that device. Otherwise, it's an error. > >> But I agree that this situation >> should be documented somehow. > > Yes, please. > >>>> diff --git a/qemu-options.hx b/qemu-options.hx >>>> index 9621e934c0..0111055aa4 100644 >>>> --- a/qemu-options.hx >>>> +++ b/qemu-options.hx >>>> @@ -1978,6 +1978,11 @@ can help the device and guest to keep up and not >>>> lose events in case >>>> events are arriving in bulk. Possible causes for the latter are flaky >>>> network connections, or scripts for automated testing. >>>> >>>> +@item audiodev=@var{audiodev} >>>> + >>>> +Use the specified @var{audiodev} when the VNC client requests audio >>>> +transmission. >>>> + >>> >>> What's the default? >> >> It's the same story as wav_capture. >> >> Regards, >> Zoltan