qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH v2] qapi for audio backends


From: Gerd Hoffmann
Subject: Re: [Qemu-devel] [RFC PATCH v2] qapi for audio backends
Date: Fri, 05 Jun 2015 12:57:51 +0200

  Hi,

> Plus currently only alsa an oss seem to care about this 
> option, so even if we keep it, we should probably move it into alsa's 
> and oss's backend options.

Makes sense.

> > Looks good to me as draft to start working with.  I expect we'll find
> > some details which need tweeking when implementing this.
> 
> Yeah, I've already hit a problem. The opts_visitor doesn't really handle 
> nested structs (it just flattens it into a single, non hierarchic 
> namespace), which is a problem because of the input and output options. 
> First I need to make them required (the in and out in Audiodev) if I 
> want the current visitor to visit them at all, but it's still not enough.

I think we should improve the visitor instead of making in & out
mandatory just because the current implementation (which simply
implements the stuff needed for Netdev) can't handle it.

> Doing something like -audiodev frequency=8000 sets the input frequency 
> to 8000 and leaves output frequency undefined. I think I should add an 
> additional syntax: -audiodev in.frequency=8000,out.frequency=16000 (of 
> course it should support deeper nesting like foo.bar.baz.asd=13). The 
> question is what should happen if the user specifies frequency=8000. I 
> see two alternatives:
> 
> 0. set every frequency field to 8000 (i.e. the same as 
> in.frequency=8000,out.frequency=8000 in this example)
> 1. bail out with a parameter ambiguous error
> 
> In the case of audiodev, the 0. approach seems more straightforward (if 
> the user sets frequency, he wants to set both input and output 
> frequency),

Agree.

>  but in more generic scenarios, the 1. is maybe better.

There is always the option to be more specific (in.frequency=...) if
setting all parameters named 'frequency' doesn't do what you want.  Also
I wouldn't worry too much about possible cases which don't exist right
now.  I'd suggest to go for (0).

cheers,
  Gerd





reply via email to

[Prev in Thread] Current Thread [Next in Thread]