diff options
author | Stefano Pigozzi <stefano.pigozzi@gmail.com> | 2013-05-22 00:21:05 +0200 |
---|---|---|
committer | Stefano Pigozzi <stefano.pigozzi@gmail.com> | 2013-06-16 18:20:39 +0200 |
commit | b537467fd33d55b743bbf8fcac562d3ade7cb7c3 (patch) | |
tree | 61169f808fd47f3cf2884f9185903894a8964942 | |
parent | a66041a332970ced1473f44bce9516fc9ed5a16e (diff) | |
download | mpv-b537467fd33d55b743bbf8fcac562d3ade7cb7c3.tar.bz2 mpv-b537467fd33d55b743bbf8fcac562d3ade7cb7c3.tar.xz |
ao_coreaudio: fix output with spdif
The mute condition was inverted...
-rw-r--r-- | audio/out/ao_coreaudio.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/audio/out/ao_coreaudio.c b/audio/out/ao_coreaudio.c index 3b513e2f7c..930bb2d741 100644 --- a/audio/out/ao_coreaudio.c +++ b/audio/out/ao_coreaudio.c @@ -1072,17 +1072,16 @@ static OSStatus RenderCallbackSPDIF(AudioDeviceID inDevice, struct ao *ao = threadGlobals; struct priv *p = ao->priv; int amt = ca_ringbuffer_buffered(p->buffer); - int req = outOutputData->mBuffers[p->i_stream_index].mDataByteSize; + AudioBuffer ca_buffer = outOutputData->mBuffers[p->i_stream_index]; + int req = ca_buffer.mDataByteSize; if (amt > req) amt = req; if (amt) { if (p->b_muted) { - ca_ringbuffer_read(p->buffer, - (unsigned char *)outOutputData->mBuffers[p->i_stream_index].mData, - amt); - } else { ca_ringbuffer_read(p->buffer, NULL, amt); + } else { + ca_ringbuffer_read(p->buffer, (unsigned char *)ca_buffer.mData, amt); } } |