mac-capture: Separate audio shudown code

This allows the code to be used elsewhere as needed.
This commit is contained in:
jp9000
2015-02-20 21:49:51 -08:00
parent c69b70b847
commit 8bc2288dfe

View File

@@ -643,20 +643,26 @@ static const char *coreaudio_output_getname(void)
return TEXT_AUDIO_OUTPUT;
}
static void coreaudio_shutdown(struct coreaudio_data *ca)
{
if (ca->reconnecting) {
os_event_signal(ca->exit_event);
pthread_join(ca->reconnect_thread, NULL);
os_event_reset(ca->exit_event);
}
coreaudio_uninit(ca);
if (ca->unit)
AudioComponentInstanceDispose(ca->unit);
}
static void coreaudio_destroy(void *data)
{
struct coreaudio_data *ca = data;
if (ca) {
if (ca->reconnecting) {
os_event_signal(ca->exit_event);
pthread_join(ca->reconnect_thread, NULL);
}
coreaudio_uninit(ca);
if (ca->unit)
AudioComponentInstanceDispose(ca->unit);
coreaudio_shutdown(ca);
os_event_destroy(ca->exit_event);
bfree(ca->device_name);