From 5ba36ad3a1c90bbfaf286ab2053b5f6151d7f3f0 Mon Sep 17 00:00:00 2001 From: Charlton Head Date: Wed, 28 Jun 2017 00:17:23 -0500 Subject: [PATCH] (tinyalsa) Big endian support. --- audio/drivers/tinyalsa.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/audio/drivers/tinyalsa.c b/audio/drivers/tinyalsa.c index a158e795b8..cce61f865e 100644 --- a/audio/drivers/tinyalsa.c +++ b/audio/drivers/tinyalsa.c @@ -62,6 +62,7 @@ #include #include +#include #include "../audio_driver.h" #include "../../verbosity.h" @@ -2193,14 +2194,15 @@ static void * tinyalsa_init(const char *devicestr, unsigned rate, if (orig_rate != rate) *new_rate = rate; - config.rate = rate; - config.format = PCM_FORMAT_S16_LE; - config.channels = 2; - config.period_size = 1024; - config.period_count = 2; - config.start_threshold = 1024; - config.stop_threshold = 1024 * 2; - config.silence_threshold = 1024 * 2; + config.rate = rate; + config.format = is_little_endian() ?\ + PCM_FORMAT_S16_LE : PCM_FORMAT_S16_BE; + config.channels = 2; + config.period_size = 1024; + config.period_count = 2; + config.start_threshold = 1024; + config.stop_threshold = 1024 * 2; + config.silence_threshold = 1024 * 2; tinyalsa->pcm = pcm_open(card, device, PCM_OUT, &config);