Nextcloud video: joacă orice format în browser, cu conversie pe GPU doar la nevoie

Ghid practic pentru Galerie video în Nextcloud: cum alege pentru fiecare fișier redarea nemodificată, remux, doar audio sau recodare, măsoară conexiunea, construiește cronologia după data filmării și redă serialele în ordine.

Dacă playerul video din Nextcloud se blochează, refuză să pornească sau afișează o grămadă de pătrate gri în loc de previzualizări, cauza este de obicei aceeași: browserului i se dă un fișier pe care nu îl poate decoda. Vizualizatorul integrat din Nextcloud se descurcă cu un clip de telefon în H.264, dar dacă îi dai un MKV, un fișier HEVC sau 10-bit, o copie VC-1 sau MPEG-2 ori un fișier cu sunet DTS sau TrueHD, playerul fie se oprește, fie rămâne negru. Galerie video este un plugin pentru Nextcloud care rezolvă problema la sursă. Indexează toate videoclipurile din cont, redă formatele pe care browserul nu le poate deschide singur și alege pentru fiecare fișier cum să îl trimită, ca să nu plătești o recodare completă atunci când ajunge o simplă reîmpachetare. Acest tutorial se adresează celor care își administrează propria instanță și vor ca playerul să funcționeze corect.

Ce obții

Galerie video (videogallery) găsește toate fișierele video dintr-un cont — folderul principal, folderele partajate, stocarea externă — le aranjează după data reală a filmării și redă fiecare în browser. Suportă HEVC, 10-bit, VC-1, MPEG-2, DTS, TrueHD, AVI și MKV. Pentru fiecare fișier și fiecare browser decide dacă trimite fișierul nemodificat, îl reîmpachetează (se schimbă containerul, fluxurile se copiază), convertește doar sunetul sau îl recodează pe placa video. Această decizie per fișier stă la baza soluției: un fișier care se redă deja nu este atins niciodată, iar un fișier care nu se poate reda este convertit doar atât cât este nevoie.

Cerințe preliminare

  • Nextcloud 34 și PHP 8.4 sau mai nou. Aplicația refuză să se activeze sub 8.4.
  • ffmpeg pe server: sudo apt install ffmpeg (Debian, Ubuntu), sudo dnf install ffmpeg (Fedora, RHEL) sau sudo apk add ffmpeg (Alpine).
  • Sarcini de fundal Nextcloud (Cron) funcționale, pentru indexare și generarea previzualizărilor.
  • Opțional, dar recomandat: o placă video pentru conversie (NVIDIA NVENC, Intel Quick Sync, VA-API pentru Intel/AMD). Fără ea, conversia rulează pe CPU.
  • Recomandat: un disc rapid, ideal NVMe și separat de discul de sistem, pentru fișierele temporare.

Pasul 1 — Instalează și activează aplicația

Descarcă arhiva videogallery-x.y.z.tar.gz din contul tău MediaLab Works, la secțiunea Licenses, apoi extrage-o în folderul apps/ (sau custom_apps/) al Nextcloud, astfel încât să obții apps/videogallery/, cu proprietarul utilizatorul serverului web:

cd /var/www/nextcloud/apps
sudo tar -xzf ~/videogallery-x.y.z.tar.gz
sudo chown -R www-data:www-data videogallery

Activeaz-o:

sudo -u www-data php occ app:enable videogallery

Apoi deschide Administration settings → Video Gallery → License, lipește cheia de licență și salvează. Aplicația contactează serverul de licențe, leagă cheia de această instanță și afișează licența ca Active.

Pasul 2 — Construiește biblioteca acum, în loc să aștepți

Cron va indexa fișierele eventual, dar poți începe imediat:

sudo -u www-data php occ videogallery:scan

Poți transmite un nume de utilizator pentru a scana un singur cont. Dacă videoclipurile noi nu apar mai târziu, cauza obișnuită este că sarcinile de fundal nu rulează; apasă Look for new files la The library în setări sau rulează din nou comanda de scanare.

Pasul 3 — Îndreaptă fișierele temporare spre un disc rapid

Deschide Administration settings → Video Gallery. Aplicația găsește ffmpeg, testează ce poate face cu adevărat mașina și alege singură un folder de lucru; pagina îți spune într-o singură frază ce lipsește și comanda care rezolvă problema. La Working files, îndreaptă folderul de lucru spre un disc rapid care nu este discul de sistem. Aplicația șterge doar în interiorul folderului propriu marcat, așa că media ta nu este niciodată în pericol.

Pasul 4 — Măsoară mașina și configurează GPU-ul

La This server vezi encoderele care funcționează efectiv aici: NVENC, Quick Sync, VA-API, VideoToolbox sau software. Rulează Measure this machine: testează placa video cu un eșantion solicitant și păstrează cea mai bună combinație funcțională de presetări și cale de decodare. Fiecare valoare poate fi suprascrisă. Dacă ai mai multe plăci, pornește sau oprește fiecare la Graphics cards sau dă fiecăreia propria limită.

Multe distribuții pornesc PHP-FPM cu PrivateDevices=true, ceea ce ascunde placa — primești „no CUDA-capable device is detected” deși funcționează dintr-un shell. Pentru NVIDIA, adaugă un drop-in cu sudo systemctl edit php8.4-fpm (folosește versiunea ta de PHP):

[Service]
PrivateDevices=no
DevicePolicy=closed
DeviceAllow=/dev/nvidia0 rw
DeviceAllow=/dev/nvidiactl rw
DeviceAllow=/dev/nvidia-uvm rw
DeviceAllow=/dev/nvidia-uvm-tools rw
DeviceAllow=/dev/nvidia-modeset rw

Pentru Intel și AMD: sudo usermod -aG render www-data. Apoi sudo systemctl daemon-reload && sudo systemctl restart php8.4-fpm. După ce schimbi driverele, apasă Test the hardware again.

Pasul 5 — Lasă aplicația să măsoare conexiunea

La Quality and the connection, activează măsurarea conexiunii înainte de redare și ajustarea continuă în timpul redării. Aplicația măsoară legătura înainte și în timpul redării, astfel încât un fișier cu bitrate mare este trimis nemodificat doar când conexiunea îl poate duce, iar calitatea urmează conexiunea. În player, meniul de calitate arată ce s-a ales, de exemplu Automatic (4.0 Mbit/s); alege acolo o calitate fixă dacă preferi.

Pasul 6 — Configurează corect cronologia și previzualizările

Cronologia este construită din datele reale de filmare citite din interiorul fișierului, apoi din numele fișierului, apoi din timestampul acestuia. De aceea o bibliotecă copiată nu mai arată ca și cum totul ar fi fost filmat în ziua migrării. Poți sorta și după cele mai noi adăugate, cele mai noi filmate, nume, durată sau dimensiune; alegerea este păstrată pe cont, pe fiecare dispozitiv. La Previews, setează durata și înălțimea clipului la hover și spațiul rezervat pentru previzualizările din cache — acestea umplu cardurile de copertă cu previzualizări silențioase la hover în loc de pătrate gri. Dacă lipsesc previzualizările, rulează sudo -u www-data php occ videogallery:preview (opțional pentru un singur utilizator) și verifică dacă Cron funcționează.

Pasul 7 — Subtitrări, piste audio și capitole

În meniurile playerului ai toate subtitrările încorporate și cele externe, toate pistele audio și capitolele. Sunt găsite și fișierele externe numite precum Film.en.srt sau Film_en.srt lângă video. Playerul oferă și ecran complet, previzualizare cadru la glisare, gesturi tactile pentru luminozitate, volum și derulare, picture in picture și reluare de pe orice dispozitiv. Când vrei o copie bit cu bit sau să vizionezi pe un televizor, Open in another player predă originalul nemodificat către VLC, Infuse sau alt player de pe dispozitiv.

Pasul 8 — Seriale și cursuri în ordine

Un folder cu fișiere numerotate este redat în ordine, iar la final este oferită partea următoare. La Kinds of folder administratorul scrie regulile care sortează folderele în cursuri, cameră, seriale și filme. Dacă folderul tău de curs sare de colo-colo, verifică mai întâi aceste reguli.

Sfaturi și depanare

  • Ceva nu se redă: rulează sudo -u www-data php occ videogallery:selftest. Acesta convertește o parte dintr-un fișier real în ambele sensuri, caută spre mijloc, verifică dacă rezultatul se redă și dacă nu rămâne nimic în urmă.
  • Placa video nu este folosită: verifică occ videogallery:status. De obicei PHP-FPM nu vede placa (PrivateDevices) sau www-data nu este în grupul render.
  • ffmpeg nu a fost găsit: instalează-l sau setează calea lui la The library → Paths, if ffmpeg is somewhere unusual.
  • Verifică starea generală: occ videogallery:status --probe îți dă o imagine rapidă; occ videogallery:cleanup (sau --all) șterge fișierele temporare.
  • Partajare: partajează un video sau un folder cu o persoană, un grup sau printr-un link, cu sau fără descărcare, prin partajarea proprie a Nextcloud. Linkurile pentru playere externe poartă un token semnat, cu expirare, și nu se stochează nimic pentru ele.

Concluzie

Majoritatea raportărilor de tipul „Nextcloud video player not working” se reduc la un browser căruia i se cere să decodeze ceva ce nu poate. Galerie video rezolvă asta per fișier — nemodificat, reîmpachetat, doar audio sau recodat —, măsoară conexiunea astfel încât redarea nemodificată este încercată doar când legătura o poate duce și construiește o cronologie din datele reale de filmare, cu previzualizări la hover. Instaleaz-o, rulează Measure this machine, îndreaptă folderul de lucru spre un disc rapid și lasă Cron să facă restul. Ghidul complet este în user guide; changelog urmărește ce s-a schimbat, iar dacă ceva tot nu merge, următoarele opriri sunt Bază de cunoștințe și FAQ.

Postarea a fost scrisă cu ajutorul AI pe baza documentației produselor noastre sau a surselor indicate și verificată automat înainte de publicare.

Citește și

Link scurt Nextcloud pentru partajări, pe domeniul tău (cu coduri QR)

Transformă linkurile lungi de partajare /index.php/s/… în adrese scurte și de încredere pe domeniul tău, cu Shortcloud: linkuri scurte automate, terminații personalizate, coduri QR, 410 Gone pentru partajările expirate și adrese fără /index.php.

Ai un server Emby, Jellyfin sau Nextcloud?

Plugin-urile și aplicațiile noastre adaugă Live TV, subtitrări, înregistrare și securitate pe serverul tău, cu probă gratuită.