Archiv der Kategorie: PC-Kram

Meine Lieblingsbeschäftigung :)

Eigenbau-MPPT – Hardware-Prototyp und ein paar Ideen

Örks – wieder kein Strom. Mein Wellsee-Regler hat (mal wieder) das Zeitliche gesegnet – guter Zeitpunkt um sich nochmal um den Eigenbau-MPPT zu kümmern.

Einige Prototypen liegen schon hier, allerdings bisher ohne passende Firmware. Das Ganze basiert grob auf dem Design von Tim Nolan und ist aus Kostengründen auf eine 5x5cm-Platine gequetscht. Bis auf einen zu gloßen Elko (geplanter Footprint war nicht lieferbar) und einem zu geringen Abstand zweier Mosfets (Kühlkörper etwas stromm, aber ohnehin elektrisch verbunden) bin ich ganz zufrieden. Von der Dimensionierung sollten ~250W drin sein. Gegenüber des Originals wird ein Halleffektsensor für die Strommessung verwendet, RS232 ist auf eine Anschlussleiste herausgeführt und das Modul ist nicht auf einen Arduino angewiesen.

Derzeit portiere ich die Arduino-Firmware auf native ATTinys. Ich bin mal optimistisch und habe fürs Erste einen ATTiny24a mit 2kb Flash verlötet, im Zweifelsfall kann ich aber mit den 44 oder 48er Typen problemlos aufrüsten. Ich denke die Firmware selbst wird kein so großes Problem, wohl aber meine Featuritis – ich hätte gerne die Möglichkeit mehrere Regler zu vernetzen um so meine unterschiedlichen Module einzel Steuern zu können – sozusagen ein Mehrphasensynchronregler. Zudem wäre ein PC-Interface nicht schlecht um für jedes Modul eigene Statistiken zu erhalten.

[Kurztipp] Standby nach mehreren Aufgaben

Derzeit bin ich auf meinem Rechner einige Videos am recodieren – über Nacht stört es nicht, aber praktisch wäre es schon den PC nach getaener Arbeit abzuschalten. Ein einfaches anhängen des Kommandos funktioniert nicht, da ich mehrere Prozesse simultan am laufen habe. Da alle CPU-intensiv sind sieht die qnd-Lösung jetzt folgendermaßen aus: Alle 5 Sekunden wird die Systemload geprüft, ist sie unter 1 schaltet das System ab. Einfach, aber sollte seinen Zweck erfüllen.

while : ;do echo -n '.' ; if [ `cat /proc/loadavg | cut -d '.' -f 1` -lt 1 ] ;then pm-hibernate ; break ;fi ; sleep 5 ;done

Videostabilisierung unter Linux

Egal wie ruhig man ist: Auf großen Zoomstufen oder beim Bewegen verwackelt fast jedes Video. Professionelle Aufnahmegeräte bieten für diesen Zweck meist eine Stabilisierung in Kamera oder Objektiv, dies ist jedoch aufwändig und kostet entsprechend viel Geld. Besitzer von Consumergeräten müssen aber nicht ganz auf eine solche Stabilisierung verzichten: Viele Videoeditoren bieten entsprechende Bildfilter, welche (auf Kosten der Videoqualität) softwareseitig die Stabilisierung übernehmen. Als kostenlose Lösung ist vielen die entsprechende Funktion der Videoplatform YouTube bekannt, jedoch lässt sich diese nur auf komplette Videos anwenden und ist nicht konfigurierbar, zudem möchte man nicht jedes Video auf der zu Google gehörenden Platform bereitstellen. Leider sieht es unter Linux dünn aus – zwar kann man über wine die Lösung Virtualdub/Deshaker nutzen und der Editor KDEnlive bietet passende Filter im Menü, beide Lösungen lassen sich jedoch nur schwer automatisieren und leidet unter nervigen kleinen Bugs.

Bild: https://www.adlerweb.info/blog/wp-content/uploads/2013/05/kdenlivestab.png

Um nun bei mir das ganze zu erschlagen habe ich ein Script geschrieben, welches alles nötige übernimmt. Die eigentliche Stabilisierung steckt in der Software transcode, da diese jedoch mit vielen Codecs Probleme hat muss das Video entsprechend vorbereitet werden. Durch den Zwischenschritt als MPEG2 ist temporär ein vielfaches des ursprünglichen Speicherplatzes nötig, der sollte beim Umgang mit Videos ja ohnehin reichlich vorhanden sein. Das Ausgabeformat ist derzeit auf 8MBit/s x264 mit 128k MP3 eingestellt, der Stabilisierungsfilter läuft mit Standardwerten.

ffmpeg -i $1 -vcodec mpeg2video -b:v 10000k $1.mpg
ffmpeg -i $1 -acodec libmp3lame -b:a 128k $1.mp3
transcode -J stabilize -i $1.mpg -y null,null -o dummy
transcode -J transform -i $1.mpg -y xvid,pcm -w 10000k -o $1.stab.temp.mp4
ffmpeg -i $1.stab.temp.mp4 -i $1.mp3 -vcodec libx264 -acodec copy -b:v 8000k -map 0:0 -map 1:0 $1.stab.avi
rm $1.stab.temp.mp* $1.mp3 $1.mpg $1.*.trf

Voraussetzungen sind ffmpeg und transcode. Debian/Ubuntu liefern zum Teil statt ffmpeg dessen Fork avconf, in diesem Fall einfach im Script den Befehl anpassen.

http://www.youtube.com/watch?v=HMkRF2yz8M0

Goodbye Google Talk

Google Talk war ein guter Ansatz des Internetriesen: Ein eigener Internetmessenger, stark integriert in die Google-Systeme aber basierend auf dem offenen Protokoll XMPP (ehem. Jabber). Dank der offenen Struktur konnte man auch Clients von anderen Anbietern nutzen und so den Dienst z.B. in den Linux-Desktop integrieren. Auch war man nicht zwingend an Google gebunden: Als Nutzer anderer XMPP-Dienste konnte man mit den bei Google angemeldeten Nutzern – ähnlich wie auch bei E-Mail – problemlos kommunizieren.

Nun ist Schluss: Google hat auf Android-Geräten wie angekündigt Google Talk entfernt und setzt jetzt ausschließlich auf die in Google+ integrierten Hangouts. Keine Drittanbieter-Clients, keine API, keine Kommunikation außerhalb der Google-Dienste. Hier zeigt sich abermals, dass Google nach und nach ihre Rolle als Verfechter freier Standards ablegt und immer mehr geschlossene Systeme aufbaut. Sicher keine gute Sache für die Nutzer, denn dies hat schon früher dazu geführt, dass Nutzer tausende Clients und Endgeräte brauchten um mit anderen zu kommunizieren. Man kann nur Google an eins erinnern: dont be evil.

Überlegungen zu Reclaim.fm

Vor einigen Tagen hat Sascha Lobo in seinem Überraschungsvortrag auf der re:publica 2013 seine Strategie zur Rückeroberung der Netzdaten präsentiert: Mir Reclaim.fm möchte er dafür sorgen, dass die Blogs und Webseiten der Internetnutzer wieder aus ihrem Winterschlaf erwachen. Keine so schlechte Idee: Viele Daten liegen heute in der Cloud und diese ist – wie nicht zuletzt einige Ausfälle in letzter Zeit erneut bewiesen haben – nicht unfehlbar. Ich selbst bin nicht so tief in der Cloud versunken wie manch anderer: Die Inhalte wichtiger Twitter-Erkenntnisse finden sich in Blog-Posts wieder, viele YouTube-Videos stehen auch über meinen Server zum Download bereit, aber einige Sachen verschwinden auch in den Tiefen des Netzes.

Der erste Ansatz, welcher auf der Projektseite explizit als Entwicklerschnellschuss beschrieben wird, ist technisch zwar deutlich verbesserungswürdig, das Konzept ist aber vielversprechend: Statt eigener Systeme zu entwickeln setzt man auf Standards: Youtube-Videos, Facebook-Posts, Tweets – alles wird durch separate „Proxy-Scripts“ verarbeitet und am Ende als RSS ausgegeben. Da dieses Feed-Format weit verbreitet ist sind die Inhalte so über so ziemlich jeden Newsreader nutzbar. Unter anderem besteht so auch die Möglichkeit per Blog-Syndication (z.B. FeedWordPress für WordPress-Blogs) die Inhalte auf die eigene Webseite zu duplizieren.

Auch wenn die Scripte noch in einem frühen Stadium stecken: Das Grundkonzept funktioniert. Auch bei mir landen jetzt Inhalte aus verschiedenen Netzen in einer (auf der Startseite versteckten) Blog-Kategorie, jedoch ist noch ein weiter weg zu gehen: Bilder und Video werden so z.B. derzeit nur auf die Cloud-Dienste verlinkt, hier sollte besser eine lokale Kopie erfolgen um die Inhalte wirklich dauerhaft zu sichern. Auch hoffe ich, dass mit den ersten Versionen eine bessere Versionsverwaltung folgt: Momentan gibt es die Scripte nur als ZIP-Datei, kein GIT-Repository oder ähnliches – Patches erstellen ist somit nur schwer möglich.

Ein Anfang ist immerhin gemacht – ich hoffe, dass viele mitziehen und ihre Daten zukünftig nicht einfach nur großen Unternehmen schenken sondern selbst nutzen und dabei vorzugsweise auf freie Formate und Protokolle setzen, denn wie sich an der Nachricht über das Abhören von Skype zeigt sind die Warnungen der Verfechter von XMPP, PGP & Co nicht zwingend durch Verfolgungswahn entstanden.