Altes Smartphone als Überwachungskamera über das SIP-Protokoll

12.10.2021

Alte – und natürlich auch neue – Smartphones lassen sich als Überwachungskameras einsetzen.  Der Videostream lässt sich über Wlan oder über das Mobilfunknetz von überall auf der Welt empfangen. Getestet habe ich das Verfahren mit meinem eigenen Asterisk-Server.  Nicht jeder betreibt einen eigenen  Asterisk-Server. Es müsste deshalb auch über das selbstverständlich kostenlose SIP-Netz von Linphone funktionieren.

Bei Linphone besorgt man sich zwei Accounts (Telefonnummern). Die eine Telefonnummer ( genauer: SIP-Adresse) bekommt das Smartphone als Überwachungskamera, die andere Nummer ist für das Smartphone für den Empfang des Videostreams. Die Accounts sind kostenlos. Vielleicht geht es auch bei anderen kostenlosen SIP-Servern, wenn sie Video mit VP8 unterstützen.

Asterisk-Server: Wichtig ist, dass auf dem Asterisk-Server Video aktiviert ist und als Video-Codec auch VP8 eingetragen ist ( https://elektronikbasteln.pl7.de/video-telefonie-mit-asterisk ).

Linphone auf dem Smartphone als Überwachungskamera: Als Überwachungskamera kam ein altes Android-Telefon Homtom HT-50 Baujahr 2017 oder 2016 zum Einsatz, auf welches das Softphone Linphone Version 4.5.3 installiert wurde. Linphone gibt es kostenlos im Google Play Store.  Linphone gibt es auf für das Iphone. Bei mir befand sich dieses Smartphone in jenem LAN, in welchem sich auch der Asterisk-Server befindet.

Trotzdem darf im SIP-Account für die Anmeldung der Registrar nicht aus der lokalen IP des Asterisk-Servers bestehen, weil dann die Bildübertragung nach einer gewissen Zeit instabil läuft. Das Softphone als Überwachungskamera ist deshalb immer mit jenem Registrar anzumelden, das die öffentliche IP enthält. Dies kann sicherlich auch über ein DyDNS-Service funktionieren, was ich aber noch nicht ausprobieren konnte. Wenn Linphone-Accounts zum Einsatz kommen, hat man keine Wahl und muss sich nicht darum kümmern, da der Linphone-Server nur außerhalb seines LANS öffentlich erreichbar ist. Das Smartphone als Überwachungskamera ist natürlich mit dem Wlan verbunden.

Die Einstellungen für Linphone als Überwachungskamera:

AUDIO: Wenn wir keinen Ton übertagen möchten, dann wählen wir unter AUDIO einen Audio-Codec aus, der nicht vom Telefon-Server unterstützt. Bei mir war es G729. Auf jeden Fall muss man einen Audio-Codec aktivieren. Schaltet man alle Audio-Codecs ab, funktioniert es nicht. Möchten wir Audio übertragen, reichen PCMU und PCMA aus.

VIDEO: Unter VIDEO müssen “Enable video”, “Initiate video calls” und “Accept incoming video requests” aktiviert sein.  Als Camera wählen wir die die BackfacingCamera, d.h. die Kamera auf der Rückseite. Als Video-Codec nur VP8 auswählen und H264 unbedingt deaktivieren.

CALL: Unter CALL sind “Start call immediately” und eventuell probeweise “Auto answer incoming calls” zu aktivieren, damit beim Anrufen der Überwachungskamera die Videoverbindung automatisch aufgebaut wird.

Einstellungen unter Linphone für ein Smartphone als Überwachungskamera.

Weitere Einstellungen: Unter Einstellung von Android auf DuraSpeed gehen und für Linphone aktivieren, damit Linphone stabiler läuft.

Als Überwachungskamera wird das Smartphone über ein Steckernetzteil betrieben, damit die Stromversorgung über Tage oder Wochen gewährleistet ist. Damit Linphone nicht durcheinander kommt und mal das Bild um 90° gedreht zeigt, muss das Display während des Ladens immer an sein. Dies können wir in den Einstellungen von Android in den Entwickleroptionen unter “Aktiv lassen Display wird beim Laden nie in den Ruhezustand versetzt” aktivieren.

Um in die Entwickleroptionen gelangen zu können, müssen wir zuvor diese freischalten ( Anleitung hier: https://www.heise.de/tipps-tricks/Android-Entwickleroptionen-aktivieren-deaktivieren-4041510.html ).

Screendump von Linphone des empfangenen Videos. Als Testbild ist eine Uhr mit Sekundenzeiger zu sehen, die im Keller steht.

Die Überwachungskamera anrufen: Dies gelang bei mir mit zwei Android-Smartphones (Blackview A80 mit Android 10 Go und  Umidigi A1-Pro), auf welche ebenfalls Linphone Version 4.5.2 installiert waren. Video muss natürlich in den Einstellungen von Linphone aktiviert sein. Es darf auch heier nur der Video-Codec VP8 aktiviert sein. Alle anderen sind zu deaktivieren. Andernfalls klappt es nicht.

Testweise war das anrufende Smartphone über das Mobilfunknetz mit einem schwachen 3G-Signal verbunden. Auch dies klappte. Zu Testzwecken war eine Uhr mit Sekundenzeiger zu sehen. Der Sekundenzeiger lief gleichmäßig. Über das Mobilfunknetz fallen natürlich Gebühren für den Datenfunk an. Aus Sicherheitgründen ist deshalb nach dem Videotelefonat (im Grunde ist es ein Telefonat über das SIP-Protokoll) die Mobilfunkverbindung abzuschalten, damit die Verbindung tatsächlich getrennt ist. Der Datenstrom beträgt etwa 200 kByte/sec. Das ist ganz grob gerechnet etwa doppelt so viel wie bei einem normalen Telefonat über SIP.

Die “Überwachungskamera” konnte ich auch mit dem Softphone MicroSip unter Windows 10 erreichen. In den Einstellungen darf auch bei MicroSip als Video-Codec nur VP8 aktiviert sein.

Ich hatte es auch mit anderen Codecs und anderen Einstellungen probiert, die nicht immer stabil liefen.

Ganz normale Videotelefonate: Selbstverständlich lassen sich mit Linphone für Android und VP8 ganz normale Video-Telefonate führen. Die dazu notwendige Freisprecheinrichtung funktioniert gut. Zwischen der vorderen und hinteren Kamera lässt sich umschalten. Schnelle Bildbewegungen erscheinen abhängig von der CPU-Leistung und der Verbindungsqualität verwaschen. Warten wir noch 5 oder 10 Jahre und Videotelefonate laufen sicherlich in perfekter Qualität ab.

Linphone ist völlig werbefrei und kostenlos. Die App ist schlank und benötigt wenig  Arbeitsspeicher. Persönliche Daten muss ich nicht preisgeben. Auch bekomme ich keine nervigen Aufforderungen meine Daten mit anderen Diensten zu verknüpfen. Allerdings klappt es nicht immer auf Anhieb perfekt und man sollte manchmal etwas an den Einstellungen tüfteln.

Auf einem Raspberry Pi lässt sich ein kompletter Telefonserver betreiben, der seinen Teilnehmern über Landesgrenzen hinweg kostenloses Telefonieren von unterwegs oder daheim ermöglicht.
Asterisk-Telefonserver auf einem Raspberry Pi – Installation, Konfiguration, Programmierung, SIP, IAX2, AGI-Skripte, Sicherheit und Tipps zum praktischen Betrieb – 2.11.2022: Diese Seite richtet sich an jene, welche einen Asterisk-Telefon-Server auf einem Raspberry Pi betreiben möchten und später ein kleines Netzwerk aus Asterisk-Servern planen, um ein eigenständiges Telefonnetz aufzubauen. Los geht es mit der Installation von Raspbian und Asterisk auf einem Raspberry Pi und dann nach Lust und Laune immer tiefer in die Programmierung von Asterisk. Die Themen werden laufend erweitert.

Selbstverständlich muss es nicht unbedingt ein Raspberry Pi sein. Andere Linux-Rechner gehen auch. – weiter