summaryrefslogtreecommitdiffstats
path: root/audio/out/ao_coreaudio.c
diff options
context:
space:
mode:
authorStefano Pigozzi <stefano.pigozzi@gmail.com>2014-07-02 08:02:00 +0200
committerStefano Pigozzi <stefano.pigozzi@gmail.com>2014-07-02 21:43:07 +0200
commit80ec0ba6d05df65df42c3a7f74c5e2987cb682d7 (patch)
tree035713baeba2f0a03d373fdda1277cbc410da9a8 /audio/out/ao_coreaudio.c
parentfa85bfde6943e5d2955830cd5e51f24210022719 (diff)
downloadmpv-80ec0ba6d05df65df42c3a7f74c5e2987cb682d7.tar.bz2
mpv-80ec0ba6d05df65df42c3a7f74c5e2987cb682d7.tar.xz
ao_coreaudio: fill asbd with an helper function
Diffstat (limited to 'audio/out/ao_coreaudio.c')
-rw-r--r--audio/out/ao_coreaudio.c21
1 files changed, 1 insertions, 20 deletions
diff --git a/audio/out/ao_coreaudio.c b/audio/out/ao_coreaudio.c
index 615bb41fa0..7f3b70c15a 100644
--- a/audio/out/ao_coreaudio.c
+++ b/audio/out/ao_coreaudio.c
@@ -127,26 +127,7 @@ static int init(struct ao *ao)
// Build ASBD for the input format
AudioStreamBasicDescription asbd;
- asbd.mSampleRate = ao->samplerate;
- asbd.mFormatID = kAudioFormatLinearPCM;
- asbd.mChannelsPerFrame = ao->channels.num;
- asbd.mBitsPerChannel = af_fmt2bits(ao->format);
- asbd.mFormatFlags = kAudioFormatFlagIsPacked;
-
- if ((ao->format & AF_FORMAT_POINT_MASK) == AF_FORMAT_F)
- asbd.mFormatFlags |= kAudioFormatFlagIsFloat;
-
- if ((ao->format & AF_FORMAT_SIGN_MASK) == AF_FORMAT_SI)
- asbd.mFormatFlags |= kAudioFormatFlagIsSignedInteger;
-
- if ((ao->format & AF_FORMAT_END_MASK) == AF_FORMAT_BE)
- asbd.mFormatFlags |= kAudioFormatFlagIsBigEndian;
-
- asbd.mFramesPerPacket = 1;
- asbd.mBytesPerPacket = asbd.mBytesPerFrame =
- asbd.mFramesPerPacket * asbd.mChannelsPerFrame *
- (asbd.mBitsPerChannel / 8);
-
+ ca_fill_asbd(ao, &asbd);
return init_lpcm(ao, asbd);
coreaudio_error: