Mein erster Unix Rechner war ein Bull DPX/2 mit Motorolla 68030 CPU, 4MB RAM und einem Unix-Derivat. Vorher genutzt von dem DRK und man musste sich mit einem Serial VT-100 kompatiblen Terminal verbinden. Zum "Glück" war das UUCP-Konto nicht geschützt und so war es möglich sich das erste mal in VI zu verirren und erste Erfahrungen mit Unix zu machen.
Der Rechner war riesig und schwer (eingebaute USV am Boden des Gehäuses), aber alles war von der Rückseite aus entfernbar und man konnte viel über die Computer-Architektur der 80er Jahre lernen.
Man stolpert doch immer mal wieder über Firmen, die in Stellenanzeigen mit familiären Klima werben. Das ist so ein Überbleibsel der 70er und 80er Jahre wo Familie einen sehr hohen Stellenwert zugewiesen wurde. Gefühlt auch damals schon nicht immer zu Recht... aber zurück zu den Firmen. Familie an sich ist erst einmal super. Man hat Vertraute und bekommt Hilfe, wenn man sie braucht. Aber auch dort gibt es Diskussionen und Streit. Wenn man sich jetzt einmal vorstellt man würde in einer Firma arbeiten, die nur mit Familienmitgliedern besetzt ist und man ist nicht Chef. Wenn es in dieser Firma zu einer großen Diskussion kommen würde, könnte jeder bestimmt schnell ein Familienmitglied benennen, das schon nach kurzer Zeit beleidigt sich aus der Diskussion ausklinken würde, weil es nicht nach dieser Person geht.
Familie hat eben den einen Nachteil, dass dort alles auf persönlicher Ebene geregelt wird und nicht auf professioneller. Eben auch Konflikte und Meinungsverschiedenheiten. Wenn nun in einer Firma diskutiert wird und man kommt nicht auf einen Nenner, wird der Chef/Teamleiter irgendwann das abbrechen und sich für eine Ansicht entscheiden mit der man dann eben weiter arbeiten wird. Niemand würde ihm das übel nehmen, weil es eben sein Job ist und man ja auch irgendwie weiter machen muss. Wenn jemand damit nicht zurecht kommt, dass es nicht nach ihm geht, ist die Person leider in der Abteilung/Firma falsch.
In einer Firma mit familiären Klima ist alles persönlich und wird nur auf einem persönlichen Niveau ausgetragen. Ein großes Problem ergibt sich aber daraus, dass es so auch erwartet wird und auch klar nach dem Motto gelebt wird, man könne sich seine Familie ja nicht aussuchen. Dadurch kommt es, dass der Chef sich mit bestimmten Mitarbeiten nur streitet, beide beleidigt sind und es in großen Konflikten ausufert (auch mal mit Geschrei oder das einer mucksch vor dem PC sitzt und den anderen demonstrativ ignoriert*). Aber der Chef würde diese Person nicht feuern, weil es wie in einer Familie ist, wo man zwar mit einigen verwandt ist, aber wegen einem Streit seit Jahren nicht mehr gesprochen hat.
Das Kündigen wird, dann auch als Verrat an der Familie/Firma aufgefasst, egal wie schlecht es vorher lief.
So kann aber eine Firma und Team nicht funktionieren. Auch Menschen, die sich nicht mögen, können auf professioneller Ebene zusammen arbeiten. Sollte es einfach nicht gehen, muss man dann eben getrennte Wege gehen und einer muss das Team verlassen/wechseln.
Ich würde nicht in einer Firma anfangen, die sich wie eine Familie fühlt. Firmen sollen Firmen sein und Familien bleiben Familien. Keines von beiden ist perfekt, aber wenn man es mischt, kommt es meistens dazu, dass nur die schlechten Teile von beiden zusammen kommen und nicht die guten.
Der englische Begriff für das was ich meine ist Psychological safety. Wo man weiß, dass die eigene Meinung auf professioneller Ebene beurteilt, wird und nicht auf persönlicher.
Im Gegensatz zu NCH Videopad, das nur bis 800% Speedup kommt (man muss für mehr zwischen durch immer exportieren), kann Blackmagic DaVinci Resolve auch weit über 1000% beschleunigen, so dass man man 11:00min auf unter 1min stauchen kann. Das geht auch ganz einfach. Auf den Clip den man ändern möchte mit einem Rechtsklick das Context-Menü öffnen und "Change Clip Speed" auswählen. Wenn man die %-Zahl ändert, sieht man auch direkt welche Länge der Clip dann haben wird.
In der Vorschau ruckelte es zwar noch sehr, aber nach dem Exportieren lief alles es flüssig. Ich muss mich wohl noch mal mit den Vorschau-Einstellungen auseinander setzen. Da es nur ein 720p Video war und nicht mal 4K.
ESM-Computer hat einen sehr interessanten Blog-Post geschrieben, der mich an alte Zeiten in Foren erinnert hat, wo man Freeware und Open-Source Listen hatte, damit die Mitglieder nicht ihr Geld für "fragwürdige" Software ausgeben, ob man für weniger (also nichts) mehr bekommen würde und auch um etwas zu Zeigen, dass es neben Adobe noch andere Lösungen gibt. Meiner Meinung nach fehlen in dem ESM-Post aber noch ein paar sehr gute Lösungen.
1. Videoplayer Da hat ESM-Recht... ich hatte den noch auf NT 4.0 laufen und es gab damals eigentlich keine Alternative. Es gibt den Server nicht mehr.. ja.. es gab einen Server und einen Client (das C in VLC steht für Client).
Man kann Video-Streams nehmen und ein eigenes Logo einbauen und es dann weiter streamen. Auch auf kleiner Hardware mit 1,2GHz und 2GB kann man ohne Probleme einen Stream von einem SAT-IP Server streamen und so ein Stream braucht wirklich Bandbreite.. wirklich viel.
2. Audio Seit neusten gibt es Cakewalk Sonar als Freeware. Seit Cakewalk-Zeiten (Cakewalk 5.0?) war es immer eine gute Lösung, auch wenn der aktuellen Freeware-Version einiges fehlen soll, ist es sicher immer noch eine gute Lösung.
3. Video Ich habe Lightworks ausprobiert und fand es so gut wie unbedienbar. Gerade für kleine Video hatte ich nicht die Ruhe mich lange damit zu beschäftigen. Früher war Adobe mit Premiere und AfterFX das Non+Ultra. Es gab noch exotischere Programme wie die von Autodesk/Discreet (Smoke, Combustion, etc). Aber an die kam man so garnicht ran ohne gleich ein komplettes Schnittsystem zu kaufen. Aber jetzt gibt es Blackmagic DaVinci Resolve, das auch keine großen Einschränkungen hat. Ich habe mir jeden Falls vorgenommen darauf umzusteigen, wenn ich mal wieder ein Video schneiden muss. Die Blackmagic Produkte kennt man ja und die waren schon immer cool.. auch deren Kameras.
Gibt es auch für Linux! Super professionelle Schnittlösungen für Linux waren lange echt nicht zu finden.. jetzt gibt es viele.
4. Audio 2 Ja.. kann man immer gut gebrauchen. Früher gab es noch Cool Edit Pro, bevor es von Adobe gekauft wurde und zu Audition wurde. Die erste Adobe Version war noch eine 1:1 Übernahme des Programms mit geänderten Namen.
5. Grafik Klar gibt es GIMP, das super für Fotos ist. Wer aber malen möchte ist mit Krita besser beraten. Für Zeichner wohl auch besser als Photoshop. Leider hat es keine 3D-Figuren wie Clip Studio Paint Pro.
Wacom Cintiq mit Clip Studio Paint
Vielleicht baut ja jemand mal ein Plugin um Blender zu integrieren. Genau wie GIMP stammt auch Krita aus der Linux-Welt und wurde dann auf Windows portiert.
Krita hat auch Pixelart Werkzeuge, aber kann sehr viel weniger als Aseprite, dass nicht kostenlos ist, aber als Portable multiplattform Lösung seine paar Euro echt das Geld wert ist (gibt es im Humble Bundle Store). Für Windows gibt es [url=http://www.ultimatepaint.com/de/]Ultimate Paint als kostenlose EA DeluxePaint Kopie (ja EA hat mal Grafik-Software gemacht! Hatte ich mal auf einem 386er.).
Animation mit Aseprite erstellt
Ultimate Paint
6. Grafik RAW Für die Bearbeitung von RAW-Fotos und als Alternative zu Lightroom gibt es noch RawTherapee für Windows und Linux. Begleitet mich seit meinen Nikon D80 Zeiten.. f*ck.. ist das schon lange her.
Der Vorteil der meisten genannten Lösungen ist einfach, dass es sie für Linux gibt, man also auch nicht mal mehr Windows als kostenpflichtige Software braucht. Ich mag Linux Mint.. wobei Windows 10 meiner Meinung nach die beste Windows Version seit NT 4.0 ist.
Manchmal soll Logik auf Daten einer Map zugreifen können aber nicht ändern können. Ich habe für meine State-Implementierung Action-Dispatcher eingeführt, die Daten der Action anpassen dürfen und dafür auch Daten aus dem State zum Abgleich nutzen sollen, aber an der Stelle sollen sie nicht die Möglichkeit haben den State selbst zu ändern, weil ich an der Stelle keine Änderungen tracke. Action-Dispatcher sollen schnell und leichtgewichtig sein.
Zum Glück kann man mit Collections sich schnell eine unmodifiable Map erstellen. Was das für die Performance bedeutet habe ich noch nicht getestet, aber ich gehe davon aus, dass das Tracken und Behandeln von Änderungen am State am Ende auf wendiger wäre.
Ich habe ein älteres (letztes Jahr September) angefangenes aber nie fertig gewordenes Shopware Plugin nun bei GitHub hochgeladen, in der Hoffnung, dass noch jemand was damit anfangen kann. Es fügt z.B. ein zusätzliches Feld zum Product-Slider Emotion-Element hinzu und ändert das Template für bestimmte Artikel im Slider.
Viele Probleme lassen sich nicht durch einfache SQL-Queries lösen. Gerade wenn es um Daten-Generierung und Dinge geht, wo man die Logik nicht in allen Clients umsetzen möchte, die auch die Datenbank zugreifen.
Wärend Stored Procedures coole Dinge wie IF, WHILE und so können, haben die doch oft einen schlechten Ruf, weil man dann ja nicht mehr Datenbank unabhängig wäre, wenn man anfängt diese zu verwenden. Aber am Ende wird man sowie so nie wirklich die Datenbank wechseln und sollte man das tun, dann eher von SQL zu NoSQL und da ist es dann auch egal, da man alles alle neu anpassen muss.
Eine einfache Procdure in MySQL:
DELIMITER \\
DROP PROCEDURE IF EXISTS exampleProcedure\\
CREATE PROCEDURE exampleProcedure()
BEGIN
DECLARE checkval INT;
SET expectedval = 0;
START TRANSACTION;
-- implement your logic here
IF checkval = expectedval THEN
COMMIT;
ELSE
ROLLBACK;
END IF;
END \\
DELIMITER ;
CALL exampleProcedure();
DROP PROCEDURE IF EXISTS exampleProcedure;
Es gibt auch die klassischen IN und OUT Parameter. Alles ganz einfach und schnell zu schreiben. Sieht ein wenig aus wie Pascal. ABER im Vergleich zu PL/SQL fehlen doch eine Datentypen wie RECORDs, um komplexere Datenstrukturen anlegen zu können oder direkter mit Tables arbeiten zu können. SELECT .. INTO ist nett, aber RECORDs machen es doch sehr viel einfacher und strukturierter.
Aber an sich kommt man damit zurecht und man sollte doch mehr davon und auch öfters Stored Procedures verwenden, um sich in einigen Teilen das Leben etwas leichter zu machen.
Ich habe PL/SQL immer gerne verwendet, auch wenn ich oft genug daran verzweifelt bin.
Heute Nacht um 1:00 kam eine Email, dass bei einer GMX-Adresse das Passwort geändert worden sei. Man konnte sich nicht mehr anmelden, also war die Email korrekt.
Das Problem ist nun: 0900-Hotline ist über Mobile und VoIP nicht erreichbar. Live-Chat, Twitter, Email... gibt es alles nicht. Die einzige Hotline die geht, ist nur für zahlende Kunden.
Das Passwort selbst ändern würde gehen, wenn die alte dort angegebene Email-Adresse von Hotmail noch existieren würde. Bei den meisten Benutzern wird wohl eine Email-Adresse angegeben sein, die nicht mehr im Zugriff ist. Handy-Nummer werden viele auch nicht angegeben haben.
Zum Glück war die Email Adresse nicht wichtig und alt.. aber bei einer aktuellen und genutzten Adresse wäre das jetzt eine wirklich Katastrophe, weil davon auszugehen ist, dass alle möglichen Dienste, wo die Adresse zum Login verwendet wurde, gefährdet sind und man keine Möglichkeit hat mit GMX in Kontakt zu treten, um den Account sperren zu lassen.
Hat wer eine Lösung bzw einen alternativen Kommunikationsweg als die 0900-Nummer?
Bei den wichtigen Adressen ist, jetzt auf jeden Fall Handynummer und eine Email-Adresse, die 100%ig unter meiner Kontrolle ist, angegeben und mal gucken, ob man nicht von GMX weg geht mit den dort vorhandenen Adressen.
Bei Yahoo hatte ich trotz alles Security-Leaks nie solche Probleme, wohl auch weil ich immer Weiterleitungen davor schalte.
Ein kleiner Tipp, wenn man in einer Webapp zulange Listen- oder Tabelleneinträge zurecht schneiden möchte. Um anzuzeigen, dass der Text gekürzt ist will man oft ... am Ende stehen lassen. Das mit PHP, JavaScript, etc zu machen ist aber doof und overflow-hidden: hidden reicht nicht. Aber es gibt in CSS text-overflow.
Der Text wird einzeilig und abgeschnitten. Zusätzlich werden 3 Punkte angehängt. Alles gut? Nur solange man es nicht bei einem <li> mit Bullet-Points verwendet. Die gehen dabei leider auch verloren. Aber auch hier gibt es eine Lösung, wobei man aber die Abstände des <li> zum linken Rand neu anpassen muss.
Falls man mal CSV-Daten per CURL irgendwo hin schicken will und es funktioniert einfach nicht, wie gedacht.. dann sollte man überprüfen, ob man nicht --data-binary vergessen oder durch -d ausgetauscht hat und somit alle Zeilenumbrüche verloren gegangen sind.
Da zuerst zu gucken, dann einen viel Zeit bei der Fehlersuche ersparen.
Ich habe etwas mit State-Management in Java herum experimentiert und mir etwas geschrieben, um den State von Web-Apps (Vue.js, React, AngularJS,..) auf einen Server auszulagern. So dass sich die States und Actions der verschiedenen Clients gegenseitig beeinflussen können (Datenaustausch), aber private Daten wie Tokens trotzdem für die einzelnen Clients isoliert bleiben. Neben den Reducern gibt es noch Facets für die Anpassung der Ausgabe (so etwas wie Getter in Vuex).
Ich wollte dann einmal das Grundsystem (State-Manager, Interfaces, Server + Controller) in einem Mave-Repository ablegen und die konkrete Implementierung der Reducer, Facets und Filter dann sauber getrennt in einem eigenen Projekt haben.
Das Repository sollte einfach bei Github liegen und nicht in eines der öffentlichen und großen mit rein genommen werden, da es ja erstmal ein Proof-Of-Concept für meine Idee zu verteilten Daten ist. Ich habe mich dabei an diesem DZone-Artikel orientiert.
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.4</version>
<scope>provided</scope>
</dependency>
<!-- .... und noch mehr ..... -->
</dependencies>
</project>
Den Inhalt aus target/mvn-repo/hp-globalstate/hp-globalstate-core/ habe ich dann in ein Github-Projekt gepackt und hochgeladen. Das 2. Projekt kommt dann dieses dann hinzu:
public class Server {
public static void main(String[] args){
GlobalStateServer server = new GlobalStateServer();
List<Reducer> reducers = new ArrayList<>();
reducers.add(new de.hannespries.test.Reducer());
List<FacetFilter> facets = new ArrayList<>();
facets.add(new DefaultFacetFilterByToken(true));
Bei Heise gibt es von Techstage einige Artikel über Sets von Überwachungskameras mit Netzwerk-Recordern und Teilweise mit Monitoren. Einmal fällt auf, dass die Begrifflichkeiten aus einer Zeit zu stammen scheinen in dem noch auf Videobändern aufgezeichnet wurde und andererseits fällt auch auf, dass die Preise mit min. 220 Euro doch schon sehr teuer sind. Gerade das Bild des offenen IP-Recorders von Abus zeigt ganz klar, dass hier sehr wenig "Magic" im Spiel ist, sondern diese Sets meistens nur aus einer Ansammlung von Standard-Komponenten bestehen die mit Standard-Protokollen unter einander kommunizieren.
Gerade das fällt in den Artikeln auf, dass nicht einmal der Begriff ONVIF fällt, der diese ganzen Sets relativ schnell entzaubert, wenn es sich nicht gerade um extrem proberietäre Cloud-Lösungen geht (bei China-Produkten bedeutet der Begriff Cloud meistens einfach nur FTP-Upload). Wenn man nun keine 220 Euro ausgeben kann oder möchte und trotzdem eine gute Lösung haben möchte, kann auf andere Komponenten zurück greifen, die genau so sich über ONVIF verbinden lassen und dabei noch sehr viel günstiger und teilweise hochwertiger sind. Die Einrichtung ist dann auch nicht komplizierter als bei den normalen China-Lösungen.
Wir werden ein Set aus einem "IP-Recorder" und 2 Kameras für weniger als 200 Euro zusammen stellen und dabei 1920x1080 als primäre Auflösung nutzen. Leider gibt es meine präferierte IP-Kamera nicht mehr zu kaufen, aber da WLAN sowie nett zu haben ist, nehmen wir die WLAN-Varianten. WLAN ist sowie so eine eher zu vernachlässigende Sache, wenn man eine Outdoor-Lösung anstrebt. Man muss immer beachten, dass man die Kameras mit Strom versorgen muss.
Die Netzteile sind zumeist nicht wetterfest und man müsste Verlängerungskabel verwenden. Damit man wetterfest bleibt ist die beste Lösung outdoor-CAT6 Kabel für PoE (Power over Ethernet). Wenn man also schon Ethernet-Kabel mit einem PoE-Switch für die Stromversorgung nutzt, ist es kaum Mehraufwand, das ganze mit dem vorhanden Netzwerk zu verbinden und hat damit zu meist auch eine bessere Verbindung als wenn jede Kamera einzeln sich mit dem WLAN verbinden würde. Bei Outdoor ist WLAN als eher optional, falls man irgendwie eine Kameras direkt neben einer Steckdose anbringen kann.
PoE Hub aus China
Indoor sieht es natürlich ganz anders aus. Hier ist WLAN schon sehr praktisch, weil hier auch keine wetterfeste Stromversorgung von Nöten ist.
Aber egal ob indoor oder outdoor angestrebt ist, der zentrale Punkt bleibt der "IP-Recoder". Aber was ist so ein Recorder überhaupt? Auf der einen Seite ist es ein einfacher Netzwerkspeicher, aber auf der anderen Seite bietet er auch Motion-Detection und übernimmt die Aufzeichnung der Bilder und Videos. Meistens können die Kameras dieses aber schon selber und man braucht nur einen Netzwerkspeicher wie ein NAS oder eine Fritzbox. Eine Fritzbox mit einer externen Festplatte könnte also schon reichen solange die Kameras die Daten per FTP hochladen können. Aber man müsste für die Live-Ansicht jede Kamera direkt ansteuern (P2P-Modus mal ignoriert). Gerade diese Zentralität und Einheitlichkeit in der Konfigurierung, wenn man verschiedene Kameras verwenden sollte, machen so einen Recorder sehr praktisch. Zum Glück muss so ein Recoder nicht teuer sein.
Variante Mini-PC: Ein Mini-/Tiny-PC von HP oder Lenovo ist nicht teuer und bietet sehr viel Leistung, im vergleich zu den Varianten aus den Sets bei Techstage. Ein i3 mit 4-8GB RAM ist sehr viel leistungsfähiger als ein ARM Singleboard-Computer. Auch kann man hier einfacher eine große HDD oder SSD einbauen und mit externen Festplatten erweitern und spart sich damit ein zusätzliches NAS. Auch haben diese PCs mehrere USB-Anschlüsse für USB-Kameras (was indoor eine gute Alternative zu IP-Kameras sein kein). Wenn eine Windows-Version dabei ist, kann man diese nutzen oder sich ein Linux installieren.
Mit Windows kann man iSpy verwenden, das sehr viele Einstellmöglichkeiten hat und dabei sogar einen viel Arbeit abnimmt, in dem z.B. ONVIF-Kameras fast automatisch gefunden und eingerichtet werden. Die Motion-Detection funktioniert sehr zuverlässig und auch ein zusätzlicher FTP-Upload ist möglich. Der Nachteil ist, dass es eben eine Windows-Programm ist und man somit nicht einfach die Oberfläche auf ein Smartphone holen kann.
Mit Linux hat man die Möglichkeit motionEye zu verwenden, dass man als Package installieren kann. Diese Lösung bietet eine Web-UI an, die sowohl auf Desktops als auch Smartphone gut funktioniert. Man muss aber teilweise RTSP-Urls per Hand eingeben und bekommt alle Einstellmöglichkeiten direkt und ungefiltert präsentiert. Dennoch ist die übersichtliche Ansicht egal ob auf dem Desktop oder dem Smartphone immer sehr gut und leicht und schnell zu bedienen. Wenn man also auch mal von Unterwegs einen Blick auf die Kamera-Stream werfen will, halte ich motionEye für die bessere Lösung.
Ein Fujitsu Thinclient mit x86-64 Prozessor
Variante ARM-SBC: Wer einen Raspberry PI oder Orange Pi hat (als Set zwischen 20 und 40 Euro) kann mit einer 32GB SD-Karte und motionEye OS sich eine gleichwertige Lösung in sehr günstiger, kompakter und stromsparender Version zusammen stellen. motionEye OS auf der SD-Karte am PC installieren, dann in den ARM-PC stecken und einschalten. Nach 1-2 Minuten kann man die Web-UI aufrufen und mit der Einrichtung der ersten Kamera beginnen. Die Downloads findet man hier : https://github.com/ccrisan/motioneyeos/releases
Orange Pi One Kompletset
Egal welche Variante man nimmt sollte der Computer nahe dem Router stehen und benötigt so kein WLAN sondern nur ein kurzes LAN-Kabel. Bei der PC-Variante braucht man noch einen Monitor, eine Tastatur und eine Maus. Bei der ARM-Variante reicht eine SD-Karte, weil die Einrichtung rein über die Web-UI erfolgen kann (SSH ist natürlich auch möglich, aber nicht zwingend nötig).
Da wir nun einen "Recoder" haben, mit dem wir USB- und ONVIF-Kameras bedienen können brauchen wir nur noch die Kameras und etwas Zubehör.
Wenn man dazu ein Orange PI One Set von AliExpress rechnet ist man sehr genau bei 200 EUR Gesamtpreis. Wenn man PoE-Hub und Adapter auch in China bestellt, kann man dort auch nochmal etwas Geldsparen. Die Kameras können auch direkt per FTP auf das NAS einer Fritzbox schreiben.
Indoor:
2x ieGeek FullHD WLAN (schwarz ist unauffäliger als weiß) = 110 EUR
Indoor muss eine Steckdose in der Nähe sein und man kann sich den ganzen PoE-Part ersparen bzw. einsparen. Aber es ist zu überlegen im Haus kleinere Kameras zu verwenden, die weniger direkt ins Auge stechen, wenn man nicht gerade dadurch einen abschreckenden Effekt erzielen will (in Ladengeschäften sollten Kameras immer gut sichtbar sein).
Wenn man die Kameras mit dem WLAN verbinden möchte ist die einfachste Einrichtungsart, die Kamera per LAN-Kabel einmal an den Router zu hängen und dann per Web-Browser auf die Kamera zu zugreifen und dort das WLAN einzustellen. Alle anderen Lösungen waren bis jetzt immer umständlicher oder funktionierten garnicht. Ich halte wenig davon die Kameras per Smartphone-App einzurichten, weil man gerade bei der Eingabe von Text und WLAN-Schlüssel mit einer echten Tastatur sehr viel schneller ist.
Wem 960p als Auflösung der Kameras reicht (selbst 720p ist im Indoor-Bereich oft ausreichend) kann bei den Kameras noch so um die 15 EUR pro Stück sparen.
Das wichtigste Werkzeug hier ist die Übersicht der Netzwerk-Geräte und IP-Adressen des Routers oder auch das Programm ONVIF Device Manager.
Während die Installation von motionEye auf einem ARM-SBC und iSpy auf Windows sehr einfach ist, ist die Installation von motionEye auf einem Mini/Tiny PC unter einem Ubuntu-System leicht aufwendiger. Dafür hat man die Vorteile, dass man ein komplettes Linux-System hat und den PC auf für andere Serveraufgaben verwenden kann oder den PC auf direkt mit einem großen Monitor verbinden kann und Live-Streams der Kameras anzeigen kann (localhost im Webbrowser öffnen und man hat seine UI). ARM-SBC können das an sich auch, aber hier sind oft Grafik und Leistung nicht dafür ausgelegt viele Aufgaben auf einmal zu erledigen.
Hier habe ich ein mal zusammen getragen wie man motionEye auf einem Fujitsu Futro S900 installieren kann. Dieser PC kostet um die 30 Euro bei Ebay und mit einer mSATA SSD und einem WLAN-Stick bekommt man extrem flexibelen kleinen und günstigen PC für viele Anwendungszwecke.
Danach kann man über den Port 8765 die motionEye Web-UI aufrufen.
Man kann ohne Probleme viele USB- und IP-Kameras anschließen und hat keine Probleme mit Updates und kompatiblen Kameras, was bei Komplettsets schnell passieren kann, weil hier alle ONVIF kompatiblen Kameras funktionieren. Während mein Setup mit dem Futro S900 Thin-Client eine eher eingeschränkte Leistung hat, kann man mit z. B. Lenovo Tiny-PCs und i-Serie CPUs auf kleine Geschäfte oder mittelgroße Gebäude und Gelände überwachen (mit ~10 Kameras).
Um bei ONVIF-Kameras die URL für den Video-Stream heraus zu bekommen hilft der ONVIF Device Manager.
RTSP-URL einer ONVIF-Kamera in motionEye
Hier sieht man wie eine ONVIF-Kamera per RTSP angebunden wird.
Wer iSpy verwendet, hat den Vorteil, dass auch eingebaute Microphone von Kameras ausgewertet werden können und bei bestimmten Geräuschen ein Alarm ausgelöst werden kann. Plugins für die Erkennung von KFZ-Kennzeichen oder QR-Codes gibt es auch.
Wenn man sich also für eine "Selbstbaulösung" entschiedet, kann man viel Geld sparen und bekommt zusätzlich noch einen sehr viel leistungsfähigere Recorder für einen Bruchteil des Geldes. Bei dem Preis für die Abus-Lösung (siehe den Techstage-Test), bekommt man einen refurbished PC mit i3 oder sogar i5 CPU und mehr Festplattenspeicher und kann sicher trotzdem die selben Kameras verwenden.
Mal meine Ansichten zu Tim Bernes-Lees Solid. Kurz: Ich halte von der Idee garnichts. Grund: Die Benutzer. Ich mag ja dezentrale Lösungen und selbst Dateien hosten ist oft günstiger als OneDrive oder DropBox. Nur die Idee, dass durch diese Pods die großen Konzerne weniger Datensammeln und nutzen würden halte ich für eine falsche Annahme.
Denn es ist ja nicht so dass Google, Facebook und andere durch das Web ziehen und einfach Daten und Bilder klauen. Diese Daten werden ihen ja von den Nutzern bereit gestellt. Aber die Benutzer bekommen ja auch was dafür. Sie bekommen kostenlosen Zugang zu den Diensten. Es ist ja ein Tausch, den die Menschen eingehen und ich glaube kaum, dass sich da was ändern würde.
- Es beginnt schon beim Anbieter für den Pod-Speicher. Keiner wird dafür zahlen wollen. Deswegen wird am Ende wieder in Daten bezahlt werden.
- Soziale Netzwerke wie Facebook haben ihre AGB, um dabei da mitmachen zu dürfen, muss man diese annehmen. Am Ende ist es denen egal, ob man die Text da schreibt und die Bilder dort hoch lädt oder man denen eine URI übermittelt, wo sie die Inhalte finden
- Suchen und Werbung, wo die meisten Daten gesammelt und ausgewertet werden.. das ist da von gar nicht betroffen
Außerdem werden die Daten per Caching immer bei den Diensten zwischengespeichert, weil kein normaler Benutzer eine entsprechende Internetanbindung hat, um wirklich selbst zu hosten und kaum einer wird einen V-Host administrieren können oder wollen.
Das Argument, dass dezentrale Netzwerke aber sehr gut funktionieren (wie Mastodon), zählt nicht, weil es eben oben schon so funktioniert und man eher untersuchen sollte warum es funktioniert, bevor man etwas entwickelt, was sofort so viele Probleme offenbart, wenn man nur länger als 10min drüber nachdenkt (ind in den News-Foren fallen die Probleme fast allen sofort auf).
Man muss Dinge wie Mastodon cool machen.. dann lösen sich die Probleme von ganz allein.