GoPro Serienbilder automatisch in Ordner Sortieren

Mithilfe von viele Fotokameras, insbesondere Actioncams wie der GoPro ist es möglich Serienaufnahmen von Bildern zu erstellen.  Mit dieser Funktion werden z.B. 30 Bilder in 30 Sekunden erstellt.  Dies ist eine super funktion, da die Wahrscheinlichkeit, dass ein „gutes“ Bild dabei ist ansteigt.

Die Auswertung ist dann einerseits mühselig wenn die Dateien dann mit Boardmitteln des Betriebssystems verwaltet werden und nicht mit irgendwelchen Verwaltungstools für Fotos.  Wer weiterhin mit Ordnerskrukturen arbeiten will (wofür viele Gründe sprechen) kann beispielsweise mein heute geschriebenes Tool weiterhelfen, etwas Vergleichbares hatte ich vorher vergeblich gesucht,

Das in Java geschriebene Kommandozeilenprogramm erstellt Ordner für jede „Aufnahmeminute“ und sortiert die Bilder dort hinein.

Ein kleiner Auszug aus der Readme Datei:

Voraussetzung: Java Runtume (JRE)
Getestet unter Windows 10 mit Java 8. Sollte jedoch auch unter Linux / MacOS funktionieren

Aufruf: java -jar <Pfad des Basisordners> [nobackup,keepLVR,keepTHM]

Als erster Parameter muss ein Pfad zu dem Ordner angegeben werden
Der zweite Parameter ist optional, dies sind Optionen welche kommagetrennt angegeben werden können
noBackup – Es wird keine Sicherung in den Unterordner ‚!Backup‘ vor dem Verschieben erstellt
keepLVR – Es werden die LVR Dateien nicht gelöscht
keepTHM – Es werden die THM Dateien nicht gelöscht

Das Programm kann hier heruntergeladen werden, über Feedback in den Kommentaren bin ich dankbar und gehe gerne darauf ein!

Was ist Apache Karaf?

Ich bin in meinem Job als Business Intelligence Berater durch den Einsatz einer für mich neuen Technologie in einem Projekt auf das Produkt Apache Karaf gestoßen.  Da der Wikipedia Artikel dazu nur auf Apache Felix weiterleitet, jedoch nicht ein einziges mal das Wort „Karaf“ erwählt habe ich recherchiert nach mehr Informationen.  Auf der Homepage von Karaf ist es auch nicht direkt ersichtlich.

In einem historischen, englischen Wikipedia Artikel aus dem Februar 2016 bin ich fündig geworden.  Wenn in diesem Artikel oben auf „newer Version“ klickt, bemerkt man dass der Artikel „abgebaut“ wurde.. warum auch immer.

Hier jedenfalls der Inhalt:

Apache Karaf is a top level Apache Project that consists of set of projects that provides a dual polymorphic container and application bootstrapping paradigms to the enterprise application development and application hosting. Karaf Container provides enterprise ready features such as a shell console, remote access, hot deployment, dynamic configuration and many more. Karaf projects provide additional features like clustering, complete monitoring and alerting and application repository.

History

Apache Karaf can trace it’s origins back to the Apache Servicemix project’s Kernel. As early as 2008 the first blog posts regarding its development can be observed. The first GA release was on September 18th, 2008. Subsequent releases soon followed, introducing new features. The Servicemix Kernel was off to a great start, eventually however by spring 2009 the project grew to the point that it was thought best to leave Servicemix and join it to the Apache Felix community. It was felt that this would allow awareness to grow about the project, and to expand the Kernel community.

Once established in the Apache Felix community Karaf again started to grow and mature, once again coming to the point that it was felt that another growth spurt was required – becoming a top level Apache project. This occurred mid 2010. Since then Apache Karaf has released it’s first GA as 2.0, and several point releases and patches. The community is now busy readying the next major point release, and preparing for its future 4.1.x.

The name Karaf is said to be originated from Carafe, small container used for serving wine and other drinks.[1]

Apache Karaf Projects

Apache karaf consists of multiple project, each facilitating different aspects of enterprise application development and deployment such as application hosting, project artifact repository management, clustering and application monitoring and alerting.

Karaf Container

Karaf Container is a modern and polymorphic container. It’s a lightweight, powerful, and enterprise ready container powered by OSGi. By polymorphic, it means that Karaf Container can host any kind of applications: OSGi, Spring, WAR, and much more. Here is a short list of features supported by the Karaf Container.[2]

  • Hot deployment: Karaf Container supports hot deployment of OSGi bundles by monitoring jar files inside the [home]/deploy directory. Each time a jar is copied in this folder, it will be installed inside the container run time. One can then update or delete it and changes will be handled automatically. In addition, the Karaf Container also supports exploded bundles and custom deployers (blueprint and spring ones are included by default).
  • Dynamic configuration: Services are usually configured through the ConfigurationAdmin OSGi service. Such configuration can be defined in Karaf Container using property files inside the [home]/etc directory. These configurations are monitored and changes on the properties files will be propagated to the services.
  • Logging System: using a centralized logging back end supported by Log4J, Karaf supports a number of different APIs (JDK 1.4, JCL, SLF4J, Avalon, Tomcat, OSGi)
  • Provisioning: Provisioning of libraries or applications can be done through a number of different ways, by which they will be downloaded locally, installed and started.
  • Native OS integration: Karaf Container can be integrated into the Operating System as a service so that the life cycle will be bound to the Operating System.
  • Extensible Shell console: Karaf Container features a text console where the user can manage the services, install new applications or libraries and manage their state. This shell is extensible by deploying new commands dynamically along with new features or applications.
  • Remote access: using any SSH client, user can connect to the Karaf Container and issue commands in the console
  • Security framework based on JAAS
  • Managing instances: Karaf Container provides simple commands for managing multiple instances. User can create, delete, start and stop instances of Karaf Container through the console.

Karaf Boot

Karaf Boot is a work in progress (not yet available). The purpose is to simplify the design and development of applications, and provide an easy way to build a „run everywhere“ artifact, embedding the Karaf Container.

Karaf Cellar

Cellar is a clustering solution for Apache Karaf Container powered by Hazelcast. Cellar allows to manage a cluster of Karaf instances, providing synchronization between instances. Here is a short list of provided features:[3]

  • Discovery: each Karaf Cellar node is discovered automatically by the others. User can use multicast or unicast for discovery.
  • Cluster group: a Karaf Cellar node could be part of one or more cluster group. Each Karaf unit (features, config, etc) is targeted to a group.
  • Distributed Configuration Admin: Karaf Cellar distributes the configuration data. The distribution is event-driven and filtered by cluster group.
  • Distributed Features: Karaf Cellar distributes the features and repositories information. It’s also event-driven.
  • Distributed Bundles: Karaf Cellar distributes the bundles, on an event-driven base.
  • Local event distribution (optional): cellar-eventadmin feature provides broadcast of the local events to the cluster.
  • Distributed OSGi (optional): cellar-dosgi provides support of Distributed OSGi, allowing to call an OSGi service present on a remote node.
  • WebConsole (optional): cellar-webconsole provides Karaf WebConsole plugins, allowing you to monitor and administrate the cluster using a browser interface.

Karaf Cave

Karaf Cave is an implementation of OSGi Repository R5 specification, providing a resources repository for the Karaf Features Resolver. It still provides an OBR server, but also a full Maven repository. It provides remote access via a HTTP service, and a REST API for management. Cave deals with the requirements and capabilities of all artifacts.[4]

Apache Karaf Cave provides the following features:

  • Storage: Cave includes a storage backend. The default one is a simple filesystem backend. As the Cave backend is designed in a plugin way, one can implement their own backend (for instance, JDBC or LDAP backend).
  • Repository Metadata Generation: Cave creates the repository metadata, using the artifacts presents in the repository storage.
  • Maven support: Cave repositories act as a complete Maven repository, allowing to use Cave directly with Maven.
  • REST API: Cave provides a REST API to manipulate the repositories.
  • Artifact Upload: Users can upload OSGi bundle in a Cave repository. It supports URLs like mvn:groupId/artifactId/version,file:, http:, etc.
  • Repository proxy: Cave is able to proxy an existing repository, for instance an existing Maven repository. The artifacts are located on the „external“ repository, Cave handles the repository metadata. Cave supports file: and http: URLs, it means that Cave is able to browse a remote HTTP Maven repository for instance.
  • Repository population: Cave is able to get artifacts present on an „external“ repository (local file: orremote http:), looking for OSGi bundles, and copy the artifacts in the Cave repository storage.

Karaf Decanter

Decanter provides ready to use monitoring solution. It’s also completely extensible and customizable. [5]

  • The collectors harvest the monitored data (JMX metrics, log messages, …).
  • A dispatcher (powered by OSGi EventAdmin) forwarding the collected data to the appenders and SLA.
  • The appenders receive the collected data and store data into a back end (elasticsearch, cassandra, JDBC, …).
  • SLA (Service Level Agreement) is a special kind of appender, checking the collected data, and eventually raising an alert (to a back end).

Eclipse Integration for Karaf

Apache Karaf EIK (Eclipse Integration for Karaf) is the integration of the Apache Karaf container and the Eclipse IDE. Notable features include:[6]

  • Custom Eclipse perspective for Apache Karaf development: places Karaf runtime information in one location
  • Apache Karaf installation management in the workspace: Karaf installations are managed as workspace projects giving the developer visibility in to the runtime. Each Karaf installation is automatically synchronized with developer’s workspace, including additional bundles, configuration files
  • Run and debug Karaf installations with a single Eclipse Launcher: the launch configuration allows developers to fine tune how Karaf will launch
  • Automatic deployment of workspace plugin projects:create plugin-projects and have them deployed automatically
  • Advanced instrumentation of the running Karaf instance:watch bundles deploy in real time and examine the OSGi service registry from within the Eclipse IDE
  • Access Eclipse platform IDE plugins from within a running Karaf instance:all Eclipse plugins are presented as an OBR

Developer Community

Apache Karaf is an Apache Software Foundation project, available under the Apache v2 license. Community maintains following mailing lists.

Wichtig war für mein Verständnis folgende Information:

  • Karaf Container can host any kind of applications: OSGi, Spring, WAR.

Es werden also Webservices Bereitgestellt u.a. nach der Java-Servlet-Spezifikation

Suchmaschinenvergleich – Google und Startpage (und co.)

VorKurzem habe ich versucht, etwas bewusster online mit meinem Daten umzugehen.  Ich bin auf die Suchmaschine „Startpage“ gestoßen.  Startpage liefert Suchergebnisse von Google, jedoch in anonymisierter Form.   Ich bin davon ausgegangen, dass ich die gleichen Suchergebnisse bei beiden Seiten erhalte, jedoch „nur“ in einer „nicht personalisierten Reihenfolge“.  Leider musste ich feststellen, dass die Suchergebnisse wohl unvollständig sind.  Ich habe einfach mal den Begriff „Janosched“ (der Name von meinem unbekannten Blog) bei beiden Suchmaschinen eingegeben.  Es stellte sich heraus, dass ich bei Google mein Blog an erster Stelle gefunden habe, dies bei Startpage jedoch nicht einmal in den Ergebnissen auftaucht.  Aus diesem Grund (dies ist mir auch noch bei weiteren Suchvorgängen aufgefallen) disqualifiziert sich die Suchmaschine schon fast selbst.

Wer eine alternative Suchmaschine sucht, kann sich auch noch Ecosia oder DuckDuckGo  anschauen.  Ecosia jetzt seinen Fokus nicht auf Datenschutz, sondern setzt überschüsse welche aus Einnahmen generiert werden für das pflanzen von Bäumen ein.  Ecosia nutzt die Suchengine Bing im Hintergrund.  Soweit ich  mit einigen wenigen Testsbeurteilen konnte liefert Ecosia 1:1 die gleichen Suchergebnisse wie Bing.  In meinen Testfall sogar in der gleichen Reihenfolge.  (Auch beim Blog war über den Suchbegriff „Janosched“ sofort zu finden!)

DuckDuckGo hingegen hat, genauso wie Startpage, seinen Fokus auf das Thema Datenschutz.  Hier werden jedoch nicht die Ergebnisse aus Google oder Bing direkt angezapft , sondern es werden über 400 Quellen aggregiert (Darunter auch Yahoo, WolframAplha , Bingund Wikipedia).  Nach meinem Test waren die ergebnisse auch okay! (mein Blog war auch dabei)

Ich will hiermit einfach mal die Augen öffnen, dass es noch eine Onlinewelt abseits von Google gibt 🙂

Datenverbrauch durch Whatsapp Sprach- und Videoanrufe

Ich habe mich gefragt, welche Daten bei Whatsapp bei den Voicecalls und den Videocalls anfallen und hier mal meine werte notiert, sowie das benötigte Datenvolumen pro Minute und die benötigte Bansbreite ausgerechnet.

Sprachverbindungen

Person übertragene Daten [MB] Gesprächslänge [Min] Datenkosten [MB/Min] Bandbreite [Mbit/s] Bandbreite [Kbit/s]
P1 0,158 0:42 0,22 0,02933333 29,3333333
C2 4,8 18:22 0,26 0,03466667 34,6666667
C2 0,465 1:37 0,28 0,03733333 37,3333333
P1 3,3 12:40 0,26 0,03466667 34,6666667
P1 14,0 57:07 0,24 0,032 32

Nach meinen Messungen fällt ein Datenvolumen von 0,22 – 0,28 MB pro Minute an.  Durch die geringe Datenrate von 29 – 37 Kbit ist eine Nutzung auch nach dem Aufbrauchen des Highspeed Datenvolumens möglich bei vielen Anbietern. So drosselt AldiTalk auf beispielsweise 56 Kbit/s, manche Anbieter (z.B. WinSim) drosseln auf unterirdische 16 Kbit/s, was wohl auch der Whatsapp Telefonie Probleme bereiten wird.

Videoverbindungen

Person übertragene Daten [MB] Gesprächslänge [Min] Datenkosten [MB/Min] Bandbreite [Mbit/s] Bandbreite [Kbit/s]
P1 0,237 0:08 1,77 0,236 236
P1 59,3 18:4 3,28 0,437 437
P1 1,1 0:22 3,0 0,4 400
S1 38,8 6:32 5,9 0,786 786

Für Videotelefonie ist eine WLAN-Verbindung ohne Volumenbegrenzung sehr empfehlenswert, da sehr viele Daten anfallen können.  Im Mobilfunknetz ist nach der Drosselung eine Nutzung praktisch nicht möglich.

Commerzbank und die PhotoTAN App

Vor einigen Monaten (oder ist es schon über ein Jahr?) habe ich mich beim Online-Banking von den Tan-Listen gelöst und habe zu dem PhotoTAN verfahren gewechselt.  Hier wird bei einer Überweisung ein QR-Code generiert, welcher abschließend mit einem Scan durch die entsprechende Smartphone App quittiert werden muss.

 

Dies klappte lange Zeit super.  Nach dem Update vom 12.09.2016 auf die Version 7.1.7 war für mich persönlich die App unbrauchbar, da sie auf meinem Android-Smartphone ohne eine Fehlermeldung abstürzte bzw. sich wieder beendete.  Da über den Playstore von Google kein Downgrade auf einen alten Stand einer App möglich ist musste ich auf dubiose Quellen zurückgreifen um die App zu beziehen.  Ich habe mir die vorherige Version der App (Version 7.0.1 vom 07.04.2016) heruntergeladen.  Ich tat dies von mobile9apk und apkmonk und vergleichte die Berechtigungen und die Checksummen, da hier durchaus finanzielle Verluste eintreten könnten bei dem Einsatz von kompromittieren PhotoTan Apps.

 

Die Checksummen der App von beiden Quellen lautete C428D2CA087081CF662DB184B7D91CE1.  Diese Datei war auch schon bei Virustotal hochgeladen und es wurden keine Unregelmäßigkeiten Entdeckt.

 

Die App besitzt von Haus aus keine Berechtigung auf das Internet zuzugreifen.  Dies war mir besonders wichtig für die Verwendung der App aus den „alternativen Quellen“.

 

Nach der Installation der App und die Aktivierung mithilfe des Briefes der Commerzbank für das PhotoTAN verfahren funktioniert diese bis zum heutigen Tag einwandfrei.

 

Ursache für diesen Umstand ist wohl dass ich auf einem Handy eine alternative Firmware einsetzt und Root-Rechte besitze.  Aber anstatt hierdrauf hinzuweisen beendet sich die App einfach..

Auch mit der neusten PhotoTAN-App (Version 7.1.9 vom 30. November 2016) aus dem Google Play Store existiert das Problem für mich immer noch.  Laut den neueren Bewertungen in dem Play Store hat sich jedoch das Problem für viele Kunden erledigt.

Amazon fake Bewertungen finden

 

Auch auf Amazon.de häufen sich die fake Bewertungen.  Meiner Erfahrung nach vor allem von chinesischen Händlern aus dem Bereich von elektronischen Produkten.

Ich bin auf die Seite http://fakespot.com gestoßen.  Diese bietet für das amerikanische Amazon ein Service an, um die Bewertungen von Produkten zu analysieren.

Ich selber bin schon mindestens einmal auf so ein Produkt hineingefallen.  Es handelte sich um Bluetooth Kopfhörer von dem Chinesen Aukey.  Die genaue Artikelbezeichnung ist „AUKEY faltbarer Kopfhörer Bluetooth V4.1 Sport Ohrhörer On-Ear stereo Headset mit Nackenbügel, integriertem Mikrofon, bis zu 24 Stunden Gesprächszeit“ mit der EAN B01CEEJ1E0.

Auf Fakespot erhält dieses Produkt ein glattes F (vergleichbar mit einer 6 im deutschen Schulnotensystem). 61% der Bewertungen entsprechen laut Fakespot eine „niedrige Qualität“.  Die Analyse ist auf folgender Seite zu finden: http://fakespot.com/product/aukey-portable-wireless-bluetooth-headphone-with-built-in-mic-hands-free-noise-cancelling-sports-headset-for-iphone-and-more-phones-ep-b26

Um selber Bewertungen zu euren gesuchten Artikeln zu finden, geht ihr am besten auf Amazon.com und sucht dort den entsprechenden Artikel. Die meisten Artikel von diesen Herstellern werden auf allen Amazon Länderversionen vertrieben.

Ich hoffe, ihr könnt euch so vor dem einen oder Anden „Reinfall“ aufgrund von Bewertungen schützen.