duminică, 29 decembrie 2013

TV-Maxe: "Project Petrodava" şi un capăt de drum

Dacă e adevărat că procesul de dezvoltare al TV-Maxe a cam amorţit, asta nu înseamnă că proiectul este unul abandonat! De fapt, mi-am propus ca în prima lună a anului viitor să lansez mult întârziata versiune 0.10, făcând însă rabat de la regula pe care mi-am autoimpus-o, cea de "release-urile cu număr par nu aduc funcţionalităţi noi."

TV-Maxe 0.10 va veni, de fapt, cu două noi feature-uri: un modul de diagnosticare, care va veni să ofere utilizatorului indicii despre compatibilitatea sistemului său cu TV-Maxe (aplicaţii lipsă, porturi blocate, versiuni incompatibile ale dependinţelor, etc.) şi ceea ce tocmai l-am botezat "Project Petrodava": un proiect care va veni în întâmpinarea studenţilor sau a celor cu conexiuni lente la internet.

În ce constă Project Petrodava? Ei bine, mulţi studenţi locuiesc în cămine studenţeşti unde internetul este limitat doar la câteva porturi, în speţă 80 (folosit la navigarea pe web), 443 (pentru conexiuni HTTPS) şi probabil altele folosite de către protocoale mai cunoscute şi legale. Aceşti utilizatori de TV-Maxe (şi cei de SopCast, în general) se află aşadar în imposibilitatea de a se uita la canale TV din pricina acestor limitări: Project Petrodava va consta într-un server intermediar care va prelua, la cerere, canalele transmise prin SopCast (şi celelalte protocoale) şi le va retransmite prin portul 80 (dar nu prin HTTP, pe motiv de webadmini care abia ar aştepta să pună un <embed> cu un URL către Petrodava), evitând astfel aceste limitări (atâta vreme cât nu sunt făcute pe bază de protocol). Îi va ajuta şi pe cei cu conexiuni mai lente deoarece SopCast necesită ceva viteză având în vedere că pe lângă download acesta face şi upload, sugrumând astfel şi puţina bandă rămasă utilizatorului.

Deşi sunt conştient de consumul de resurse pe care un astfel de "mecanism" îl va necesita, intenţionez să ofer iniţial acest serviciu în mod gratuit atâta vreme cât nu va fi nevoie să-mi vând un rinichi petru a-l ţine în funcţiune. Probabil voi folosi serviciile celor de la DigitalOcean, atâta vreme cât voi avea nevoie, mai degrabă, de trafic de internet decât de resurse hardware (pe server nu se vor face niciun fel de conversii video sau audio). Momentan "Project Petrodava" există în variantă materială, urmând să îl integrez cu interfaţa TV-Maxe şi să adaug suport pentru mai multe protocoale (momentan suportă doar SopCast).

Acum să vedem ce cu capătul ăsta de drum. E foarte probabil ca TV-Maxe 0.10 să fie ultima versiune a acestei aplicații, așa cum o știți voi. Cum GTK2 e mort iar GTK3 pluteşte într-o mare de incertitudine, intenţionez să rescriu TV-Maxe folosind Qt, framework-ul celor de la Digia. Nu sunt singurul dezvoltator care lasă GTK-ul pe Qt, şi cei de la Wireshark şi LXDE fiind nemulţumiţi de calitatea precară adusă de GTK3 şi de managementul prost al acestuia. Trecerea pe Qt îmi va aduce, sper, o portabilitate mai bună, ceea ce se traduce prin posibilă versiune de TV-Maxe pentru Windows (şi aici mă refer la un TV-Maxe pur-sânge, nu precum cel ce a luat forma 1TV Online). De asemenea ffmpeg va deveni elementul central în TV-Maxe, asta pentru a oferi o experienţă cât mai uniformă indiferent de backend-ul folosit (probabil Phonon, care la rândul său suportă GStreamer, MPlayer şi VLC). Totuşi, nu vă aşteptaţi în 2014 la această versiune pe Qt: deşi e posibil să apară atunci (şi există deja un build care nu prea face nimic interesant), nu se află pe lista mea de priorităţi.

Până la noi veşti, vă urez un an nou fericit şi tot ce e mai bun. La mulţi ani!

12 comentarii :

Anonim spunea...

Apropo...si OpenShot a trecut pe Qt...toata lumea trece pe Qt :-)
E un framework absolut superb.

Ovidiu Niţan spunea...

Da, voi folosi PyQt. Am avut o mica intentie de a-l scrie in C++, dar m-am gandit ca asa chiar ca ar dura o eternitate pana ar fi gata, asa ca mai bine nu. De asemenea, va fi Python3, pentru ca TV-Maxe sa fie cat mai future-ready :)

Exista deja un repo pe GitHub cu versiunea de Qt a TV-Maxe, asa cum e ea in stadiul actual: https://github.com/ov1d1u/tv-maxe-qt

Luke spunea...

Ar fi super dacă şi-ar da drumul, îi puneam la pitic desenele preferate oriunde eram, pe un netbook de 9 inchi..
Oricum o fi, admir oamenii care gândesc în primul rând maximizând factorul utilităţii!

VadVoci spunea...

[quote]Trecerea pe Qt îmi va aduce, sper, o portabilitate mai bună, ceea ce se traduce prin posibilă versiune de TV-Maxe pentru Windows (şi aici mă refer la un TV-Maxe pur-sânge, nu precum cel ce a luat forma 1TV Online). De asemenea ffmpeg va deveni elementul central în TV-Maxe, asta pentru a oferi o experienţă cât mai uniformă indiferent de backend-ul folosit (probabil Phonon, care la rândul său suportă GStreamer, MPlayer şi VLC). Totuşi, nu vă aşteptaţi în 2014 la această versiune pe Qt: deşi e posibil să apară atunci (şi există deja un build care nu prea face nimic interesant), nu se află pe lista mea de priorităţi.[/quote]

Vesti minunate in ce priveste versiunea pentru windows.
Ne-ai chinuit pana acum cu varianta 1tvonline pe care majoritatea o folosim cu mici trucuri. Credeam ca ai ramas blocat in parola aia: "nicusor de la braila" . Ma tot gandeam..."Ce naiba dom'le ti-au cumparat aia drepturile de autor? Nu te lasa aia sa scoti versiunea oficiala tv-maxe pentru windows?

TV-Maxe este un excelent player pentru stream-urile tv.

Pacat ca versiunea pentru windows , respectiv 1tvonline este plina de restrictii. Si aici nu ma refer la "serviciile web-tv" ale celor de la 1tvonline(servicii care nu fac nici 2parale),ci la player in sine(import playlist,export playlist,editare playlist,abonare din link extern ,recording, etc)
Poate ai totusi bunavointa sa ne dai niste config-uri , patch-uri , fisier run tv-maxe in windows , etc ....,orice.., pana scoti o versiune noua a tv-maxe .

Streamurile rtsp de la MediaDirect si Streamurile hls de la IntactMedia ruleaza cu macroblocuri si intreruperi audio , in rest e perfect.

Pentru rtsp-uri Dolce si HLS AntenaGroup folosesc ca player extern Daum PotPlayer unde ruleaza perfect.

Editarea bazelor de date cu streamuri este incomoda doar sub linux. Daca ai putea implementa in varianta pentru windows ar fi super.

Momentan folosesc user.db custom in %AppData%/1tvonline
+alte fisiere custom...

Mai greu ca le-ai criptat si nu le putem adapta cei care nu stapanim python :(
Faza este ca in channel-editor dupa ce editez si actualizez streamurile ,nu vrea sa salveze baza de date. Nu se genereaza nimic sau se genereaza un fisier cu erori , alteori incomplet :(
Mult succes iti doresc si sa auzim de bine

Ovidiu Niţan spunea...

@VadVoci - pare din înţelegerea făcută atunci a fost să nu scot o versiune de TV-Maxe pentru Windows (căci ar fi făcut concurenţă neloială). Pentru mine 1tvonline a fost, la momentul respectiv, o gură de aer financiară, în felul acesta mai uşurându-i pe ai mei de acasă cu banii cheltuiţi pe facultate cu mine. Între timp lucrurile s-au schimbat foarte mult, aşa că nu mai depind în vreun fel de acea înţelegere.

Pe 1tvonline mereu au fost probleme cu stream-urile RTMP şi RTSP - sunt nişte hack-uri astronomice care niciodată nu au funcţionat prea bine, din păcate. 1tvonline a deviat într-o oarecare măsură de TV-Maxe aşa că mi-ar fi tare greu acum să pot să scot patch-uri sau să modific proiectul în aşa fel încât să fie mai mult TV-Maxe şi mai puţin 1tvonline. Bazele de date sunt doar fişiere SQLite, nu e niciun fel de criptare acolo. Editorul de canale pentru TV-Maxe nu generează liste de canale compatibile cu 1tvonline din cauză că acestea din urmă mai au un câmp care marca un canal ca fiind disponibil sau nu în varianta demo. Deşi am pierdut legătura cu cel de la 1tvonline, mai mult un fel de obligaţie morală mă împiedică să "dezlănţui" momentan TV-Maxe pe Windows. Dar versiunea pe QT va fi ceva cu totul nou (din punct de vedere al construcţiei codului) aşa că în felul ăsta voi încălca mai puţin înţelegerile făcute atunci când 1tvonline prindea formă.

VadVoci spunea...

Well... daca codul sursa ar fi fost vizibil , tv-maxe ar fi ajuns mult mai departe. Fiecare ar fi testat ceva nou , ar fi venit cu chestii,inovatii in plus , etc... Dar asta este doar parerea mea.

Anonim spunea...

dude... fa un public beta cu project petrodava sa vezi cat transfer mananca...
din 1 terra la 256kbps ai 17362 ore de emisie, adica 723 zile. 723 utilizatori care se uita 24 la tv. Daca se uita 2 ore pe zi, in 12 zile s-a mancat transferul. Si calculele astea presupun ca toti se uita la acelasi post. Daca se uita la 12 posturi diferite, intr-o zi s-a dus un terra pe *numai* 723 de utilizatori. Si cand e vorba de moacaaaa... romanii se strang cu zecile de mii, nu cu sutele.
BTW, cauta si tu un cloud provider care accepta bitcoin IYKWIM.

Ovidiu Niţan spunea...

Situaţia traficului mă cam înspăimântă şi pe mine... de asta am zis că e foarte posibil ca serviciul să nu fie mereu gratuit. Oricum aplicaţia va fi configurabilă iar serverul îl voi face public, în aşa fel încât să poată şi alţii să facă rebroadcasting cu Petrodava. Deşi mă îndoiesc că vor fi mulţi, unii poate vor dori să îşi configureze un astfel de server pentru uz personal, ca să nu stea la îngrămădeală cu cei de pe serverul public.

Unknown spunea...

Apreciez foarte mult eforturile ce le faci pentru noi. Intrebarea mea este daca este posibil ca aceste canale tv sa le putem receptiona pe SMART TV Samsung, asa cum au procedat tinerii pasionati din Rusia si Slovacia, care au inventat mai multe aplicatii printre care nStreamLmod ce se instaleaza automat in Smart schimband user-ul , parola si introducand IP-ul ce contine stream-urile .Sa-ti dea Dumnezeu sanatate si putere de munca. Cu respect Nelu Munteanu

Unknown spunea...

Apreciez foarte mult eforturile ce le faci pentru noi. Intrebarea mea este daca este posibil ca aceste canale tv sa le putem receptiona pe SMART TV Samsung, asa cum au procedat tinerii pasionati din Rusia si Slovacia, care au inventat mai multe aplicatii printre care nStreamLmod ce se instaleaza automat in Smart schimband user-ul , parola si introducand IP-ul ce contine stream-urile .Sa-ti dea Dumnezeu sanatate si putere de munca. Cu respect Nelu Munteanu

Anonim spunea...

@vadvoci
Ce-mi plac mie idiotii astia care fac pe desteptii si dau din gura ca proasta-n targ!
Trebuia sa te spargi in figuri pe aici ca stii si tu sa editezi un fisier .config. Mare proba de inteligenta , ce sa spun!
Pentru cultura ta generala nici macar nu era nevoie sa faci toate tampeniile alea pe care le scrii tu pe acolo, caci se adaugau foarte simplu cele doua liste de subscriptie de la tv-maxe si aceea de la magazinmixt.ro. Asta o faceau multi si de foarte mult timp, dar n-a dat nimeni pe gura ca idiotul pana acum, cu exceptia ta, bine-nteles.
Iti pace ce-ai facut?
Normal ca cei de la 1TV, ca fosti colaboratori ai lui Nitan, citesc ce posteaza el pe aici legat de subiect si iata, acum au inchis serverul pentru varianta demo.
Numai din vina ta, papagalule!!!
Poftim, acum mai foloseste aplicatia in windows daca mai poti.
Băi tolomacule, mama, femeie simpla de la tara, avea o vorba pentru unul ca tine: gura bate curul!

Anonim spunea...

Cei de la digital ocean au modificat bonusul ce se se ofera daca atragi clienti noi prin referal de la 10 la 25$.
Te ajuta cu ceva asta pentru proiectul petrodava.