Browse Source

Merge pull request #23 from falkTX/master

including S24_LE/BE formats to linux alsa driver
tags/0.125.0rc1
Paul Davis 10 years ago
parent
commit
b7099ac25d
1 changed files with 10 additions and 5 deletions
  1. +10
    -5
      drivers/alsa/alsa_driver.c

+ 10
- 5
drivers/alsa/alsa_driver.c View File

@@ -346,20 +346,21 @@ alsa_driver_configure_stream (alsa_driver_t *driver, char *device_name,
unsigned int frame_rate;
snd_pcm_uframes_t stop_th;
static struct {
char Name[32];
char Name[40];
snd_pcm_format_t format;
int swapped;
} formats[] = {
{"32bit float little-endian", SND_PCM_FORMAT_FLOAT_LE},
{"32bit float little-endian", SND_PCM_FORMAT_FLOAT_LE, IS_LE},
{"32bit integer little-endian", SND_PCM_FORMAT_S32_LE, IS_LE},
{"32bit integer big-endian", SND_PCM_FORMAT_S32_BE, IS_BE},
{"24bit little-endian", SND_PCM_FORMAT_S24_3LE, IS_LE},
{"24bit big-endian", SND_PCM_FORMAT_S24_3BE, IS_BE},
{"24bit little-endian in 3bytes format", SND_PCM_FORMAT_S24_3LE, IS_LE},
{"24bit big-endian in 3bytes format", SND_PCM_FORMAT_S24_3BE, IS_BE},
{"24bit little-endian", SND_PCM_FORMAT_S24_LE, IS_LE},
{"24bit big-endian", SND_PCM_FORMAT_S24_BE, IS_BE},
{"16bit little-endian", SND_PCM_FORMAT_S16_LE, IS_LE},
{"16bit big-endian", SND_PCM_FORMAT_S16_BE, IS_BE},
};
#define NUMFORMATS (sizeof(formats)/sizeof(formats[0]))
#define FIRST_16BIT_FORMAT 5

if ((err = snd_pcm_hw_params_any (handle, hw_params)) < 0) {
jack_error ("ALSA: no playback configurations available (%s)",
@@ -741,6 +742,8 @@ alsa_driver_set_parameters (alsa_driver_t *driver,
case SND_PCM_FORMAT_S32_LE:
case SND_PCM_FORMAT_S24_3LE:
case SND_PCM_FORMAT_S24_3BE:
case SND_PCM_FORMAT_S24_LE:
case SND_PCM_FORMAT_S24_BE:
case SND_PCM_FORMAT_S16_LE:
case SND_PCM_FORMAT_S32_BE:
case SND_PCM_FORMAT_S16_BE:
@@ -759,6 +762,8 @@ alsa_driver_set_parameters (alsa_driver_t *driver,
case SND_PCM_FORMAT_S32_LE:
case SND_PCM_FORMAT_S24_3LE:
case SND_PCM_FORMAT_S24_3BE:
case SND_PCM_FORMAT_S24_LE:
case SND_PCM_FORMAT_S24_BE:
case SND_PCM_FORMAT_S16_LE:
case SND_PCM_FORMAT_S32_BE:
case SND_PCM_FORMAT_S16_BE:


Loading…
Cancel
Save