Re: iec958 and 24-bit audio

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

 



On Mon, 1 Nov 2010, pl bossart wrote:

>>> [alsa-lib]$ aplay -Diec958 file24bits.wav
>>> aplay: set_params:1059: Sample format non available
>>> Available formats:
>>> - S16_LE
>>> - S32_LE
>>>
>>> Is there an built-in assumption that the iec958 device can only take
>>> as input what the slave hardware device supports?
>>
>> Use 'plug:iec958' device if you want to do the format conversion (from
>> 24-bit to 32-bit format).
>
> That seems to work, but what I was asking is if there's a direct path
> without conversion? With plug:iec958 there's a conversion to 32-bits
> and then you drop the lsb.

Almost all sound bridge chips works with 16-bit or 32-bit samples because 
it's more compatible with analog converters and the handling is more 
simple than for 3-byte formats. The conversion from the 32-bit format to 
the 32-bit S/PDIF frame is done inside hw (dropping the LSB, add S/PDIF 
frame status bits). Some hardware also supports raw S/PDIF frames 
directly.

> Also PulseAudio seems to rely on iec958 and when it doesn't work it
> tries with plug:iec958. What's the recommended way of using this
> device? Should we always open plug:iec958?

You can detect which formats are supported (like aplay does) and use the 
appropriate format to avoid using the plug layer in alsa-lib.

 						Jaroslav

-----
Jaroslav Kysela <perex@xxxxxxxx>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.

_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel


[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux