mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-03 19:28:53 +00:00
Update support for SILK format.
This commit adds scaffolding in order to support the SILK audio format on calls. Roughly, this is what is added: * Cached silk formats. One for each possible sample rate. * ast_codec structures for each possible sample rate. * RTP payload mappings for "SILK". In addition, this change overhauls the res_format_attr_silk file in the following ways: * The "samplerate" attribute is scrapped. That's native to the format. * There are far more checks to ensure that attributes have been allocated before attempting to reference them. * We do not SDP fmtp lines for attributes set to 0. These changes make way to be able to install a codec_silk module and have it actually work. It also should allow for passthrough silk calls in Asterisk. Change-Id: Ieeb39c95a9fecc9246bcfd3c45a6c9b51c59380e
This commit is contained in:
@@ -2690,6 +2690,11 @@ int ast_rtp_engine_init(void)
|
||||
/* Opus and VP8 */
|
||||
set_next_mime_type(ast_format_opus, 0, "audio", "opus", 48000);
|
||||
set_next_mime_type(ast_format_vp8, 0, "video", "VP8", 90000);
|
||||
/* DA SILK */
|
||||
set_next_mime_type(ast_format_silk8, 0, "audio", "silk", 8000);
|
||||
set_next_mime_type(ast_format_silk12, 0, "audio", "silk", 12000);
|
||||
set_next_mime_type(ast_format_silk16, 0, "audio", "silk", 16000);
|
||||
set_next_mime_type(ast_format_silk24, 0, "audio", "silk", 24000);
|
||||
|
||||
/* Define the static rtp payload mappings */
|
||||
add_static_payload(0, ast_format_ulaw, 0);
|
||||
@@ -2743,6 +2748,11 @@ int ast_rtp_engine_init(void)
|
||||
add_static_payload(100, ast_format_vp8, 0);
|
||||
add_static_payload(107, ast_format_opus, 0);
|
||||
|
||||
add_static_payload(108, ast_format_silk8, 0);
|
||||
add_static_payload(109, ast_format_silk12, 0);
|
||||
add_static_payload(113, ast_format_silk16, 0);
|
||||
add_static_payload(114, ast_format_silk24, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user