Open koivo opened 6 years ago
Natürlich darf man das machen. EMC beendet sogar erst den Timer, danach kann man löschen.
Neu seit https://github.com/betonme/e2openplugin-EnhancedMovieCenter/commit/e2abdad09fc0e1aa2f2403d46e2fb5f570ad4da7 geht das auch bei wiederholenden Timern, und es kommt sogleich nach der Frage ob der Timer beendet werden soll, auch die Frage ob gleich auch gelöscht werden soll. ;)
Funktioniert hier auf OE2.5 und OE2.0
//EDIT Eben gesehen das ich nicht genau gelesen habe, das du ja während dem Abspielen löschst. Sollte ja auch gehen, wie Sven schon ausprobiert hat. ;) Ansonsten geht nix ohne Crashlog
ist ja die Frage, ob er eine laufende oder fertige Aufnahme abspielt.
Hab bei mir gerade beide Fälle durchgespielt. Zum Löschen während der Wiedergabe einfach nochmal während der Wiedergabe die PVR-Taste. Dann öffnet sich wieder EMC trotz weiterlaufender Wiedergabe. Dort dann den Film löschen, der gerade wiedergegeben wird.
Da kommt bei mir sogar die Frage, ob die laufende Wiedergabe wirklich gelöscht werden soll. Einen Crash habe ich nicht hinbekommen.
Es handelt sich um eine fertige Aufnahme. Ein laufende Aufnahme abbrechen und löschen funktioniert. Crashlog ist auch kein Problem. Papierkorb ist aktiviert und Caching ist deaktiviert. Also während der Wiedergabe in die Filmliste gehen und dort den Film löschen welcher grade abgespielt wird. enigma2_crash_1516594167.log
Ich bin mir eigentlich ziemlich sicher, dass ich diese Funktion auch nach der letzten Änderung erst getestet hab weil ich die Abfrage dazu im Code gesehen hatte und das funktionierte ohne Crash. Ich seh in dem Log auch keinen Crash, ist das Log unvollständig?
Ist auf dem Image vielleicht eine zu alte python version drauf?
unbindAction unbindAction with illegal python reference
Dann sollte es in allen OA Images falsch sein. Das HDF wird ja auch aus dem OE-Core gebaut. Ich kann es gerne auch mal mit einem Image aus dem OE-Core 4.2 testen. Das Log ist an der Stelle zu Ende. Es gibt einen harten Crash und Enigma startet sofort neu.
@koivo
Schreibe doch bitte mal deine Schritte hier genau auf. Ich habe ja oben meinen Testweg halbwegs beschrieben und schaffe es nicht, die Box dabei zu crashen.
Welche Version vom EMC verwendest du? Die letzte Version hier aus dem git?
Also wenn dass das komplette Log ist kommt der Crash ja schonmal nicht aus dem Pythoncode sonst würde da etwas stehen. Und dort wo es "crasht" wurde die Wiedergabe ja auch schon längst angehalten und das File gelöscht...
Also mein genauer Weg ist folgender:
Das File ist trotz Crash danach auch gelöscht und im Papierkorb. EMC ist sehr aktuell hier aus dem git. Es fehlen vielleicht die letzten 3 Commits. Einfachste Lösung ist wahrscheinlich die Rückkehr zur Fileliste per keymap zu verhindern. Also die Stopp Taste zur Pflicht zu machen. Ich teste es aber gern auch noch einem anderen Image und/oder Version. ATV zum Beispiel. Dank Multiboot ist das ja kein Problem. Ich werde das auch mal mit dem integrierten einfachen Movieplayer probieren.
Ok, mit Movieplayer testen wird vermutlich wenig bringen selbst wenn es dort gehen sollte. Aber ohne aussagekräftiges Crashlog kommen wir hier vermutlich auch nicht weiter :(
Ich kann das Ganze auch mal im Telnet laufen lassen und mitschneiden. Aber da wird vermutlich auch nicht mehr zu sehen sein.
unbindAction unbindAction with illegal python reference
kann es sein, dass "unbindAction" im aktuellen Quellcode von EMC gar nicht mehr vorkommt? Mein Dateimanager findet den Text gar nicht. Von daher scheint doch irgendwas nicht ganz zusammenzupassen.
@koivo Auch mit deinem Ablauf bekomme ich keinen Crash. Am besten wohl erstmal die aktuelle Version aus dem git installieren.
unbind haben wir doch erst Grad im Setup raus genommen. https://github.com/betonme/e2openplugin-EnhancedMovieCenter/commit/1172f3dae38639e3554551ecf36aaca5ab20c94d Das sollte aber eigentlich nur das Setup betreffen.
und wieso kommt das bei ihm noch als Fehler ?
Seine Version ist von vor ein paar tagen. Mal mit aktuellem Stand testen. Wobei das bind unbind da ist schon sehr lange im EMC. Ich mag mich noch erinnern als wir diese Funktion mit den beiden Farbtasten zur Bestätigung diskutiert hatten. ;)
Wobei das bind unbind da ist schon sehr lange im EMC.
Dass das unbind unter bestimmten Umständen zu Problemen führt, hast du ja selbst gespürt #224 ;) Ich wollte damit ja auch nur sagen, dass er nicht die aktuellste Version zu haben scheint. Und bevor er hier andere Images durchtestet, er doch vorher einfach mal die aktuelle Version testen sollte ;)
Zumal das unbind ja nur für die Setup-Option verwendet wurde. Da ist mir rätselhaft, was das mit dem Löschen von Dateien zu tun haben soll ?!?
Jungs das eine hat mit dem anderen überhaupt nix zu tun ;) Ich hab doch schon gesagt Logfile ist unvollständig. Das ist kein Pythonfehler.
Also mit der aktuellen Version getestet hab ich jetzt. Crash kommt immer noch. In der Movieselection funktioniert das Löschen problemlos. Ein vollständigeres Log kann ich nicht liefern. Die Ausgabe im Telnet sieht so aus:
18:19:06.9718 Plugins/Extensions/EnhancedMovieCenter/EMCFileCache.py:214 delPathFromCache EMC delPathFromCache /media/hdd/movie/trashcan
18:19:06.9725 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:2730 execFileOp EMC ret exeFil 4097:0:0:0:0:0:0:0:0:0:/media/hdd/movie/Dolby_Conductor_Lossless_ATMOS-thedigitaltheater.mkv:Dolby_Conductor_Lossless_ATMOS-thedigitaltheater
18:19:06.9726 Plugins/Extensions/EnhancedMovieCenter/EMCFileCache.py:214 delPathFromCache EMC delPathFromCache /media/hdd/movie/trashcan
18:19:06.9735 Plugins/Extensions/EnhancedMovieCenter/EMCFileCache.py:214 delPathFromCache EMC delPathFromCache /media/hdd/movie
18:19:06.9772 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
18:19:06.9809 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1706 setReturnCursor EMC ret setCur 4097:0:0:0:0:0:0:0:0:0:/media/hdd/movie/Dolby_Conductor_Lossless_ATMOS-thedigitaltheater.mkv:Dolby_Conductor_Lossless_ATMOS-thedigitaltheater
18:19:06.9811 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
18:19:06.9842 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] Run script
18:19:06.9850 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] executing: 'touch "/media/hdd/movie/20180122 1817 - ZDF HD - SOKO München.eit"; mv "/media/hdd/movie/20180122 1817 - ZDF HD - SOKO München.eit" "/media/hdd/movie/trashcan/"; touch "/media/hdd/movie/20180122 1817 - ZDF HD - SOKO München.ts"; touch "/media/hdd/movie/20180122 1817 - ZDF HD - SOKO München.ts."*; mv "/media/hdd/movie/20180122 1817 - ZDF HD - SOKO München.ts" "/media/hdd/movie/trashcan/"; mv "/media/hdd/movie/20180122 1817 - ZDF HD - SOKO München.ts."* "/media/hdd/movie/trashcan/"'
18:19:06.9915 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
18:19:06.9958 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1706 setReturnCursor EMC ret setCur 4097:0:0:0:0:0:0:0:0:0:/media/hdd/movie/Dolby_Conductor_Lossless_ATMOS-thedigitaltheater.mkv:Dolby_Conductor_Lossless_ATMOS-thedigitaltheater
18:19:06.9961 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
18:19:07.0000 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
18:19:07.0035 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
18:19:07.0103 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [EMCMS] deleteMovie
18:19:07.0172 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:761 cancelThreadMsg [EMCMovieSelection] cancelThreadMsg
18:19:07.0264 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
FATAL: 18:19:07.0344 actions/action.cpp:91 unbindAction [eActionMap] unbindAction with illegal python reference
18:19:11.0332 gdi/grc.cpp:193 thread main thread is non-idle! display spinner!
Killed
root@mutant51:~#
Hm also das Problem scheint nicht zu existieren auch im OpenATV gibt es keinen Crash.
Ja das stimmt. Muss ich mal schauen wie das dort abgefangen ist. Aber unbedingt gesund sieht das im Telnet auch nicht aus:
05:31:26.1005 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
05:31:26.1033 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
05:31:26.1129 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] sh exec 'touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.eit"; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.eit" "/media/hdd/movie/trashcan/"; touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts"; touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts."*; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts" "/media/hdd/movie/trashcan/"; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts."* "/media/hdd/movie/trashcan/"' finished, return status = 0
05:31:26.1134 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] sh exec rebound
05:31:26.1136 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:46 emcDebugOut Unexpected error: <type 'exceptions.KeyError'>
05:31:26.1136 Traceback (most recent call last):
05:31:26.1137 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py", line 130, in runFinished
05:31:26.1140 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 2711, in delCB
05:31:26.1142 KeyError: 'list'
05:31:26.1143 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] sh exec 'touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.eit"; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.eit" "/media/hdd/movie/trashcan/"; touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts"; touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts."*; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts" "/media/hdd/movie/trashcan/"; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts."* "/media/hdd/movie/trashcan/"' finished, return status = None
05:31:26.1145 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:46 emcDebugOut Unexpected error: <type 'exceptions.KeyError'>
05:31:26.1146 Traceback (most recent call last):
05:31:26.1146 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py", line 130, in runFinished
05:31:26.1148 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 2711, in delCB
05:31:26.1149 KeyError: 'list'
05:31:26.1152 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:1420 resetInfo EMC: resetInfo
05:31:26.1157 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] sh exec rebound
05:31:26.1159 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:46 emcDebugOut Unexpected error: <type 'exceptions.AttributeError'>
05:31:26.1160 Traceback (most recent call last):
05:31:26.1161 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py", line 130, in runFinished
05:31:26.1163 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 1701, in initCursor
05:31:26.1165 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 1384, in updateInfo
05:31:26.1166 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 1421, in resetInfo
05:31:26.1168 AttributeError: 'EMCSelection' object has no attribute 'delayTimer'
05:31:26.1171 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:43 emcDebugOut EMC: [emcTasker] sh exec 'touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.eit"; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.eit" "/media/hdd/movie/trashcan/"; touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts"; touch "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts."*; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts" "/media/hdd/movie/trashcan/"; mv "/media/hdd/movie/20180123 0530 - Das Erste HD - ARD-Morgenmagazin.ts."* "/media/hdd/movie/trashcan/"' finished, return status = None
05:31:26.1174 Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py:46 emcDebugOut Unexpected error: <type 'exceptions.AttributeError'>
05:31:26.1177 Traceback (most recent call last):
05:31:26.1179 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/EMCTasker.py", line 130, in runFinished
05:31:26.1182 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 1701, in initCursor
05:31:26.1186 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 1384, in updateInfo
05:31:26.1188 File "/usr/lib/enigma2/python/Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py", line 1421, in resetInfo
05:31:26.1190 AttributeError: 'EMCSelection' object has no attribute 'delayTimer'
05:31:26.1196 Plugins/Extensions/EnhancedMovieCenter/EMCFileCache.py:65 delcacheCountSizeList EMC delete cacheCountSizeList {}
05:31:26.1200 Plugins/Extensions/EnhancedMovieCenter/MovieSelection.py:2990 postFileOp ('[EMC] postFileOp exception: ', "'list'")
Hi,
ja ich weiß das macht man nicht, aber scheinbar wissen das nicht alle. Wird eine Aufnahme abgespielt und während der Wiedergabe gelöscht, dann crasht die Box. Kann man das irgendwie abfangen?