YTFE 1.16.0

Nem volt tervbevéve, de a kugli megint alkotott, szóval muszáj volt. Lássuk a kecskét.

A legfontosabbak:
- Valamikor a tegnapi nap folyamán a kugli üzembe helyezte a trutymócipherének új generációját (gondolom a régit már mindenki röhögve kicselezte; a YTFE is töretlenül vitte már a februári 1.12.5 óta) és ezúttal kitettek magukért: egy teljesen új szintre emelték a taknyolás fogalmát. Tekintsétek meg magatok, már akinek van hozzá gyomra: http://oscomp.hu/depot/test.js
Hogy ez tényleg mekkora takony kód, arra nemsokára fény fog derülni...

Az új funkciók közé felvett sokparaméteres üres wrapperek, amiknek a célfunkciót is át kell adni a futtatáshoz, még hagyján, mert ezt némi módosítás után még abszolválni lehetett volna. De lent az egyes műveletek listájánál kezdődik az igazi taknyolás: a régi sima egyszeri és egyszintű try/catch helyett többszintű, egymásba ágyazott blokkok, amik szándékosan kivételek keletkezésére bazíroznak, valamint az eddigi sima számmal indexelt tömbös függvénymeghívások helyett itt már tetszőleges artimetikai és logikai műveletekből és beépített függvényhívásokból (Math.pow() és hasonlók) állnak össze az indexek és argumentumok: a csúcs a mindenféle módon felírt szöveges dátumokból kiköpetett időbélyeg, mint tömbindex. (Ez utóbbi még fontos lesz.)

Nos, mondanom sem kell, erre a YTFE deciphere sem volt felkészítve és erre már lassan egy mini JS motort kéne írni, ami nem két perc, miközben a videókon megint ott csücsül a throttle. Hotfixnek egy megoldás volt: be kell rántani egy lightweight JS interpretert. Első körben megnéztem azt a két JS engine-t, amit a múltkor bra-ket javasolt (neki ezúton köszi még egyszer). Sajnos a BeRo féle interpreter, ami ideális volna, mert Pascalban van, az LGPL alatt van terjesztve (a macska meg fel van mászva a fára), így azt nem tudom integrálni a programba. A Bellard féle QuickJS már érdekesebb volt: igaz C-ben van írva, de van az integrációjához Pascalos unit és a MIT license is rendben van...viszont írd és mondd: a QuickJS-nek beletörött a bicskája ebbe a takonylavinába, amit a kugli produkált. (Egyébként nem tudom hibáztatni érte.) Természetesen írtam a fejlesztőjének, de egyelőre nincs ideje foglalkozni a dologgal, azt viszont megjegyezte, hogy a kódban non-standard módon vannak felírva a dátumok és a QuickJS csak az ISO féle felírást támogatja.
Így egyelőre egy megoldás maradt: a probléma ideiglenes megoldására - és fallback megközelítésnek későbbre, ha megint beütne a trutymó - lehetővé tenni tetszőleges külsős JS interpreter használatát ennek a takonytömegnek a futtatásához. Ez meg is történt, a program innentől külső programmal futtatja a deciphert; ha lesz megint belső megoldás, akkor majd lehet váltani a kettő között: így gyakorlatilag ha el is tör megint valamit a kugli, akkor is lesz kerülőút, pl. a Node.js használata, azzal ugyanis tökéletesen működik (no shit: a kugli féle V8 hajtja), szóval last resortként mindig ott lesz, ha a leendő belső megoldás, vagy a más külső lightweightebb JS interpreterek elbuknak a harcban. (A program egyébként a qjs és nodejs binárisokat magától is megtalálja.)
A QuickJS sztori sorsa egyelőre nem tudom mi lesz, mindenesetre majd még annyit megpróbálok, hogy a program kigyűjti értelmezi és kicseréli a dátumokat szabványosra (de jó móka lesz) és ha úgy viszi a QuickJS, akkor már sínen vagyunk (mint bármilyen eszköz bármilyen buszon).
Update: Ezt összedobtam teszt gyanánt JS-ben és az eredmény: igen, a dátumok miatt nem tudja futtatni a QuickJS.

Még annyit a lap aljára, hogy elképesztő, hogy a kugli mi energiát (és pénzt) öl bele, hogy króm-onlyvá tegyék a tecsőt...hogy aztán pár nap alatt mindenki így-vagy-úgy, de megkerülje a védelmet. (Mondjuk a mozillások fejét megnéztem volna tegnap, ugyanis - AFAIK - már rókában sem volt throttle...most van? Használja valaki a tyúktúbot latest rókával? Meg még majd a Kodi válaszlépésére leszek kíváncsi...)

Egyéb újdonságok:
- Lehet tiltani/engedélyezni az egész blacklistet (van hotkey is: Ctrl + E).

Apropója a funkciónak, hogy mint a múltkor kitárgyaltuk: a tecső irdatlan mértékben szennyezi a related videók listáját, viszont még nagyobb probléma, hogy nem feltétlenül szeméttel. A konzum, vagy bármilyen szemét nem probléma, mert egy mozdulat és a feltöltő júzer tiltva van, meg fel is lehet venni kulcsszavakat is a listába (pl. celebnevek, stb.) és többet nem jön elő. Amikor viszont nem szemetet pakol oda, hanem egyébként lehet, hogy értékes tartalmat, akkor annak a szűrése már problémásabb. Ha épp C64 demókat nézegetek, akkor baromi idegesítő, hogy a 20 videónak több mint a fele klasszikus zene, DIY, űrkutatás és hasonlók (bár ezek értékességéből nem egyszer jócskán levon az influenszeres körítés, amikor már nem maga a tartalom kap hangsúlyt, hanem a prezentáló exhibicionista ripacs autofellatio-ja; külön bónuszpont, ha még ráadásul konzekvensen baromságot is beszél, akkor már erősen karcolgatja a szemét kategóriát, amiért igazából nem is kár), viszont ha ezeket a felhasználókat is blokkolja az ember, akkor meg majd akkor nem fognak feljönni, amikor pont ilyen tartalmakat nézeget az ember és többszáz, vagy akár többezer tiltott júzernél már senki nem fogja tudni, hogy melyik mit is publikált, de ha tudná, sem fogja kikapcsolgatni az összeset és ugyanez vonatkozik a kulcsszavas szűrésekre. Innentől sebtapasz gyanánt ilyenkor ki lehet kapcsolni egyszerre a fekete listát.

Ez persze nem oldja meg magát a helyzetet, nem is arra való, ez csak mitigáció, a probléma komplex, úgyhogy komplex megoldást igényel: a jövőben - valamikor - implementálásra fog kerülni egy related/non-related filter is, ahol tkp. lesznek listáink, hogy adott kifejezések esetén mely más kifejezések számítanak related-nek és ha rákeresünk valamire, vagy kinyitunk valamit, akkor a keresésből, vagy a videó címéből az egyes szavak és az ahhoz kapcsolódó related szavak alapján a program fel fog építeni egy szűrőlistát és abból fogja eldönteni, hogy egy related videó tényleg related-e. Tehát - példánál maradva - ha C64-es demókat nézünk, akkor a C64 kapcsán related-nek fognak számítani más retroplatformokkal kapcsolatos videók is, tehát pl. egy Amiga zene, vagy egy Spectrum játék related lesz és a demó kapcsán related-ek lesznek más demók videói, tehát pl. egy PS3 demo is. A konkrét megnézett demó kapcsán pl. a csapat más demói is related-ek lehetnek, stb...
Szóval nagyjából így fog működni. Feltéve, ha a tisztelt júzer összerakja magának. Viszont ezek a listák importálhatóak/exportálhatóak lesznek, szóval lehet majd osztogatni.

- A player és az url pass léptetését innentől megjegyzi a program.

- Ugyan olvastam, hogy valakinek Qt5 alatt nem működik a képernyő méreteire való formátumlimitálás, de reprodukálni nem tudtam, nekem működik. Mindenesetre az informalitás kedvéért innentől a két legördülő melletti szövegdoboz nem mindig a beállított custom méretet fogja tartalmazni (csak nem custom beállításnál letiltva), hanem kijelzi, hogy +inf, vagy a képernyő adott dimenzióját. Így legalább látszik, hogy működik-e a képernyő méreteinek lekérése Qt5 alatt.

Bugfixek:
- A hotkeyek kezelője csak a Ctrl lenyomását vizsgálta, azt nem, hogy a többi emelő nincs lenyomva.
- A Ctrl + D mindig az utolsó jobbklikkel megküldött tabot duplikálta, nem az éppen aktívat.
- A subtitle argumentumot hibásan töltötte ki a program, ha nem volt subtitle megadva. (Csak egy warningot eredményezett a player stderr-jén, a lejátszás ment.)

Letöltések:
- FreeBSD AMD64
- Linux AMD64 GTK2
- Linux AMD64 Qt5
- Linux i686
- OpenBSD AMD64
- Solaris AMD64
- Manual
- Online manual
(Az SHA1 ellenőrzőösszegeket a letöltőoldalon kiírja a rendszer.)

Hozzászólások

Gratulálok a rejtvény fejtéshez és a megoldáshoz! Jó móka lehet!

> Még annyit a lap aljára, hogy elképesztő, hogy a kugli mi energiát (és pénzt) öl bele, hogy króm-onlyvá tegyék a tecsőt...

Nincs olyan érzésed, hogy ezt mind előre betárazták és apránként csöpögtetik ki? Van egy adatbázisuk, hogy mik a különbségek a böngészők között, és ezekre építve előre fel vannak építve ennek a rétegei és mindig egy újabbat release-elnek. Szerintem a következő az lesz, hogy egy láthatatlan Canvasra fog renderelni, és annak az eredménye lesz a kulcs. Ne legyen igazam!

Szerkesztve: 2022. 08. 14., v – 22:23

"Használja valaki a tyúktúbot latest rókával?" - Igen. Nekem problémamentesen megy. (103.0.2, Windows 10, 64 bit - igaz rettenet sok RAM (8GiB) és CPU-teljesítmény (i5 3470, 4darab 3.2GHz-en ketyegő mag) van a gépben.)

A Newpipe is szenvedett két napig mire frissült és újra lehet rendetlenkedni vele :)

Ez most valószínűleg minden érintettnek derült égből seggbebaszás volt. A Kodi is hasonló módon oldotta meg egyébként, mint a YTFE tette (egész pontosan a megközelítést tőlük puskáztam), szóval most kb. ők is ugyanama válaszút előtt állnak, hogy vagy - átmenetileg, tűzoltásnak, vagy állandóra, megoldásnak, de - berántanak egy JS interpretert a játékba, vagy a YT még hetekig használhatatlanul lassú lesz, amíg a régi megoldást vagy újraírják, vagy megpatkolják, hogy ennek az új - sokkal gusztustalanabb - algoritmusnak a szimulálására is képes legyen.

Egyébként nem tudom mire számít a kugli; ameddig a króm motorja nyitva van, addig minden króm-onlyvá tételi kísérlet eredendően kudarcra van ítélve, még akkor is, ha valami olyan abszurd dologgal is próbálkoznának meg, amit asch vizionált: ha végképp nem megy másképp, akkor a projektek még mindig beránthatják a Chromium összes szükséges részét V8-astól, DOM-fástól - jó bloated lesz, de a tecsőt szutyokká tévő részeket (reklámok, tracking és a többi) ki lehet vele kerülni, mert egyszerűen semmi mást nem fog végrehajtani a YT szeméthegyéből, mint a decipheringet is lehetővé tevő részeket. A motort meg nem tudják bezárni, sem a license (BSD && LGPLv2.1), sem a ráépülő ipar miatt; szarráperelné őket a szabadszoftveres és a kapitalista világ is egy perc alatt.

Erről beszéltem, hogy ha végképp nincs más, akkor még mindig be lehet húzni egy egész Chromiumot; mondjuk ők egy kicsit korán kezdték, de nem tudom őket hibáztatni, hogy elébementek a kugli jövőbeli szívatásainak. :P
Teljesen szétveri a kugli a YT-t; 2017 óta túrom a tecső mélyét és csak egyre rosszabb lett: egyre kevesebb infót lehet belőle kinyerni egyre nehezebben, mert azt az egyre kevesebb infót egyre körülményesebben és bonyolultabban tárolják...

Nem. Egyrészt azért csinálják, mert nem tudnak programozni, ill. dogmák mentén programoznak. Ez nagyon jól látszik a JS agyonerőltetéséből. Másrészt pedig króm-only-vá akarják tenni a portált. Mire is fel szegi meg valaki a felhasználási feltételeket, csak mert pl. Firefoxot vagy Safarit használ?
BTW, felhasználási feltételek: aki még azelőtt regisztrált, hogy a kugli felvásárolta volna a tecsőt, az a régi felhasználási feltételeket fogadta el, nem a kugliét. Visszamenőleges hatály nincs. Azt pedig a múltkor sem tudtad bizonyítani, hogy a YT felhasználási feltételeiben benne volt, hogy ők azokat egyoldalúan módosíthatják. Ha pedig ez nem volt benne, akkor tkp. a kugli minden változtatása érvénytelen azok számára, akik még azelőtt regisztráltak oda, hogy a kugli megvette volna.

A firefox-szal működk az oldal, az, hogy egy one-man-show visszafejtős módon készült alkalmazás megborul, az az így jártál kategória. És igen, valamennyi (!) felhasználási feltételek dokumentumban de facto alap, hogy a szolgáltató jogosult egyoldalúan megváltoztatni. Gondolj bele, ha nem így tenné pubélikussá a szolgáltatását, akkor az első változtatáskor valamennyi(!!!) felhasználótól hozzájárulást kellene kérni. Egyébiránt meg azzal, hogy használod, elfogadod az aktuális feltételeket:
 

 

Ha nem értette meg a Szerződést, vagy a Szerződés bármely részét nem fogadja el, nem használhatja a Szolgáltatást."

"A rendelkezésére bocsátott Szolgáltatást mindaddig elérheti és használhatja, amíg betartja a jelen Szerződést és vonatkozó jogszabályokat. A Tartalmakat személyes, nem kereskedelmi céllal tekintheti és hallgathatja meg."

A Szolgáltatás használatára az alábbi korlátozások érvényesek. Az alábbi tevékenységek nem engedélyezettek:

[...]
2 A Szolgáltatás funkcióinak megkerülése, kikapcsolása, csaló módon történő használata vagy egyéb módon történő befolyásolása (vagy ilyen tevékenységekre való kísérlet), beleértve a biztonsággal kapcsolatos funkciókat, valamint azokat a funkciókat, amelyek (a) megakadályozzák vagy korlátozzák a Tartalom másolását és egyéb módon történő felhasználását; vagy (b) korlátozzák a Szolgáltatás vagy a Tartalom használatát;

 

Egyébként 2018-ig visszameve:
https://www.youtube.com/t/terms?archive=20180525

ott van benne, amit hiányoltál:

 

YouTube reserves the right to make changes the Terms from time to time, for example to address changes to the law or regulatory changes or changes to functionality offered through the Service. Therefore you must look at the Terms regularly to check for such changes. The modified version of the Terms (the "Modified Terms") will be posted at https://www.youtube.com/t/terms or made available within the Service (for any modified additional terms). If you do not agree to the Modified Terms you must stop using the Service. Your continued use of the Service after the date the Modified Terms are posted will constitute your acceptance of the Modified Terms.

 

A firefox-szal működk az oldal

Most éppen, de borította már meg a kugli őket is. Szóval, miért is felhasználási feltételszegés, ha valaki rókával nézi a tecsőt? Ha meg nem az, akkor miért is próbálja meg korlátozni a Firefox usereket a kugli?

És igen, valamennyi (!) felhasználási feltételek dokumentumban de facto alap, hogy a szolgáltató jogosult egyoldalúan megváltoztatni.

Nem, ez nem alap, egy szerződésben nincs olyan, hogy "alap", az van, ami bele van írva.

Egyébiránt meg azzal, hogy használod, elfogadod az aktuális feltételeket:

Nem. Nem cserélhetik ki alattam. Visszamenőleges hatály nincs.

A Szolgáltatás funkcióinak megkerülése, kikapcsolása, csaló módon történő használata vagy egyéb módon történő befolyásolása (vagy ilyen tevékenységekre való kísérlet), beleértve a biztonsággal kapcsolatos funkciókat, valamint azokat a funkciókat, amelyek (a) megakadályozzák vagy korlátozzák a Tartalom másolását és egyéb módon történő felhasználását; vagy (b) korlátozzák a Szolgáltatás vagy a Tartalom használatát;

Ez egyébként úgy, ahogy van egy gumiparagrafus: nincs definiálva benne, hogy mit takar a "megkerülés", a "csaló módon történő használat" és a "befolyásolás"; jó reggelt kívánok, bármit csinálok, befolyásolom a funkciókat, ha megnyomom a play gombot, ha kinyitok egy másik videót... BTW, mi az, hogy "kikapcsolása"? Nem lehet kikapcsolni az autoplay-t? Az is egy funkció.

Egyébként 2018-ig visszameve:
https://www.youtube.com/t/terms?archive=20180525

ott van benne, amit hiányoltál:

Nem, én nem ezt hiányoltam, hanem a YT eredeti felhasználási feltételeit, azelőttről, hogy a kugli felvásárolta 2006-ban.

"Nem. Nem cserélhetik ki alattam. Visszamenőleges hatály nincs." - De, kicserélhetik alattad. Nézd meg bármelyik szolgáltatóddal kötött szerződésedet - Megtehetik, tájékoztatást kell adni róla (ha meghatározatlan a felhasználói kör, akkor elég a naprakész feltételekre egy link a weboldalon, ha van/volt YT fiókod, akkor a felvásárlás kapcsán bekövetkezett változásokról, illetve valamennyi, azóta történt módosításról kaptál e-mailt), és teljesen jogszerű az is, hogy az oldal használatával elfogadod a felhasználási feltételeket.

"BTW, mi az, hogy "kikapcsolása"?" - Például a video előtti reklám megjelenítésének az eltüntetése.

Ne próbálj okosabb lenni,mint a YouTube, illetve a Google jogászai, mert nem fog menni - vagy ha úgy gondolod, hát menj perre velük, mi meg majd csendben szurkolunk neked :-)

Nem válaszoltál erre a kérdésre:
Szóval, miért is felhasználási feltételszegés, ha valaki rókával nézi a tecsőt? Ha meg nem az, akkor miért is próbálja meg korlátozni a Firefox usereket a kugli?

De, kicserélhetik alattad. Nézd meg bármelyik szolgáltatóddal kötött szerződésedet - Megtehetik, tájékoztatást kell adni róla (ha meghatározatlan a felhasználói kör, akkor elég a naprakész feltételekre egy link a weboldalon, ha van/volt YT fiókod, akkor a felvásárlás kapcsán bekövetkezett változásokról, illetve valamennyi, azóta történt módosításról kaptál e-mailt)

Csak akkor változtathatnak, ha beleírták és erre még nem adtál semmi forrást, hogy a YT beleírta-e annakidején. Az, hogy a kugli utána mit mahinált, az irreleváns, hacsak valaki nem utána ment oda.

és teljesen jogszerű az is, hogy az oldal használatával elfogadod a felhasználási feltételeket.

Nem, ha korábban már elfogadtam más feltételeket, visszamenőleges hatállyal nincs változtatás.

Például a video előtti reklám megjelenítésének az eltüntetése.

Egy: az nem kikapcsolás; kikapcsolás az pl. az autoplay kikapcsolása, amire a YT egyébként ad is gombot...most akkor az is tilos, hiába adnak rá gombot? Kettő: nincs definiálva, mi az, hogy "eltüntetés"; mi van, ha én nem tüntetek el semmit, csak a videoplayer ki sem nyitja? Három: ha már reklámok eltüntetése: te is reklámblokkolót használsz, akkor te is megszeged a felhasználási feltételeket? (Nem csak a YT-n, hanem bármelyik reklámokat tartalmazó oldal esetén.)

Ne próbálj okosabb lenni,mint a YouTube, illetve a Google jogászai, mert nem fog menni

Máris "okosabb vagyok", mert pontosan tudom, hogy ezt a gumiparagrafusokkal teli marhaságot sosem tudják érvényesíteni velem szemben.

vagy ha úgy gondolod, hát menj perre velük, mi meg majd csendben szurkolunk neked :-)

Minek mennék én perre velük, amikor egyszerűen elereszthetem a fülem mellett a kugli marhaságait?