Beiträge von Homeserver

    Wenn man hier etwas mehr Schmackes dran bekommen wollte, würde ich den Empfang und das Setzen der Bilder in XBMC in Threads auslagern. Dann könnte man erreichen, das die Bilder unabhängig voneinander aktualisiert werden. Aber das wird dann schon eine Nummer härter, weil man dann wohl schauen müsste, wann, welcher Thread fertig ist oder man mit locks (ist glaube ich bei Python der Fall) arbeiten müsste... Das ist mir dann aber auch zu viel Maloche und dann kommt noch hinzu das ich mit Threads generell irgendwie auf Kriegsfuß stehe

    Hey Python Krieger - mit dem Code
    http://workerpool.googlecode.com/svn-history/r2…Downloader.wiki

    sollte man die Aktualisierung der Bilder multithreaded hinbekommen und somit einen fast flüssigen Stream bekommen.


    Ist das dann auch eine Maloche oder könnte man das mit dem Code oben hinbekommen? ?(


    Ciao ciao der Homi

    Du könntest auch direkt in die Schleife (nach der if-Abfrage) ein xbmc.executebuiltin('RunScript(...)') bzw ein xbmc.executebuiltin('RunAppleScript(...)') einbauen und damit ein Script aufrufen... Dann wird es bei jedem Durchgang aufgerufen...
    Finde ich allerdings ziemlich dirty...


    Mometan bin ich mal beim schauen ob ich nicht eine Lösung finden kann. Das wäre eine Lösung auch wenn sie nicht schön ist. Bei jedem Schleifendurchlauf das zu machen ist wohl echt etwas übertrieben. Naja

    Version - Ich verwende 12.3 also noch nicht die neue und das wird auch noch lange so bleiben.

    Ich verwende ja das Skin von Madmax und das noch mit einigen Anpassungen. Der Umstieg wird sicher länger dauern weil solange nicht alles wieder so läuft wie ich es jetzt hab werde ich nicht nachziehen. Also ich werde zumindest parallel einen 2. User anlegen und testen bevor ich mein ganzes System umstelle.

    Hier habe ich bis jetzt leider noch keinen Weg gefunden und die globalidletime zurückzusetzen oder irgendeine "Aktion" aus dem Script heraus auszulösen um sich vor der Aktivierung des Bildschirmschoners zu schützen...


    Laut den functions

    http://wiki.xbmc.org/index.php?titl…lt-in_functions

    kann man ein applescript ausführen.

    Wenn ich ein Applescript mache das einfach die Taste nach oben einmal drückt würde das schon genügen um die idel time zu reseten.

    Dh wenn du einen Counter einbaust der einmal in der Minute das Applescript aufruft dann würde das ja genügen?!

    Das Interessante bei Kamera 3 ist auch der schmalere schwarze Balken in dem "richtigen" Bild... Ist das eine andere Kamera oder liefert die eine andere Auflösung im Vergleich zu den anderen?

    Also die Kamera 3 hat eine wesentlich höhere Auflösung daher ist der Balken kleiner. Interessant ist aber das das Versetzten der Bilder unterschiedlich auch bei anderen Kameras passiert! Also es ist nicht immer die 3er ?( Ganz kuriose Sache

    Ich habe auch keine Lust mir beim Tippen meines Nics immer die Finger zu verknoten

    Das meinte ich garnicht - Dann hast I am number 4
    noch nicht gesehen - https://www.youtube.com/watch?v=g5djHG3hPu0

    Also was die Zeiten angeht hab ich jetzt 0.01 und 1. Dabei ist jetzt die Situation so das er die Zeit 20:00:00 20:00:01 20:00:02 20:00:04 anzeigt.
    Der Zyklus bleibt immer gleich also jeder 4. Schritt ist dann um 1 Sekunde verzögert.
    Wahrscheinlich wegen dem xvmc.sleep(1) der ist ja sicher auch in Sekunden. Kleinere Werte nimmt er mir leider nicht weil dann funktioniert der ESC nicht mehr.
    Also bis auf den kleinen Springer aktualisiert er jetzt sauber! Auch ohne Bildfehler das ist nämlich sehr interessant!! Damit meine ich die Refresh Fehler.


    Das Versetzten Zeig ich gleich noch.

    Hi 4 - Are you Number 4 :?:

    Die Koordinaten der Bilder hatte ich ebenfalls verändert, damit das Bild vollständig ausgefüllt wird...

    Ja die Koordinaten hatte ich nur verschoben damit unten der Rssfeed noch zu sehen ist. Das ist aber nicht das eigentliche Problem sondern die Verschiebung des Bilds innerhalb des Bildfensters. Am einfachsten mach ich mal einen Screenshot das sagt mehr aus -> Wird nach geliefert

    Das habe ich in den Griff bekommen...


    Super das war eigentlich von den drei Themen das was mir am meisten Sorgen bereitet hat.

    Ich werde die neue Version Abends zuhause mal testen. Vielleicht hast ja irgend wann mal ne Eingebung wie man das mit dem Bildschirmschoner hinbekommen könnte.

    Super Sache - Danke Ciao ciao


    Zitat von »Homeserver«
    Ein verkürzen der Zeit auf 0.1 bringt dann leider nichts mehr weil dann auch Bilder angezeigt werden die nur teilweise übertragen wurden.

    Das dürfte theoretisch nicht passieren... Selbst wenn die 100ms bereits verstrichen sind und wieder neue Bilder empfangen werden dürften, müssten eigentlich zuerst alle Bilder sauber nach und nach empfangen und angezeigt werden.

    ich hab mal schnell ein paar Screenshots gemacht was den Bildrefresh betrifft
    http://workupload.com/file/YzsEeEhE

    http://workupload.com/file/U3da1ttc

    http://workupload.com/file/SBSIEjrx
    das passiert wenn man 0.1 bei (time.time() - cur_time > 0.1) verwendet.

    Auch wenn man es langsamer macht passiert das immer wieder mit den lokalen Kameras die eigentlich die Bilder auch schneller liefern sollten.

    Springen die hin und her oder passt die Aufteilung generell nicht? Bei zweiterem kannst du das ja über die Positionen in "xbmcgui.ControlImage(0, 0, 640, 360, IMAGEFILE1, aspectRatio=0)" regeln...


    also die Position der Bilder über die Koordinaten passt schon.Jede Kamera blendet oben in einer Leiste die Zeit und Datum ein. Interessanter weise sind ab ab und zu die Bilder in dem definierten Fenster versetzt sodaß die Leiste mit der Zeit und dem Datum wegfällt. Ganz kurios.
    Eigentlich sollte er ja jedes Bild in das Angegebene Koordinatenfenster scalen und verzerren das es reingeht.

    Das dürfte theoretisch nicht passieren... Selbst wenn die 100ms bereits verstrichen sind und wieder neue Bilder empfangen werden dürften, müssten eigentlich zuerst alle Bilder sauber nach und nach empfangen und angezeigt werden.

    Also bei mir zeigt er dann immer wieder Bildfehler. Also halb oder 2/3 aufgebaute Bilder. Der Rest des Bildes ist dann grau oder schwarz und manchmal auch in größere Artefakte zerlegt und grün. Schrottig halt

    Das sollte auf keinen Fall so klingen als ob ich mich zu tote jammere. Grundsätzlich bin ich schon sehr zufrieden. Das schaut richtig gut aus :thumbup:


    Für die Refresh-Rate ist dieser sleep Wert auch nicht von Bedeutung

    Hi 4lb3rtO
    hoffentlich brech ich mir das nächste mal nicht die Finger wenn ich deinen Nic tippe :)

    - 1. Also ich hab jetzt mal mit dem Wert if (time.time() - cur_time > 9) gespielt und bin bei 0,2 gelandet.

    Die Aktualisierung läuft mit dem netzinternen Kameras natürlich viel schneller als mit den Links aus dem Netz.

    Mit 0.2 und dem xbmc.sleep(50) rausgenommen läuft es wirklich sehr sauber. Fast im Sekundentakt. Manchmal springt es 2 Sekunden weiter.

    LEIDER funktioniert ein Abbrechen des Scripts nicht mehr wenn man den xbmc.sleep weglässt. Ein verkürzen der Zeit auf 0.1 bringt dann leider nichts mehr weil dann auch Bilder angezeigt werden die nur teilweise übertragen wurden.

    - 2. Sehr interessant allerdings ist das auch wenn ich das Script nicht verändere und es mit ESC beende die Cam1-4.jpg Bilder im User Script Verzeichnis dann noch weiter ausgetauscht und aktualisiert werden! Obwohl das Script aus meiner Sicht eigentlich beendet wurde.

    - 3. Nur so nebenbei fällt mir auf das die Bilder der Cameras immer etwas versetzt sind. Das ist sehr komisch. Der aspectRadio hat dabei auch 0 Einfluss kommt mir.

    Leider kann ich auch zu den Code Verbesserungen keine Stellung nehmen weil ich 0 Ahnung von Python hab - Sonst würde ich selber angreifen und den Code verbessern.

    Hast noch Ideen wie man den Code noch verbessern könnte ohne eine "Maloche" auszulösen?

    Ciao der Homi und Danke bis jetzt!

    ==>> UPDATE wenn ich den xbmc.sleep auf 1 setzte geht der EXIT immer noch ;)

    Sehr cool dann geh ich davon aus das es irgend wann mal auch für TV-Serien kommt. Das wär mir persönlich wichtiger als bei den Filmen.

    Also ich wähle den Film direkt an und los gehts wann soll er dann die Musik abspielen? Wenn man durch die Filme scrollt stell ich mir das wohl eher als lästig vor.

    Aber nix für ungut. Im Gegensatz zu den Tv Serien wo man zuerst die Serie anwählt und während man die Stafel und die Episode sucht spielt er den Soundtrack ab.

    Aber das wird sicher ne tolle Sache!!! Danke und weiter so...

    Ciao der Homi

    Hi 4lb3rtO

    leider funktioniert der refresh der Bilder nicht mehr sauber. Ich habe auch die sleep time wieder zurück gesetzt auf die 10 Milisekunden doch auch das hat keine Verbesserung gebracht. Leider lässt sich das nur mit einer lokalen Cam testen bei der man die Zeit einblendet. Die Webcams die ich oben angegeben habe taugen für das Testen leider nicht.

    Hmm...

    Du hast einiges am Code geändert hab ich gesehen.

    Der entscheidende Teil ist aber das oder

    def onAction(self, action):
    if (action == 10) or (action == 92):
    self.close()

    Ich hätte mal probiet den Teil in das alte Script zu setzten aber da hab ich auch etwas falsch gemacht.

    Hast du noch eine Idee?

    Ciao ciao

    Hallo mafe68

    also ich hab ein Synology Nas und da gibt es eine eigene Software für Kameraüberwachung mit Aufzeichnung und allem was man sich wünschen kann. Würde ich jedem empfehlen. Dabei wird automatisch ein H264 Video erstellt was im Moment am wenigsten Speicher frist.

    Auf diese Aufzeichnungen kann ich auch über den Hauptmenüpunkt zugreifen. Die Lizenz für eine Kamera ist bei einem Nas von Synology immer mit dabei. Weitere muss man dazukaufen. Möchte keine Werbung machen aber ich von dem ganzen sehr überzeugt.

    Zusätzlich hab ich über das Doorbell Script was oben erwähnt wird und als Basis diente eine sofortige Benachrichtigung falls sich jemand im Eingangsbereich bewegt. GANZ tolle Sache.

    Ciao ciao