Erste Schritte und Tutorials - Infotainment Audio System

Beispiele aus der Praxis Damit möchten wir die Arbeitsweise und die Konfiguration des Infotainment Audio Systems näher bringen und dem Anwender Hilfestellung geben beim Umgang mit den Geräten.

Tutorial - einfacher Audio Player mit dem Eventplayer100

Beispiel mit Eventplayer100 als einfacher Audioplayer - Infotainment Audio System

Wir möchten mit einem Tastfeld Bedienteil einen kleinen Audioplayer mit einem Eventplayer100 bauen, dazu weisen wir den Tasten bestimmte Befehle zu.
Vorgabe der Anwendung:
Alle Tracks befinden sich in einem Ordner, es sollen alle Tracks nacheinander abgespielt werden.
Taste 1 => Play / Pause Funktion
Taste 2 => Nächster Track
Taste 3 => Vorheriger Track
Taste 4 => Stop Funktion
Taste 5 => Volume up
Taste 6 => Volume down

 

Device Settings - Eventplayer100

Als erstes wird das Programm "Infotainment Configuratior" geöffnet und mit "File – new – Singleplayer (Eventplayer100)" eine neue Konfiguration erstellt.
Nun werden die Einstellungen in den Settings (=> Device => Settings) geprüft ob die Notwendigen Voreinstellungen getroffen sind, bis auf den Skiploopmode und dem Pegelschritt können die Defaultwerte eingestellt gelassen werden.

Pegelschritt – 5: Schritte der Lautstärke Änderung
Skiploopmode – on: nach dem letzten Track des Ordners wird wieder zum ersten geblättert

Bedeutung der weiteren Parameter finden Sie unter Punkt 8.2

 

Taste 1 - Event type Binary - Eventplayer100

Taste 1 - Play / Pause:

Nun bearbeiten wir die Events und Aktionen, ein erstes Event ist bereits automatisch gesetzt worden.
Um dieses zu bearbeiten klicken wir auf das Event im Funktionslistenbereich und wählen uns den Event Type Binary aus. Die Edge Detection ist automatisch auf Edge_Rising eingestellt (für einen einfachen Taster), nun wird noch der Eingang ausgewählt, diesen setzen wir auf 1.

 

Beispielkonfiguration - Eventplayer100 Mit "Add Action" fügen wir diesem Ereignis eine Aktion hinzu. Als Action Type möchten wir einen Player haben (Aktion die das Abspielen der Audiodateien betreffen).
Als Kommando möchten wir dieser Taste ein "Play" zuweisen um mit der Taste 1 das abspielen zu starten. Den Loop Modus lassen wir auf off um ein wiederholtes Abspielen des Tracks zu verhindern.

 

Eventplayer100

Taste 2 - Titel zurück:

Mit dem Button "Add Event" fügen wir ein weiteres Event hinzu. Der Event type ist auch ein Player Event, die Edge detection bleibt auf Edge_Rising und wir wählen Eingang 2 aus.>

 

Eventplayer100

Danach eine neue Aktion einfügen durch "Add Action". Der Typ der Aktion ist auch ein Player mit dem Kommando "Prev" für einen Sprung auf den vorherigen Track.

 

Eventplayer100

Taste 3 - Titel vorwärts:

Ein weiteres Event "Player" erstellen mit dem Eingang 3.

 

Eventplayer100

und dazu eine Aktion "Player" mit dem Kommando "Next".

 

Eventplayer100

Taste 4 - Stop:

Ein weiteres Event "Player" erstellen mit dem Eingang 4.

 

Eventplayer100

und dazu eine Aktion "Player" mit dem Kommando "Stop".

 

Eventplayer100

Taste 5 - Volume up:

Ein weiteres Event "Player" erstellen mit dem Eingang 5.

 

Eventplayer100

und dazu eine Aktion "Player" mit dem Kommando
"Volume up".

 

Eventplayer100

Taste 6 - Volume down:

Ein weiteres Event "Player" erstellen mit dem Eingang 6.

 

Eventplayer100

und dazu eine Aktion "Player" mit dem Kommando
"Volume down".

 


Zum Abschluss wird die erstellte Konfiguration unter dem Namen "config.xml" auf der SD-Card gespeichert,
die gewünschten Audiodateien noch auf die Karte kopiert und die neue Konfiguration in den Player geladen.

SD-Card einstecken – Spannung kurz trennen – fertig.
Die Konfiguration mit dem einfachen MP3-Player ist nun fertig und kann über die an den Binären Eingängen angeschlossene Taster gesteuert werden.

 

 

Hier können die Beispiel Konfigurationen heruntergeladen werden.

 

 

Tutorial - Audiotrack spulen

Wir möchten mit einem Taster einen Audiotrack spulen.
Drücken des Tasters => Beginnt zu spulen.
Taster loslassen => Spulen stoppt und Wiedergabe setzt fort.

Einen Audiotrack zu spulen ist etwas kniffelig, da es nicht ausreicht eine Aktion "Player - Fast Forward" zu erstellen.
Bei einer einzelnen Aktion würde das Spulen beginnen aber nicht mehr aufhören. Deshalb muß man sich hier mit einem Trick behelfen.

Vorgabe der Anwendung:
BIN 4 - Spulen Fast Forward
BIN 5 - Spulen Rewind

Benötigt wird ein Eventplayer100, 2 Taster oder ein Tastfeld sowie eine SD-Karte.

Als erstes muß ein Track abgespielt werden mit einer Aktion "Player - Command Start".
Einstellungen sowie Grundlegende Playerfunktionen wie das starten eines Audiotracks sind in diesem Tutorial nicht beschrieben.
Dazu bitte das Tutorial "Beispiel 1 - einfacher Audio Player mit dem Eventplayer100" anschauen.

 

 

Taste 1 - Event type Binary - Eventplayer100

Mit einem Taster der an den BIN 4 angeschlossen ist wollen wir vorwärts spulen.
Dazu wird als erstes ein Event "Binary" durch einen Klick auf "Add Event" erstellt. In der Event Configuration wird der Input 4 ausgewählt und die Edge Detection auf "Edge_rising" (Beim Druck auf die Taste). Dieses Event wird ausgelöst indem Moment auf die Taste gedrückt wird.

Add Event: Binary => Edge_Rising (Input 4)

 

 

 

Beispielkonfiguration - Eventplayer100 Um Vorwärts zu spulen wird eine Aktion "Player" erstellt mit einem Klick auf "Add Action".
Als Action Type wählen wir "Player", als Kommando wird "Fast Forward" ausgewählt.

 

 

Add Action: Player => Command "Fast Forward"

 

 

 

Eventplayer100

Mit dem Button "Add Event" fügen wir ein weiteres Event hinzu. Der Event type ist auch ein "Binary" Event.
In der Event Configuration wird auch hier der Input 4 ausgewählt und die Edge detection stellen wir auf "Edge_Falling" (Beim loslassen der Taste).
Dieses Event wird ausgelöst indem Moment die Taste losgelassen wird.

Add Event: Binary => Edge_Falling (Input 4)

 

 

 

Beispielkonfiguration - Eventplayer100 Danach wird eine neue Aktion einfügen durch "Add Action". Der Typ der Aktion ist hier wieder "Player" mit dem Kommando "Pause". Der Track unterbricht das spulen und macht eine Pause.

 

 

Add Action: Player => Command "Pause"

 

 

 

Beispielkonfiguration - Eventplayer100Für dieses Event wird noch eine weitere Aktion benötigt. Dieses hat wiederum den Aktions Typ "Player" nur diesmal mit dem Kommando "Play/Resume" und wichtig damit diese Aktion nach der Pause ausgeführt wird brauchen wir ein kurzes Delay.
Das Delay wird mit beim Punkt "Action Delay Configuration" eingestellt. Ich habe hier ein Delay von 5ms gewählt.

 

Add Action: Player => Command "Play/Resume" / Delay 5ms

 

 

 

Sobald die Taste auf dem Input 4 losgelassen wird, macht der Player eine Pause gemacht und es wird verzögert eine Aktion Play/Resume ausgelöst.

Beispielkonfiguration - Eventplayer100 Den gleichen Vorgang können wir nun auch für ein Rückwärtsspulen umsetzen. Mit dem Unterschied, das für erste Aktion ein "Rewind" ist (um zurück zu spulen).

 

 

 

Add Action: Player => Command "Pause"

 

 

Den gleichen Vorgang können wir nun auch für ein Rückwärtsspulen umsetzen. Mit dem Unterschied, das für die erste Aktion ein "Rewind" als Aktions Typ verwendet wird (um zurück zu spulen). Die Notwendigen Schritte sind beim Vorwärts und Rückwärtsspulen identisch.

 

 

Hier können die Beispiel Konfigurationen heruntergeladen werden.

 

 

Tutorial - Steuerung in einem Museum

Beispiel mit Eventplayer100 als einfacher Audioplayer - Infotainment Audio System

In einem Museum sollen für die Ausstellungsstücke Bedientableaus eingebaut werden. Auf diesen Tableaus sind Tasten für 3 verschiedene Sprachen (deutsch, englisch, franzözisch).
Mit den einzelnen Tasten werden MP3 Dateien aufgerufen für die jeweilige Sprache, dazu werden Zeitgesteuert bestimmte Lichter ein und ausgeschaltet.

Vorgabe der Anwendung:
Alle Tracks befinden sich in einem Ordner, es sollen alle Tracks nacheinander abgespielt werden.
BIN 1 - Eingang Taste 1 => Deutsch
BIN 2 - Eingang Taste 2 => Englisch
BIN 3 - Eingang Taste 3 => Französisch
BIN 5 - Ausgang Ansteuerung Strahler 1
BIN 6 - Ausgang Ansteuerung Strahler 2
BIN 7 - Ausgang Ansteuerung Strahler 3

INFO! Die Binären Ausgange werden gegen Ground geschalten, da die geschlossenen Kontakte nur einen geringen Strom zur Verfügung stellen, wird ist für die Beleuchtung ein Relais nötig.

Device Settings - Eventplayer100

Durch den Druck auf eine Taste beginnt eine Audiodatei in der jeweiligen Sprache an zu spielen, gleichzeitig wird ein Strahler angesteuert. Während das Audiofile abgespielt wird, passieren verschiedene Aktionen. Der Hauptstrahler wird ausgeschalten und es werden nach und nach verschiedene Lampen ein- und ausgeschaltet.

Als erstes wird das Programm „Infotainment Configuratior“ geöffnet und mit „File – new – Singleplayer (Eventplayer100)“ eine neue Konfiguration erstellt.
Nun werden die Einstellungen in den Settings (=> Device => Settings) geprüft ob die Notwendigen Voreinstellungen getroffen sind, bis auf den Playmode können die Defaultwerte eingestellt gelassen werden.

Trackmode – track: es wird nur ein Track abgespielt

 

 

Taste 1 - Event type Binary - Eventplayer100

Taste 1 - Start Deutsche Sprache:

Nun bearbeiten wir die Events und Aktionen, ein erstes Event ist bereits automatisch gesetzt worden.

Um dieses zu bearbeiten klicken wir auf das erstellte Event im Funktionslistenbereich und wählen den Event Type Binary aus.
Die Edge Detection ist automatisch auf Edge_Rising eingestellt (für einen einfachen Taster), nun wird noch der Eingang ausgewählt, diesen setzen wir auf 1.

Add Event: Binary => Edge_Rising (Input 1)

 

Beispielkonfiguration - Eventplayer100 Mit "Add Action" fügen wir diesem Ereignis eine Aktion hinzu. Als Action Type möchten wir einen Player haben (Aktion die das Abspielen der Audiodateien betreffen).
Als Kommando möchten wir dieser Taste ein „Start“ zuweisen um mit der Taste 1 das abspielen zu starten.

Den Loop Modus lassen wir auf off um ein wiederholtes Abspielen des Tracks zu verhindern. Um die Audiodatei auszuwählen wird unter der "File config" mit dem Button "browse" eine Datei ausgewählt.

Add Action: Player => Command "Play" File: deutsch.mp3

(Dabei ist darauf zu achten, das die Datei den Spezifikationen laut Datenblatt entspricht und nicht mehr als 8 Zeichen vor dem Punkt und 3 Zeichen als Dateiendung hat.)

Eventplayer100

Wir fügen noch mit "Add Action" eine weitere Aktion hinzu um den Binären Ausgang 5 einzuschalten (Action Type = Binary).
Den Ausgang "Switch Output schalten wir für "Out 5" auf "high = ON". Mit dieser Aktion wird der Ausgang 5 auf Masse (G) geschalten.

 

 

Add Action: Binary => Switch Output 5 (High)

 

 

 

Eventplayer100

Steuerung der Beleuchtung 2 nach Zeit:

Nach 28:00 Sekunden soll der Ausgang 6 (Beleuchtung 2) eingeschalten werden und der Ausgang 5 (Beleuchtung 1) wieder ausgeschalten werden.
Dazu wird mit einem Player Event die Audio Datei "deutsch.mp3" ausgewählt und die Zeitsteuerung auf
"After begin" also Zeit nach dem Beginn des abspielens auf
0:28:00 gestellt.

Add Event: Player => File config "deutsch.mp3" - After begin 0:28:00

 

Eventplayer100

Dazu werden zwei Aktionen benötigt.

 

Mit der ersten wird der Ausgang 5 wieder ausgeschalten.

 

 

Add Action: Binary => Switch Output 5 (Low = OFF)

 

Eventplayer100

Mit der zweiten wird der Ausgang 6 eingeschalten.

 

 

 

 

Add Action: Binary => Switch Output 6 (High = ON)

 

 

 

Eventplayer100

Steuerung der Beleuchtung 3 nach Zeit:

Die nächste Funktion soll sein, das nach 1 Minute und 7 Sekunden zusätzlich der Ausgang 7 (Beleuchtung 3) eingeschalten werden.
Dazu wird mit einem Player Event die Audio Datei "deutsch.mp3" ausgewählt und die Zeitsteuerung auf
"After begin" also Zeit nach dem Beginn des abspielens auf 1:7:00 gestellt.

Add Event: Player => File config "deutsch.mp3" - After begin 1:07:00

 

Eventplayer100

Um die Beleuchtung 3 einzuschalten wird der Ausgang 7
auf "ON" gestellt.


 



Add Action: Binary => Switch Output 7 (High = ON)

 

 

 

Eventplayer100

Beleuchtung ausschalten 2 Sek. vor Trackende:

Die Beleuchtung soll 2 Sekunden bevor der Audio Track zu Ende ist wieder ausgeschaltet werden.

Dafür wird ein Event erstellt das über die Zeitsteuerung abfragt wann der Track 2 Sekunden vor dem Ende ist.

 

Add Event: Player => File config "deutsch.mp3" - Before end 0:02:00

 

Eventplayer100

Sobald das Event erreicht wird, werden die Ausgänge 6 und 7 wieder geöffnet.

 



 

Add Action: Binary => Switch Output 6 (Low = OFF)

 

Eventplayer100

und

 

 

 

 

Add Action: Binary => Switch Output 7 (Low = OFF)

 


Zum Abschluss wird die erstellte Konfiguration unter dem Namen „config.xml“ auf der SD-Card gespeichert,
die gewünschten Audiodateien noch auf die Karte kopiert und die neue Konfiguration in den Player geladen.

SD-Card einstecken – Spannung kurz trennen – fertig.
Die Konfiguration mit dem einfachen MP3-Player ist nun fertig und kann über die an den Binären Eingängen angeschlossene Taster gesteuert werden.

 

 

Hier können die Beispiel Konfigurationen heruntergeladen werden.

 

 

Firmware Update durchführen

Unbenanntes Dokument

HowTo:
1) Firmware auf die SD-Karte kopieren (ohne Unterverzeichnis direkt in die 'Wurzel')
2) Nach <update.bin> umbenennen
3) Player stromlos machen
4) Setup-Taster halten und Player wieder an den Strom hängen
5) Led blinkt einige Sekunden schnell

*******************************
Auszug aus der Anleitung:
*******************************

7.5 Firmware Update:
Mit der Firmware können neue Funktionen und Änderungen an der Gerätesoftware aktualisiert werden.

  • Für ein Firmwareupdate muß die neue Firmware Update Datei auf die Speicherkarte ins Rootverzeichnis kopiert werden.
  • Die Datei muß die Bezeichnung „update.bin“ haben (Notfalls umbenennen).
  • Nach dem Kopieren der neuen Firmware kann das Firmwareupdate durchgeführt werden.
    Dazu wird die SD-Karte in das Laufwerk gesteckt die Spannung des Players getrennt und wieder eingeschaltet beim Eventplayer100.
  • Während des Einschaltens und während des Updates muß die Index Taste gedrückt und gehalten werden.
  • Während des Updates blinkt die LED schnell rot, Dauer des Updates ca. 10 sek.
  • Wenn das Update beendet ist erlischt die rote LED und es wird neu gestartet.
  • Die Index Taste kann nun wieder losgelassen werden. Sobald der Player neu gestartet hat ist er mit dem neuen Update wieder Betriebsbereit.
  • Während des Updatevorgangs darf das Gerät nicht vom Netz getrennt werden.

Audio

Unterstützte Audio Formate

Folgende Audioformate werden unterstützt

  • (.mp3) MPEG1 layer 3 MP3 nur Stereo
  • (.wav) Unkomprimierte Audiodaten (nur stereo mit 16 Bit PCM kodiert)

 

Audio Einstellungen

  • Abtastfrequenz 44,1 kHz
  • Komprimierungsrate von 32 bis 256 Kbps
  • Komprimierung Variabel VBR oder Konstant CBR

 

Wenn Audiodateien mit einer falschen Abtastrate vorliegen, z.B. 48kHz.
werden diese übersprungen und nicht abgespielt

 

 

 

Supported audio formats

The following audio formats are supported

  • (.mp3) MPEG1 layer 3 MP3 only stereo
  • (.wav) Uncompressed audio data (only stereo encoded with 16 bit PCM)

 

Audio settings

  • Sampling rate 44,1 kHz
  • compression rate from 32 upto 256 Kbps
  • Compression variable VBR or constant CBR

 

if there are audio files with an incorrect sampling rate, e.g. 48kHz. these files are getting skipped and not played.

WAV Datei wird nicht abgespielt

Es werden WAV Dateien nur unkomprimiert und mit 16 Bit PCM kodiert - in stereo abgespielt.

Mono Dateien können nicht verarbeitet werden.

Hinweise zu den unterstützten Audio Formaten >>>

Mono Dateien werden nicht abgespielt

Mono Dateien können vom Player nicht abgespielt werden.

Es werden folgende Audioformate unterstützt

MPEG1 layer 3 MP3 (.mp3)
Advanced Audio Coding (AAC)
Datei im ADTS Stream Format (.aac) oder MP4 Container Format (.mp4, .m4a)
Unkomprimierte Audiodaten (.wav) (nur stereo mit 16 Bit PCM kodiert)

Audiodateien werden mit der Standard Samplerate von 44,1 kHz sowie mit einer Samplegröße von 16 Bit verarbeitet.

Die Player verarbeiten nur stereo Dateien!

Übersprechen bei getrenntem Stereo Signal

Problem mit Übersprechen

Der Audio Eingang des Verstärkers muß gleich ausgeführt sein wie der des Ausgangs des Eventplayers um ein übersprechen zu verhindern.
Wird ein Symetrischer Ausgang an den Unsymetrischen Eingang eines Verstärkers angeschlossen (oder umgekehrt) kopplet die jeweils andere Seite des Audio Signal über die Masse mit ein und summiert gleichzeitig das Audio Signal es erfolgt ein übersprechen.

Pin (L+) > Audio + Links
Pin (L-) > Audio - Links
Pin (R+) > Audio + Rechts
Pin (R-) > Audio - Links

 

 

 

Symetrischer Ausgang

Der Eventplayer100 wird Standardmäßig in Symetrischer Ausführung geliefert, dabei hat jeder Ausgang eine getrennte Masse.
Um ein übersprechen zu verhindern muß der angeschlossene Verstärker einen symetrischen Eingang besitzen. Wenn am angeschlossenen Verstärker nur ein Unsymetrischer Eingang zur Verfügung steht, muß der Eventplayer auch als Unsymetrische Variante bestellt werden.

 

 

 

 

 

 

Unsymetrischer Ausgang

Bei der Unsymetrischen Variante haben die Ausgänge eine gemeinsame Masse.
Unsymetrische Eingänge haben allerdings generell das Problem das es zu Brummschleifen kommen kann. Dazu muß die Masse der Eingangsbuchsen des angeschlossenen Verstärkers vom Schutzleiter getrennt werden mit einem Groundlift Schalter.

 

COM Messages

Generische COM-Messages

Mit dem Eventplayer100 ist es möglich, generische COM-Messages zu senden und empfangen. Somit ist es möglich, mit einem einzelnen COM-Event unterschiedliche Aktionen auszuführen und mit einer COM-Aktion unterschiedliche Messages zu senden.
Für diese Möglichkeiten muss der Infotainment Configurator mindestens auf dem Versionsstand 0.5.1 sind und die Firmware auf dem Stand 0.1.13.

Generische COM-Events

Bei einer COM-Message für einen COM-Event ist es möglich einen oder mehrere Parameter-Zeichenketten zu ergänzen, welche beim Empfang in die Aktion übernommen werden. Momentan ist dies nur bei Player-Aktionen möglich. Dabei wird der Inhalt in „File Config“ (Audiopfad) durch die Zeichenkette in der COM-Message ersetzt.
Die Möglichkeit für die Übergabe der Zeichen muss im Event mit „Allow Com Extension“ aktiviert werden, sonst werden keine Zeichen übergeben.
Um die Zeichen zu übergeben muss an das Ende der normalen COM-Message ein URI angehängt werden. Dieser hat folgenden Aufbau:
<evt:Zeichenkette>
Hier ist ein Beispiel wie der Track Test.mp3 aufgerufen wird.

 

Event:

Aktion:

 

Um den Track zu starten muss die Message play_<evt:Test.mp3> gesendet werden.

Generische COM-Aktionen

Bei einer COM-Message von einer COM-Aktion ist es möglich, einen von Player generierten Text zu senden. Dazu muss eine Systemvariable mit einem %-Zeichen, jeweils vor und nach der Variable, in die Message eingefügt werden. Es gibt die Variablen ERROR, STATE, CARD und EVT_PATH.

Trackpfad bei Start- und Stop-Event übergeben

Bei einem Start- oder Stop-Event wird der Trackpfad der diesen Event ausgelöst hat intern gespeichert. Wenn dann in der Message von einer COM-Aktion übergeben werden soll, muss dazu die Variable EVT_PATH eingefügt werden. Damit der Event bei verschiedenen Tracks aufgerufen wird, darf der Trackpfad nur eine Teilmenge bzw. die Schinittmenge von Trackanfang enthalten.
Hier ist ein Beispiel wir bei einem Start-Event der Trackpfad übergeben wird.

 

Event:

Aktion:

 

Wenn der Track Test.mp3 gestartet ist, wird die Message play_Test.mp3 gesendet. In diesem Event ist der Bereich für den Trackpfad (File config) leer, sodass bei jedem Trackstart der Event aufgerufen wird.