PasTim wrote: 
> Well I've tried the latest dev build, rather briefly thus far, and all
> seems well.  Thanks very much.
> 
> To try and understand the new parameters I tested the 'raw format
> preference' field with a 24/192 flac track.  On my M1 CLiC, which I know
> handles pcm well, pcm works fine.  On my Marantz, it does not.  However,
> setting this to wav does indeed fix it for the Marantz.
> 
> So, as I understand it, the codecs line should NOT include wav, since
> LMS doesn't support it, but the 'raw format preference' field can, if a
> device doesn't handle raw pcm well but does handle wav.  Is that
> correct?
> 
> Can the codecs field include aif?
> 
> What does the byte ordering option do?

Let me try to explain and if you tell me how to tell the story in better
english, that would be great:

pcm = raw uncompressed audio data, no header to describe what the data
are
wav = file containing uncompressed audio data, but with a header to
describe sample rate, size and channels. On 2+ bytes sample size, least
significant byte is sent first
aif = same as wav, but byte order are reversed

When using compressed, self described formats like mp3 and flac, LMS
sends the header of the file together with the audio data, so the
receiving player extract critical information like channels, sample rate
and size are read from the header.
When using uncompressed format, LMS only sends raw pcm, without a
header, just bytes. The critical parameters like number of channels,
sample_size and sample_rate are sent in a LMS protocol separated
message.

On their side, and for uncompressed data, UPnP players can receive a
stream made of either raw pcm, wav or aif. 

When receiving raw pcm data, sq2u could ideally, just forward it to the
UPnP player and that would be easy ... except that some players do not
support raw pcm, it must be encaplusated into a wav or aif file. Some
support all options, some pcm and aif, some wav and aif, some pcm only,
some wav only etc ... all permutation and combination

So what sq2u does is adding a header on-the-fly when players do not
allow raw pcm data. One of the difficulty here is that these wav and aif
format header requires the "full file size to be set" and obviously I
don't know it. 

So, when a UPnP player supports pcm, wav and aif, what to send ? the
easy answer is pcm but sometimes they accept more rate and sample size
combination through wav than through pcm (I know, this sounds silly
...). On top of that, when LMS sends raw pcm from a wav file and sq2u
forwards that as raw pcm, it requires byte re-ordering which is
CPU-consuming for nothing, really.

So the idea here is to let the user specifiy the uncompressed format he
wants to try to send to its UPnP player AND with which order of
preference (don't worry, ultimately only supported format will be used).
The Byte Ordering option is also to allow sq2u to choose, in the
authorized list, the format that avoid byte-re-ordering. When disabled,
the first format that is accepted by the UPnP player is used

Does that help ?



LMS 7.7.2 - 5 radio, 3 Boom, 4 Duet, 1 Touch, 1 SB2. Sonos 2xPLAY:1,
PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBMC, Foobar2000, XBoxOne
(sort of)
------------------------------------------------------------------------
philippe_44's Profile: http://forums.slimdevices.com/member.php?userid=17261
View this thread: http://forums.slimdevices.com/showthread.php?t=102496

_______________________________________________
plugins mailing list
plugins@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/plugins

Reply via email to