From fe036a2caa5fee28dce9babdab215d3bdb2b101d Mon Sep 17 00:00:00 2001 From: waker Date: Sat, 21 May 2011 20:22:13 +0200 Subject: reset streamer after sound reinit, to prevent misaligned output on sampleformat changes --- main.c | 1 + plugins/alsa/alsa.c | 23 ----------------------- 2 files changed, 1 insertion(+), 23 deletions(-) diff --git a/main.c b/main.c index b99f847f..2a3dae55 100644 --- a/main.c +++ b/main.c @@ -421,6 +421,7 @@ player_mainloop (void) { switch (msg) { case DB_EV_REINIT_SOUND: plug_reinit_sound (); + streamer_reset (1); conf_save (); break; case DB_EV_TERMINATE: diff --git a/plugins/alsa/alsa.c b/plugins/alsa/alsa.c index 25573f5b..c789e9cb 100644 --- a/plugins/alsa/alsa.c +++ b/plugins/alsa/alsa.c @@ -55,32 +55,9 @@ static snd_pcm_uframes_t req_period_size; static int conf_alsa_resample = 1; static char conf_alsa_soundcard[100] = "default"; - -//static snd_async_handler_t *pcm_callback; - static int palsa_callback (char *stream, int len); -#if 0 -static void -alsa_callback (snd_async_handler_t *pcm_callback) { - snd_pcm_t *pcm_handle = snd_async_handler_get_pcm(pcm_callback); - snd_pcm_sframes_t avail; - int err; - printf ("alsa_callback\n"); - - avail = snd_pcm_avail_update(pcm_handle); - while (avail >= period_size) { - char buf[avail * 4]; - palsa_callback (buf, avail * 4); - if ((err = snd_pcm_writei (pcm_handle, buf, period_size)) < 0) { - perror ("snd_pcm_writei"); - } - avail = snd_pcm_avail_update(pcm_handle); - } -} -#endif - static void palsa_thread (void *context); -- cgit v1.2.3