Reolink-IP-Kamera an MotionEye anbinden

An MotionEye (inkl. MotionEyeOS) lassen sich dank Web-Interface leicht verschiedene Kameras anbinden. Etwas kniffeliger kann die Sache allerdings bei hochauflösenden IP-Kameras werden, wie das Beispiel mit einer Reolink RLC-420 mit 5MP zeigt.

Aktuell habe ich zum Testen vom Hersteller Reolink eine IP-PoE-Kamera des Typs RLC-420-5MP zur Verfügung gestellt bekommen. Während die An- bzw. Einbindung bei Synology NAS und mittels Reolink Client keine Schwierigkeiten bereitet, verhält es sich bei MotionEye etwas anders. Dennoch gibt es ein-zwei mögliche Lösungswege.

Gleich vorweg: FullHD-Streams und Raspberry Pi “vertragen” sich nicht besonders, da die CPU dieses Einplatinen-Computers schlicht zu schwach ist. Als Workaround lässt sich der qualitativ wesentlich schlechtere VGA- oder der JPEG-Stream verwenden. Letzteres würde ich persönlich dann eher bevorzugen, wenn ein Raspi zum Einsatz kommt.

Möchte man den h.264-FullHD-Stream nutzen, muss mehr CPU-Leistung her. Für den Versuch wurde ein Intel NUC DN2820FYKH mit einem Celeron N2830-Prozessor hergenommen. Dieser hat zwar schon ein paar Jahre auf dem Buckel, sollte aber für dieses Experiment reichen. Auf diesem wurde Debian 9 Stretch samt MotionEye installiert. Wie das geht, siehe die Links in den Quellen.

Die Stream-URLs sehen so aus:

FullHD-Stream:

rtsp://<IP>:554/h264Preview_01_main

VGA-Stream:

rtsp://<IP>:554/h264Preview_01_sub

JPEG-Stream:

http://<IP>/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=<IrgendwelcheZeichen>&user=<Benutzername>&password=<Kennwort>

RTMP-Stream (siehe Update vom 28.06.2019):

rtmp://<IP>:1935/bcs/channel0_main.bcs?channel=0&stream=0&user=<Benutzername>&password=<Kennwort>

Gibt man nur “rtsp://<IP>:554” an, wird automatisch der FullHD-Stream verwendet.

Zu beachten bei JPEG ist, das man beim Einrichten der Kamera in MotionEye nicht den Benutzernamen und das Kennwort in die dafür vorgesehenen Felder einträgt! Diese müssen an der URL angefügt sein, andernfalls funktioniert es nicht.

Die Einstellungen in der Kamera für den h.264-FullHD-Stream sehen für MotionEye wie folgt aus:

Eine höhere Auflösung oder ein anderen H.264-Profil resultierten im Test in einem Standbild oder vielen Artefankten in MotionEye. Mit den hier gezeigten Einstellungen gibt es bereits auf dem NUC eine CPU-Auslastung von ca. 40%. Das ist aber soweit nur ein Beispiel, je nach eingesetzter Hardware muss man ggf. weiter mit den Einstellungen herumspielen, bis das man eine funktioniernde Kombination hat.

Quellen:

Github – MotionEye – Wiki – Installation

Github – MotionEye – Wiki – Install on Debian

Reolink – Support – How to Live View Reolink Cameras via VLC Media Player

Reolink – FAQs – How to Capture Live JPEG Image of Reolink Cameras via Web Browsers

Update 28.06.2019

Den Balanced-Stream, also das Zwischending von FullHD und VGA bekommt man ebenfalls unter Motion bzw. MotionEye zum Laufen. Leider ist das nicht ganz so simple, da MotionEye bislang kein Hinzufügen mit RTMP-URLs erlaubt. Man kann das Ganze allerdings umgehen:

  • Motion auf aktuelle Version aktualisieren (Für Debian 9 Stretch siehe hier).
  • In MotionEye eine JPEG-Kamera wie oben beschrieben anlegen.
  • Via ssh oder an der Konsole die Datei “/etc/motioneye/Camera-X.conf” editieren.
  • Die Zeile “netcam_url” wie folgt abändern und speichern:
    rtmp://<IP>:1935/bcs/channel0_main.bcs?channel=0&stream=0&user=<Benutzername>&password=<Kennwort>
  • MotionEye mit “systemctl restart motioneye” neustarten.

Quellen:

Github – Motion – Add Support for rtmp

15 Kommentare

  • Pingback: Reolink RLC-420-5MP – Testbericht – Andy's Blog

  • Hallo,

    super Erklärung, meinst du der aktuelle Raspberry Pi 4 könnte den Steam auf einen Monitor in 5mp schaffen ?

  • Hallo Andy,
    danke für diesen Artikel, der mir super dabei geholfen hat meine beiden Reolinks (RLC-410W) mit motionEye in VIS einzubinden.
    Was ich allerdings nicht hinbekommen habe, ist am Ende ein flüssiger Video Stream. Sowohl http, als auch rtsp, geben immer nur ‘Ruckelbilder’ sprich, in zügiger Folge angezeigte Einzelbilder bereits in motionEye, was bei mir auf einem dedizierte raspi 3B läuft (~30-50% Auslastung bei 2 Cams). Ich habe alles Mögliche an Auflösungen und Framerates durchprobiert, leider ohne Erfolg. In der ReoLink SW laufen beide Streams flüssig.
    Hast Du da evtl. noch einen Tip?
    Grüße
    Peter

  • Ich würde jetzt mal darauf spekulieren, das der Raspi (trotz der “geringen” Auslastung) das evtl. nicht schafft.
    Mal testweise auf einem PC das Ganze durchspielen, nur um einen Vergleich zu haben.

  • Hi, danke für Deine schnelle Rüclmeldung – sorry ich habs erst gerade bemerkt, da bei mir irgendwie kein ‘MailPing’ angekommen war.
    Die ReoLink SW läuft bei mir auf ne’m Win10 PC, wie gesagt flüssig. Ich habe jetzt gerade nochmals weiter getestet und auch die trmp Variante versucht. Die wäre wohl gut, aber da passt dann das Format nicht (sieht aus wie 4:3), was hierbei in motionEye ja wohl auch nicht änderbar ist, zumindest habe ich auch in der conf Datei nichts dazu gefunden.
    Ich habe jetzt erst einmal wieder von rtsp auf http umgestellt, da es bei den rtsp’s auch immer wieder zu Fragmentierungen kommt – trotz Test aller möglichen Cam-Config-Varianten (per ReoLink auf der Cam).
    Ich befürchte ich werde wohl mit dem Geruckel leben müssen … 😉
    Danke und Grüße
    Peter

  • Hallo ich habe mir die Lumus zugelegt. Beim Anlegen der Kamera kommt folgende Fehlermeldung: Failed to connect to 192.168.178.xxx port 80: Connection refused .

    Meine URL sieht wie folgt aus: http://192.168.178.xxx/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=xxxx
    Hat jemand eine Idee?
    Gruß
    Michael

  • Hallo Michael,

    laut dem hier wird das für die Lumus nicht unterstützt:

    https://support.reolink.com/hc/en-us/articles/360007010473-How-to-Live-View-Reolink-Cameras-via-VLC-Media-Player

    “Applies to: All Reolink IP cameras( Reolink E1 pro and E1 zoom included) except for battery-powered cameras and B800/D800/B400/D400/E1/ Reolink Lumus. “

  • Hallo nochmal,
    just to let you and others know:
    Ich bin Deinem Hinweis bzgl. der Performance gefolgt und habe mir, nach Vergleich der GPU und NW Daten zum Raspi3B einen Raspi4B 4GB zugelegt. Nun läuft es super mit dem RTMP Stream!
    Meine Einstellungen:
    ReoLink Cams: StreamingTyp: klar, Auflösung: 720p, 16fps, 2048 max kbps, H.264: Basis
    MotionEye: Resolution: 1024×576, 10fps
    Streaming: 8fps, 75% Quality, Image Resizing On, 75% Resolution
    Bei 2 Cams liegt der 4B bei ca. 35-50% in der Auslastung
    Keine Zeitverzögerung durch die Umwandlung und keine Fragmente.
    Danke für den Tip!

  • Danke an Peter für die Aufklärung… Ich habe es auch mit nem Rasp 3B versucht und fast nur Artefakte und starke Verzögerung… Also hole ich mir mal nen Rasp 4B

  • Hallo,

    ich nutze Motioneye in einem Docker auf einer NAS. (Im Brigde Mode).
    leider bekomme ich keine Bilder.
    Es bleibt bei dem gruaen Bild mit dem Ladekreis.

    Gibt es noch weitere Möglichkeiten, wie ich meine Reolinks an Motioneye betreiben kann?

  • Hallo Thomas,

    dazu ist mir leider nichts bekannt, ich muss aber dazu sagen, das ich schon eine Weile nichts mehr mit MotionEye und Reolink gemacht habe.

  • Danke Andy für die Rückmeldung.
    Nach unzähligen erfolglosen Stunden bin ich nun mit Shinobi sehr zufrieden.

    Es funktioniert mit den Reolink-Kameras ohne Problme.

  • Vielen Dank für die Rückmeldung, Shinobi sieht interessant aus, muss ich bei Gelegenheit mal testen.

  • Hallo, könnt ihr mir helfen , ich hab mir eine Reolink RLC 520 zugelegt, und versuche seid ragen vergeblich die kamara in morioneye einzubinden . Ich bekomme immer einen Fehler das die kamara nicht angenommen wird.
    Kann mir jemand sagen ob es mit dieser kamara überhaupt möglich ist ? Möchte sie gern in vis einbinden . Vielen Dank

  • Hallo, ich hab mir eine Reolink RLC 520 Kamara gekauft und versuche vergeblich sie in morioneye einzubinden . Weis jemand ob das ganze überhaupt möglich ist mit der kamara ?

    Vielen Dank

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.