aiortc
? aiortc
es una biblioteca para comunicación web en tiempo real (WebRTC) y comunicación de objetos en tiempo real (ORTC) en Python. Está construido sobre asyncio
, el marco de E/S asíncrono estándar de Python.
La API sigue de cerca su contraparte de Javascript mientras usa construcciones pitónicas:
las promesas son reemplazadas por corrutinas
los eventos se emiten usando pyee.EventEmitter
Para obtener más información sobre aiortc
, lea la documentación.
aiortc
?Las principales implementaciones de WebRTC y ORTC están integradas en los navegadores web o vienen en forma de código nativo. Si bien se han sometido a pruebas exhaustivas, sus componentes internos son complejos y no proporcionan enlaces de Python. Además, están estrechamente acoplados a una pila de medios, lo que dificulta la conexión de algoritmos de procesamiento de audio o vídeo.
Por el contrario, la implementación aiortc
es bastante sencilla y legible. Como tal, es un buen punto de partida para los programadores que deseen comprender cómo funciona WebRTC o modificar sus componentes internos. También es fácil crear productos innovadores aprovechando los amplios módulos disponibles en el ecosistema Python. Por ejemplo, puede crear un servidor completo que maneje canales de datos y señalización o aplicar algoritmos de visión por computadora a cuadros de video usando OpenCV.
Además, se ha invertido mucho esfuerzo en escribir un extenso conjunto de pruebas para el código aiortc
para garantizar la mejor calidad del código.
aiortc
le permite intercambiar canales de audio, vídeo y datos y la interoperabilidad se prueba periódicamente con Chrome y Firefox. Estas son algunas de sus características:
Generación/análisis de SDP
Establecimiento de conectividad interactiva, con soporte half-trickle y mDNS
Generación de claves y certificados DTLS
Protocolo de enlace DTLS, cifrado/descifrado (para SCTP)
Clave, cifrado y descifrado SRTP para RTP y RTCP
Implementación SCTP de Python puro
Canales de datos
Envío y recepción de audio (Opus/PCMU/PCMA)
Envío y recepción de vídeo (VP8/H.264)
Combinación de canales de audio/vídeo/datos
Informes RTCP, incluido NACK/PLI para recuperarse de la pérdida de paquetes
La forma más sencilla de instalar aiortc
es ejecutar:
instalación de pip aiortc
Si no hay ruedas para su sistema o si desea compilar aiortc desde el código fuente, necesitará un par de bibliotecas instaladas en su sistema:
Opus para codificación/decodificación de audio
LibVPX para codificación/decodificación de vídeo
En Debian/Ubuntu ejecute:
apto para instalar libopus-dev libvpx-dev
En OS X ejecute:
instalar cerveza opus libvpx
aiortc
se publica bajo la licencia BSD.