Sobre el proyecto

Douyu Multi-Room Same Screen es una herramienta de terceros para ver varias salas de Douyu simultáneamente en una sola página. Ofrece dos formas de uso: una versión web local y una extensión de Chrome, adecuada para escenarios como eventos con múltiples ángulos o ver a varios streamers al mismo tiempo. Funciones principales: - Diseño en pantalla dividida: admite de 1 a 5 columnas adaptativas o fijas, diseño de enfoque, ampliación de ventanas, reordenamiento por arrastre, pantalla completa y picture-in-picture; la barra de herramientas puede ocultarse automáticamente. - Control de reproducción independiente: cada sala puede ajustar individualmente el volumen, silenciar, cambiar la calidad, recargar, y admite escucha exclusiva, silenciar todo y cambio de calidad por lotes. - Danmaku: recibe danmaku en tiempo real, con interruptor independiente, ajuste de opacidad, ajuste global de velocidad y activación/desactivación con un clic. - Gestión de salas: admite ingresar números de sala o enlaces de Douyu, agregar por lotes, buscar, filtrar por estado, reordenar por arrastre y abrir, cerrar o eliminar por lotes. - Planes de visualización: permite crear, duplicar, renombrar y cambiar entre planes, guardando la lista de salas, el diseño y la configuración independiente, con respaldo e importación en JSON. - Estado de transmisión: verifica periódicamente el estado de emisión, puede ocultar ventanas que no están transmitiendo, mostrarlas automáticamente al detectar el inicio y admite recordatorios de inicio de transmisión. - Rendimiento y diagnóstico: ofrece modo de baja carga, detección de tartamudeo en la reproducción con reintento automático, diagnóstico de conexión y rendimiento, y reintento de ventanas fallidas. - Datos del día: permite ver los datos de las salas a través de la página de terceros "Viendo en vivo". La versión web requiere Node.js 20.9 o superior y npm; después de ejecutarla, se accede a la dirección local para usarla. La extensión de Chrome está basada en Manifest V3 y no requiere ejecutar un servicio local después de la instalación. El proyecto utiliza JavaScript, HTML y CSS nativos, reproduce transmisiones FLV mediante mpegts.js, recibe danmaku a través de WebSocket y dibuja el danmaku con Canvas. La configuración se guarda en el localStorage del navegador, sin sincronización en la nube, y no se comparte automáticamente entre diferentes navegadores ni entre la versión web y la extensión. El proyecto incluye pruebas unitarias y pruebas de extremo a extremo con Playwright. Esta herramienta no es un producto oficial de Douyu, y los cambios en las interfaces pueden afectar la disponibilidad de las funciones.