[commit] r10886 - freeswitch/trunk/src/mod/formats/mod_sndfile
Author: brian Date: Fri Dec 19 16:39:59 2008 New Revision: 10886 Log: mod_sndfile can now record 16bit for the various rates including 48kHz Modified: freeswitch/trunk/src/mod/formats/mod_sndfile/mod_sndfile.c Modified: freeswitch/trunk/src/mod/formats/mod_sndfile/mod_sndfile.c ============================================================================== --- freeswitch/trunk/src/mod/formats/mod_sndfile/mod_sndfile.c (original) +++ freeswitch/trunk/src/mod/formats/mod_sndfile/mod_sndfile.c Fri Dec 19 16:39:59 2008 @@ -95,12 +95,9 @@ context->sfinfo.channels = handle->channels; context->sfinfo.samplerate = handle->samplerate; - if (handle->samplerate == 8000 || handle->samplerate == 16000) { + if (handle->samplerate == 8000 || handle->samplerate == 16000 || + handle->samplerate == 24000 || handle->samplerate == 32000 || handle->samplerate == 48000) { context->sfinfo.format |= SF_FORMAT_PCM_16; - } else if (handle->samplerate == 24000) { - context->sfinfo.format |= SF_FORMAT_PCM_24; - } else if (handle->samplerate == 32000) { - context->sfinfo.format |= SF_FORMAT_PCM_32; } sf_command(context->handle, SFC_FILE_TRUNCATE, &frames, sizeof(frames)); @@ -119,13 +116,17 @@ context->sfinfo.channels = 1; context->sfinfo.samplerate = 16000; } else if (!strcmp(ext, "r24")) { - context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_PCM_24; + context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_PCM_16; context->sfinfo.channels = 1; context->sfinfo.samplerate = 24000; } else if (!strcmp(ext, "r32")) { - context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_PCM_32; + context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_PCM_16; context->sfinfo.channels = 1; context->sfinfo.samplerate = 32000; + } else if (!strcmp(ext, "r48")) { + context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_PCM_16; + context->sfinfo.channels = 1; + context->sfinfo.samplerate = 48000; } else if (!strcmp(ext, "gsm")) { context->sfinfo.format = SF_FORMAT_RAW | SF_FORMAT_GSM610; context->sfinfo.channels = 1;
participants (1)
-
FreeSWITCH SVN