Implementación en Go de la capa de ejecución de Ethereum, que funciona como nodo full o archive y ofrece acceso JSON-RPC y herramientas para desarrolladores.
pion/webrtc
Implementación pura en Go de la API WebRTC para crear conexiones P2P de audio, video y datos en tiempo real.
- Estrellas
- 16,851
- Forks
- 1,912
- Issues abiertos
- 107
- Último commit
- hace 9 horas
¿Qué es?
Pion WebRTC es una biblioteca de Go que implementa la API WebRTC y permite que los programas en Go establezcan conexiones P2P para transmitir audio, video y canales de datos arbitrarios. Incluye la API PeerConnection, con renegociación, DataChannels y compatibilidad con SDP Plan-B y Unified Plan, además de un agente ICE completo y STUN y TURN sobre UDP, TCP, DTLS y TLS.
La biblioteca está escrita íntegramente en Go, sin Cgo, por lo que se puede compilar de forma cruzada para Windows, macOS, Linux, FreeBSD, iOS, Android, WebAssembly y otras arquitecturas. La compatibilidad con medios incluye acceso directo a RTP/RTCP, packetizers para Opus, PCM, H264, VP8 y VP9, y lectores y escritores para IVF, Ogg y Matroska. También ofrece funciones como simulcast, SVC, NACK, feedback de control de congestión y estimación de ancho de banda.
El proyecto usa la licencia MIT y está pensado para desarrolladores que necesitan WebRTC en el servidor o en dispositivos integrados, no solo en navegadores.
Funciones clave
- 01API PeerConnection completa, con DataChannels, renegociación y compatibilidad con Unified Plan
- 02Agente ICE completo con STUN y TURN sobre UDP, TCP, DTLS y TLS
- 03Go puro, sin Cgo, con compilación para Windows, macOS, Linux, iOS, Android y WASM
- 04Acceso directo a RTP/RTCP y packetizers para Opus, H264, VP8 y VP9
- 05Compatibilidad con IVF, Ogg y Matroska para enviar y guardar medios
- 06Simulcast, SVC, NACK y estimación de ancho de banda
Casos de uso
- Transmitir en vivo desde una webcam conectada a un dispositivo integrado hasta un navegador
- Enviar archivos de video en tiempo real a varios clientes de navegador
- Crear aplicaciones de procesamiento de medios o videoconferencia con WebRTC en el servidor
- Transferir datos de forma segura entre dos servidores mediante canales de datos de WebRTC
Inicio rápido
- 1
Activa Go Modules configurando la variable de entorno
export GO111MODULE=on - 2
Importa la biblioteca en tu proyecto de Go e incluye la ruta /v4
- 3
Explora las aplicaciones de ejemplo para conocer los usos más comunes
Antes de usarlo
- Go Modules es obligatorio y, en la versión actual, la ruta de importación debe incluir /v4.
- La versión 4 incluye cambios incompatibles, por lo que quienes usen v3 deben consultar las etiquetas de la versión anterior.
- La implementación de getUserMedia requiere Cgo.
Temas
Preguntas frecuentes
- ¿Qué es webrtc?
- Implementación pura en Go de la API WebRTC para crear conexiones P2P de audio, video y datos en tiempo real. Pion WebRTC es una biblioteca de Go que implementa la API WebRTC y permite que los programas en Go establezcan conexiones P2P para transmitir audio, video y canales de datos arbitrarios. Incluye la API PeerConnection, con renegociación, DataChannels y compatibilidad con SDP Plan-B y Unified Plan, además de un agente ICE completo y STUN y TURN sobre UDP, TCP, DTLS y TLS.
- ¿webrtc es gratuito? ¿Qué licencia tiene?
- webrtc es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿webrtc sigue mantenido?
- Mantenimiento activo. El último commit de webrtc fue el 21 oct 2026.
- ¿Para qué puedo usar webrtc?
- Transmitir en vivo desde una webcam conectada a un dispositivo integrado hasta un navegador Enviar archivos de video en tiempo real a varios clientes de navegador Crear aplicaciones de procesamiento de medios o videoconferencia con WebRTC en el servidor Transferir datos de forma segura entre dos servidores mediante canales de datos de WebRTC
- ¿Cómo se instala webrtc?
- Activa Go Modules configurando la variable de entorno: export GO111MODULE=on Importa la biblioteca en tu proyecto de Go e incluye la ruta /v4 Explora las aplicaciones de ejemplo para conocer los usos más comunes
- ¿Dónde consigo webrtc?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/pion/webrtc
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Servidor SFU WebRTC de código abierto en Go para voz, video y datos en tiempo real, que conecta a personas y agentes de IA.
CMS de video y contenido multimedia autohospedado y completo, creado con Django y React para gestionar portales de intercambio de videos.
Plantilla de Clean Architecture para servicios Go que muestra cómo organizar el código con transportes REST, gRPC, AMQP RPC y NATS RPC.
GoWA es una API REST de WhatsApp autoalojada, escrita en Go, compatible con varias cuentas, webhooks, MCP e integración con Chatwoot.
Un editor de texto moderno y fácil de usar para la terminal, distribuido como un único binario estático sin dependencias y concebido como sucesor de nano.