pulse: removed reconnect interval

The output thread automatically waits some time before retrying to
open the device.  Don't duplicate this check in the pulse plugin.
This commit is contained in:
Max Kellermann 2008-11-05 08:10:13 +01:00
parent 3defcef5f3
commit 5d6e96e986

View File

@ -23,7 +23,6 @@
#include <pulse/error.h> #include <pulse/error.h>
#define MPD_PULSE_NAME "mpd" #define MPD_PULSE_NAME "mpd"
#define CONN_ATTEMPT_INTERVAL 60
struct pulse_data { struct pulse_data {
struct audio_output *ao; struct audio_output *ao;
@ -31,8 +30,6 @@ struct pulse_data {
pa_simple *s; pa_simple *s;
char *server; char *server;
char *sink; char *sink;
int num_connect_attempts;
time_t last_connect_attempt;
}; };
static struct pulse_data *pulse_new_data(void) static struct pulse_data *pulse_new_data(void)
@ -44,8 +41,6 @@ static struct pulse_data *pulse_new_data(void)
ret->s = NULL; ret->s = NULL;
ret->server = NULL; ret->server = NULL;
ret->sink = NULL; ret->sink = NULL;
ret->num_connect_attempts = 0;
ret->last_connect_attempt = 0;
return ret; return ret;
} }
@ -114,18 +109,8 @@ pulse_open(void *data, struct audio_format *audio_format)
{ {
struct pulse_data *pd = data; struct pulse_data *pd = data;
pa_sample_spec ss; pa_sample_spec ss;
time_t t;
int error; int error;
t = time(NULL);
if (pd->num_connect_attempts != 0 &&
(t - pd->last_connect_attempt) < CONN_ATTEMPT_INTERVAL)
return false;
pd->num_connect_attempts++;
pd->last_connect_attempt = t;
/* MPD doesn't support the other pulseaudio sample formats, so /* MPD doesn't support the other pulseaudio sample formats, so
we just force MPD to send us everything as 16 bit */ we just force MPD to send us everything as 16 bit */
audio_format->bits = 16; audio_format->bits = 16;
@ -140,14 +125,12 @@ pulse_open(void *data, struct audio_format *audio_format)
&error); &error);
if (!pd->s) { if (!pd->s) {
g_warning("Cannot connect to server in PulseAudio output " g_warning("Cannot connect to server in PulseAudio output "
"\"%s\" (attempt %i): %s\n", "\"%s\": %s\n",
audio_output_get_name(pd->ao), audio_output_get_name(pd->ao),
pd->num_connect_attempts, pa_strerror(error)); pa_strerror(error));
return false; return false;
} }
pd->num_connect_attempts = 0;
g_debug("PulseAudio output \"%s\" connected and playing %i bit, %i " g_debug("PulseAudio output \"%s\" connected and playing %i bit, %i "
"channel audio at %i Hz\n", "channel audio at %i Hz\n",
audio_output_get_name(pd->ao), audio_output_get_name(pd->ao),