Mercurial > hg > xmms-sid
diff src/xmms-sid.c @ 748:d9d769b5dbe2
Remove oversampling support.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 05 Nov 2012 17:51:08 +0200 |
parents | fb218dbc90cd |
children | 55eea3fa8868 |
line wrap: on
line diff
--- a/src/xmms-sid.c Mon Nov 05 17:26:43 2012 +0200 +++ b/src/xmms-sid.c Mon Nov 05 17:51:08 2012 +0200 @@ -105,20 +105,10 @@ if (xs_cfg.audioFrequency < 8000) xs_cfg.audioFrequency = 8000; - if (xs_cfg.oversampleFactor < XS_MIN_OVERSAMPLE) - xs_cfg.oversampleFactor = XS_MIN_OVERSAMPLE; - else if (xs_cfg.oversampleFactor > XS_MAX_OVERSAMPLE) - xs_cfg.oversampleFactor = XS_MAX_OVERSAMPLE; - - if (xs_cfg.audioChannels != XS_CHN_MONO) - xs_cfg.oversampleEnable = FALSE; - xs_status.audioFrequency = xs_cfg.audioFrequency; xs_status.audioBitsPerSample = xs_cfg.audioBitsPerSample; xs_status.audioChannels = xs_cfg.audioChannels; xs_status.audioFormat = -1; - xs_status.oversampleEnable = xs_cfg.oversampleEnable; - xs_status.oversampleFactor = xs_cfg.oversampleFactor; /* Try to initialize emulator engine */ xs_init_emu_engine(&xs_cfg.playerEngine, &xs_status); @@ -127,7 +117,6 @@ xs_cfg.audioFrequency = xs_status.audioFrequency; xs_cfg.audioBitsPerSample = xs_status.audioBitsPerSample; xs_cfg.audioChannels = xs_status.audioChannels; - xs_cfg.oversampleEnable = xs_status.oversampleEnable; XS_MUTEX_UNLOCK(xs_status); XS_MUTEX_UNLOCK(xs_cfg); @@ -243,7 +232,7 @@ xs_tuneinfo_t *myTune; gboolean audioOpen = FALSE, doPlay = FALSE, isFound = FALSE; gint audioGot, songLength, i; - gchar *audioBuffer = NULL, *oversampleBuffer = NULL, *tmpTitle; + gchar *audioBuffer = NULL, *tmpTitle; (void) argPointer; @@ -263,14 +252,6 @@ goto xs_err_exit; } - if (myStatus.oversampleEnable) { - oversampleBuffer = (gchar *) g_malloc(XS_AUDIOBUF_SIZE * myStatus.oversampleFactor); - if (oversampleBuffer == NULL) { - xs_error("Couldn't allocate memory for audio oversampling buffer!\n"); - goto xs_err_exit; - } - } - /* * Main player loop: while not stopped, loop here - play subtunes */ @@ -387,29 +368,8 @@ * Play the subtune */ while (xs_status.isPlaying && myStatus.isPlaying && (xs_status.currSong == myStatus.currSong)) { - /* Render audio data */ - if (myStatus.oversampleEnable) { - /* Perform oversampled rendering */ - audioGot = myStatus.sidPlayer->plrFillBuffer( - &myStatus, - oversampleBuffer, - (XS_AUDIOBUF_SIZE * myStatus.oversampleFactor)); - - audioGot /= myStatus.oversampleFactor; - - /* Execute rate-conversion with filtering */ - if (xs_filter_rateconv(audioBuffer, oversampleBuffer, - myStatus.audioFormat, myStatus.oversampleFactor, audioGot) < 0) { - xs_error("Oversampling rate-conversion pass failed.\n"); - XS_MUTEX_LOCK(xs_status); - xs_status.isError = TRUE; - XS_MUTEX_UNLOCK(xs_status); - goto xs_err_exit; - } - } else { - audioGot = myStatus.sidPlayer->plrFillBuffer( - &myStatus, audioBuffer, XS_AUDIOBUF_SIZE); - } + audioGot = myStatus.sidPlayer->plrFillBuffer( + &myStatus, audioBuffer, XS_AUDIOBUF_SIZE); /* I <3 visualice/haujobb */ xs_plugin_ip.add_vis_pcm( @@ -471,7 +431,6 @@ } g_free(audioBuffer); - g_free(oversampleBuffer); /* Set playing status to false (stopped), thus when * XMMS next calls xs_get_time(), it can return appropriate