summaryrefslogtreecommitdiff
path: root/shairport.c
diff options
context:
space:
mode:
authorMike Brady <mikebrady@eircom.net>2019-05-01 11:01:15 +0100
committerMike Brady <mikebrady@eircom.net>2019-05-01 11:01:15 +0100
commit1d32976d07d64c8913ca795abb69c0ecbc8a16b4 (patch)
tree729cd05839ba97089961d655c4bfd00468469c3c /shairport.c
parent848467a817ed1aa24d3cd97067e57374136b8762 (diff)
Improve support for bigendian devices. Add support for S16_LE, S16_BE, S24_LE, S24_BE, S32_LE and S32_BE formats. Make the default S16_LE. Allow precision timing only on alsa devices with names beginning with "hw:". Use snd_pcm_hw_params_is_monotonic() to see if clock is monotonic.
Diffstat (limited to 'shairport.c')
-rw-r--r--shairport.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/shairport.c b/shairport.c
index da3d334..2d25f35 100644
--- a/shairport.c
+++ b/shairport.c
@@ -1378,11 +1378,11 @@ int main(int argc, char **argv) {
xn.arr[3] = 0x11; /* Highest-address byte */
if (xn.u32 == 0x11223344)
- endianness = SS_LITTLE_ENDIAN;
+ config.endianness = SS_LITTLE_ENDIAN;
else if (xn.u32 == 0x33441122)
- endianness = SS_PDP_ENDIAN;
+ config.endianness = SS_PDP_ENDIAN;
else if (xn.u32 == 0x44332211)
- endianness = SS_BIG_ENDIAN;
+ config.endianness = SS_BIG_ENDIAN;
else
die("Can not recognise the endianness of the processor.");
@@ -1425,8 +1425,8 @@ int main(int argc, char **argv) {
config.audio_backend_buffer_desired_length = 6615; // 0.15 seconds.
config.udp_port_base = 6001;
config.udp_port_range = 10;
- config.output_format = SPS_FORMAT_S16; // default
- config.output_rate = 44100; // default
+ config.output_format = SPS_FORMAT_S16_LE; // default
+ config.output_rate = 44100; // default
config.decoders_supported =
1 << decoder_hammerton; // David Hammerton's decoder supported by default
#ifdef CONFIG_APPLE_ALAC
@@ -1629,7 +1629,7 @@ int main(int argc, char **argv) {
// daemon_log(LOG_NOTICE, "startup");
- switch (endianness) {
+ switch (config.endianness) {
case SS_LITTLE_ENDIAN:
debug(2, "The processor is running little-endian.");
break;
@@ -1712,8 +1712,8 @@ int main(int argc, char **argv) {
debug(1, "use_mmap_if_available is %d.", config.no_mmap ? 0 : 1);
debug(1, "output_rate is %d.", config.output_rate);
debug(1,
- "output_format is %d (0-unknown, 1-S8, 2-U8, 3-S16, 4-S24, 5-S24_3LE, 6-S24_3BE, 7-S32).",
- config.output_format);
+ "output_format is \"%s\".",
+ sps_format_description_string(config.output_format));
debug(1, "audio backend desired buffer length is %f seconds.",
config.audio_backend_buffer_desired_length);
debug(1, "audio_backend_buffer_interpolation_threshold_in_seconds is %f seconds.", config.audio_backend_buffer_interpolation_threshold_in_seconds);