← Ce am construit

Studiu de caz · 2026

dubidu: filme dublate în română, în timp real, pentru copiii care nu citesc încă subtitrarea.

O extensie Chrome transformă subtitrarea din Netflix sau YouTube în voci românești, câte una pentru fiecare personaj. Muzica și efectele rămân ale filmului.

Rol
Fondator. Produs, design, cod, date
Perioadă
Octombrie 2026 - prezent
Stare
Beta. Lansare pe 1 decembrie 2026
Platforme
Extensie Chrome, web, server de voce
dubidu.net
Pagina principală dubidu.net: Orice film sau desen animat, dublat în română
  • 8 zile de lucru intens, de la v0.7 la v0.19
  • 429 commit-uri în 3 repo-uri
  • 237 teste automate pe backend
  • 31 de limbi în motorul de voce

Cifrele vin din istoricul git al celor trei repo-uri și din cod, la 4 noiembrie 2026. Cele 8 zile sunt intervalul 28 octombrie - 4 noiembrie; primele versiuni le făcusem înainte.

01 · Problema

„Mami, ce zice?”

În România, filmele străine de pe platformele de streaming vin cu subtitrare. Un copil sub 8-9 ani nu citește destul de repede ca să țină pasul. Părintele are două variante: traduce tot filmul cu voce tare sau închide filmul după zece minute.

Am numărat. Din 244 de titluri Netflix pentru familie disponibile în România, 39% nu au pistă audio în română. Platformele dublează titlurile mari în limbile mari. Restul rămân doar cu subtitrare.

Sunt tată a doi băieți, așa că am privit problema și ca părinte.

02 · Ce face

Un buton pe video. Personajele vorbesc românește.

Părintele deschide filmul pe platforma pe care o plătește deja și apasă butonul dubidu. Replicile vin în română, fiecare personaj cu vocea lui, în timp ce muzica și efectele rămân cele originale.

Bara extensiei dubidu deasupra unui film, cu butonul Oprește, volumul vocii și al filmului, timpul și orele rămase
Bara extensiei, peste filmul Sintel. Butonul de pornire și oprire, volumul vocii române, volumul muzicii și al efectelor, timpul sesiunii și orele rămase din abonament.
Bara dubidu mărită
Bara, mărită. Butoanele sunt plate, cu iconuri SVG, iar stilurile sunt izolate într-un shadow DOM închis, ca CSS-ul site-ului să nu le poată strica.
Demo interactiv pe dubidu.net: scena din Sintel cu butonul dubidu RO
Demo-ul de pe prima pagină: vizitatorul pornește scena și comută singur între engleză și română.
Secțiunea De ce dubidu: pe orice platformă, în timp real, un singur clic, 4 ecrane, muzica rămâne, voci pentru fiecare personaj
Promisiunea produsului, într-un singur ecran.

03 · Drumul

Patru versiuni, trei schimbări de direcție.

Am început cu ChatGPT până la v0.7, apoi am continuat cu Claude Code. Fiecare experiment are un document cu data, rezultatul și limitele lui. Așa se vede de ce am renunțat la o idee, nu doar că am renunțat.

  1. v0.1 - v0.7

    Traducere live, sunet în sunet

    Prima variantă trimitea sunetul tabului la Gemini Live și reda traducerea. Am auzit română pe YouTube și Netflix, dar cu circa 3 secunde întârziere. Engleza se auzea pe dedesubt, iar când am coborât tot mixul a dispărut și muzica.

    Merge, dar sună a interpret, nu a film.

  2. v0.8

    Scoatem doar dialogul din mix

    Un filtru audio în browser (STFT de 2048 de eșantioane, banda 150-7.000 Hz) scoate ce e în centrul stereo, unde stă de obicei vocea. Muzica și ambianța, care sunt late, rămân. Pe semnale de test vocea scade cu 20 dB, ambianța se schimbă cu 0,13 dB.

    Muzica rămâne. Pe filme reale, testul se face la ureche.

  3. v0.14

    Dublaj din subtitrări

    Am schimbat abordarea. Subtitrarea în română există deja pe platformă și știm replicile dinainte. Un model de limbaj stabilește cine spune fiecare replică, iar fiecare personaj primește o voce. Pilotul pe Sintel a arătat 1,4-4,2 secunde de sinteză pe replică, așa că vocile se pregătesc cu 45 de secunde înainte.

    Întârzierea dispare. Apar vocile pe personaje.

  4. v0.15 - v0.19

    Motor de voce propriu: Dubnow

    Am testat mai multe motoare de voce și le-am ales după ureche. Câștigătorul, un model deschis, a devenit Dubnow. Rulează pe procesoare obișnuite, așa că am mutat serverele de pe plăci video închiriate pe CPU.

    Costul pe oră dublată scade la o fracțiune de cent (estimare).

04 · Arhitectura

Trei piese. Sunetul nu trece niciodată prin site.

Platforma web dă tichete și numără minutele. Sunetul circulă direct între extensie și serverul de voce, pe o conexiune WebSocket securizată. Dacă platforma web are o problemă, filmul care rulează nu se oprește.

Extensia Chrome cere un tichet de la dubidu.net, apoi primește vocile direct de la serverul Dubnow Extensia Chrome dubidu.net · Laravel Dubnow · server de voce Citește subtitrarea în română Captează sunetul tabului Scoate dialogul din centru Cere replici cu 45 s înainte Le redă pe ceasul video-ului Amestecă vocea cu filmul Conturi, abonamente, minute Catalog, personaje, voci Tichete semnate Ed25519 Sinteză pe CPU, 31 de limbi Fără stare, pornit la cerere Mai mulți spectatori pe server HTTPS · cont, tichet, replici cu personaje WSS · replici trimise, voci primite drumul sunetului

05 · Componente

Ce am construit, piesă cu piesă.

01

Extensia Chrome

O bară discretă pe video, care apare la mișcarea mouse-ului, ca la Meet. Pornește dublajul, reglează separat vocea română și sunetul filmului, arată timpul rămas.

  • Citește subtitrarea afișată și găsește singură pista în română
  • Captează sunetul tabului și scoate 85% din dialogul original
  • Redă replicile pe ceasul video-ului: pauză, derulare, viteză
  • Setări în pagină, cu taburi; scurtătura Alt+Shift+D
  • Ecran de consimțământ și pachet separat pentru Chrome Web Store
02

Platforma dubidu.net

Laravel 13 și PostgreSQL. Tot ce nu e sunet: conturi, plăți, catalog, conținut. Nu stă niciodată în drumul audio.

  • Conturi de familie, dispozitive, istoric, recomandări
  • Abonamente Stripe pe ore, facturi automate
  • Contor de minute cu registru, ca într-o contabilitate
  • Tichete de sesiune semnate Ed25519 pentru serverele de voce
  • Catalog de filme, ghid pentru părinți, articole, ajutor
03

Dubnow, motorul de voce

Motorul nostru de voce, pornit de la un model open-weight. Sintetizează o secundă de vorbire în 0,35 secunde pe patru fire de procesor.

  • 31 de limbi dintr-un singur model
  • 72 de voci în paletă, distribuite pe personaje
  • Rulează și în browser, prin WebGPU (0,20× timp real, măsurat pe un PC)
  • Dubnow Studio: actorii înregistrează replici pentru voci noi
  • Servere pornite la cerere, oprite când nu mai e nimeni
Studiul de caz Dubnow
04

Panoul de administrare

Filament 5, cu 87 de fișiere de resurse și pagini. Aici se pregătesc filmele și se urmăresc costurile.

  • Catalog cu stadiul fiecărui titlu
  • Atribuirea replicilor pe personaje cu AI, apoi verificare umană
  • Distribuirea vocilor: copiii nu primesc voci de adult
  • Cereri de dublaj de la clienți, cu termen de 24 de ore
  • Costul fiecărui apel la modele, la cursul BCE al zilei

06 · Catalogul

Fiecare film pregătit are o distribuție.

Pentru un film, un model de limbaj citește replicile și decide cine vorbește, ce vârstă și ce gen are personajul. Fiecare personaj primește o voce din paletă, iar o voce de copil nu ajunge la un adult. Adnotările rămân ciornă până le verifică un om.

Pagina fiecărui film spune dacă are deja dublaj pe platformă, câte replici și câte personaje are. Paginile sunt făcute pentru căutările părinților: „Epoca de gheață dublat în română”.

Catalogul dubidu: filme și desene dublate în română, cu filtre pe platformă, vârstă și gen
Catalogul: 693 de titluri, cu filtre pe platformă, vârstă, gen și limbă.
Pagina filmului Epoca de gheață: 536 de replici, 19 personaje cu voce proprie
Pagina unui film: 536 de replici și 19 personaje, fiecare cu vocea lui.

07 · Pentru părinți

Un ghid: ce film să vadă copilul în seara asta.

Părintele spune vârsta copilului, ce îi place și pe ce platforme are cont. Primește filmele potrivite, cu nota IMDb și cu informația dacă sunt deja în română. Răspunsurile nu se salvează în cont. Din aceleași date ies liste pe vârste și pe teme, pentru căutări.

Ghidul Ce film să vadă copilul tău, cu vârstă, platforme, genuri și liste pe vârste și teme
dubidu.net/filme-copii: filtrul pentru părinți și listele generate din catalog.

08 · Motorul de voce

Aceeași scenă, în orice limbă, generată pe loc.

Dubnow are propriul studiu de caz, cu un demo în care scrii orice text. Pe pagina pentru investitori, vizitatorul alege o limbă. Serverul sintetizează fiecare replică din scena Sintel, iar pagina arată timpul măsurat chiar în browserul lui. Nimic nu e preînregistrat. Demo-ul arată că același produs poate intra în altă țară fără să schimbăm extensia, plățile sau serverele.

Demo live: aceeași scenă în 18 limbi, generată de Dubnow pe un server CPU
Demo-ul live: 18 limbi, timpul până la prima replică măsurat la fiecare clic.
Tehnologia: 31 de limbi, 0,35x timp real pe CPU, rulează și în browser, distribuție pe personaje, voci de actori, servere la cerere
Cifrele motorului, fiecare cu eticheta „măsurat” sau „estimare”.

09 · Metrici

Ce am măsurat și ce am estimat.

Fiecare cifră are eticheta ei. Produsul nu e încă lansat, așa că nu există încă cifre de abonați sau de venit.

  • 39% din 244 de titluri Netflix pentru familie verificate în România nu au audio în română măsurat
  • 693 titluri în catalogul public, din care 376 pregătite pentru dublaj cu dubidu măsurat
  • 536 / 19 replici și personaje cu voce proprie pentru Epoca de gheață măsurat
  • 0,35× timp real pentru sinteză pe CPU: 1 secundă de vorbire în 0,35 secunde măsurat
  • 20 de spectatori simultan pe un server cu 10 fire, niciunul în urmă test simulat
  • −20 dB vocea din centru, pe semnale de test; ambianța rămâne aproape neatinsă măsurat
  • 45 s replici pregătite înaintea momentului în care sunt rostite în cod
  • ~3 s → 0 întârzierea vocii față de imagine: traducerea live față de replicile pregătite dinainte din design
  • 93% marja de contribuție pe planul Start, după plăți și servere estimare
  • 41,2 mil. copii de 3-9 ani în cele 25 de țări a căror limbă o vorbește Dubnow Eurostat

Cât cod

34
modele de date
47
migrații
35
servicii în backend
87
fișiere în panoul de admin
28
fișiere de teste
77
documente de analiză

10 · Modelul de business

Plătești cât te uiți.

Trei planuri pe ore de dublaj pe lună, de la 5,99 €, fără perioadă minimă. Prima oră e gratuită. Prețurile se citesc din panoul de administrare, așa că site-ul, contul și pagina pentru investitori arată mereu aceleași cifre.

Sinteza rulează pe procesoare obișnuite, nu pe plăci video. Asta face ca o oră dublată să coste foarte puțin. Pentru mine e cifra care contează cel mai mult în tot proiectul.

Planurile dubidu: Start 5,99 €, Familie 9,99 €, Maxi 14,99 € pe lună
Planurile: calculatorul de sus recomandă planul după câte filme vede familia pe lună.

11 · Ce am învățat

Patru lucruri pe care le iau cu mine în următorul proiect.

Schimbă problema, nu doar soluția

La început am încercat să fac traducerea live mai rapidă. Subtitrarea în română exista deja. Odată ce am pornit de la ea, întârzierea a dispărut de tot.

Urechea decide, nu benchmark-ul

Am eliminat motoare de voce care arătau bine pe hârtie. Fiecare voce a trecut un test de ascultare înainte să ajungă în produs.

Scrie ce e măsurat și ce e estimat

Fiecare cifră din analize are o etichetă: măsurat, estimat, netestat. Pagina pentru investitori păstrează aceeași regulă.

Gândește de la început pentru mii de clienți

Serverele de voce nu țin stare și pot fi înlocuite oricând. Platforma web stă în afara drumului audio, iar minutele se țin într-un registru, ca banii.

12 · Ce urmează

Lansare pe 1 decembrie 2026.

  • Voci de actori. Actori români înregistrează replici în Dubnow Studio, cu contract, ca vocile să fie ale noastre.
  • Dubnow în browser. Sinteza pe placa video a utilizatorului, aproape fără cost de server.
  • Alte browsere. Edge și Opera folosesc același motor ca Chrome, deci se pot adăuga ieftin. Firefox și Safari nu permit încă captura sunetului din tab.
  • Alte țări. Bulgaria, Grecia, Ungaria, Polonia și alte țări unde filmele pentru copii vin tot cu subtitrare.

Limite pe care le spun deschis: dubidu depinde de subtitrarea pe care platforma o afișează în browser, iar în beta l-am testat doar pe Netflix și YouTube, în Chrome.

Ai o idee de produs pe care vrei s-o duci până la capăt?

Lucrez ca dezvoltator sau ca cofondator tehnic. Scrie-mi și vedem dacă se potrivește.