Browse Source

alsa: add support for more formats.

Specifically, f32, f64, s32, s24, a-law and mu-law.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 921715edff)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
tags/n0.7.2
Carl Eugen Hoyos Reinhard Tartler 14 years ago
parent
commit
bf5ed476ba
1 changed files with 10 additions and 0 deletions
  1. +10
    -0
      libavdevice/alsa-audio-common.c

+ 10
- 0
libavdevice/alsa-audio-common.c View File

@@ -36,9 +36,19 @@
static av_cold snd_pcm_format_t codec_id_to_pcm_format(int codec_id)
{
switch(codec_id) {
case CODEC_ID_PCM_F64LE: return SND_PCM_FORMAT_FLOAT64_LE;
case CODEC_ID_PCM_F64BE: return SND_PCM_FORMAT_FLOAT64_BE;
case CODEC_ID_PCM_F32LE: return SND_PCM_FORMAT_FLOAT_LE;
case CODEC_ID_PCM_F32BE: return SND_PCM_FORMAT_FLOAT_BE;
case CODEC_ID_PCM_S32LE: return SND_PCM_FORMAT_S32_LE;
case CODEC_ID_PCM_S32BE: return SND_PCM_FORMAT_S32_BE;
case CODEC_ID_PCM_S24LE: return SND_PCM_FORMAT_S24_3LE;
case CODEC_ID_PCM_S24BE: return SND_PCM_FORMAT_S24_3BE;
case CODEC_ID_PCM_S16LE: return SND_PCM_FORMAT_S16_LE;
case CODEC_ID_PCM_S16BE: return SND_PCM_FORMAT_S16_BE;
case CODEC_ID_PCM_S8: return SND_PCM_FORMAT_S8;
case CODEC_ID_PCM_MULAW: return SND_PCM_FORMAT_MU_LAW;
case CODEC_ID_PCM_ALAW: return SND_PCM_FORMAT_A_LAW;
default: return SND_PCM_FORMAT_UNKNOWN;
}
}


Loading…
Cancel
Save