SlideShare una empresa de Scribd logo
1 de 30
Negociación de codecs en
                 Asterisk
                               Moisés Silva
            Ingeniero / Manager de Software
                        moy@sangoma.com
Agenda
• Codecs de Audio

• Transcoding

• Negociación de Codecs

• Transcoding con Sangoma



         © 2011 Sangoma
                            4/11/2011   2
         Technologies
Codecs de Audio



© 2011 Sangoma Confidential            4/11/2011   3
Codecs de Audio
• Los codecs codifican y decodifican la voz para su transmisión
  por una medio digital
   – Algoritmo matemático (la salsa secreta)
   – Bit rate (cuantos bits en un segundo)
   – Sampling rate (cuantas muestras en en un segundo)
   – Paquetización (cuantos bytes por cada paquete)
• El algoritmo es la parte central del codec
• El bit rate define el ancho de banda requerido
• El “sampling rate” define la calidad (al menos parcialmente)
• La paquetización afecta la latencia y un ancho de banda extra


             © 2011 Sangoma
                                                        4/11/2011   4
             Technologies
Codecs de Audio
•   G.711 (PCMU/PCMA, Ulaw/Alaw) – Banda angosta (Narrowband)
     – 64kbps (Bit rate)
     – 8kHz (Sampling rate)
     – 10ms, 20ms, 30ms, 40ms … + (Paquetización)
•   G.722 – Banda ancha (Wideband)
     – 48kbps, 56kbps and 64kbps
     – 16kHz (IANA lo define a 8kHz debido a un error histórico en el
       RFC1890)
     – 10ms, 20ms, 30ms, 40ms … +
•   G.722.1 Annex C – Ultra banda ancha (Ultra-wideband)
     – 48kbps
     – 32kHz
     – 20ms, 40ms, 60ms

               © 2011 Sangoma
                                                              4/11/2011   5
               Technologies
Codecs de Audio
• Asterisk soporta una amplia gama de codecs
   – Narrowband (G.711, G.726, G.723.1, G.729AB, Speex …)
   – Wideband (G.722, Siren7, Speex …)
   – Ultra-wideband (Siren14)
• Asterisk requiere el sonido en formato L16 (linear 16 bits)para
  su manipulación (mezclar audio o alterarlo)
• Los “translators” codifican y decodifican hacia/de un codec a
  otro (tipicamente hacia/de L16)
• Asterisk puede hacer “pass-thru” de codecs que no conoce




             © 2011 Sangoma
                                                        4/11/2011   6
             Technologies
Codecs de Audio




      © 2011 Sangoma
                       4/11/2011   7
      Technologies
Transcoding


© 2011 Sangoma Confidential          4/11/2011   8
Transcoding

• Requerido cuando los nodos de comunicación no tienen
  un codec en común

• Asterisk debe permanecer en el “path” de audio

• Incrementa el uso del CPU (particularmente si se hace
  en software)

• Es requerido si necesitas:
   – Grabación de llamadas en distinto formato
   – Detección de tonos, PLC etc
   – Mezcla de audio (ie, Conferencing with MeetMe)
           © 2011 Sangoma
                                                   4/11/2011   9
           Technologies
Asterisk Transcoding
• Transcoding en una llamada de una sola pierna




            © 2011 Sangoma
                                                  4/11/2011   10
            Technologies
Asterisk Transcoding
• Transcoding de 2 piernas SIP




            © 2011 Sangoma
                                 4/11/2011   11
            Technologies
Pass-thru de Codecs
• Asterisk puede hacer pass-thru del audio en algunos casos




            © 2011 Sangoma
                                                     4/11/2011   12
            Technologies
Asterisk Translators
• Traductores de Asterisk para pasar de un codec a otro

• Los módulos en codecs/codec_xxxx.so registran uno o mas
  traductores al ser cargados

• Cada traductor es asignado un costo dependiendo de los
  recursos requeridos para hacer la traducción

• Asterisk encuentra caminos de traducción basandose en
  estas medidas



             © 2011 Sangoma
                                                      4/11/2011   13
             Technologies
Asterisk Translators




      © 2011 Sangoma
                       4/11/2011   14
      Technologies
Asterisk Translators




      © 2011 Sangoma
                       4/11/2011   15
      Technologies
Negociación de codecs


© 2011 Sangoma Confidential                4/11/2011   16
Negociación de Codecs

• Son las decisiones hechas para escoger un codec para
  cada llamada

• Dada una lista de codecs, escoger uno!

• Varios parámetros y condiciones del sistema determinan
  las preferencias

• Usualmente es preferible evitar el transcoding con una
  configuración apropiada para cada nodo (ej, teléfono
  SIP)


            © 2011 Sangoma
                                                  4/11/2011   17
            Technologies
Negociación de Codecs

• No uses PLC nativo si quieres evitar transcoding

• En sip.conf las lineas allow=xx and disallow=xx
  determinan tus preferencias globales o por nodo (peer,
  friend)

• [darth-vader]
  disallow=all
  allow=g729
  allow=gsm
  allow=alaw:20


            © 2011 Sangoma
                                                     4/11/2011   18
            Technologies
Negociación de Codecs

• Los parámetros de los codecs son verificados y
  guardados al recibir SDP

• Usa las variables SIP_CODEC, SIP_INBOUND_CODEC
  and SIP_OUTBOUND_CODEC, para un mayor control
  por llamada

• Usa sip.conf “preferred_codec_only” cuando quieras
  controlar con precisión el codec a usar por cada nodo

• Todos los codecs anunciados en el SDP son aceptables!


           © 2011 Sangoma
                                                   4/11/2011   19
           Technologies
Negociación de Codecs




       © 2011 Sangoma
                        4/11/2011   20
       Technologies
Formato de Audio

• Usa la propiedad “audionativeformat” para encontrar el
  formato nativo de un canal
   – ${CHANNEL(audionativeformat)}

• Asterisk cambia el formato de lectura y escritura “al
  vuelo” si un nuevo tipo de RTP es recibido
   – ${CHANNEL(audioreadformat)}
   – ${CHANNEL(audiowriteformat)}

• El primer paquete RTP determina el codec a usar
  cuando existen multiples opciones


            © 2011 Sangoma
                                                    4/11/2011   21
            Technologies
Modos de RTP

• El parámetro “directmedia” (el viejo “canreinvite”) causa
  que el RTP vaya directo entre los nodos enviando un
  nuevo INVITE o un UPDATE

• El nuevo parámetro “directrtpsetup” permite también que
  ambos nodos se comuniquen directo, pero no requiere
  un nuevo INVITE o un UPDATE

• En ambos modos Asterisk no será capaz de hacer
  transcoding



            © 2011 Sangoma
                                                    4/11/2011   22
            Technologies
Asterisk con “directmedia”




        © 2011 Sangoma
                             4/11/2011   23
        Technologies
Sangoma Transcoding


© 2011 Sangoma Confidential                  4/11/2011   24
Sangoma Transcoding

• El más amplio soporte de codecs en la industria

• Funcionamiento basado en Ethernet y RTP

• Interfaz SOAP para el control de transcoding

• Multiples servidores pueden usar una sola tarjeta

• Actualización de firmware en el campo de trabajo

• Licencias actualizables (desde 30 licenses hasta 400)

            © 2011 Sangoma
                                                      4/11/2011   25
            Technologies
Implementación con Servidor Único

                                  Asterisk
                                               Capa de traducción


                                               codec_sangoma

                                                 Cliente SOAP
                                                (libsngtc-node)
                                                                          Control via
                                                                       conexión SOAP/TCP


                                                Servidor SOAP
                          RTP
                        (Voice)                       API
                                                                        Tarjetas detectadas
                                                  (libsng-tc)            automaticamente


                                  Driver ethernet standard




       © 2011 Sangoma
                                                                    4/11/2011           26
       Technologies
Implementación Distribuida

                                                                                            Servidor de Transcoding
Servidor de Aplicación
                            Asterisk
                                           Capa de traducc.

                                           sangoma_codec

                                             Cliente SOAP
                                           (libsngtc-node)
                                                                    Control
                                    RTP                       (Conexión SOAP TCP)
                                   (Voz)
                                                                                                 Servidor SOAP

Servidor de Aplicación                                                                           API (libsng-tc)
                            Asterisk
                                           Capa de traducc.                         Driver ethernet standard

                                            codec module

                                             Cliente SOAP
                                           (libsngtc-node)
                                    RTP
                                   (Voz)


                         © 2011 Sangoma
                                                                                                 4/11/2011         27
                         Technologies
Capacidades

 Codec/P Time   10 ms         20 ms   30 ms   40 ms   50 ms
 G.729 AB       300           440     459     462     466
 G.722          290           388     410     388
 GSM                          480
 AMR 12.20                    200             226

 AMR 4.75                     258             281
 ILBC 15.2                    310             298
 ILBC 13.3                            273
 G.723 5.3                            200
 G.723 6.3                            200
 G.726 32       310           450     480     480     480
 PCM/U          310           390     420     440     460
 PCM/A          310           390     420     440     460


                 © 2011 Sangoma
                                                            4/11/2011   28
                 Technologies
Codecs en Asterisk por D-Series

•   G.729
•   G.726-32
•   G.722
•   G.722.1
•   G.723.1
•   iLBC
•   AMR

    – *más codecs son soportados por las tarjetas D-series
      pero no implementados o soportados por Asterisk


               © 2011 Sangoma
                                                   4/11/2011   29
               Technologies
Gracias!


© 2011 Sangoma Confidential       4/11/2011   30

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Introducción a VoIP
Introducción a VoIPIntroducción a VoIP
Introducción a VoIP
 
Ficha tecnica sena
Ficha tecnica senaFicha tecnica sena
Ficha tecnica sena
 
Conf basica switch-p1
Conf basica switch-p1Conf basica switch-p1
Conf basica switch-p1
 
Kevin lopez 10 5
Kevin lopez 10 5Kevin lopez 10 5
Kevin lopez 10 5
 
Nanoxx
NanoxxNanoxx
Nanoxx
 
Convegencia de Infraestructuras existentes hacia voip con Asterisk
Convegencia de Infraestructuras existentes hacia voip con AsteriskConvegencia de Infraestructuras existentes hacia voip con Asterisk
Convegencia de Infraestructuras existentes hacia voip con Asterisk
 
Arion
ArionArion
Arion
 
0. trabajo-de-investigación (1)
0. trabajo-de-investigación (1)0. trabajo-de-investigación (1)
0. trabajo-de-investigación (1)
 
Profibus DP
Profibus DPProfibus DP
Profibus DP
 
Introducción a la VoIP con Asterisk
Introducción a la VoIP con AsteriskIntroducción a la VoIP con Asterisk
Introducción a la VoIP con Asterisk
 
Live IP Studio
Live IP StudioLive IP Studio
Live IP Studio
 
Kathrein
KathreinKathrein
Kathrein
 
Conceptos basicos de redes
Conceptos basicos de redesConceptos basicos de redes
Conceptos basicos de redes
 
Hdtv[1]
Hdtv[1]Hdtv[1]
Hdtv[1]
 
Encoder
EncoderEncoder
Encoder
 
Charla Asterisk - UPCI
Charla Asterisk - UPCICharla Asterisk - UPCI
Charla Asterisk - UPCI
 
IP TV Studios.SMPTE 2022-6 vs AVB.
IP TV Studios.SMPTE 2022-6 vs AVB.IP TV Studios.SMPTE 2022-6 vs AVB.
IP TV Studios.SMPTE 2022-6 vs AVB.
 
Telf ip parte ii_el629_2012v01
Telf ip parte ii_el629_2012v01Telf ip parte ii_el629_2012v01
Telf ip parte ii_el629_2012v01
 
Eycos
EycosEycos
Eycos
 
Protocolos de enrutamiento
Protocolos de enrutamientoProtocolos de enrutamiento
Protocolos de enrutamiento
 

Similar a Negociacion de Codecs en Asterisk

Manejo de Medios en FreeSWITCH
Manejo de Medios en FreeSWITCHManejo de Medios en FreeSWITCH
Manejo de Medios en FreeSWITCHMoises Silva
 
Protocolos de voip de acuerdo al modelo osi
Protocolos de voip de acuerdo al modelo osiProtocolos de voip de acuerdo al modelo osi
Protocolos de voip de acuerdo al modelo osiSolxitlaly Guerra
 
Configuración básica asterisk sixbell - v2.0
Configuración básica asterisk   sixbell - v2.0Configuración básica asterisk   sixbell - v2.0
Configuración básica asterisk sixbell - v2.0Sebastian Cisternas Arenas
 
Fundamentos20de20telefonia20ip 131006193600-phpapp02
Fundamentos20de20telefonia20ip 131006193600-phpapp02Fundamentos20de20telefonia20ip 131006193600-phpapp02
Fundamentos20de20telefonia20ip 131006193600-phpapp02myconta
 
Protocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovadoProtocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovadoElvis Barahona Alvarado
 
4 tema de exposicion
4 tema de exposicion 4 tema de exposicion
4 tema de exposicion JuanNoa9
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internetmaxicarri
 
Protocolos en las capas del modelo osi
Protocolos en las capas del modelo osiProtocolos en las capas del modelo osi
Protocolos en las capas del modelo osimichrom
 
Protocolos en las capas del modelo osi
Protocolos en las capas del modelo osiProtocolos en las capas del modelo osi
Protocolos en las capas del modelo osimichrom
 
Protocolos de red clase 2
Protocolos de red   clase 2Protocolos de red   clase 2
Protocolos de red clase 2ing_jlcarrillo
 
Protocolosenlascapasdelmodeloosi
ProtocolosenlascapasdelmodeloosiProtocolosenlascapasdelmodeloosi
ProtocolosenlascapasdelmodeloosiLovable
 
Protocolosenlascapasdelmodeloosi
ProtocolosenlascapasdelmodeloosiProtocolosenlascapasdelmodeloosi
ProtocolosenlascapasdelmodeloosiLovable
 
4. Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT
4.	Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT 4.	Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT
4. Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT Saul Curitomay
 
Protocolos en las capas del modelo osi
Protocolos en las capas del modelo osiProtocolos en las capas del modelo osi
Protocolos en las capas del modelo osimichrom
 

Similar a Negociacion de Codecs en Asterisk (20)

Manejo de Medios en FreeSWITCH
Manejo de Medios en FreeSWITCHManejo de Medios en FreeSWITCH
Manejo de Medios en FreeSWITCH
 
Protocolos de voip de acuerdo al modelo osi
Protocolos de voip de acuerdo al modelo osiProtocolos de voip de acuerdo al modelo osi
Protocolos de voip de acuerdo al modelo osi
 
Configuración básica asterisk sixbell - v2.0
Configuración básica asterisk   sixbell - v2.0Configuración básica asterisk   sixbell - v2.0
Configuración básica asterisk sixbell - v2.0
 
Internet protocol-television
Internet protocol-televisionInternet protocol-television
Internet protocol-television
 
Fundamentos20de20telefonia20ip 131006193600-phpapp02
Fundamentos20de20telefonia20ip 131006193600-phpapp02Fundamentos20de20telefonia20ip 131006193600-phpapp02
Fundamentos20de20telefonia20ip 131006193600-phpapp02
 
Protocolos enrutamiento rip y rpt
Protocolos enrutamiento rip y rptProtocolos enrutamiento rip y rpt
Protocolos enrutamiento rip y rpt
 
Protocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovadoProtocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovado
 
4 tema de exposicion
4 tema de exposicion 4 tema de exposicion
4 tema de exposicion
 
Presentacion Voip
Presentacion VoipPresentacion Voip
Presentacion Voip
 
Protocolos de internet
Protocolos de internetProtocolos de internet
Protocolos de internet
 
Iba2008 Servicios
Iba2008 ServiciosIba2008 Servicios
Iba2008 Servicios
 
Protocolos en las capas del modelo osi
Protocolos en las capas del modelo osiProtocolos en las capas del modelo osi
Protocolos en las capas del modelo osi
 
Protocolos en las capas del modelo osi
Protocolos en las capas del modelo osiProtocolos en las capas del modelo osi
Protocolos en las capas del modelo osi
 
Protocolos de red clase 2
Protocolos de red   clase 2Protocolos de red   clase 2
Protocolos de red clase 2
 
Protocolosenlascapasdelmodeloosi
ProtocolosenlascapasdelmodeloosiProtocolosenlascapasdelmodeloosi
Protocolosenlascapasdelmodeloosi
 
Protocolosenlascapasdelmodeloosi
ProtocolosenlascapasdelmodeloosiProtocolosenlascapasdelmodeloosi
Protocolosenlascapasdelmodeloosi
 
4. Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT
4.	Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT 4.	Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT
4. Protocolos UNIX, NETWARE, MACINTOSH y MICROSOFT
 
Voip
VoipVoip
Voip
 
Protocolos en las capas del modelo osi
Protocolos en las capas del modelo osiProtocolos en las capas del modelo osi
Protocolos en las capas del modelo osi
 
Expo9
Expo9Expo9
Expo9
 

Más de Moises Silva

FreeSWITCH Monitoring
FreeSWITCH MonitoringFreeSWITCH Monitoring
FreeSWITCH MonitoringMoises Silva
 
Scaling FreeSWITCH Performance
Scaling FreeSWITCH PerformanceScaling FreeSWITCH Performance
Scaling FreeSWITCH PerformanceMoises Silva
 
Interfaces de Scripting para librerias en C
Interfaces de Scripting para librerias en CInterfaces de Scripting para librerias en C
Interfaces de Scripting para librerias en CMoises Silva
 
Vulnerabilidades en Aplicaciones Web PHP
Vulnerabilidades en Aplicaciones Web PHPVulnerabilidades en Aplicaciones Web PHP
Vulnerabilidades en Aplicaciones Web PHPMoises Silva
 
Implementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskImplementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskMoises Silva
 
SIP Testing with FreeSWITCH
SIP Testing with FreeSWITCHSIP Testing with FreeSWITCH
SIP Testing with FreeSWITCHMoises Silva
 
FreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk DevelopersFreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk DevelopersMoises Silva
 
FreeSWITCH: Asterisk con Esteroides
FreeSWITCH: Asterisk con EsteroidesFreeSWITCH: Asterisk con Esteroides
FreeSWITCH: Asterisk con EsteroidesMoises Silva
 
Sangoma en el Ecosistema Open Source
Sangoma en el Ecosistema Open SourceSangoma en el Ecosistema Open Source
Sangoma en el Ecosistema Open SourceMoises Silva
 
Media Handling in FreeSWITCH
Media Handling in FreeSWITCHMedia Handling in FreeSWITCH
Media Handling in FreeSWITCHMoises Silva
 
FreeTDM PRI Passive Recording
FreeTDM PRI Passive RecordingFreeTDM PRI Passive Recording
FreeTDM PRI Passive RecordingMoises Silva
 
Asterisk PRI Passive Call Recording
Asterisk PRI Passive Call RecordingAsterisk PRI Passive Call Recording
Asterisk PRI Passive Call RecordingMoises Silva
 
OpenR2 in Asterisk
OpenR2 in AsteriskOpenR2 in Asterisk
OpenR2 in AsteriskMoises Silva
 
FreeSWITCH as a Kickass SBC
FreeSWITCH as a Kickass SBCFreeSWITCH as a Kickass SBC
FreeSWITCH as a Kickass SBCMoises Silva
 

Más de Moises Silva (14)

FreeSWITCH Monitoring
FreeSWITCH MonitoringFreeSWITCH Monitoring
FreeSWITCH Monitoring
 
Scaling FreeSWITCH Performance
Scaling FreeSWITCH PerformanceScaling FreeSWITCH Performance
Scaling FreeSWITCH Performance
 
Interfaces de Scripting para librerias en C
Interfaces de Scripting para librerias en CInterfaces de Scripting para librerias en C
Interfaces de Scripting para librerias en C
 
Vulnerabilidades en Aplicaciones Web PHP
Vulnerabilidades en Aplicaciones Web PHPVulnerabilidades en Aplicaciones Web PHP
Vulnerabilidades en Aplicaciones Web PHP
 
Implementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in AsteriskImplementation Lessons using WebRTC in Asterisk
Implementation Lessons using WebRTC in Asterisk
 
SIP Testing with FreeSWITCH
SIP Testing with FreeSWITCHSIP Testing with FreeSWITCH
SIP Testing with FreeSWITCH
 
FreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk DevelopersFreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk Developers
 
FreeSWITCH: Asterisk con Esteroides
FreeSWITCH: Asterisk con EsteroidesFreeSWITCH: Asterisk con Esteroides
FreeSWITCH: Asterisk con Esteroides
 
Sangoma en el Ecosistema Open Source
Sangoma en el Ecosistema Open SourceSangoma en el Ecosistema Open Source
Sangoma en el Ecosistema Open Source
 
Media Handling in FreeSWITCH
Media Handling in FreeSWITCHMedia Handling in FreeSWITCH
Media Handling in FreeSWITCH
 
FreeTDM PRI Passive Recording
FreeTDM PRI Passive RecordingFreeTDM PRI Passive Recording
FreeTDM PRI Passive Recording
 
Asterisk PRI Passive Call Recording
Asterisk PRI Passive Call RecordingAsterisk PRI Passive Call Recording
Asterisk PRI Passive Call Recording
 
OpenR2 in Asterisk
OpenR2 in AsteriskOpenR2 in Asterisk
OpenR2 in Asterisk
 
FreeSWITCH as a Kickass SBC
FreeSWITCH as a Kickass SBCFreeSWITCH as a Kickass SBC
FreeSWITCH as a Kickass SBC
 

Último

ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 

Último (20)

ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 

Negociacion de Codecs en Asterisk

  • 1. Negociación de codecs en Asterisk Moisés Silva Ingeniero / Manager de Software moy@sangoma.com
  • 2. Agenda • Codecs de Audio • Transcoding • Negociación de Codecs • Transcoding con Sangoma © 2011 Sangoma 4/11/2011 2 Technologies
  • 3. Codecs de Audio © 2011 Sangoma Confidential 4/11/2011 3
  • 4. Codecs de Audio • Los codecs codifican y decodifican la voz para su transmisión por una medio digital – Algoritmo matemático (la salsa secreta) – Bit rate (cuantos bits en un segundo) – Sampling rate (cuantas muestras en en un segundo) – Paquetización (cuantos bytes por cada paquete) • El algoritmo es la parte central del codec • El bit rate define el ancho de banda requerido • El “sampling rate” define la calidad (al menos parcialmente) • La paquetización afecta la latencia y un ancho de banda extra © 2011 Sangoma 4/11/2011 4 Technologies
  • 5. Codecs de Audio • G.711 (PCMU/PCMA, Ulaw/Alaw) – Banda angosta (Narrowband) – 64kbps (Bit rate) – 8kHz (Sampling rate) – 10ms, 20ms, 30ms, 40ms … + (Paquetización) • G.722 – Banda ancha (Wideband) – 48kbps, 56kbps and 64kbps – 16kHz (IANA lo define a 8kHz debido a un error histórico en el RFC1890) – 10ms, 20ms, 30ms, 40ms … + • G.722.1 Annex C – Ultra banda ancha (Ultra-wideband) – 48kbps – 32kHz – 20ms, 40ms, 60ms © 2011 Sangoma 4/11/2011 5 Technologies
  • 6. Codecs de Audio • Asterisk soporta una amplia gama de codecs – Narrowband (G.711, G.726, G.723.1, G.729AB, Speex …) – Wideband (G.722, Siren7, Speex …) – Ultra-wideband (Siren14) • Asterisk requiere el sonido en formato L16 (linear 16 bits)para su manipulación (mezclar audio o alterarlo) • Los “translators” codifican y decodifican hacia/de un codec a otro (tipicamente hacia/de L16) • Asterisk puede hacer “pass-thru” de codecs que no conoce © 2011 Sangoma 4/11/2011 6 Technologies
  • 7. Codecs de Audio © 2011 Sangoma 4/11/2011 7 Technologies
  • 8. Transcoding © 2011 Sangoma Confidential 4/11/2011 8
  • 9. Transcoding • Requerido cuando los nodos de comunicación no tienen un codec en común • Asterisk debe permanecer en el “path” de audio • Incrementa el uso del CPU (particularmente si se hace en software) • Es requerido si necesitas: – Grabación de llamadas en distinto formato – Detección de tonos, PLC etc – Mezcla de audio (ie, Conferencing with MeetMe) © 2011 Sangoma 4/11/2011 9 Technologies
  • 10. Asterisk Transcoding • Transcoding en una llamada de una sola pierna © 2011 Sangoma 4/11/2011 10 Technologies
  • 11. Asterisk Transcoding • Transcoding de 2 piernas SIP © 2011 Sangoma 4/11/2011 11 Technologies
  • 12. Pass-thru de Codecs • Asterisk puede hacer pass-thru del audio en algunos casos © 2011 Sangoma 4/11/2011 12 Technologies
  • 13. Asterisk Translators • Traductores de Asterisk para pasar de un codec a otro • Los módulos en codecs/codec_xxxx.so registran uno o mas traductores al ser cargados • Cada traductor es asignado un costo dependiendo de los recursos requeridos para hacer la traducción • Asterisk encuentra caminos de traducción basandose en estas medidas © 2011 Sangoma 4/11/2011 13 Technologies
  • 14. Asterisk Translators © 2011 Sangoma 4/11/2011 14 Technologies
  • 15. Asterisk Translators © 2011 Sangoma 4/11/2011 15 Technologies
  • 16. Negociación de codecs © 2011 Sangoma Confidential 4/11/2011 16
  • 17. Negociación de Codecs • Son las decisiones hechas para escoger un codec para cada llamada • Dada una lista de codecs, escoger uno! • Varios parámetros y condiciones del sistema determinan las preferencias • Usualmente es preferible evitar el transcoding con una configuración apropiada para cada nodo (ej, teléfono SIP) © 2011 Sangoma 4/11/2011 17 Technologies
  • 18. Negociación de Codecs • No uses PLC nativo si quieres evitar transcoding • En sip.conf las lineas allow=xx and disallow=xx determinan tus preferencias globales o por nodo (peer, friend) • [darth-vader] disallow=all allow=g729 allow=gsm allow=alaw:20 © 2011 Sangoma 4/11/2011 18 Technologies
  • 19. Negociación de Codecs • Los parámetros de los codecs son verificados y guardados al recibir SDP • Usa las variables SIP_CODEC, SIP_INBOUND_CODEC and SIP_OUTBOUND_CODEC, para un mayor control por llamada • Usa sip.conf “preferred_codec_only” cuando quieras controlar con precisión el codec a usar por cada nodo • Todos los codecs anunciados en el SDP son aceptables! © 2011 Sangoma 4/11/2011 19 Technologies
  • 20. Negociación de Codecs © 2011 Sangoma 4/11/2011 20 Technologies
  • 21. Formato de Audio • Usa la propiedad “audionativeformat” para encontrar el formato nativo de un canal – ${CHANNEL(audionativeformat)} • Asterisk cambia el formato de lectura y escritura “al vuelo” si un nuevo tipo de RTP es recibido – ${CHANNEL(audioreadformat)} – ${CHANNEL(audiowriteformat)} • El primer paquete RTP determina el codec a usar cuando existen multiples opciones © 2011 Sangoma 4/11/2011 21 Technologies
  • 22. Modos de RTP • El parámetro “directmedia” (el viejo “canreinvite”) causa que el RTP vaya directo entre los nodos enviando un nuevo INVITE o un UPDATE • El nuevo parámetro “directrtpsetup” permite también que ambos nodos se comuniquen directo, pero no requiere un nuevo INVITE o un UPDATE • En ambos modos Asterisk no será capaz de hacer transcoding © 2011 Sangoma 4/11/2011 22 Technologies
  • 23. Asterisk con “directmedia” © 2011 Sangoma 4/11/2011 23 Technologies
  • 24. Sangoma Transcoding © 2011 Sangoma Confidential 4/11/2011 24
  • 25. Sangoma Transcoding • El más amplio soporte de codecs en la industria • Funcionamiento basado en Ethernet y RTP • Interfaz SOAP para el control de transcoding • Multiples servidores pueden usar una sola tarjeta • Actualización de firmware en el campo de trabajo • Licencias actualizables (desde 30 licenses hasta 400) © 2011 Sangoma 4/11/2011 25 Technologies
  • 26. Implementación con Servidor Único Asterisk Capa de traducción codec_sangoma Cliente SOAP (libsngtc-node) Control via conexión SOAP/TCP Servidor SOAP RTP (Voice) API Tarjetas detectadas (libsng-tc) automaticamente Driver ethernet standard © 2011 Sangoma 4/11/2011 26 Technologies
  • 27. Implementación Distribuida Servidor de Transcoding Servidor de Aplicación Asterisk Capa de traducc. sangoma_codec Cliente SOAP (libsngtc-node) Control RTP (Conexión SOAP TCP) (Voz) Servidor SOAP Servidor de Aplicación API (libsng-tc) Asterisk Capa de traducc. Driver ethernet standard codec module Cliente SOAP (libsngtc-node) RTP (Voz) © 2011 Sangoma 4/11/2011 27 Technologies
  • 28. Capacidades Codec/P Time 10 ms 20 ms 30 ms 40 ms 50 ms G.729 AB 300 440 459 462 466 G.722 290 388 410 388 GSM 480 AMR 12.20 200 226 AMR 4.75 258 281 ILBC 15.2 310 298 ILBC 13.3 273 G.723 5.3 200 G.723 6.3 200 G.726 32 310 450 480 480 480 PCM/U 310 390 420 440 460 PCM/A 310 390 420 440 460 © 2011 Sangoma 4/11/2011 28 Technologies
  • 29. Codecs en Asterisk por D-Series • G.729 • G.726-32 • G.722 • G.722.1 • G.723.1 • iLBC • AMR – *más codecs son soportados por las tarjetas D-series pero no implementados o soportados por Asterisk © 2011 Sangoma 4/11/2011 29 Technologies
  • 30. Gracias! © 2011 Sangoma Confidential 4/11/2011 30

Notas del editor

  1. 11/25/12
  2. 11/25/12
  3. 11/25/12
  4. 11/25/12
  5. 11/25/12
  6. 11/25/12
  7. 11/25/12
  8. 11/25/12
  9. 11/25/12
  10. 11/25/12
  11. 11/25/12
  12. 11/25/12
  13. 11/25/12
  14. 11/25/12
  15. 11/25/12
  16. 11/25/12
  17. 11/25/12
  18. 11/25/12
  19. 11/25/12
  20. 11/25/12
  21. 11/25/12
  22. 11/25/12
  23. 11/25/12
  24. 11/25/12
  25. 11/25/12
  26. 11/25/12
  27. 11/25/12
  28. 11/25/12
  29. 11/25/12
  30. 11/25/12