Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [gelöst] Widget für RTSP Stream

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    SOLVED [gelöst] Widget für RTSP Stream

    This topic has been deleted. Only users with topic management privileges can see it.
    • wendy2702
      wendy2702 last edited by

      Hat einer Frigate in einen Proxmox LXC installiert?

      Ich weiss, läuft eigentlich unter docker und am besten Nativ. Ich habe den Github Eintrag zur Proxmox installation schon gelesen allerdings würde mich interessieren ob es einen Vergleich gibt zu Frigate (CT & Docker) und Motioneye (CT)

      Wal 1 Reply Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        Hallo,

        hatte ich aber detailliert beschrieben:

        widget: jqui-mfd - cam/snapshot

        Dort trägst du unter icon url deinen Befehl ein um ein Bild von der Kamera zu holen, bei mir:

        http://192.168.xxx.xx:88/cgi-bin/CGIPro … xx&pwd=xxx

        Und dann unter Updateintervall: 5000 ms

        1 Reply Last reply Reply Quote 0
        • Wal
          Wal Developer @wendy2702 last edited by

          @wendy2702 ,
          ja läuft hervorragend.

          wendy2702 1 Reply Last reply Reply Quote 0
          • wendy2702
            wendy2702 @Wal last edited by

            @wal mit Google Beschleuniger ?

            Wal 1 Reply Last reply Reply Quote 0
            • Wal
              Wal Developer @wendy2702 last edited by

              @wendy2702 sagte in [gelöst] Widget für RTSP Stream:

              @wal mit Google Beschleuniger ?

              ja, siehe hier.

              1 Reply Last reply Reply Quote 0
              • P
                paeppi @SidM last edited by

                @sidm sagte in [gelöst] Widget für RTSP Stream:

                Frigate gibt es seit diesen Jahr in der Version 0.12.0 und hat jetzt die Integration von go2rtc
                Damit und den iframe-Widget ist es nun möglich das Livebild inkl. Ton in der VIS anzuzeigen!

                Hast du dazu mal ein Beispiel Config? Aktuell teste ich mit einer Reolink E1 Zoom und probiere jetzt schon mehrere Tage das go2rtc so aufzubereiten dass es die VIS anzeigen kann. Irgendwo ist da noch ein Knoten bei mir im Hirn.

                Der Coral USB ist schon im Warenkorb.

                Grüße
                Patrick

                Wal 1 Reply Last reply Reply Quote 0
                • S
                  SidM last edited by SidM

                  @paeppi

                  Hallo Patrick, bei der Umstellung auf go2rtc musste ich auch erst ein wenig probieren.
                  Wenn ich dir ein Rat geben kann, versuche andere Kameras als Reolink zu nutzen. Versuche welche von Dahua, Hikvision, and Amcrest zu nehmen, wie es der Entwickler vorschlägt.

                  Ich habe 3 Reolinks (hatte ich vor Frigate NVR) und eine davon ( RLC-510A ) hat bei den aufnahmen immer mal Aussetzer (Ton läuft noch Bild friert aber ein, oder auch mal komplett Schwarzes Bild).

                  Meine Konfig sieht so aus:

                  mqtt:
                    # Optional: Enable mqtt server (default: false)
                    enabled: True
                    # Required: host name
                    host: 192.168.188.40
                    # Optional: port (default: shown below)
                    port: 1886
                    # Optional: topic prefix (default: frigate)
                    # NOTE: must be unique if you are running multiple instances
                    topic_prefix: frigate
                    # Optional: client id (default: frigate)
                    # NOTE: must be unique if you are running multiple instances
                    client_id: frigate
                    # Optional: interval in seconds for publishing stats (default: 60)
                    stats_interval: 5
                  
                  
                  detectors: # <---- add detectors
                    coral:
                      type: edgetpu
                      device: usb
                  
                  
                  ffmpeg:
                    hwaccel_args: preset-vaapi
                    output_args:
                      # Optional: output args for detect streams (default: shown below)
                      detect: -f rawvideo -pix_fmt yuv420p
                      # Optional: output args for record streams (default: shown below)
                      record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy
                      # Optional: output args for rtmp streams (default: shown below)
                      
                  
                  go2rtc:
                    streams:
                      Hof:
                        - http://192.168.188.38/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=**********&password=**********
                        - "ffmpeg:Hof#audio=opus" # <- copy of the stream which transcodes audio to the missing codec (usually will be opus)
                      Hof_Sub:
                        - http://192.168.188.38/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=**********&password=**********
                      Werkstatt:
                        - http://192.168.188.23/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=**********&password=**********
                        - "ffmpeg:Werkstatt#audio=opus" # <- copy of the stream which transcodes audio to the missing codec (usually will be opus)
                      Werkstatt_Sub:
                        - http://192.168.188.23/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=**********&password=**********
                      Flur:
                        - http://192.168.188.36/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=**********&password=**********
                        - "ffmpeg:Flur#audio=opus" # <- copy of the stream which transcodes audio to the missing codec (usually will be opus)
                      Flur_Sub:
                        - http://192.168.188.36/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=**********&password=**********
                    webrtc:
                      candidates:
                        - 192.168.188.40:8555
                        - stun:8555
                  
                  
                  
                  cameras:
                    Hof: # <------ Name the camera
                      ffmpeg:
                        output_args:
                          record: preset-record-generic-audio-copy
                        inputs:
                          - path: rtsp://127.0.0.1:8554/Hof?video=copy&audio=aac # <--- the name here must match the name of the camera in restream
                            input_args: preset-rtsp-restream
                            roles:
                              - record
                          - path: rtsp://127.0.0.1:8554/Hof_Sub?video=copy # <----- The stream you want to use for detection
                            input_args: preset-rtsp-restream
                            roles:
                              - detect
                      detect:
                        enabled: True # <---- disable detection until you have a working camera feed
                        width: 2560 # <---- update for your camera's resolution
                        height: 1920 # <---- update for your camera's resolution
                      record: # <----- Enable recording
                        enabled: True
                      snapshots: # <----- Enable snapshots
                        enabled: True
                      motion:
                        mask:
                          - 2024,238,1528,171,1330,189,1124,214,1081,342,751,336,748,379,379,385,0,407,0,192,0,0,837,0,2560,0,2560,157,2560,360
                          - 1194,1920,1041,1783,0,1791,0,1920
                      zones:
                        Bewegung Hofeinfahrt:
                          coordinates: 747,396,0,437,0,566,117,548,122,743,412,699,715,671,718,515,743,512
                        Bewegung Innenhof:
                          coordinates: 0,1920,0,580,112,551,122,749,746,682,737,346,1086,336,1086,221,1544,163,1704,176,2130,253,2560,362,2560,1920
                        Bewegung Doppelgarage:
                          coordinates: 2378,1892,2180,1822,2102,1718,2226,1316,2390,1018,2560,1082,2560,1552
                  
                  
                    Werkstatt:
                      ffmpeg:
                        output_args:
                          record: preset-record-generic-audio-copy
                        inputs:
                          - path: rtsp://127.0.0.1:8554/Werkstatt?video=copy&audio=aac # <--- the name here must match the name of the camera in restream
                            input_args: preset-rtsp-restream
                            roles:
                              - record
                          - path: rtsp://127.0.0.1:8554/Werkstatt_Sub?video=copy # <----- The stream you want to use for detection
                            input_args: preset-rtsp-restream
                            roles:
                              - detect
                      detect:
                        enabled: True # <---- disable detection until you have a working camera feed
                        width: 2560 # <---- update for your camera's resolution
                        height: 1920 # <---- update for your camera's resolution
                      record: # <----- Enable recording
                        enabled: True
                      snapshots: # <----- Enable snapshots
                        enabled: True
                      motion:
                        mask:
                          - 1828,42,1827,133,730,123,730,39
                      zones:
                        Bewegung Werkstatt:
                          coordinates: 0,1920,0,0,2560,0,2560,1920
                  
                  
                  
                    Flur:
                      ffmpeg:
                        output_args:
                          record: preset-record-generic-audio-copy
                        inputs:
                          - path: rtsp://127.0.0.1:8554/Flur?video=copy&audio=aac # <--- the name here must match the name of the camera in restream
                            input_args: preset-rtsp-restream
                            roles:
                              - record
                          - path: rtsp://127.0.0.1:8554/Flur_Sub?video=copy # <----- The stream you want to use for detection
                            input_args: preset-rtsp-restream
                            roles:
                              - detect
                      detect:
                        enabled: True # <---- disable detection until you have a working camera feed
                        width: 2560 # <---- update for your camera's resolution
                        height: 1920 # <---- update for your camera's resolution
                      record: # <----- Enable recording
                        enabled: True
                      snapshots: # <----- Enable snapshots
                        enabled: True
                      motion:
                        mask:
                          - 1828,133,1823,25,715,34,716,139
                      zones:
                        Bewegung Flur:
                          coordinates: 0,1920,0,0,2560,0,2560,1920
                  
                  
                  # Optional: Object configuration
                  # NOTE: Can be overridden at the camera level
                  objects:
                    # Optional: list of objects to track from labelmap.txt (default: shown below)
                    track:
                      - person
                      - car
                      - cat
                      - dog
                      - bird
                    # Optional: mask to prevent all object types from being detected in certain areas (default: no mask)
                    # Checks based on the bottom center of the bounding box of the object.
                    # NOTE: This mask is COMBINED with the object type specific mask below
                    mask: 0,0,1000,0,1000,200,0,200
                    # Optional: filters to reduce false positives for specific object types
                    filters:
                      person:
                        # Optional: minimum width*height of the bounding box for the detected object (default: 0)
                        min_area: 0
                        # Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
                        max_area: 24000000
                        # Optional: minimum score for the object to initiate tracking (default: shown below)
                        min_score: 0.5
                        # Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
                        threshold: 0.7
                        # Optional: mask to prevent this object type from being detected in certain areas (default: no mask)
                        # Checks based on the bottom center of the bounding box of the object
                        mask: 0,0,1000,0,1000,200,0,200
                        
                  
                  
                  # Optional: in-feed timestamp style configuration
                  # NOTE: Can be overridden at the camera level
                  timestamp_style:
                    # Optional: Position of the timestamp (default: shown below)
                    #           "tl" (top left), "tr" (top right), "bl" (bottom left), "br" (bottom right)
                    position: "tl"
                    # Optional: Format specifier conform to the Python package "datetime" (default: shown below)
                    #           Additional Examples:
                    #             german: "%d.%m.%Y %H:%M:%S"
                    format: "%d/%m/%Y %H:%M:%S"
                    # Optional: Color of font
                    color:
                      # All Required when color is specified (default: shown below)
                      red: 255
                      green: 255
                      blue: 255
                    # Optional: Line thickness of font (default: shown below)
                    thickness: 2
                    # Optional: Effect of lettering (default: shown below)
                    #           None (No effect),
                    #           "solid" (solid background in inverse color of font)
                    #           "shadow" (shadow for font)
                    effect: solid
                    
                  
                  
                  # Optional: birdseye configuration
                  # NOTE: Can (enabled, mode) be overridden at the camera level
                  birdseye:
                    # Optional: Enable birdseye view (default: True)
                    enabled: True
                    # Optional: Restream birdseye via RTSP (default: False)
                    # NOTE: Enabling this will set birdseye to run 24/7 which may increase CPU usage somewhat.
                    restream: False
                    # Optional: Width of the output resolution (default: 1280)
                    width: 2560
                    # Optional: Height of the output resolution (default: 720)
                    height: 1920
                    # Optional: Encoding quality of the mpeg1 feed (default: 8)
                    # 1 is the highest quality, and 31 is the lowest. Lower quality feeds utilize less CPU resources.
                    quality: 8
                    # Optional: Mode of the view. Available options are: objects, motion, and continuous
                    #   objects - cameras are included if they have had a tracked object within the last 30 seconds
                    #   motion - cameras are included if motion was detected in the last 30 seconds
                    #   continuous - all cameras are included always
                    mode: motion
                  
                  
                  
                  # Optional: Record configuration
                  # NOTE: Can be overridden at the camera level
                  record:
                    # Optional: Enable recording (default: False)
                    # WARNING: If recording is disabled in the config, turning it on via
                    #          the UI or MQTT later will have no effect.
                    enabled: True
                    # Optional: Number of minutes to wait between cleanup runs (default: 60)
                    # This can be used to reduce the frequency of deleting recording segments from disk if you want to minimize i/o
                    expire_interval: 60
                    # Optional: Retention settings for recording
                    retain:
                      # Optional: Number of days to retain recordings regardless of events (default: 0)
                      # NOTE: This should be set to 0 and retention should be defined in events section below
                      #       if you only want to retain recordings of events.
                      days: 0
                      # Optional: Mode for retention. Available options are: all, motion, and active_objects
                      #   all - save all recording segments regardless of activity
                      #   motion - save all recordings segments with any detected motion
                      #   active_objects - save all recording segments with active/moving objects
                      # NOTE: this mode only applies when the days setting above is greater than 0
                      mode: all
                    # Optional: Event recording settings
                    events:
                      # Optional: Number of seconds before the event to include (default: 5)
                      pre_capture: 15
                      # Optional: Number of seconds after the event to include (default: 5)
                      post_capture: 15
                      # Optional: Objects to save recordings for. (default: all tracked objects)
                      objects:
                        - person
                        - car
                        - dog
                        - cat
                        - bird
                  
                      # Optional: Restrict recordings to objects that entered any of the listed zones (default: no required zones)
                      required_zones: []
                      # Optional: Retention settings for recordings of events
                      retain:
                        # Required: Default retention days (default: 10)
                        default: 10
                        # Optional: Mode for retention. (default: motion)
                        #   all - save all recording segments for events regardless of activity
                        #   motion - save all recordings segments for events with any detected motion
                        #   active_objects - save all recording segments for event with active/moving objects
                        #
                        # NOTE: If the retain mode for the camera is more restrictive than the mode configured
                        #       here, the segments will already be gone by the time this mode is applied.
                        #       For example, if the camera retain mode is "motion", the segments without motion are
                        #       never stored, so setting the mode to "all" here won't bring them back.
                        mode: motion
                        # Optional: Per object retention days
                        objects:
                          person: 15
                          car:    15
                          dog:    15
                          cat:    15
                  
                  
                  
                  # Optional: Configuration for the jpg snapshots written to the clips directory for each event
                  # NOTE: Can be overridden at the camera level
                  snapshots:
                    # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: False)
                    enabled: True
                    # Optional: save a clean PNG copy of the snapshot image (default: True)
                    clean_copy: True
                    # Optional: print a timestamp on the snapshots (default: False)
                    timestamp: False
                    # Optional: draw bounding box on the snapshots (default: False)
                    bounding_box: True
                    # Optional: crop the snapshot (default: False)
                    crop: False
                    # Optional: height to resize the snapshot to (default: original size)
                    height: 0
                    # Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
                    required_zones: []
                    # Optional: Camera override for retention settings (default: global values)
                    retain:
                      # Required: Default retention days (default: 10)
                      default: 10
                      # Optional: Per object retention days
                      objects:
                        person: 15
                        car:    15
                        dog:    15
                        cat:    15
                  
                  
                  # Optional
                  ui:
                    # Optional: Set the default live mode for cameras in the UI (default: mse)
                    live_mode: mse
                    # Optional: Set a timezone to use in the UI (default: use browser local time)
                     #timezone: America/Denver
                    # Optional: Use an experimental recordings / camera view UI (default: false)
                    use_experimental: False
                    # Optional: Set the time format used.
                    # Options are browser, 12hour, or 24hour (default: browser)
                    time_format: browser
                    # Optional: Set the date style for a specified length.
                    # Options are: full, long, medium, short
                    # Examples:
                    #    short: 2/11/23
                    #    medium: Feb 11, 2023
                    #    full: Saturday, February 11, 2023
                    # (default: short).
                    date_style: short
                    # Optional: Set the time style for a specified length.
                    # Options are: full, long, medium, short
                    # Examples:
                    #    short: 8:14 PM
                    #    medium: 8:15:22 PM
                    #    full: 8:15:22 PM Mountain Standard Time
                    # (default: medium).
                    time_style: medium
                    # Optional: Ability to manually override the date / time styling to use strftime format
                    # https://www.gnu.org/software/libc/manual/html_node/Formatting-Calendar-Time.html
                    # possible values are shown above (default: not set)
                    #strftime_fmt: "%Y/%m/%d %H:%M"
                  

                  Dank der Integration von go2rtc kann man jetzt auch auf dem iPhone problemlos sich den Live Stream anzeigen lassen ohne eine weiter App nutzen zu müssen.

                  In der VIS dann einfach ein iFrame-Widget einsetzten und als Quelle folgendes eingeben:

                  http://192.168.188.40:5002/live/webrtc/webrtc.html?src=Flur
                  

                  Die IP und Port entspricht dabei den von Frigate.

                  P K 2 Replies Last reply Reply Quote 1
                  • S
                    SidM @Wal last edited by

                    @wal

                    Ich hatte zu beginn auch keine Google Coralle und hab aber bei 2 Streams eine Auslastung von ca 30-35% im Hinterkopf. (Xeon E-2176G)
                    Mittlerweile wird ja auch wie du schon angesprochen hast, OpenVino unterstützt also CPU und GPU von Intel.
                    Auch gibt es regelmäßige Updates von Frigate.
                    Man kann ja erstmal schauen, ob es für eine etwas ist und falls ja, was die Auslastung des Systems macht.

                    Der Stick ist ja dann schnell nachgeordert.

                    1 Reply Last reply Reply Quote 0
                    • P
                      paeppi @SidM last edited by

                      @sidm Vielen Dank. Die Config werde ich gleich mal testen.

                      Ja das mit der Reolink habe ich auch gelesen. Die steht aktuell eh nur im Kinderzimmer und ist nicht wirklich wichtig. Die war eher zu testen und spielen Gedacht.
                      Da ich aktuell ein Gerüst ums Haus stehen habe war eben jetzt die Überlegung gleich 2-3 Kameras anzubringen. Dass der Entwickler Dahua oder Hikvision vorschlägt habe ich schon gesehen und auch schon angeschaut. Sind interessante Produkte. Nur hatte ich noch keine Zeit mich damit auseinander zu setzen ob evtl. PTZ geht.

                      Grüße
                      Patrick

                      1 Reply Last reply Reply Quote 0
                      • Wal
                        Wal Developer @paeppi last edited by Wal

                        @paeppi ,
                        hier meine minimale, du must nur unter go2rtc deine rtsp-Url eintragen:

                        detectors:
                          ov:
                            type: openvino
                            device: AUTO
                            model:
                              path: /openvino-model/ssdlite_mobilenet_v2.xml
                         
                        model:
                          width: 300
                          height: 300
                          input_tensor: nhwc
                          input_pixel_format: bgr
                          labelmap_path: /openvino-model/coco_91cl_bkgr.txt
                        
                        mqtt:
                          host: 192.168.122.20
                          user: user
                          password: 012345678
                          port: 1234
                        
                        go2rtc:
                          streams:
                            rtsp_cam:
                              - rtsp://admin:12345678@192.168.122.100:554/h264Preview_01_main
                              - "ffmpeg:rtsp_cam#audio=opus"
                        
                        cameras:
                          rtsp_cam:
                            ffmpeg:
                              inputs:
                                - path: rtsp://127.0.0.1:8554/rtsp_cam
                                  input_args: preset-rtsp-restream
                                  roles:
                                    - record
                        

                        diese Ports müssen in der docker yml freigeschaltet werden:

                            ports:
                              - "5000:5000"
                              - "1935:1935" # RTMP feeds
                              - "1984:1984"
                              - "8555:8555/tcp" # WebRTC over tcp
                              - "8555:8555/udp" # WebRTC over udp
                        

                        danach kannst du unter http://ip:1984 das aufrufen:
                        Screenshot 2023-05-10 212807.png
                        und die htmlstreams unter links für die Vis testen

                        S 1 Reply Last reply Reply Quote 3
                        • S
                          SidM @Wal last edited by

                          @wal

                          Du hast doch auch ne Coralle. Hast du mal beides getestet? Also die Google Coralle und OpenVino in der Config,yml? Sollte doch gehen? Ob es etwas bringt 🤷‍♂️

                          Wal 1 Reply Last reply Reply Quote 0
                          • Wal
                            Wal Developer @SidM last edited by Wal

                            @sidm ,
                            das kann ich erst richtig bei mehr als 2 Kameras testen, die ich i.M. nicht habe.
                            Mit Vino habe ich auch nur 10ms Inference Speed, mit der Coral Dual TPU 6,56ms und die CPU Last ist fast gleich.
                            Wenn es der Gelbeutel zu lässt und ich die richtige Kamera gefunden habe, werde ich das Haus ausstatten. 😉
                            Die Reolink 810A die ich refurbished gekauft habe ist schon super, ich liebäugele aber mit der 812A Nachtfarbversion.
                            Die Probleme die manche mit Reolinkkameras unter frigate haben, kann ich auch nicht bestätigen.

                            Edit: Gleichzeitig geht nicht.

                            S 1 Reply Last reply Reply Quote 1
                            • S
                              SidM @Wal last edited by

                              @wal

                              Danke für die Info sehr interessant, muss ich bei Gelegenheit auch mal ausprobieren. Vino unterstützung gibt es ja erst mit Version 0.12.0
                              Ich wünschte meine Erfahrung mit Reolink wäre auch auch besser, das Bild was meine machen ist schon gut, nur die Aussetzer zwischen drinnen sind halt extrem nervig.

                              Ich habe ja oben meine Config gespeichert, sieht deine auch so aus, also was den Kamerastream bestrifft?
                              Nutzt du den RTSP Stream oder den HTTP stream. RTMP gibt es ja auch noch,

                              Am Anfang hab ich den RTSP genutzt, war aber auch nicht besser als HTTP. Ob ich den RTMP genutzt habe, weiß ich gar nicht mehr 🤦‍♂️

                              Wal 1 Reply Last reply Reply Quote 0
                              • Wal
                                Wal Developer @SidM last edited by

                                @sidm ,
                                wir haben ja verschiedene Cams, es wird daran liegen.

                                1 Reply Last reply Reply Quote 0
                                • S
                                  SidM last edited by

                                  @wal

                                  Ich habe eben auch nochmal gespielt.

                                  Weder RTSP noch RTMP funktioniert mit go2rtc zuverlässig. Da ist wirklich HTTP am besten geeignet...

                                  Ich werde irgendwann werde ich mal Dahua probieren.

                                  1 Reply Last reply Reply Quote 1
                                  • K
                                    Kopterframe @SidM last edited by

                                    @sidm
                                    Servus,
                                    ich habe deine config mal ausprobiert.
                                    Die Streams gehen im Iobroker und auf allen Geräten (PC IPhone …) aber nicht auf einem android 13 Tablet.
                                    Ich habe keine Ahnung warum das so ist?????
                                    Grüße Heiko

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    912
                                    Online

                                    31.9k
                                    Users

                                    80.1k
                                    Topics

                                    1.3m
                                    Posts

                                    27
                                    66
                                    46268
                                    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