git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@6456
d7cf8633-e32d-0410-b094-
e92efae38249
-
- Con_DPrint ("SndSys_Recover: recovered successfully\n");
written = snd_pcm_writei (pcm_handle, buffer, nbframes);
if (written < 0)
{
written = snd_pcm_writei (pcm_handle, buffer, nbframes);
if (written < 0)
{
- Con_Printf ("SndSys_Write: audio write returned %ld (%s)!\n",
- written, snd_strerror (written));
+ if (developer.integer >= 100)
+ Con_Printf ("SndSys_Write: audio write returned %ld (%s)!\n",
+ written, snd_strerror (written));
if (SndSys_Recover (written))
{
written = snd_pcm_writei (pcm_handle, buffer, nbframes);
if (written < 0)
if (SndSys_Recover (written))
{
written = snd_pcm_writei (pcm_handle, buffer, nbframes);
if (written < 0)
- Con_Printf ("SndSys_Write: audio write failed again (error %ld: %s)!\n",
- written, snd_strerror (written));
+ Con_DPrintf ("SndSys_Write: audio write failed again (error %ld: %s)!\n",
+ written, snd_strerror (written));
factor = snd_renderbuffer->format.width * snd_renderbuffer->format.channels;
limit = snd_renderbuffer->maxframes - startoffset;
nbframes = snd_renderbuffer->endframe - snd_renderbuffer->startframe;
factor = snd_renderbuffer->format.width * snd_renderbuffer->format.channels;
limit = snd_renderbuffer->maxframes - startoffset;
nbframes = snd_renderbuffer->endframe - snd_renderbuffer->startframe;
-//Con_DPrintf(">> SndSys_Submit: startframe=%u, endframe=%u (%u frames), maxframes=%u, startoffset=%u\n",
-// snd_renderbuffer->startframe, snd_renderbuffer->endframe,
-// nbframes, snd_renderbuffer->maxframes, startoffset);
-//Con_DPrintf(">> SndSys_Submit: 2 phases-submit\n");
written = SndSys_Write (&snd_renderbuffer->ring[startoffset * factor], limit);
if (written < 0)
return;
snd_renderbuffer->startframe += written;
expected_delay += written;
written = SndSys_Write (&snd_renderbuffer->ring[startoffset * factor], limit);
if (written < 0)
return;
snd_renderbuffer->startframe += written;
expected_delay += written;
-//Con_DPrintf(">> SndSys_Submit: %ld/%ld frames written\n", written, limit);
if ((snd_pcm_uframes_t)written != limit)
return;
nbframes -= limit;
startoffset = 0;
}
if ((snd_pcm_uframes_t)written != limit)
return;
nbframes -= limit;
startoffset = 0;
}
-//else Con_DPrintf(">> SndSys_Submit: 1 phase-submit\n");
written = SndSys_Write (&snd_renderbuffer->ring[startoffset * factor], nbframes);
if (written < 0)
return;
written = SndSys_Write (&snd_renderbuffer->ring[startoffset * factor], nbframes);
if (written < 0)
return;
-//Con_DPrintf(">> SndSys_Submit: %ld/%ld frames written\n", written, nbframes);
snd_renderbuffer->startframe += written;
expected_delay += written;
}
snd_renderbuffer->startframe += written;
expected_delay += written;
}
err = snd_pcm_delay (pcm_handle, &delay);
if (err != 0)
{
err = snd_pcm_delay (pcm_handle, &delay);
if (err != 0)
{
- Con_DPrintf ("SndSys_GetSoundTime: can't get playback delay (%s)\n",
- snd_strerror (err));
+ if (developer.integer >= 100)
+ Con_DPrintf ("SndSys_GetSoundTime: can't get playback delay (%s)\n",
+ snd_strerror (err));
if (! SndSys_Recover (err))
return 0;
if (! SndSys_Recover (err))
return 0;
-//Con_DPrintf(">> SndSys_GetSoundTime: expected_delay=%ld, delay=%ld\n",
-// expected_delay, delay);
if (expected_delay < delay)
{
if (expected_delay < delay)
{
- Con_Printf ("SndSys_GetSoundTime: expected_delay(%ld) < delay(%ld)\n",
- expected_delay, delay);
+ Con_DPrintf ("SndSys_GetSoundTime: expected_delay(%ld) < delay(%ld)\n",
+ expected_delay, delay);
if (snd_renderbuffer == NULL || sfx == NULL || nosound.integer)
return -1;
if (snd_renderbuffer == NULL || sfx == NULL || nosound.integer)
return -1;
- if (!sfx->fetcher)
- {
- // this is very annoying when it was precached but the file could not be loaded
- //Con_DPrintf ("S_StartSound: \"%s\" hasn't been precached\n", sfx->name);
+
+ if (sfx->fetcher == NULL)
if (entnum && entnum >= cl.max_entities)
CL_ExpandEntities(entnum);
if (entnum && entnum >= cl.max_entities)
CL_ExpandEntities(entnum);
}
else
Con_Print("SndSys_Init: fcntl(F_GETFL) failed!\n");
}
else
Con_Print("SndSys_Init: fcntl(F_GETFL) failed!\n");
+
+ ioctl(audio_fd, SNDCTL_DSP_RESET, NULL);
// Set the fragment size (up to "NB_FRAGMENTS" fragments of "fragmentsize" bytes)
fragmentsize = requested->speed * requested->channels * requested->width / 5;
// Set the fragment size (up to "NB_FRAGMENTS" fragments of "fragmentsize" bytes)
fragmentsize = requested->speed * requested->channels * requested->width / 5;
// Stop the sound and close the device
if (audio_fd >= 0)
{
// Stop the sound and close the device
if (audio_fd >= 0)
{
- ioctl(audio_fd, SNDCTL_DSP_RESET, 0);
+ ioctl(audio_fd, SNDCTL_DSP_RESET, NULL);
close(audio_fd);
audio_fd = -1;
}
close(audio_fd);
audio_fd = -1;
}
snd_renderbuffer->startframe += FrameCount;
snd_renderbuffer->startframe += FrameCount;
- if (FrameCount < RequestedFrames)
+ if (FrameCount < RequestedFrames && developer.integer >= 100)
Con_DPrintf("SDL sound: %u sample frames missing\n", RequestedFrames - FrameCount);
sdlaudiotime += RequestedFrames;
Con_DPrintf("SDL sound: %u sample frames missing\n", RequestedFrames - FrameCount);
sdlaudiotime += RequestedFrames;