X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/c593cf7c8a1ea63fc107b810bdb167487f71380e..05b75f8d50b83e943af3be4071449304d82dbdcd:/clients/playrtp-coreaudio.c?ds=sidebyside diff --git a/clients/playrtp-coreaudio.c b/clients/playrtp-coreaudio.c index a22c8af..f490a0f 100644 --- a/clients/playrtp-coreaudio.c +++ b/clients/playrtp-coreaudio.c @@ -21,12 +21,9 @@ * @brief RTP player - Core Audio support */ -#include +#include "common.h" #if HAVE_COREAUDIO_AUDIOHARDWARE_H -#include "types.h" - -#include #include #include @@ -67,6 +64,14 @@ static OSStatus adioproc samples_available = samplesOutLeft; next_timestamp += samples_available; samplesOutLeft -= samples_available; + if(dump_buffer) { + size_t n; + + for(n = 0; n < samples_available; ++n) { + dump_buffer[dump_index++] = (int16_t)ntohs(ptr[n]); + dump_index %= dump_size; + } + } while(samples_available-- > 0) *samplesOut++ = (int16_t)ntohs(*ptr++) * (0.5 / 32767); /* We don't bother junking the packet - that'll be dealt with next time @@ -82,6 +87,14 @@ static OSStatus adioproc next_timestamp += samples_available; samplesOut += samples_available; samplesOutLeft -= samples_available; + if(dump_buffer) { + size_t n; + + for(n = 0; n < samples_available; ++n) { + dump_buffer[dump_index++] = 0; + dump_index %= dump_size; + } + } } } ++ab;