Konvertierung von MiniDV-Aufnahmen

Im vorherigen Artikel habe ich beschrieben wie ich alte Camcorder-Aufnahmen recht einfach digitalisiert habe.

Nun wollte ich diese Aufnahmen noch in ein platzsparendes Format bringen und dafür sorgen das die Medien auf den Endgeräten einfach abgespielt werden können (NAS mit DS video, Fernseher, Fire TV).

HandBrake

Hier habe ich die Open Source Software Lösung HandBrake gefunden. Es handelt sich um einen Video Transcoder mit einem sehr großen Funktionsumfang. Für die nächste “Digitalisierungswelle” möchte ich auch meine DVD’s und BluRay-Scheiben entsprechend überführen (das kann HandBrake auch).

In der Applikation findet man sich sehr schnell zurecht:

Man öffnet aus der vorhandenen Quelle die notwendigen AVI-Dateien vom Camcorder und wählt dann sein notwendiges Exportformat (“Preset”) aus.

Ich habe das “HQ 720p30 Surround” für meine Vidoes verwendet (im Standard ist “Fast 720p30” ausgewählt. Das scheint mir ein guter Kompromiss zwischen Laufzeit und Qualität zu sein. Anstatt 200 MB pro Minute ist das Video noch 50 MB pro Minute groß (als Videoencoder wird H.264 – x264 verwendet).

Für die Konvertierung mehrerer Videos am Stück kann auch eine Warteschlange gefüllt werden. Das ist praktisch wenn die Videos über Nacht konvertiert werden sollen.

Danach wartet man den Vorgang mit “Encodierung starten”. Weitere Einstellungen habe ich erst einmal nicht vorgenommen.

Fazit

Mit HandBrake kann man sehr einfach seine Videos in andere Formate konvertieren.

Auch alle weiteren Video-Jobs lassen sich mit HandBrake gut durchführen – so kann ich in Zukunft auch mein DVD-Regal etwas “entrümpeln”.

Habt Ihr noch andere Einstellungen für eure Konvertierung von MiniDV (AVI) verwendet? Gibt es bestimmte Parameter / Formate die Ihr als besser geeignet seht?

Übertragung von MiniDV-Aufnahmen

Nachdem die Übernahme der alten VHS-Kassetten fast abgeschlossen ist, kommen jetzt die neueren MiniDV-Kassetten dran.

Die Übernahme der alten Camcorder-Filme wird in mehreren Schritten vorgenommen:

  1. Capture / Aufnahme der Filme
  2. Schneiden der Filme
  3. Konvertieren der Filme

Allgemeine Informationen

In diesem Schritt beschreibe ich erst einmal die Aufnahme der Filme über Firewire an einem Windows 10 PC.

Beim Capturing über Firewire werden die Daten 1:1 von der Quelle kopiert. Mit folgender Formel ergibt sich grob die Dateigröße:

Framegröße x Farbiefe x Framerate : Kompremierungsrate DV (5:1) = ca. 200 MB pro Minute

WinDV

Für die Aufnahmen habe ich die “Mini-Software” WinDV verwendet: http://windv.mourek.cz/

Die Kamera wird per Firewire mit dem PC verbunden und die Software gestartet.

Danach sind ein paar Einstellungen vorzunehmen:

Ich habe eine gemeinsame Ablage der Audio- und Videospur in einer Datei angegeben und die maximale Größe der Zieldatei etwas angepasst.

Im Hauptdialog kann man noch die Checkbox zwischen Config und Capture aktivieren. Damit kann WinDV auch direkt die Kamerasteuerung übernehmen (das ist recht angenehm).

Es wird noch eine Zieldatei als AVI angegeben und mit Capture kann die Aufnahme gestartet werden.

Fazit

Die Aufnahme der Daten geht relativ schnell. Habt Ihr eine bessere Variante für das Capturing von MiniDV-Aufnahmen?

Ich habe jetzt noch kein Programm für das Schneiden und Konvertieren der Filme gesucht / gefunden.

Habt Ihr eine Softwareempfehlung für das Konvertieren der Filme (im Idealfall Open Source)? Ich glaube schneiden werde ich an den Filmen recht wenig.

Telegram als Binding in openHAB integrieren

Eine meiner ersten Aktionen mit openHAB war die Integration für mobile Benachrichtungen mit Telegram. In meinem ersten Anwendungsfall wurde Telegram per Action angebunden und eine kleine Anleitung habe ich hier abgelegt.

Seit ein paar Versionen gibt es nun ein Telegram Binding. Mit diesem Binding ist auch ein einfacheres Verschicken von Nachrichten an Gruppen möglich. Es ist also höchste Zeit meine bestehende Umgebung zu aktualisieren / anzupassen.

Vorbereitung und Struktur

Weiterführende Informationen zu dem Thema findet Ihr hier. Einen Telegram-Bot habe ich bereits erzeugt, wenn Ihr dies noch benötigt, findet Ihr hier eine Anleitung.

Folgende Gruppen habe ich mir in Telegram erstellt für unser SmartHome erstellt:

  • Eidelsburger SmtartHome (für allgemeine Nachrichten z.B. Wetterwarnungen, Müllkalender, Statusmeldungen, Rauchmelder)
  • Eidelsburger SmartHome – Admin (für technische Nachrichten z.B. Neustart des Systems)
  • Eidelsburger SmartHome – Test (für Testnachrichten und neue Konfigurationen)

Damit kann ich für mich persönlich und für die ganze Familie die jeweiligen Nachrichten entsprechen kanalisieren und priorisieren.

Gruppen-ID’s aus Telegram

  • alle gewünschten Gruppen in Telegram für die weitere Verwendung erstellen
  • in der Telegram-App eine neue Gruppe erstellen und die notwendigen Benutzer hinzufügen (den Bot hatte ich bereits für die Nachrichten erstellt)
  • am Desktop-PC die URL https://web.telegram.org/ aufrufen
  • mit der zugehörigen Telefonnummer anmelden
  • den von Telegram verschickten Code vom mobilen Endgerät am Desktop-PC eingeben
  • nun die notwendige Gruppe auswählen
  • die URL in der Adressleiste sieht wie folgt aus: https://web.telegram.org/#/im?p=g1234567
  • die eindeutige Gruppen-ID befindet sich nach dem “p=g” (in diesem Beispiel: 1234567)
  • da alle Gruppen-Nummern in Telegram negativ sind, wäre die zu verwendende Nummer aus dem Beispiel: -1234567

openHAB-Binding

Hier gibt es ein paar Informationen über die Technik:

Das Binding ist über die Oberfläche wie folgt schnell und einfach installiert:

  • PaperUI – Add-ons – ACTIONS – Telegram Action (1.14.0) – bereits installiert, also nicht notwendig
  • PaperUI – Add-ons – ACTIONS – Telegram Binding (2.5.4) – INSTALL

Telegram.things

Im nächsten Schritt wird ein Thing entsprechend erstellt:

Thing telegram:telegramBot:HA_Bot [chatIds="-<channel main>","-<channel details>","-<channel test>", botToken="<token>", parseMode="Markdown"]

Hier ergänzt man in den chatIds die aus den Telegram-Gruppen extrahierten Nummern und passt seinen botToken entsprechend dem Bot an.

Telegram.items

Nun können die Standard-Items aus der Dokumentation hinzugefügt werden. Ich habe noch drei Variablen für die Verwendung der Telegram-ID’s erstellt (um mir etwas Tipparbeit zu sparen).

// Items for Telegram Groups
String TELEGRAM_CHANNEL_SMARTHOME "-<channel main>"
String TELEGRAM_CHANNEL_SMARTHOME_ADMIN "-<channel details>"
String TELEGRAM_CHANNEL_SMARTHOME_TEST "-<channel test>"

// Items for Telegram Groups
String telegramLastMessage "Telegram Bot Last Message" { channel = "telegram:telegramBot:HA_Bot:lastMessageText" }
String telegramLastMessageURL "Telegram Bot Last Message URL" { channel = "telegram:telegramBot:HA_Bot:lastMessageURL" }
DateTime telegramlastMessageDate "Telegram Bot Last Message Date" { channel = "telegram:telegramBot:HA_Bot:lastMessageDate" }
String telegramLastMessageName "Telegram Bot Last Message Sender" { channel = "telegram:telegramBot:HA_Bot:lastMessageName" }
String telegramLastMessageUsername "Telegram Bot Last Message Username" { channel = "telegram:telegramBot:HA_Bot:lastMessageUsername" }
String telegramLastMessageChatId "Telegram Bot Last Message chatId" { channel = "telegram:telegramBot:HA_Bot:chatId" }
String telegramLastMessageReplyId "Telegram Bot Last Message replyId" { channel = "telegram:telegramBot:HA_Bot:replyId" }

Telegram.rules

Nun kann in einem Regelwerk ganz einfach eine Nachricht an eine Telegram-Gruppe verschickt werden.

val telegramAction = getActions("telegram","telegram:telegramBot:HA_Bot")
telegramAction.sendTelegram(Long::parseLong(TELEGRAM_CHANNEL_HA_DETAILS), "%s %s", "Telegram Bot", "online")

In meinen bestehenden Rules-Dateien muss ich natürlich die vorherige Konfiguration der Telegram Action noch entsprechend suchen und aktualisieren (das wird bei den meisten Lesern nicht notwendig sein).

Fazit

Damit konnte ich mit relativ wenig Aufwand von den Telegram Actions auf das Telegram Binding wechseln. Die Action habe ich aktuell noch im System, wird aber von mir nicht mehr verwendet.

Jetzt kann ich meinen Bot auch an Gruppen einfach Nachrichten senden und die SmartHome-Funktion auf ein paar Anwender mehr verteilen.

Wie nutzt Ihr Telegram in eurem SmartHome? Habt Ihr ein anderes Nachrichtensystem verwendet? Mir würde ja noch eine Integration in Microsoft Teams sehr gut gefallen. 🙂

Digitalisierung von alten VHS-Aufnahmen

Im Rahmen der “Digitalisierung” darf man auch die Digitalisierung von alten analogen Medien nicht vergessen. In 2019 habe ich bereits alle alten Fotoalben digitalisiert.

Folgende Themen im Rahmen der “privaten” Digitalisierung habe ich aktuell noch offen:

  1. Digitalisierung von alten VHS-Aufnahmen der Videokamera (zum Teil VHS, VHS-C, Mini-DV)
  2. Digitalisierung von alten Film-DVD’s
  3. Digitalisierung von alten Aktenordnern

Aktuell habe ich mit der Digitalisierung der alten VHS-Aufnahmen begonnen.

Voraussetzungen

Welches Equipment verwende ich als Beispiel für die Digitalisierung von alten VHS-Aufnahmen:

  1. Windows 10 PC mit allen angeschlossenen Quellen
  2. Terratec Grabby für die Anbindung der RGB / Scart Quellen per USB
  3. Alter Videorekorder (der lag noch funktionsfähig im Keller)
  4. Open Broadcaster Software (OBS) als Digitalisierungssoftware

Umsetzung

Die Hardware ist relativ schnell bertriebsbereit an einem PC eingerichtet und einsatzbereit. Bei der Softwarelösung OBS müssen auch nur einmal die Quellen für Audio und Video konfiguriert werden und die Digitalisierung der ersten VHS-Kassetten kann beginnen.

Ich habe bewusst auf die Nachbereitung und Verbesserung des Quellmaterials verzichtet, obwohl viele der Videos aus den 80er Jahren sind. Eine Stunde Aufnahme als MP4-Datei benötigt in meinem Setup ca. 1 GB Speicher im Zielsystem.

In meiner Konfiguration benötigt es etwas Zeit um alle Videos zu verarbeiten, da die Laufzeit 1:1 bei den VHS-Videos abgespielt wird (aber das kann ja bequem nebenbei auf einem PC durchgeführt werden).

Fazit

Die Digitalisierung der Videos ging im Aufbau schnell und einfach. Wenn die VHS-Kassetten alle im Keller gefunden wurden, dann muss ich mich auf die Suche für den passenden VHS-C-Adapter machen. Bei den Mini-DV-Aufnahmen sollte es keine größeren Probleme geben, da hier der Camcorder noch vorhanden ist.

Bei den alten VHS-Aufnahmen ist aber auch leider schon die eine oder andere Kassette nicht mehr abspielbar d.h. nicht mehr mit vertretbarem Aufwand Digitalisierbar.

Wie digitalisiert Ihr eure alten Kinder- und Jugendaufnahmen? Nehmt Ihr eine Bild- und Tonverbesserung vor?

openHAB 2.5.6 veröffentlicht

Am 21.06.2020 wurde ein neues Update für openHAB veröffentlicht.

Die Version 2.5.6 ist komplett kompatibel zur den vorherigen  2.5.x Versionen.

Es gab mit der neuen Version 9 neue Add-ons und einige Erweiterungen und Bugfixes der bestehenden Plugins.

In den Release Notes werden die Änderungen kurz und im GitHub dann im Detail beschrieben.

Habt Ihr die Version 2.5.6 bei euch schon installiert? Wer war schon so mutig?

Organisation in Office 365 / Microsoft 365 für Teams umbenennen

Ich nutze im privaten Bereich Office 365 bzw. neu nun Microsoft 365. Microsoft hat entschieden in der Corona-Pandemie die Teams-Dienste auch für die private Nutzung zeitlich begrenzt kostenfrei zur Verfügung zu stellen.

Da wir Teams geschäftlich nutzen, wollte ich das in Zeiten der Ausgangsbeschränkungen auch privat einrichten. Dazu habe ich mich registriert und einen allgemeinen Organisationsnamen angegeben.

Jetzt möchte ich diesen Namen ändern. Da es nicht so ganz einfach ist, hier einmal eine kurze Beschreibung:

  1. Anmeldung bei Windows Azure mit dem hinterlegten Login-Daten
  2. Die App “Azure-Portal” auswählen
  3. Im Menü “Azure Active Directory” selektieren
  4. “Eigenschaften” auswählen

Als Name der Verzeichniseigenschaften nun den gewünschten Organisationsnamen hinterlegen. Nach ein paar Minuten sollte die Änderung übernommen sein.

Ich bin mir nicht sicher, ob bei dem Wechsel von Office 365 auf Microsoft 365 nun Teams immer im Abonnement enthalten ist. Weiß das vielleicht jemand?

openHAB 2.5.5 veröffentlicht

Am 18.05.2020 wurde ein neues Update für openHAB veröffentlicht.

Die Version 2.5.5 ist komplett kompatibel zur den vorherigen  2.5.x Versionen. Mit den grob einmal pro Monat geplanten neuen Versionen hat sich der Build- und Deploy-Prozess scheinbar gut eingespielt.

Es gab mit der neuen Version 4 neue Add-ons und einige Erweiterungen und Bugfixes der bestehenden Plugins.

In den Release Notes werden die Änderungen kurz und im GitHub dann im Detail beschrieben.

Habt Ihr die Version 2.5.5 bei euch schon installiert?

Full Bacon Jacket Cheese Toast auf dem Kugelgrill

Beim Westmüsterland-BBQ habe ich folgende Frühstücksidee für den Grill gesehen:

Zutaten

Für 5 Toasts habe ich pro Toast folgende Zutaten verwendet:

  • 3 Scheiben Toast
  • 100 Gramm Bacon
  • 1 Ei
  • Etwas Tomatenmark
  • BBQ-Rub
  • 2 Scheiben Cheddar-Käse

In einem Foto sieht die Zutatenliste wie folgt aus:

Zubereitung

Also grobe Handlungsanweisung kann man die Zubereitung wie folgt durchführen:

  • einen der 3 Toast-Scheiben mit einem Glas (oder ähnlich) ausstechen
  • Kleines Netz aus Bacon machen (je zwei Scheiben und zwei Scheiben breit)
  • Bacon mit BBQ-Rub nach Belieben einreiben
  • den untersten Toast mit Tomatenmark beträufeln
  • den untersten Toast mit einer Käsescheibe belegen
  • den Mittleren Toast darauf legen
  • das Ei in den ausgestochenen Toast geben
  • den mittleren Toast mit Tomatenmark beträufeln
  • den mittleren Toast mit einer Käsescheibe belegen
  • den oberen Toast darauf legen
  • den Toast mit dem Bacon-Netz von je zwei Seiten umwickeln

Das Ergebnis sieht dann so aus:

Dann bei ca. 150 – 200 Grad den Toast von jeder Seite ca. 3 Minuten direkt auf den Grill legen. Zum Schluss dann ca. 20 Minuten den Toast indirekt weiter grillen. Dann nach Belieben das Ei kontrollieren un den Toast vom Grill nehmen.

Fazit

Für ein Frühstück ist der Toast fast etwas zu aufwändig (vor dem ersten Kaffee). 🙂

Ein paar Kleinigkeiten würde ich das nächste Mal ggf. anders machen:

  • etwas größere Toasts nehmen, damit das Ei komplett Platz hat
  • etwas mehr Bacon verwenden, damit der Toast komplett umschlossen (ich hatte ca. 4 + 3 Scheiben verwendet) – zum Teil ist der Käse rausgetropft
  • Tomatenmark hatte in der Kombination ein etwas komischen Geschmack (ggf. kann man das weg lassen, sollte ja zum Verbinden der Toasts genommen werden)
  • anstatt Cheddar-Käse könnte man auch eine andere Sorte verwenden

Aktualisierung openHAB 2.5.1 auf 2.5.4

Ich habe hier bereits erklärt wie man von openHAB 2.4.x auf 2.5.x wechseln kann. Nun stand ein kleinerer Wechsel von openHAB 2.5.1 auf 2.5.4 an (hier handelt es sich lediglich um Bugfix-Releases).

Die Änderungen könnt Ihr hier einsehen:

Sicherung mit dem integrierten Backup

Da ich wegen den kleineren Änderungen keine komplette Image-Sicherung vornehmen wollte, habe ich die openHAB-integrierte Sicherungsfunktion wie folgt verwendet:

# openHAB stoppen
sudo systemctl stop openhab2.service
sudo $OPENHAB_RUNTIME/bin/backup

# OPTIONAL - Restore durchführen:
# sudo $OPENHAB_RUNTIME/bin/restore $OPENHAB_BACKUPS/openhab2-backup-19_01_14-17_27_42.zip

# openHAB wieder starten
sudo systemctl start openhab2.service

Das Backup wird in diesem Verzeichnis abgelegt:

/openHAB-share/openhab2-userdata/backups/

Aktualisierung der Installation

Das Update in einer Linux-Distribution auf Debian-basieren wird wie folgt durchgeführt:

sudo systemctl stop openhab2.service
sudo apt-get update
sudo apt-get upgrade

Während des “update” Vorgangs waren Daten von raspbian nicht erreichbar. In der sources.list habe ich folgende Anpassungen vorgenommen:

sudo vi /etc/apt/sources.list

Folgenden Mirror ergänzen:
http://mirror.netcologne.de/raspbian/raspbian/

#deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
deb http://mirror.netcologne.de/raspbian/raspbian/ jessie main contrib non-free rpi

Mit dem ersten Befehl wird der openHAB-Dienst beendet. Die beiden nächsten Zeilen starten die Aktualisierung.

Mit den oben genannten Befehlen wird direkt von 2.5.1 auf 2.5.4 mit allen Abhängigkeiten aktualisiert.

Folgendes habe ich nach dem update noch durchgeführt:

# openHAB stoppen
sudo systemctl stop openhab2.service

# Cache leeren
sudo openhab-cli clean-cache

# Log-Dateien für einen sauberen Start sichern
sudo mv openhab.log openhab.log.old
sudo mv events.log events.log.old

# Neustart
sudo shutdown -r now

Funktionstest

Bei diesem update liegen keine “Breaking Changes” vor d.h. der Funktionstest sollte recht einfach funktionieren.

Folgende Punkte habe ich nach dem Update kontrolliert:

  • Legacy Add-ons – keine Änderungen notwendig
  • Discontinued Add-ons – keine Änderungen notwendig
  • Visual Studio Code
  • Weboberflächen testen (BasicUI, ClassicUI, HabBot, PaperUI)

Danach habe ich noch alle individuellen Bindings und Funktionen aus unserem SmartHome auf Funktionsfähigkeit getestet.

Fazit

Nach ca. einer Stunde arbeit war das kleine Update auf openHAB 2.5.4 in unserem SmartHome erledigt. Großartige Neuerungen gibt es keine, aber dafür sind wieder einige Fehler gefixt worden.

Habt Ihr auch schon auf openHAB 2.5.4 aktualisiert? Hat es bei euch ohne Probleme funktioniert?

Die Sitemap in openHAB

Eine Sitemap in openHAB präsentiert die Things und Items des SmartHome-Systems. Abhängig vom Kundenwunsch muss das entsprechende User Interface (UI) ausgewählt und parametriert werden.

Die Sitemap ist die Visualisierung für den Endanwender, also der Client für den Browser / Web oder die SmartPhone-App.

Hier ist an einem Beispiel meine Struktur in der Android-App dargestellt (auf der höchsten Ebene):

Meine Idee hinter der Struktur war folgender Ansatz:

  • Abbildung der Räume des “Haus” als höchstes Navigationselement (pro Raum sind dann alle im Raum enthaltenen Funktionalitäten abgebildet z.B. Licht, Steckdosen, Dimmer, Rollladen etc.)
  • In den “Zentralfunktionen” sind alle Funktionen für den regelmäßigen Betrieb zusammengefasst z.B. MomeMatic, Tor, LED, Tasmota
  • Im Bereich “Sicherheit” sind die Rauchwarnmelder hinterlegt
  • Bei den “Verbrauchern” gibt es eine übersicht z.B. über die Waschmaschine
  • Bei den vielen “Alexa”-Komponenten (bzw. Echo-Geräten) habe ich eine eigene Kategorie eingefügt
  • Für die ganzen Umwelt-Daten gibt es die Kategorie “Wetter” z.B. Astrologie, Wetter und Wetterwarnungen
  • Meine Anwesenheiten und den Müllkalender regle ich unter “Informationen”
  • Im Bereich “Eigene Funktionen” sind spezielle Multimedia-System z.B. Wecker, Fritzbox, SamsungTV, Onkyo AVR, Kodi (Fire TV Stick) abgelegt

Ich habe die Sitemap.map bei mir manuell erstellt bzw. aus dem Beispiel von openHAB aufgebaut. Das habe ich diese Dokumentation verwendet.

Welche Funktionen interessieren euch aus der Sitemap im Detail (dann gehe ich auf diese Funktion / Visualisierung noch einmal genauer ein)? Auf der zweiten Ebene der Sitemap habe ich dann eher die Detailfunktionen und größeren Visualisierungen hinterlegt. 🙂