From 6910cdaae18a9b97527ca0978a9b33a3e52866b1 Mon Sep 17 00:00:00 2001 From: reimar Date: Mon, 11 Jan 2010 19:23:18 +0000 Subject: Add and use AF_FORMAT_IS_AC3 macro. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30276 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libao2/ao_alsa.c | 9 +++++---- libao2/ao_coreaudio.c | 4 ++-- libao2/ao_dxr2.c | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) (limited to 'libao2') diff --git a/libao2/ao_alsa.c b/libao2/ao_alsa.c index 70cd92198b..c156404ab7 100644 --- a/libao2/ao_alsa.c +++ b/libao2/ao_alsa.c @@ -127,7 +127,7 @@ static int control(int cmd, void *arg) long get_vol, set_vol; float f_multi; - if(ao_data.format == AF_FORMAT_AC3) + if(AF_FORMAT_IS_AC3(ao_data.format)) return CONTROL_TRUE; if(mixer_channel) { @@ -427,7 +427,7 @@ static int init(int rate_hz, int channels, int format, int flags) * while opening the abstract alias for the spdif subdevice * 'iec958' */ - if (format == AF_FORMAT_AC3) { + if (AF_FORMAT_IS_AC3(format)) { device.str = "iec958"; mp_msg(MSGT_AO,MSGL_V,"alsa-spdif-init: playing AC3, %i channels\n", channels); } @@ -486,12 +486,13 @@ static int init(int rate_hz, int channels, int format, int flags) } if (!alsa_handler) { + int isac3 = AF_FORMAT_IS_AC3(format); //modes = 0, SND_PCM_NONBLOCK, SND_PCM_ASYNC - if ((err = try_open_device(alsa_device, open_mode, format == AF_FORMAT_AC3)) < 0) + if ((err = try_open_device(alsa_device, open_mode, isac3)) < 0) { if (err != -EBUSY && ao_noblock) { mp_msg(MSGT_AO,MSGL_INFO,MSGTR_AO_ALSA_OpenInNonblockModeFailed); - if ((err = try_open_device(alsa_device, 0, format == AF_FORMAT_AC3)) < 0) { + if ((err = try_open_device(alsa_device, 0, isac3)) < 0) { mp_msg(MSGT_AO,MSGL_ERR,MSGTR_AO_ALSA_PlaybackOpenError, snd_strerror(err)); return 0; } diff --git a/libao2/ao_coreaudio.c b/libao2/ao_coreaudio.c index 130eee8f97..122607ec63 100644 --- a/libao2/ao_coreaudio.c +++ b/libao2/ao_coreaudio.c @@ -263,7 +263,7 @@ int b_alive; ao->b_changed_mixing = 0; /* Probe whether device support S/PDIF stream output if input is AC3 stream. */ - if ((format & AF_FORMAT_SPECIAL_MASK) == AF_FORMAT_AC3) + if (AF_FORMAT_IS_AC3(format)) { /* Find the ID of the default Device. */ i_param_size = sizeof(AudioDeviceID); @@ -344,7 +344,7 @@ int b_alive; // unsigned int inDesc.mFormatFlags = kAudioFormatFlagIsPacked; } - if ((format & AF_FORMAT_SPECIAL_MASK) == AF_FORMAT_AC3) { + if (AF_FORMAT_IS_AC3(format)) { // Currently ac3 input (comes from hwac3) is always in native byte-order. #if HAVE_BIGENDIAN inDesc.mFormatFlags |= kAudioFormatFlagIsBigEndian; diff --git a/libao2/ao_dxr2.c b/libao2/ao_dxr2.c index 1a0a3e6135..e2694c6189 100644 --- a/libao2/ao_dxr2.c +++ b/libao2/ao_dxr2.c @@ -201,7 +201,7 @@ static int play(void* data,int len,int flags){ // MPEG and AC3 don't work :-( if(ao_data.format==AF_FORMAT_MPEG2) send_mpeg_ps_packet (data, len, 0xC0, ao_data.pts, 2, write_dxr2); - else if(ao_data.format==AF_FORMAT_AC3) + else if(AF_FORMAT_IS_AC3(ao_data.format)) send_mpeg_ps_packet (data, len, 0x80, ao_data.pts, 2, write_dxr2); else { int i; -- cgit v1.2.3