Re: [Musicpd-dev-team] [PATCH 0/5] Add new decoder for outputting DSD data to 'DSD-over-USB' spec. - info

2012-02-09 Thread Max Kellermann
On 2012/02/09 12:01, Bobby Beever  wrote:
> What do you prefer and or propose?

I don't understand the goal of this.  First idea looks very dirty.
DSD shouldn't be a special case, it's just yet another audio format.

Replay gain cannot be applied because we don't have a software volume
implementation for DSD.

If you want bit-perfect playback, you don't want to enable replay gain
or software volume.  Since there is no DSD implementation, MPD will
fail.

> As the dsd2pcm code needs to remain state I also propose to
> implement dsd2pcm into the convert_filter_plugin. Do you agree?

Yes.  And no.  It doesn't belong in convert_filter_plugin, the call to
dsd2pcm belongs in pcm_convert.c (and its neighbors).

> Mixers/Volume control.. I think we somehow need to be able to
> disable software (maybe also hardware) volume control. Would you
> agree? I currently have no proposal other than adding enable/disable
> state code to volume.c for a clean implementation. What are your
> thoughts on this?

No, why would volume.c know or care about DSD?  It never sees any
actual audio data.  You confuse me.

Max

--
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


Re: [Musicpd-dev-team] [PATCH 0/5] Add new decoder for outputting DSD data to 'DSD-over-USB' spec. - info

2012-02-09 Thread Bobby Beever
Hi Max,

I need your help on a design decision regarding filters and mixer.. 

Regarding filters.. 

Two ideas (maybe you have a third?):

1. Bypass the filters by modifying output_thread.c and implement a 'bypass 
filter' mode. This means that when pure DSD playback is requested 
output_thread.c will first do an ao_open in bypass filter mode (filter code 
will not be called..). When the output_plugin doesn't support native DSD it 
will automatically revert to the ao_reopen call which re-enabled the filters. 


2. Modifying filters individually. For this implementations should probably be 
discussed individually (for ex. how to deal with replay_gain_filter_plugin.c 
which seems to be most intrusive and is created on startup, etc..). 

What do you prefer and or propose?

As the dsd2pcm code needs to remain state I also propose to implement dsd2pcm 
into the convert_filter_plugin. Do you agree?


Mixers/Volume control.. I think we somehow need to be able to disable software 
(maybe also hardware) volume control. Would you agree? I currently have no 
proposal other than adding enable/disable state code to volume.c for a clean 
implementation. What are your thoughts on this?

Thanks!

--
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team