kodi-czsk / script.module.stream.resolver

3 stars 25 forks source link

Externe titulky su ulozene, no nie su zobrazene #37

Closed jose1711 closed 8 years ago

jose1711 commented 8 years ago

S problemom som sa stretol pri LibreElec na RPi2, Kodi 16.1 - na OpenElecu sa nic take neprejavovalo. Ide o to, ze titulky boli korektne detegovane, ulozene, no Kodi ich nenacital, teda ani nezobrazil. Po porovnani syscallov, ktore robi OpenElec a LE zacalo byt zrejme, ze sa jedna o problem pri ukladani suboru - vyzera to tak, ze subor s titulkami napriek jeho uzatvoreniu nebol ulozeny. Neviem, ci sa jedna o problem kernelu, LE alebo fw karty, ale velmi jednoduchym riesenim bolo pridanie riadku xbmc.sleep(1000) do funkcie save_to_file, za f.write(request(url)) (subor xbmcutil.py).

lubo commented 8 years ago

xbmc.sleep(1000) znie ako hlupy workaround, ktory v skutocnosti neadresuje dany problem. Mne to asobne to znie ako viacej problem so syncovanim. Ako asi vies, kernel by-default neflushuje vsetko okamzite na disk. Robi to az vtedy, ked si povie, ze je ta spravna chvila. Ak ale potrebujes, aby kernel ukamzite flushol subor na disk, tak skus pridat za f.write(request(url)) riadok f.flush() a daj vediet, ze ci to pomohlo.

P.S.: Nevie si Kodi tahat titulky cez HTTP ? Kebyze si to Kodi vie managovat same, tak by sme mali o par problemov menej.

jose1711 commented 8 years ago

f.flush() som uz skusal, aj 2x za sebou a bez efektu. a ano, viem, ze je to blby napad, ale neviem, ci cas straveny investigovanim skutocnej priciny za to stoji. o moznosti podhodit Kodi http stream neviem

lubo commented 8 years ago

Tak skus este toto. Ak nepomoze ani to, tak problem zrejme lezi niekde inde. Urcite to chce spravne riesenie, ak je problem niekde na nasej strane. xbmc.sleep(1000) moze sice pomoct tebe, ale nemusi vsetkym ostatnym.

jose1711 commented 8 years ago

skusil som s tymto:

          f = open(compat_path(file), 'w', 0)
          f.write(request(url))
          f.flush()
          f.close()

a titulky sa stale nezobrazuju. ak ale za tym pridam citanie suboru a zobrazenie v debug logu, tak toto funguje. problem teda moze byt niekde "vyssie". nejaky napad?

lubo commented 8 years ago

Dokumentacia hovori, ze buffering=0 je povoleny len v binarnom mode. Skus teda nastavit mod na w+b.

jose1711 commented 8 years ago

nezabralo ani s w+b

lubo commented 8 years ago

Tak potom ma uz nic nenapada. Iba skusit overcomnut tento problem tak, ze to cele skusit nechat na Kodi.

mx3L commented 8 years ago

Ahojte,

Titulky sa nestiahnu pokial nie je zaslana spravna Cookie hlavicka, cize pouzit cookiejar, vytiahnut z neho cookies ulozit medzi potrebne hlavicky a poslat ich pri stiahnuti tituliek, nieco taketo:

https://gist.github.com/anonymous/ef5c4e6d257c69638e7cbd4e4d35c49e