Sobre el proyecto

KSPlayer es un framework de reproducción multimedia para sistemas operativos Apple, incluyendo iOS 13+, macCatalyst 14+, macOS 10.15+, tvOS 13+, xrOS 1+ y visionOS. Está construido en torno a AVPlayer y FFmpeg y proporciona una vista de reproductor, además de opciones de reproducción de nivel inferior para aplicaciones que necesitan controles de video personalizados o un comportamiento de streaming específico. El conjunto de características comunes documentadas cubre reproducción 4K, HDR y HDR10, video en 360 grados, Picture in Picture, aceleración por hardware, detección automática de desentrelazado, audio multicanal y espacial, protocolos de red personalizados como NFS y SMB, subtítulos de texto e imagen, subtítulos cerrados, búsqueda de subtítulos en línea, bucle de rango sin interrupciones, streaming en vivo de LAN de baja latencia y cambio automático entre flujos de tasa de bits múltiple. El proyecto también documenta soporte para HLG, HDR10+, Dolby Vision y Dolby Atmos, con algunas funciones avanzadas de Dolby y reproducción limitadas a la edición LGPL de pago. KSPlayer se ofrece bajo GPL por defecto. Una versión LGPL de pago y otros acuerdos de licencia comercial están disponibles. La tabla de características distingue las ediciones: las capacidades solo de pago incluyen mejora de video, vistas previas de barra de progreso, precarga en disco duro, salida a otra pantalla, cambio de video sin demora, paso de audio Wi-Fi, rebobinado en vivo, generación y traducción de subtítulos con IA sin conexión, URLs de audio y video separadas, reproducción de Blu-ray ISO/BDMV/DVD, reproducción en ventana pequeña reanudable dentro de la aplicación, soporte MKV de AVPlayer, Atmos E-AC-3 nativo, metadatos dinámicos Dolby Vision P5/P8, AC-4, decodificación de hardware AV1, metadatos dinámicos HDR10+, traducción de subtítulos, reproducción 8K o 120 FPS, descarga de video y conversión de formato, subtítulos principales y secundarios, y renderizado completo de subtítulos ASS a través de libass. La tabla lista FFmpeg 9.0.1 para la versión LGPL y FFmpeg 6.1.0 para la versión GPL. La integración se documenta a través de Swift Package Manager y CocoaPods. Los ejemplos proporcionados crean un IOSVideoPlayerView, reproducen una URL o KSPlayerResource, definen múltiples definiciones de calidad con imágenes de portada, adjuntan cabeceras HTTP personalizadas, observan el tiempo y estado de reproducción a través de callbacks o un delegado, subclasifican la vista del reproductor para personalizar la interfaz, seleccionan pistas de audio o subtítulos, y configuran buffering, autoplay, búsqueda, bucle, filtros, decodificación por hardware, subtítulos, retraso de audio, retraso de video, rotación, Picture in Picture y comportamiento de control remoto a través de KSOptions. Un espacio de trabajo Demo está disponible ejecutando pod install en el directorio Demo y abriendo el espacio de trabajo Xcode generado. El repositorio también lista aplicaciones de App Store que el autor dice que están licenciadas para usar el SDK, y proporciona información de contacto para personalización comercial y licencias.