Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. go2rtc installieren und einrichten

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    go2rtc installieren und einrichten

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jumbo125 @Marc_el_K last edited by

      @marc_el_k
      hallo freut mich das du nun soweit bist.
      tut mir leid das ich nicht rascher zurückschreben konnte, aber ich bin in der arbeit.

      es gibt mehrere methoden um ein script im hintergrund laufen zu lassen.
      ich habe es aber nun anders gelöst.
      Der sinn dahinter:
      hin und wieder kommt es vor das sich mein Server neustartet, teils gewollt, teils weil er leider hengen geblieben ist. wie auch immer...... mein Wunsch ist es, wenn ich den server neustarte, dass alle programme, scripts und ähnliches von selbst laufen.
      So auch go2rtc.

      So mache ich das:
      CRONTAB.
      falls du das nicht kennst: Ich kenne es aus der Website programmierung. Es geht darum scripte zu einer bestimmten Zeit automatisch auszuführen. So auch beim Neustart
      Wie funktioniert es:

      1. Crontab m uss installier sein (ich glaube das ist aber bei den meistn linux dist. bereits standardmäßig)
      2. gestartet wird das ganze mit "crontab -e".
      3. es öffnet sich in putty die crontab datei, in welcher die scripte und die entsprechende uhrzeit angegeben werden können.
      4. man gibt an, dass beim restart einfach die go2rrtc dateiausgeführt wird. der Vorteil: ALLE Scripts laufen im Hintergrund, welche über crontab gestartet werden. Das würde bei dir s aussehen
      @reboot /usr/local/bin $ ./go2rtc_linux_arm64
      

      möchtest du ein script immer um 15:30 ausführen schaut das so aus:
      30 15 * * * /usr/local/bin $ ./go2rtc_linux_arm64
      das kannst du sogar soweit abändern, das es nur an bestimmten wochentagen erfolgt. Dafür musst du nur die Werte abändern. Hier aber eine Hilfe, welche das erleichtert: https://crontab.guru/

      hier noch zwei scripte, welche ich nutze, da ich go2rtc manchmal neu starten möchte.

      zuvor muss jedoch der laufende go2rtc process beendet werden:
      das script zum beenden:

      #!/usr/bin/bash
      kill -9 $(pgrep -f 'go2rtc')
      

      hier das script zum starten

      #!/usr/bin/bash
      ./go2rtc_linux_arm64
      

      ich arbeite gerade daran, dass ich die scripts mittels exec direkt aus dem iboker starte, aber leider funktioniert das noch nicht ganz, wegen pfad problemen.....

      achja, crontab kannst du auch mit sudo crontab -e ausführen, aber da hatte ich probleme mit dem speicherot der automatisch angelegten ymal datei von go2rtc

      Thomas Braun 1 Reply Last reply Reply Quote 1
      • Thomas Braun
        Thomas Braun Most Active @jumbo125 last edited by Thomas Braun

        @jumbo125

        mein Wunsch ist es, wenn ich den server neustarte, dass alle programme, scripts und ähnliches von selbst laufen.

        Ich würde es in systemd als Service anlegen. Dann kann man das easy in den Boot-Prozess reinhängen.

        J 1 Reply Last reply Reply Quote 0
        • J
          jumbo125 @Thomas Braun last edited by

          @thomas-braun
          okay, danke ist die crontab idee schlecht? es funktioniert nämlich einwandfrei

          ich verzweifle eher an der scriptausführung über den iobroker. aber dazu habe ich schon ein thema eröffnet

          Thomas Braun 1 Reply Last reply Reply Quote 0
          • Thomas Braun
            Thomas Braun Most Active @jumbo125 last edited by

            @jumbo125

            Ja , cronjob sind nicht dafür gedacht, sondern dienen dazu wiederkehrende Aufgaben zu erledigen, nicht zum Start von Diensten. Dafür hat man sich sowas wie aktuell systemd oder sysinitv oder sonstige init-Systeme ausgedacht.

            J Marc_el_K 2 Replies Last reply Reply Quote 0
            • J
              jumbo125 @Thomas Braun last edited by jumbo125

              @thomas-braun said in go2rtc installieren und einrichten:

              systemd oder sysinitv oder sonstige init-Systeme ausgedacht.

              ja, systemd wollte ich versuchen und ich habe es jetzt nochmal versucht, aber ich scheitere am gleichen problem, wie in meinem anderen thread, nämlich dem absoluten pfad

              meine service datei enthält:

              [Unit]
              Description=starting go2rtc server
              
              [Service]
              User=odroid
              WorkingDirectory = </usr/local/bin/go2rtc/>
              ExecStart=</usr/local/bin/go2rtc_linux_arm64>
              Restart=always
              
              [Install]
              WantedBy=multi-user.target
              

              fehlermeldung beim start....
              in der log datei:

              
              Aug 15 18:13:27 odroidc2 systemd[1]: /etc/systemd/system/go2rtc.service:6: WorkingDirectory= path is not absolute: </usr/local/bin/go2rtc/>
              Aug 15 18:13:27 odroidc2 systemd[1]: go2rtc.service: Unit configuration has fatal error, unit will not be started.
              lines 1-16/16 (END)
              
              

              bisher habe ich die datei am schreibtisch gehabt unter:
              /home/odroid/Schreibtisch/go2rtc/go2rtc_linux_arm64

              gleiche fehlermeldung wenn ich unter pfad:
              /home/odroid/Schreibtisch/go2rtc/go2rtc_linux_arm64
              schreibe

              Thomas Braun 1 Reply Last reply Reply Quote 0
              • Thomas Braun
                Thomas Braun Most Active @jumbo125 last edited by Thomas Braun

                @jumbo125

                Wie kommst du an die spitzen Klammern im Pfad? Die haben da nix zu suchen.

                J 1 Reply Last reply Reply Quote 0
                • Marc_el_K
                  Marc_el_K @Thomas Braun last edited by

                  @thomas-braun sagte in go2rtc installieren und einrichten:

                  @jumbo125

                  Ja , cronjob sind nicht dafür gedacht, sondern dienen dazu wiederkehrende Aufgaben zu erledigen, nicht zum Start von Diensten. Dafür hat man sich sowas wie aktuell systemd oder sysinitv oder sonstige init-Systeme ausgedacht.

                  Mich würde interessieren wie es mit Systemd funktioniert. Gibt es dafür eine verständliche Anleitung?

                  ? J 2 Replies Last reply Reply Quote 0
                  • ?
                    A Former User @Marc_el_K last edited by

                    @marc_el_k sagte in go2rtc installieren und einrichten:

                    Gibt es dafür eine verständliche Anleitung?

                    Moin,

                    ganz viele im WWW 😉

                    Z.B. https://www.suse.com/de-de/support/kb/doc/?id=000019672

                    Wer sucht, der findet 😉

                    VG
                    Bernd

                    Marc_el_K 1 Reply Last reply Reply Quote 0
                    • J
                      jumbo125 @Thomas Braun last edited by

                      @thomas-braun
                      mein beitrag fehlt plötzlich. aber kurz version, es klappt alles 🙂

                      Thomas Braun 1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @jumbo125 last edited by

                        @jumbo125 sagte in go2rtc installieren und einrichten:

                        es klappt alles

                        So soll es sein. Vielleicht kannst du @Marc_el_K ja noch ein paar Tips geben.

                        1 Reply Last reply Reply Quote 0
                        • J
                          jumbo125 @Marc_el_K last edited by

                          @marc_el_k
                          funktioniert es bei dir?
                          sonst gib bescheid

                          1 Reply Last reply Reply Quote 0
                          • Marc_el_K
                            Marc_el_K @Guest last edited by

                            @dp20eic Habe ich mir durchgelesen, aber tatsächlich hab ich es noch nicht gecheckt.

                            ? 1 Reply Last reply Reply Quote -1
                            • ?
                              A Former User @Marc_el_K last edited by

                              @marc_el_k sagte in go2rtc installieren und einrichten:

                              @dp20eic Habe ich mir durchgelesen, aber tatsächlich hab ich es noch nicht gecheckt.

                              Moin,

                              komme gerade vom Santiano Konzert, bin erst morgen wieder am Start.

                              VG
                              Bernd

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                jumbo125 @Guest last edited by jumbo125

                                @Marc_el_K
                                okay, hier nochmal die erklärung:

                                1. go2rtc_linux_.... runterladen. entweder über einen normalen browser oder über die Konsole, bspw. mit wget
                                2. datei dort hin verschieben, wo sie ungestört bleiben kann bspw. usr/local/bin (bei mir liegt sie am desktop/Schreibtisch in einem unterordner)
                                3. rechte vergeben, d.h. in den ordner wechseln, wo die datei nun liegt und mittels
                                chmod +x go2rtc_xxx_xxx
                                

                                die rechte vergeben. Es geht auch mit dem vollständigen Pfad.
                                wechsel aber ev. trotzdem mittels

                                cd dein/pfad
                                

                                zum entsprechenden ordner.

                                So.... wenn du die rechte vergeben hast und dich im ordner befindest, kannst du mittels

                                ./go2rtcxxxx
                                

                                die datei ausführen.

                                klappt das, dann geht es weiter mit dem eintragen der go2rtcxxxx datei in die service scripte.
                                also:

                                1. falls du die datei ausgeführt hast, siehst du in der konsole die rückmeldungen, das der dienst läuft. schließe den laufenden prozess (terminal schließen, oder strg + c drücken)
                                  2 nun wechsel zu dem ordner, in dem die verweise liegen, welche scripts, zum systemd dienst gehören.
                                cd /etc/systemd/system/
                                
                                1. nun befindest du dich im ordner /etc/systemd/system/
                                  erstelle hier nun eine Datei mittels:
                                sudo nano go2rtc.service
                                
                                1. hier trage dann folgende daten ein:
                                [Unit]
                                Description=starting go2rtc server
                                
                                [Service]
                                User=odroid
                                WorkingDirectory = der/pfad/zur/go2rtc-datei/aber/nur/den/ordner/indem/die/Datei/liegt
                                ExecStart= der/Pfad/zur/datei/selbst/go2rtc_xxxxxxx
                                Restart=always
                                
                                [Install]
                                WantedBy=multi-user.target
                                
                                1. starte nun den server dienst neu, damit dein gerade erzeugter verweis auch geladen wird:
                                sudo systemctl daemon-reload
                                
                                1. nun kannst du das script über den zuvor erstellen verweis über systemd starten:
                                sudo systemctl start go2rtc.service
                                

                                oder auch stoppen:

                                sudo systemctl stop go2rtc.service
                                
                                1. nun fügen wir noch das script zum systemd autostart, damit es beim neustart des pc auch gleich startet:
                                sudo systemctl enable go2rtc.service
                                

                                falls du es aus der liste der autostart programme wieder löschen möchtest:

                                sudo systemctl disable go2rtc.service
                                

                                hilft das?

                                Thomas Braun Marc_el_K P 3 Replies Last reply Reply Quote 1
                                • Thomas Braun
                                  Thomas Braun Most Active @jumbo125 last edited by

                                  @jumbo125

                                  Und wenn man ein Verzeichnis aus dem $PATH verwendet kann man das ganze auf direkt aufrufen.
                                  Auf deinem Desktop liegt das verkehrt/ungünstig.
                                  Wenn es schon im home eines Users liegen soll dann verwendet man dafür

                                  ~/.local/bin

                                  1 Reply Last reply Reply Quote 0
                                  • Marc_el_K
                                    Marc_el_K @jumbo125 last edited by

                                    @jumbo125 sagte in go2rtc installieren und einrichten:

                                    Zunächst vielen Dank für die Anleitung. Ich denke, sie wird vielen helfen. Tatsächlich fehlte mir nur der letzte Schritt und nun läuft auch alles wie gewünscht.

                                    Ein Hinweis noch zu deiner Anleitung: Als ich begann die Datei herunterzuladen und aufzurufen, musste ich anfangs noch die Config Datei anlegen und ebenfalls mit den entsprechenden Rechten versehen. Nur für den Fall, dass dies hier noch weitere User lesen 🙂

                                    A 1 Reply Last reply Reply Quote 2
                                    • A
                                      Andersmacher @Marc_el_K last edited by Andersmacher

                                      @marc_el_k sagte in go2rtc installieren und einrichten:

                                      ...noch die Config Datei anlegen und ebenfalls mit den entsprechenden Rechten versehen...

                                      Welche Datei meinst Du damit konkret (go2rtc.service oder go2rtc.yaml)?

                                      Ich habe go2rtc bei mir dank der Hinweise von @Thomas-Braun derzeit soweit zum Laufen bekommen, daß es als Dienst via systemd nach jedem Boot startet. Der Zugriff auf die Video-Streams einer D-Link DCS-2132L (die ich zum Testen benutze) via Browser und VIS-iFrame-Widget funktioniert allerdings nicht über einen Reboot des Raspis hinaus, da ich die Configuration bisher nur über den go2rtc-Webserver/GUI eingeben konnte und go2rtc dies offenbar nicht eigenständig in go2rtc.yaml hinterlegt. Auch das vorherige Anlegen einer (leeren) go2rtc.yaml-Datei (mit Berechtigung 777) unter /usr/local/bin/go2rtc/ bringt hier keine Abhilfe. Ich nehme an, daß man die Konfiguration manuel via Editor in die go2rtc.yaml eingeben muß!? Allerdings habe ich im Netz dafür leider keine (Syntax-)Beispiele gefunden.
                                      Wäre nett, wenn Du oder vielleicht @jumbo125 ein paar Tips geben könntet, wie Ihr Eure via GUI erstellte Konfiguration "reboot-sicher" gemacht habt oder vielleicht Eure go2rtc.yaml hier einstellen würdet?

                                      Probiere das ganze derzeit auf einem Debian11(Bullseye) auf nem Raspi4 8GB.

                                      Edit:
                                      Als ich meinen Beitrag eben abgeschickt hatte, kam die "Erleuchtung":
                                      Die unter https://github.com/AlexxIT/go2rtc#source-rtsp stehenden "Code"-Beispiele sind bereits Einträge aus einer go2rtc.yaml.

                                      Ich habe daher einfach das unter "RTSP over WebSocket" stehende Beispiel:

                                      streams:
                                        # WebSocket with authorization, RTSP - without
                                        axis-rtsp-ws:  rtsp://192.168.1.123:4567/axis-media/media.amp?overview=0&camera=1&resolution=1280x720&videoframeskipmode=empty&Axis-Orig-Sw=true#transport=ws://user:pass@192.168.1.123:4567/rtsp-over-websocket
                                      

                                      für mich so abgewandelt und es funktioniert:

                                      streams:
                                        # Konfiguration für einen rtsp-Stream:
                                        Kamera_1_rtsp: rtsp://Benutzer:Paßwort@IPmeinerKamera:Port/live1.sdp
                                      
                                      J Marc_el_K 2 Replies Last reply Reply Quote 1
                                      • J
                                        jumbo125 @Andersmacher last edited by

                                        @andersmacher
                                        tut mir leid, habe erst jetzt deinen beitrag gelesen. sonst hätte ich dir früher geantwortet.

                                        ich arbeite daran, automatisch festzustellen, wenn mein video stecken bleibt, leider ist dies immer mal wieder der fall. das neuladen des iframes hilft schon, nun muss ich nur detectieren wann es soweit ist.

                                        Der VORTEIL: wenn das mal klaoot kann ich eine motion detection sehr einfach dazuprogrammieren. dann kann man bspw über simple api einen datenpunkt ansteuern, wenn sich voir der kamera etwas bewegt. das geht sogar soweit, das man einen bestimmten bereich der kamera überwachen kann, bspw. nur bewegung in rechter unterer ecke

                                        A 1 Reply Last reply Reply Quote 0
                                        • Marc_el_K
                                          Marc_el_K @Andersmacher last edited by

                                          @andersmacher schön, dass du es gelöst hast. Ich meinte die .yaml config-Datei. Diese hatte ich mir vorher erstellt und dann hochgeladen. Bei mir funktionierte es zunächst nicht, dass Änderungen abgespeichert wurden, daher der manuelle Upload. Seitdem klappt es tadellos und ist für mich bislang die ressourcenschonenste Lösung von allen getesteten.

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            Andersmacher @jumbo125 last edited by

                                            @jumbo125 Danke für die Rückmeldung, aber bei mir war das Problem ja dann ohnehin bereits gelöst. Dir viel Erfolg bei Deinem weiteren Vorhaben!

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            922
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            28
                                            155
                                            22389
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo