diff --git a/src/mod/codecs/mod_l16/mod_l16.c b/src/mod/codecs/mod_l16/mod_l16.c index 3c033c0b59..ca544e4a39 100644 --- a/src/mod/codecs/mod_l16/mod_l16.c +++ b/src/mod/codecs/mod_l16/mod_l16.c @@ -185,10 +185,49 @@ static const switch_codec_implementation_t raw_8k_30ms_implementation = { }; +static const switch_codec_implementation_t raw_8k_60ms_implementation = { + /*.ianacode */ 10, + /*.iananame */ "L16", + /*.samples_per_second */ 8000, + /*.bits_per_second */ 256000, + /*.microseconds_per_frame */ 60000, + /*.samples_per_frame */ 480, + /*.bytes_per_frame */ 960, + /*.encoded_bytes_per_frame */ 960, + /*.number_of_channels */ 1, + /*.pref_frames_per_packet */ 1, + /*.max_frames_per_packet */ 1, + /*.init */ switch_raw_init, + /*.encode */ switch_raw_encode, + /*.decode */ switch_raw_decode, + /*.destroy */ switch_raw_destroy, + /*.next */ &raw_8k_30ms_implementation +}; + +static const switch_codec_implementation_t raw_8k_120ms_implementation = { + /*.ianacode */ 10, + /*.iananame */ "L16", + /*.samples_per_second */ 8000, + /*.bits_per_second */ 512000, + /*.microseconds_per_frame */ 120000, + /*.samples_per_frame */ 960, + /*.bytes_per_frame */ 1920, + /*.encoded_bytes_per_frame */ 1920, + /*.number_of_channels */ 1, + /*.pref_frames_per_packet */ 1, + /*.max_frames_per_packet */ 1, + /*.init */ switch_raw_init, + /*.encode */ switch_raw_encode, + /*.decode */ switch_raw_decode, + /*.destroy */ switch_raw_destroy, + /*.next */ &raw_8k_60ms_implementation +}; + + static const switch_codec_interface_t raw_codec_interface = { /*.interface_name */ "raw signed linear (16 bit)", /*.codec_type */ SWITCH_CODEC_TYPE_AUDIO, - /*.implementations */ &raw_8k_30ms_implementation + /*.implementations */ &raw_8k_120ms_implementation }; static switch_loadable_module_interface_t raw_module_interface = { diff --git a/src/switch_core.c b/src/switch_core.c index 795b15fce6..4fce252747 100644 --- a/src/switch_core.c +++ b/src/switch_core.c @@ -370,7 +370,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_codec_init(switch_codec_t *codec, ch return SWITCH_STATUS_SUCCESS; } else { - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Codec %s Exists but not then desired implementation.\n", + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Codec %s Exists but not at the desired implementation.\n", codec_name); }