Discurso de transmisión de video 🎥

Discourse Video Stream añade una integración perfecta de Cloudflare Stream para cargar y embeber contenido de video de formato largo y alta calidad en tu sitio de Discourse.

Resumen

Este plugin proporciona un flujo de trabajo completo para manejar archivos de video grandes con streaming de tasa de bits adaptativa, permitiendo a tus usuarios cargar videos directamente desde el compositor y reproducirlos con ajuste automático de calidad basado en las condiciones de su red.

Características Principales

  • :clapper_board: Integración con el Compositor: Botón de barra de herramientas opcional para cargar videos directamente desde el compositor
  • :outbox_tray: Intercepción Automática de Cargas: Los videos que excedan un umbral de tamaño configurable se cargarán automáticamente en Cloudflare Stream en lugar del almacenamiento local
  • :high_voltage: Cargas Reanudables: Basado en tus-js-client para cargas fiables de archivos mucho más allá de 200 MB con reanudación automática en caso de problemas de conexión
  • :locked: Proxy Seguro: El endpoint del lado del servidor genera URLs de carga de Cloudflare Stream de corta duración, manteniendo tus credenciales de API seguras
  • :movie_camera: BBCode Personalizado: Sintaxis simple [video-stream id="..."] para embeber videos
  • :television: Streaming Adaptativo: Integración con Shaka Player con manifiestos DASH para una reproducción fluida en diferentes velocidades de red
  • :gear: Controles de Reproducción: Interfaz de usuario integrada para selección de resolución y control de velocidad de reproducción

Instalación

Añade el plugin a tu app.yml:

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/xfalcox/discourse-video-stream.git

Luego reconstruye tu contenedor:

./launcher rebuild app

Configuración

Navega a Admin → Configuración → Transmisión de video y configura:

Configuración Descripción Predeterminado
video_stream_enabled Habilitar el plugin de transmisión de video false
video_stream_account_id Tu identificador de cuenta de Cloudflare -
video_stream_api_token Token de API con permisos Stream:Edit -
video_stream_customer_subdomain Tu subdominio de Cloudflare Stream (ej. customer-xxxxx.cloudflarestream.com) -
video_stream_allowed_extensions Lista de formatos de video permitidos separados por comas mp4,webm,mov
video_stream_max_file_size Tamaño máximo de archivo en MB (1-2000) 500
video_stream_intercept_native_uploads Interceptar automáticamente cargas de video grandes true
video_stream_intercept_threshold_mb Umbral de tamaño en MB para intercepción automática (1-2000) 10

Obtener Credenciales de Cloudflare Stream

  1. Inicia sesión en tu panel de Cloudflare
  2. Navega a Stream bajo tu cuenta
  3. Copia tu ID de Cuenta desde la vista general de Stream
  4. Crea un token de API con permisos Stream:Edit
  5. Anota tu subdominio de Cliente desde la configuración de Stream

Uso

Una vez configurado, los usuarios tienen dos formas de cargar videos:

Intercepción Automática

Cuando un usuario arrastra y suelta o selecciona un archivo de video que excede la configuración video_stream_intercept_threshold_mb, el plugin lo maneja automáticamente a través de Cloudflare Stream en lugar del almacenamiento local. Debes permitir las extensiones de archivo de video en la configuración de extensiones permitidas para que esto funcione.

Carga Manual

Los usuarios pueden hacer clic en el menú desplegable de la barra de herramientas del compositor (:plus:) y seleccionar la opción de carga de video para cargar explícitamente a Cloudflare Stream.

Ambos métodos insertan una etiqueta BBCode [video-stream id="video_id"] que se renderiza como un reproductor de streaming adaptativo con controles de resolución y velocidad.

¿Por qué Cloudflare Stream?

Tenemos soporte para hacer lo mismo usando AWS en el código, y con Mux en GitHub - discourse/discourse-video, por lo que una alternativa más barata parecía una buena idea.

Requisitos

  • Cuenta activa de Cloudflare con Stream habilitado

Fuente y Soporte

Capturas de Pantalla

Demo

Visita mi sitio de prueba y sube algunos videos
https://discourse-on-a-pi5.falco.dev/t/test-video-upload-plugin/20?u=falco


Nota: Este no es un plugin #oficial.

12 Me gusta