diff options
Diffstat (limited to '')
-rw-r--r-- | src/audioOutput.c | 23 | ||||
-rw-r--r-- | src/output_api.h | 34 |
2 files changed, 23 insertions, 34 deletions
diff --git a/src/audioOutput.c b/src/audioOutput.c index 0a3e9abd8..6a8162cec 100644 --- a/src/audioOutput.c +++ b/src/audioOutput.c @@ -67,10 +67,10 @@ int initAudioOutput(struct audio_output *ao, ConfigParam * param) WARNING("Attempt to detect audio output device\n"); audio_output_plugins_for_each(plugin, i) { - if (plugin->testDefaultDeviceFunc) { + if (plugin->test_default_device) { WARNING("Attempting to detect a %s audio " "device\n", plugin->name); - if (plugin->testDefaultDeviceFunc() == 0) { + if (plugin->test_default_device() == 0) { WARNING("Successfully detected a %s " "audio device\n", plugin->name); break; @@ -110,7 +110,7 @@ int initAudioOutput(struct audio_output *ao, ConfigParam * param) copyAudioFormat(&ao->outAudioFormat, &ao->reqAudioFormat); } - if (plugin->initDriverFunc(ao, param) != 0) + if (plugin->init(ao, param) != 0) return 0; return 1; @@ -139,7 +139,7 @@ int openAudioOutput(struct audio_output *audioOutput, } if (!audioOutput->open) - ret = audioOutput->plugin->openDeviceFunc(audioOutput); + ret = audioOutput->plugin->open(audioOutput); audioOutput->sameInAndOutFormats = !cmpAudioFormat(&audioOutput->inAudioFormat, @@ -183,7 +183,7 @@ int playAudioOutput(struct audio_output *audioOutput, convertAudioFormat(audioOutput, &playChunk, &size); } - ret = audioOutput->plugin->playFunc(audioOutput, playChunk, size); + ret = audioOutput->plugin->play(audioOutput, playChunk, size); return ret; } @@ -191,20 +191,20 @@ int playAudioOutput(struct audio_output *audioOutput, void dropBufferedAudioOutput(struct audio_output *audioOutput) { if (audioOutput->open) - audioOutput->plugin->dropBufferedAudioFunc(audioOutput); + audioOutput->plugin->cancel(audioOutput); } void closeAudioOutput(struct audio_output *audioOutput) { if (audioOutput->open) - audioOutput->plugin->closeDeviceFunc(audioOutput); + audioOutput->plugin->close(audioOutput); } void finishAudioOutput(struct audio_output *audioOutput) { closeAudioOutput(audioOutput); - if (audioOutput->plugin->finishDriverFunc) - audioOutput->plugin->finishDriverFunc(audioOutput); + if (audioOutput->plugin->finish) + audioOutput->plugin->finish(audioOutput); if (audioOutput->convBuffer) free(audioOutput->convBuffer); } @@ -212,9 +212,8 @@ void finishAudioOutput(struct audio_output *audioOutput) void sendMetadataToAudioOutput(struct audio_output *audioOutput, const struct tag *tag) { - if (!audioOutput->plugin->sendMetdataFunc) - return; - audioOutput->plugin->sendMetdataFunc(audioOutput, tag); + if (audioOutput->plugin->send_tag) + audioOutput->plugin->send_tag(audioOutput, tag); } void printAllOutputPluginTypes(FILE * fp) diff --git a/src/output_api.h b/src/output_api.h index ca4c8c5a1..df1fb7e4c 100644 --- a/src/output_api.h +++ b/src/output_api.h @@ -32,36 +32,26 @@ struct audio_output; -typedef int (*AudioOutputTestDefaultDeviceFunc) (void); - -typedef int (*AudioOutputInitDriverFunc) (struct audio_output *audioOutput, - ConfigParam * param); +struct audio_output_plugin { + const char *name; -typedef void (*AudioOutputFinishDriverFunc) (struct audio_output *audioOutput); + int (*test_default_device)(void); -typedef int (*AudioOutputOpenDeviceFunc) (struct audio_output *audioOutput); + int (*init)(struct audio_output *ao, ConfigParam *param); -typedef int (*AudioOutputPlayFunc) (struct audio_output *audioOutput, - const char *playChunk, size_t size); + void (*finish)(struct audio_output *ao); -typedef void (*AudioOutputDropBufferedAudioFunc) (struct audio_output *audioOutput); + int (*open)(struct audio_output *ao); -typedef void (*AudioOutputCloseDeviceFunc) (struct audio_output *audioOutput); + int (*play)(struct audio_output *ao, + const char *playChunk, size_t size); -typedef void (*AudioOutputSendMetadataFunc) (struct audio_output *audioOutput, - const struct tag *tag); + void (*cancel)(struct audio_output *ao); -struct audio_output_plugin { - const char *name; + void (*close)(struct audio_output *ao); - AudioOutputTestDefaultDeviceFunc testDefaultDeviceFunc; - AudioOutputInitDriverFunc initDriverFunc; - AudioOutputFinishDriverFunc finishDriverFunc; - AudioOutputOpenDeviceFunc openDeviceFunc; - AudioOutputPlayFunc playFunc; - AudioOutputDropBufferedAudioFunc dropBufferedAudioFunc; - AudioOutputCloseDeviceFunc closeDeviceFunc; - AudioOutputSendMetadataFunc sendMetdataFunc; + void (*send_tag)(struct audio_output *audioOutput, + const struct tag *tag); }; struct audio_output { |