Discourse Video Stream aggiunge un’integrazione Cloudflare Stream senza interruzioni per caricare e incorporare contenuti video di alta qualità e di lunga durata sul tuo sito Discourse.
Panoramica
Questo plugin fornisce un flusso di lavoro completo per la gestione di file video di grandi dimensioni con streaming adattivo bitrate, consentendo ai tuoi utenti di caricare video direttamente dall’editor e riprodurli con regolazione automatica della qualità in base alle loro condizioni di rete.
Funzionalità principali
Integrazione Composer: pulsante opzionale della barra degli strumenti per caricamenti video diretti dall’editor
Intercettazione automatica dei caricamenti: i video che superano una soglia di dimensione configurabile vengono caricati automaticamente su Cloudflare Stream anziché sulla memoria locale
Caricamenti riprendibili: basato su tus-js-clientper caricamenti affidabili di file ben oltre i 200 MB con ripresa automatica in caso di problemi di connessione
Proxy sicuro: l’endpoint lato server genera URL di caricamento Cloudflare Stream di breve durata, mantenendo sicure le tue credenziali API
BBCode personalizzato: semplice sintassi [video-stream id=\"...\"]per incorporare video
Streaming adattivo: integrazione Shaka Player con manifest DASH per una riproduzione fluida su diverse velocità di rete
Controlli di riproduzione: interfaccia utente integrata per la selezione della risoluzione e il controllo della velocità di riproduzione
Installazione
Aggiungi il plugin al tuo app.yml:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/xfalcox/discourse-video-stream.git
Quindi ricompila il tuo container:
./launcher rebuild app
Configurazione
Naviga su Admin → Impostazioni → Streaming video e configura:
| Impostazione | Descrizione | Predefinito |
|---|---|---|
| video_stream_enabled | Abilita il plugin di streaming video | false |
| video_stream_account_id | Il tuo identificatore di account Cloudflare | - |
| video_stream_api_token | Token API con autorizzazioni Stream:Edit | - |
| video_stream_customer_subdomain | Il tuo sottodominio Cloudflare Stream (es. customer-xxxxx.cloudflarestream.com) | - |
| video_stream_allowed_extensions | Elenco separato da virgole dei formati video consentiti | mp4,webm,mov |
| video_stream_max_file_size | Dimensione massima del file in MB (1-2000) | 500 |
| video_stream_intercept_native_uploads | Intercetta automaticamente i caricamenti video di grandi dimensioni | true |
| video_stream_intercept_threshold_mb | Soglia di dimensione in MB per l’intercettazione automatica (1-2000) | 10 |
Ottenere le credenziali Cloudflare Stream
- Accedi alla tua dashboard Cloudflare
- Naviga su Stream sotto il tuo account
- Copia il tuo Account ID dalla panoramica di Stream
- Crea un token API con autorizzazioni Stream:Edit
- Annota il tuo sottodominio cliente dalle impostazioni di Stream
Utilizzo
Una volta configurato, gli utenti hanno due modi per caricare video:
Intercettazione automatica
Quando un utente trascina e rilascia o seleziona un file video che supera l’impostazione video_stream_intercept_threshold_mb, il plugin lo gestisce automaticamente tramite Cloudflare Stream anziché tramite la memoria locale. È necessario consentire le estensioni dei file video nelle impostazioni delle estensioni consentite affinché ciò funzioni.
Caricamento manuale
Gli utenti possono fare clic sul menu a comparsa della barra degli strumenti dell’editor (
) e selezionare l’opzione di caricamento video per caricare esplicitamente su Cloudflare Stream.
Entrambi i metodi inseriscono un tag BBCode [video-stream id=\"video_id\"] che viene visualizzato come un lettore di streaming adattivo con controlli di risoluzione e velocità.
Perché Cloudflare Stream?
Abbiamo il supporto per fare lo stesso utilizzando AWS nel codice, e con Mux in GitHub - discourse/discourse-video, quindi un’alternativa più economica sembrava una buona idea.
Requisiti
- Account Cloudflare attivo con Stream abilitato
Sorgente & Supporto
- Repository: GitHub - xfalcox/discourse-video-stream
Screenshot
Demo
Visita il mio sito di prova e carica alcuni video
Test Video Upload plugin - General - Discourse on a Pi 5
Nota: questo non è un plugin #ufficiale.

