[vlc-commits] coreaudio: refactor and fix error output
Thomas Guillem
git at videolan.org
Fri Mar 3 15:44:46 CET 2017
vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Fri Mar 3 14:12:12 2017 +0100| [5a42b5e669e7d2c6b9474c5047ada58a247adc01] | committer: Thomas Guillem
coreaudio: refactor and fix error output
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5a42b5e669e7d2c6b9474c5047ada58a247adc01
---
modules/audio_output/audiounit_ios.m | 17 ++++--------
modules/audio_output/auhal.c | 49 ++++++++++++++-------------------
modules/audio_output/coreaudio_common.c | 21 +++++---------
modules/audio_output/coreaudio_common.h | 3 ++
4 files changed, 36 insertions(+), 54 deletions(-)
diff --git a/modules/audio_output/audiounit_ios.m b/modules/audio_output/audiounit_ios.m
index b392816..b7cd469 100644
--- a/modules/audio_output/audiounit_ios.m
+++ b/modules/audio_output/audiounit_ios.m
@@ -253,8 +253,7 @@ Pause (audio_output_t *p_aout, bool pause, mtime_t date)
{
err = AudioOutputUnitStop(p_sys->au_unit);
if (err != noErr)
- msg_Err(p_aout, "AudioOutputUnitStart failed [%4.4s]",
- (const char *) &err);
+ ca_LogErr("AudioOutputUnitStart failed");
avas_SetActive(p_aout, false, 0);
}
else
@@ -264,8 +263,7 @@ Pause (audio_output_t *p_aout, bool pause, mtime_t date)
err = AudioOutputUnitStart(p_sys->au_unit);
if (err != noErr)
{
- msg_Err(p_aout, "AudioOutputUnitStart failed [%4.4s]",
- (const char *) &err);
+ ca_LogErr("AudioOutputUnitStart failed");
/* Do not un-pause, the Render Callback won't run, and next call
* of ca_Play will deadlock */
return;
@@ -312,15 +310,13 @@ Stop(audio_output_t *p_aout)
err = AudioOutputUnitStop(p_sys->au_unit);
if (err != noErr)
- msg_Warn(p_aout, "AudioOutputUnitStop failed [%4.4s]",
- (const char *)&err);
+ ca_LogWarn("AudioOutputUnitStop failed");
au_Uninitialize(p_aout, p_sys->au_unit);
err = AudioComponentInstanceDispose(p_sys->au_unit);
if (err != noErr)
- msg_Warn(p_aout, "AudioComponentInstanceDispose failed [%4.4s]",
- (const char *)&err);
+ ca_LogWarn("AudioComponentInstanceDispose failed");
avas_SetActive(p_aout, false,
AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation);
@@ -357,7 +353,7 @@ Start(audio_output_t *p_aout, audio_sample_format_t *restrict fmt)
kAudioUnitScope_Output, 0,
&(UInt32){ 1 }, sizeof(UInt32));
if (err != noErr)
- msg_Warn(p_aout, "failed to set IO mode [%4.4s]", (const char *)&err);
+ ca_LogWarn("failed to set IO mode");
enum dev_type dev_type;
int ret = avas_GetOptimalChannelLayout(p_aout, aout_FormatNbChannels(fmt),
@@ -377,8 +373,7 @@ Start(audio_output_t *p_aout, audio_sample_format_t *restrict fmt)
err = AudioOutputUnitStart(p_sys->au_unit);
if (err != noErr)
{
- msg_Err(p_aout, "AudioOutputUnitStart failed [%4.4s]",
- (const char *) &err);
+ ca_LogErr("AudioOutputUnitStart failed");
au_Uninitialize(p_aout, p_sys->au_unit);
goto error;
}
diff --git a/modules/audio_output/auhal.c b/modules/audio_output/auhal.c
index b469132..bb3fe04 100644
--- a/modules/audio_output/auhal.c
+++ b/modules/audio_output/auhal.c
@@ -140,8 +140,8 @@ AoGetProperty(audio_output_t *p_aout, AudioObjectID id,
if (err != noErr)
{
msg_Err(p_aout, "AudioObjectGetPropertyDataSize failed, device id: %i, "
- "prop: [%4.4s], err: [%4.4s]", id, (const char *) &p_address[0],
- (const char *)&err);
+ "prop: [%4.4s], OSStatus: %d", id, (const char *) &p_address[0],
+ (int)err);
return VLC_EGENERIC;
}
@@ -188,8 +188,8 @@ AoGetProperty(audio_output_t *p_aout, AudioObjectID id,
if (err != noErr)
{
msg_Err(p_aout, "AudioObjectGetPropertyData failed, device id: %i, "
- "prop: [%4.4s], err: [%4.4s]", id, (const char *) &p_address[0],
- (const char *)&err);
+ "prop: [%4.4s], OSStatus: %d", id, (const char *) &p_address[0],
+ (int) err);
if (pp_out_data != NULL)
free(*pp_out_data);
@@ -221,8 +221,8 @@ AoIsPropertySettable(audio_output_t *p_aout, AudioObjectID id,
if (err != noErr)
{
msg_Warn(p_aout, "AudioObjectIsPropertySettable failed, device id: %i, "
- "prop: [%4.4s], err: [%4.4s]", id, (const char *)&p_address[0],
- (const char *)&err);
+ "prop: [%4.4s], OSStatus: %d", id, (const char *)&p_address[0],
+ (int)err);
return false;
}
return b_settable;
@@ -246,8 +246,8 @@ AoSetProperty(audio_output_t *p_aout, AudioObjectID id,
if (err != noErr)
{
msg_Err(p_aout, "AudioObjectSetPropertyData failed, device id: %i, "
- "prop: [%4.4s], err: [%4.4s]", id, (const char *)&p_address[0],
- (const char *)&err);
+ "prop: [%4.4s], OSStatus: %d", id, (const char *)&p_address[0],
+ (int)err);
return VLC_EGENERIC;
}
return VLC_SUCCESS;
@@ -270,8 +270,8 @@ AoUpdateListener(audio_output_t *p_aout, bool add, AudioObjectID id,
if (err != noErr)
{
msg_Err(p_aout, "AudioObject%sPropertyListener failed, device id %i, "
- "prop: [%4.4s], err: [%4.4s]", add ? "Add" : "Remove", id,
- (const char *)&p_address[0], (const char *)&err);
+ "prop: [%4.4s], OSStatus: %d", add ? "Add" : "Remove", id,
+ (const char *)&p_address[0], (int)err);
return VLC_EGENERIC;
}
return VLC_SUCCESS;
@@ -954,8 +954,7 @@ StartAnalog(audio_output_t *p_aout, audio_sample_format_t *fmt,
if (err != noErr)
{
- msg_Err(p_aout, "cannot select audio output device, PCM output failed "
- "[%4.4s]", (const char *)&err);
+ ca_LogErr("cannot select audio output device, PCM output failed");
goto error;
}
@@ -980,9 +979,8 @@ StartAnalog(audio_output_t *p_aout, audio_sample_format_t *fmt,
goto error;
}
else
- msg_Warn(p_aout, "device driver does not support "
- "kAudioDevicePropertyPreferredChannelLayout - using stereo "
- "fallback [%4.4s]", (const char *)&err);
+ ca_LogWarn("device driver does not support "
+ "kAudioDevicePropertyPreferredChannelLayout - using stereo");
/* Do the last VLC aout setups */
fmt->i_format = VLC_CODEC_FL32;
@@ -993,8 +991,7 @@ StartAnalog(audio_output_t *p_aout, audio_sample_format_t *fmt,
err = AudioOutputUnitStart(p_sys->au_unit);
if (err != noErr)
{
- msg_Err(p_aout, "AudioUnitInitialize failed: [%4.4s]",
- (const char *)&err);
+ ca_LogErr("AudioUnitStart failed");
au_Uninitialize(p_aout, p_sys->au_unit);
goto error;
}
@@ -1259,8 +1256,7 @@ StartSPDIF(audio_output_t * p_aout, audio_sample_format_t *fmt,
p_aout, &p_sys->i_procID);
if (err != noErr)
{
- msg_Err(p_aout, "Failed to create Process ID [%4.4s]",
- (const char *)&err);
+ ca_LogErr("Failed to create Process ID");
return VLC_EGENERIC;
}
@@ -1275,13 +1271,11 @@ StartSPDIF(audio_output_t * p_aout, audio_sample_format_t *fmt,
err = AudioDeviceStart(p_sys->i_selected_dev, p_sys->i_procID);
if (err != noErr)
{
- msg_Err(p_aout, "Failed to start audio device [%4.4s]",
- (const char *)&err);
+ ca_LogErr("Failed to start audio device");
err = AudioDeviceDestroyIOProcID(p_sys->i_selected_dev, p_sys->i_procID);
if (err != noErr)
- msg_Err(p_aout, "Failed to destroy process ID [%4.4s]",
- (const char *)&err);
+ ca_LogErr("Failed to destroy process ID");
return VLC_EGENERIC;
}
@@ -1312,15 +1306,13 @@ Stop(audio_output_t *p_aout)
err = AudioDeviceStop(p_sys->i_selected_dev,
p_sys->i_procID);
if (err != noErr)
- msg_Err(p_aout, "Failed to stop audio device [%4.4s]",
- (const char *)&err);
+ ca_LogErr("AudioDeviceStop failed");
/* Remove IOProc callback */
err = AudioDeviceDestroyIOProcID(p_sys->i_selected_dev,
p_sys->i_procID);
if (err != noErr)
- msg_Err(p_aout, "Failed to destroy Process ID [%4.4s]",
- (const char *)&err);
+ ca_LogErr("Failed to destroy Process ID");
if (p_sys->b_revert
&& !AudioStreamChangeFormat(p_aout, p_sys->i_stream_id, p_sys->sfmt_revert))
@@ -1349,8 +1341,7 @@ Stop(audio_output_t *p_aout)
}
if (ret != VLC_SUCCESS)
- msg_Err(p_aout, "failed to re-set mixmode [%4.4s]",
- (const char *)&err);
+ msg_Err(p_aout, "failed to re-set mixmode");
}
ca_Uninitialize(p_aout);
diff --git a/modules/audio_output/coreaudio_common.c b/modules/audio_output/coreaudio_common.c
index acdc5fe..985b770 100644
--- a/modules/audio_output/coreaudio_common.c
+++ b/modules/audio_output/coreaudio_common.c
@@ -248,8 +248,7 @@ au_NewOutputInstance(audio_output_t *p_aout, OSType comp_sub_type)
OSStatus err = AudioComponentInstanceNew(au_component, &au);
if (err != noErr)
{
- msg_Err(p_aout, "cannot open AudioComponent, PCM output failed [%4.4s]",
- (const char *)&err);
+ ca_LogErr("cannot open AudioComponent, PCM output failed");
return NULL;
}
return au;
@@ -654,8 +653,7 @@ au_Initialize(audio_output_t *p_aout, AudioUnit au, audio_sample_format_t *fmt,
sizeof(desc));
if (err != noErr)
{
- msg_Err(p_aout, "failed to set stream format [%4.4s]",
- (const char *)&err);
+ ca_LogErr("failed to set stream format");
return VLC_EGENERIC;
}
msg_Dbg(p_aout, STREAM_FORMAT_MSG("Current AU format: " , desc));
@@ -666,8 +664,7 @@ au_Initialize(audio_output_t *p_aout, AudioUnit au, audio_sample_format_t *fmt,
&(UInt32) { sizeof(desc) });
if (err != noErr)
{
- msg_Err(p_aout, "failed to verify stream format [%4.4s]",
- (const char *)&err);
+ ca_LogErr("failed to set stream format");
return VLC_EGENERIC;
}
@@ -682,8 +679,7 @@ au_Initialize(audio_output_t *p_aout, AudioUnit au, audio_sample_format_t *fmt,
sizeof(callback));
if (err != noErr)
{
- msg_Err(p_aout, "failed to setup render callback [%4.4s]",
- (const char *)&err);
+ ca_LogErr("failed to setup render callback");
return VLC_EGENERIC;
}
@@ -697,8 +693,7 @@ au_Initialize(audio_output_t *p_aout, AudioUnit au, audio_sample_format_t *fmt,
sizeof(inlayout));
if (err != noErr)
{
- msg_Err(p_aout, "failed to setup input layout [%4.4s]",
- (const char *)&err);
+ ca_LogErr("failed to setup input layout");
return VLC_EGENERIC;
}
@@ -707,8 +702,7 @@ au_Initialize(audio_output_t *p_aout, AudioUnit au, audio_sample_format_t *fmt,
if (err != noErr)
{
- msg_Err(p_aout, "AudioUnitInitialize failed: [%4.4s]",
- (const char *)&err);
+ ca_LogErr("AudioUnitInitialize failed");
return VLC_EGENERIC;
}
@@ -727,8 +721,7 @@ au_Uninitialize(audio_output_t *p_aout, AudioUnit au)
{
OSStatus err = AudioUnitUninitialize(au);
if (err != noErr)
- msg_Warn(p_aout, "AudioUnitUninitialize failed [%4.4s]",
- (const char *)&err);
+ ca_LogWarn("AudioUnitUninitialize failed");
ca_Uninitialize(p_aout);
}
diff --git a/modules/audio_output/coreaudio_common.h b/modules/audio_output/coreaudio_common.h
index 10c275b..c6d73ee 100644
--- a/modules/audio_output/coreaudio_common.h
+++ b/modules/audio_output/coreaudio_common.h
@@ -41,6 +41,9 @@
(unsigned int)sfm.mFramesPerPacket, (unsigned int)sfm.mBytesPerFrame, \
(unsigned int)sfm.mChannelsPerFrame, (unsigned int)sfm.mBitsPerChannel
+#define ca_LogErr(fmt) msg_Err(p_aout, fmt ", OSStatus: %d", (int) err)
+#define ca_LogWarn(fmt) msg_Warn(p_aout, fmt ", OSStatus: %d", (int) err)
+
struct aout_sys_common
{
/* The following is owned by common.c (initialized from ca_Init, cleaned
More information about the vlc-commits
mailing list