%PDF- %PDF-
| Direktori : /usr/share/doc/libasound2-plugins/ |
| Current File : //usr/share/doc/libasound2-plugins/a52.txt |
A52 OUTPUT PLUGIN
=================
This plugin converts S16(P), S32P, or FLTP formats to an A52 compressed
stream and sends it to an S/PDIF output. It requires libavcodec for
encoding the audio stream.
The input format is determined by the version of libavcodec it is
compiled against and which ac3 codec libavcodec is configured to use.
A global configuration, /usr/share/alsa/alsa.conf.d/60-a52-encoder.conf
defines a52 PCMs for devices with the IEC958 non-audio status bit set.
A PCM using this plugin can be manually defined like below:
pcm.myout {
type a52
}
In addition, the following options are available:
- The "card" option specifies the card ID or number of the SPDIF.
The output PCM becomes "iec958:{CARD=$CARD}" with extra AESx
settings. When omitted, the default card is used.
- The "slavepcm" option specifies a string of the slave PCM
explicitly. This is useful if a device has no proper SPDIF
configuration (e.g. usb-audio), or if you want to pass your own PCM
definition. This option is exclusive with "card" option.
- The "rate" option specifies the input/output sample rate in HZ.
The accepted rate is either 44100 or 48000.
When omitted, 48000 is used.
- The "channels" option specifies the number of _input_ channels.
It must be either 2, 4 or 6. The default value is 6.
- The "bitrate" option specifies the bit-rate of the compressed
stream in kbps. Too small or too big value may not be accepted by
the encoder. When omitted, 448 is used.
- The "format" option specifies the output format type. It's either
S16_LE or S16_BE. As default, S16_LE is used.
An example using the secondary card, 44.1kHz, 4 channels, output
bitrate 256kbps and output format S16_BE looks like below:
pcm.myout {
type a52
card 1
rate 44100
channels 4
bitrate 256
format S16_BE
}
For using slavepcm option,
pcm.mypcm {
card 1
device 2
}
pcm.myout {
type a52
slavepcm "mypcm"
}
The plugin only reads the format determined by libavcodec (native-
endian S16(P), S32P or FLTP) as input, so you'll need a plug layer to
appropriately convert it.