RoarAudio PlayList Daemon/Protokoll: Unterschied zwischen den Versionen

Aus UUGRN
K (→‎Veraltete Befehle: +klein wenig beschreibung.)
(→‎Befehle zur Zeigerverwaltung: +beschreibung fuer die pointer funktionen...)
Zeile 227: Zeile 227:


=== Befehle zur Zeigerverwaltung ===
=== Befehle zur Zeigerverwaltung ===
==== SETPOINTER ====
Setzt den angegebenen Wiedergabelistenzeiger auf einen angegebenen Wiedergabelisten Eintrag.
Syntax:
   SETPOINTER {CURRENT|DEFAULT|STARTUP|TEMP} {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}]
   SETPOINTER {CURRENT|DEFAULT|STARTUP|TEMP} {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}]
===== Bedeutungen der Einzelnen Zeiger =====
{| class="wikitable"
! Zeigername
! Gültigkeit
! Zeiger Beschreibung
|-
! CURRENT
| Global
| Sollte die Haupt Wiedergabewarteschlagen-Spielliste leer laufen so wird der Titel auf den dieser Zeiger verweist automatisch in die Spielliste kopiert und dieser Zeiger einen Eintrag weiter geschoben in der Wiedergabeliste in der sich der Eintrag auf den er Zeigt befindet. Auf diese Weise kann eine ''Spiele alles ab hier'' Funktion implementiert werden wie sie viele andere Wiedergabe-Programme besitzen.
|-
! DEFAULT
| Global
| Sollte der ''CURRENT''-Zeiger bei einer Weiterschiebe-Operation an das Ende der Wiedergabeliste stoßen so wird er erneut mit dem Inhalt dieses Zeigers initialisiert. Auf diese weise kann ein ''Wenn am Ende dann beginn vom Neuen'' Funktion wie es viele Wiedergabe-Programme besitzen implementiert werden. Diese Zeiger Logik kann aber auch zur Implementierung höheren Funktionen verwendet werden, wie dem automatischen Wechsel zwischen verschiedenen Listen.
|-
! STARTUP
| Global
| Der Wiedergabelisten Eintrag auf den dieser Zeiger verweist wird beim Starten des Daemons automatisch abgespielt. Dies gescheit bevor die normale Abarbeitung der restlichen Titel in der Haupt Wiedergabewarteschlagen-Spielliste beginnt.
|-
! TEMP
| Klient Verbindung
| Dieser Zeiger ist rein für die Benutzung in einer Klient Applikation bestimmt. Diese könnte ihn zum Beispiel auf den Aktuell in einem [[GUI]] ausgewählten Listeneintrag verwiesen lassen.
|-
|}
==== SHOWPOINTER ====
Zeigt alle oder nur den angebenden Wiedergabelistenzeiger an.
Syntax:
   SHOWPOINTER [{CURRENT|DEFAULT|STARTUP|TEMP}]
   SHOWPOINTER [{CURRENT|DEFAULT|STARTUP|TEMP}]



Version vom 3. August 2010, 10:15 Uhr

Auf dieser Seite wird auf das simple Protokoll des RoarAudio PlayList Daemon eingegangen. Andere durch den rpld unterstützte Protokolle werden hier ignoriert. Die Spezifikationen zu diesen sind bei den entsprechenden Herstellern zu finden beziehungsweise zu erfragen.

Befehle

Befehle zur Verbindungs-Steuerung

NOOP

Dieser Befehl führt keine Aktion aus sondern bestätigt nur das die Verbindung noch besteht.

QUIT

Dieser Befehl beendet die Verbindung.

HELP

Dieser Befehl gibt einen Hilfe-Text zu den Befehlen aus.

SETPLAYLIST

Dieser Befehl Setzt die aktuelle Wiedergabeliste.

Syntax:

 SETPLAYLIST {"Name"|ID}

AUTH

 AUTH [TO AUTHLEV {n|"name"}] USING authtype...

UNAUTH

Dieser Befehl setzt das AccessLevel (ACCLEV) auf einen gewünschten Wert herunter.

Syntax:

 UNAUTH [ACCLEV] {BY n|TO {n|"name"}}

Beispiel:

 UNAUTH TO "guest"

Befehle zur Steuerung des Abspielvorgangs

PLAY

Dieser Befehl startet den Abspielvorgang.

STOP

Dieser Befehl beendet hält den Abspielvorgang an.

NEXT

Dieser Befehl wechselt zum nächsten Titel.

ISPLAYING

Dieser Befehl kann verwendet werden um in Erfahrung zu bringen ob gerade etwas abgespielt wird.

SHOWPLYING

Dieser Befehl zeigt den aktuellen zustand an. Sollte etwas abgespielt werden so werden weitere Daten zurückgegeben:

Beispiel Ausgabe:

STATE RUNNING
LONGGTN long:0xE1D9000000000067
SHORTGTN short:0xE10000BE
UUID uuid:0eafd00b-0b06-4805-a61f-66dc6427b181
META TITLE "Kuschel.FM - Das Kuschelradio!"
MDUC 1
RATE 44100
CHANNELS 2
BITS 16
TIME 196090280 S (2223.246s)
Feldname Feldbedeutung Mögliche Werte
STATE Der aktuelle Abspielstatus. STOPPED, PAUSE, RUNNING
LONGGTN Lange Globale Titel Nummer GTN
SHORTGTN Kurtze Globale Titel Nummer GTN
UUID Eindeutiger Identifikator für den Titel UUID
META n Meta Datum des Types n Zeichenkette
MDUC Meta Daten Aktualisierungs Zähler Zahl
RATE Abtastrate Zahl
CHANNELS Kanal Anzahl Zahl
BITS Abtastbreite Zahl
TIME Zeit Zahl in Abtastwerten und in Sekunden

PAUSE

Unterbricht das Abspielen oder setzt es fort.

Syntax:

 PAUSE {TRUE|FALSE|TOGGLE}

Befehle der Lautstärke Steuerung

SETVOLUME

Setzt die Lautstärke.

Syntax:

 SETVOLUME new-volume

new-volume kann entweder im Format 'n%' mit n einem Prozentualen Wert von 0..100 sein, oder ein planer Integer im Bereich 0..65535.

SHOWVOLUME

Zeigt die Aktuelle Lautstärke an.

Ausgabe Beispiel:

 VOLUME 65535/65535 100%

Liste zuer Steuerung der Haupt Wiedergabewarteschlagen-Spielliste

LISTQ

Zeigt den Inhalt der Haupt Wiedergabewarteschlagen-Spielliste oder einer anderen Wiedergabeliste an.

Syntax:

 LISTQ [{"Name"|ID}]

FLUSHQ

Löscht den Inhalt der Haupt Wiedergabewarteschlagen-Spielliste.

Befehle zur Wiedergabelisten Verwaltung

LISTPLAYLISTS

Listet alle Wiedergabelisten auf.

SHOWLIST

Zeigt die Aktuelle oder eine andere Wiedergabeliste an.

Syntax:

 SHOWLIST [{"Name"|ID}]

ADDPLAYLIST

Fügt eine neue Wiedergabeliste hinzu.

Syntax:

 ADDPLAYLIST "Name"

DELPLAYLIST

Löcht eine Wiedergabeliste.

Syntax:

 DELPLAYLIST [{"Name"|ID}]

FLUSHPLAYLIST

Leert den Inhalt einer Wiedergabeliste.

Syntax:

 FLUSHPLAYLIST [{"Name"|ID}]

SETPARENTLIST

Setzt die Eltern Liste der Aktuellen oder einer anderen Wiedergabeliste.

Syntax:

 SETPARENTLIST [OF {"Name"|ID}] [TO] {"Name"|ID}

IMPORT

Importiert eine Wiedergabeliste aus einer Datei oder vom Aktuellen Datenstrom in die Aktuelle oder eine andere Wiedergabeliste.

Syntax:

 IMPORT [{"Name"|ID}] FROM {STDIN|"Filename"} [AS {RPLD|PLS|M3U|VCLT|PLAIN}]

EXPORT

Exportiert die Aktuelle oder eine andere Wiedergabeliste in eine Datei oder gibt sie über den aktuellen Datenstrom aus.

Syntax:

 EXPORT [{"Name"|ID}] TO {STDOUT|"Filename"} [AS {RPLD|PLS|M3U|VCLT|PLAIN}]

Befehle zur Wiedergabelisten Eintrags Verwaltung

Bei den folgenden Befehlen steht PLE immer für "PlayList Entry" (Wiedergabelisten Eintrag).

LISTPLE

Zeigt alle Einträge in einer Wiedergabeliste an. Es werden entweder wie Einträge der aktuellen Liste oder der angegebenen Angezeigt.

Syntax:

 LISTPLE [{"Name"|ID}]

SHOWPLE

Dieser Befehl zeigt einen bestimmten Eintrag an. Es wird entweder in der aktuellen Liste, in der angegebenen oder in allen Listen gesucht.

Syntax:

 SHOWPLE {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}]

COPYPLE

Dieser Befehl kopiert einen Eintrag aus der aktuellen, einer angegebenen Liste oder einen aus allen Listen gesuchten Eintrag in eine andere Liste. Eine Position an welcher er in der neuen Liste stehen soll kann optional angegeben werden. Der neue Eintrag erhält eine neue Global Track Number sowie Short Global Track Number.

Syntax:

 COPYPLE {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}] TO {"Name"|ID} [AT POSITION]

MOVEPLE

Gleich der Funktion COPYPLE nur das diese Funktion den Eintrag nicht kopiert sondern verschiebt. Die Global Track Number sowie Short Global Track Number bleibt erhalten.

Syntax:

 MOVEPLE {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}] TO {"Name"|ID} [AT POSITION]

DELPLE

Diese Funktion löscht einen Eintrag aus der aktuellen oder einer angegebenen Liste.

Syntax:

 DELPLE {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID}]

QUEUEPLE

Dieser Befehl ist eine Kurzform des COPYPLE Befehls bei dem die Ziehlliste immer die Haupt Wiedergabewarteschlagen-Spielliste.

Syntax:

 QUEUEPLE {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}] [AT POSITION]

Befehle zur Zeigerverwaltung

SETPOINTER

Setzt den angegebenen Wiedergabelistenzeiger auf einen angegebenen Wiedergabelisten Eintrag.

Syntax:

 SETPOINTER {CURRENT|DEFAULT|STARTUP|TEMP} {long:0xLongID|0xLongID|short:0xShortID|uuid:UUID|pointer:name} [FROM {"Name"|ID|ANY}]
Bedeutungen der Einzelnen Zeiger
Zeigername Gültigkeit Zeiger Beschreibung
CURRENT Global Sollte die Haupt Wiedergabewarteschlagen-Spielliste leer laufen so wird der Titel auf den dieser Zeiger verweist automatisch in die Spielliste kopiert und dieser Zeiger einen Eintrag weiter geschoben in der Wiedergabeliste in der sich der Eintrag auf den er Zeigt befindet. Auf diese Weise kann eine Spiele alles ab hier Funktion implementiert werden wie sie viele andere Wiedergabe-Programme besitzen.
DEFAULT Global Sollte der CURRENT-Zeiger bei einer Weiterschiebe-Operation an das Ende der Wiedergabeliste stoßen so wird er erneut mit dem Inhalt dieses Zeigers initialisiert. Auf diese weise kann ein Wenn am Ende dann beginn vom Neuen Funktion wie es viele Wiedergabe-Programme besitzen implementiert werden. Diese Zeiger Logik kann aber auch zur Implementierung höheren Funktionen verwendet werden, wie dem automatischen Wechsel zwischen verschiedenen Listen.
STARTUP Global Der Wiedergabelisten Eintrag auf den dieser Zeiger verweist wird beim Starten des Daemons automatisch abgespielt. Dies gescheit bevor die normale Abarbeitung der restlichen Titel in der Haupt Wiedergabewarteschlagen-Spielliste beginnt.
TEMP Klient Verbindung Dieser Zeiger ist rein für die Benutzung in einer Klient Applikation bestimmt. Diese könnte ihn zum Beispiel auf den Aktuell in einem GUI ausgewählten Listeneintrag verwiesen lassen.

SHOWPOINTER

Zeigt alle oder nur den angebenden Wiedergabelistenzeiger an.

Syntax:

 SHOWPOINTER [{CURRENT|DEFAULT|STARTUP|TEMP}]

Befehle zur Permanent Speicherung

 STORE {NONE|CONFIG|ALL|QUEUE|PLAYLIST {"Name"|ID|ANY}}
 RESTORE {NONE|CONFIG|ALL|QUEUE|PLAYLIST {"Name"|ID|ANY}}

Veraltete Befehle

Die folgenden Befehle sind veraltet. Sie werden mit Version 0.1.0 voraussichtlich entfernt werden. Sie sollten auf keinen Fall Verwendung finden.

Syntax:

 ADD2Q entry
 DELFQ identifier

Andere Befehle

 SHOWIDENTIFIER
 SHOWCUR
 SEARCHPLE {"search string"|0xdiscid|uuid} [{AS|IN} {ALL|TITLE|ARTIST|VERSION|FILENAME|DISCID|UUID|TAG:"Tagname"}] [FROM {"Name"|ID|ANY}]
 UPDATE [{"Name"|ID|ANY}] {TO|FROM} {STDIN|STDOUT|"Filename"} [AS {RPLD|PLS|M3U|VCLT|XSPF|PLAIN}] USING {ALL|TITLE|ARTIST|VERSION|FILENAME|DISCID|UUID|TAG:"Tagname"} [AND ...] [POLICY {DEFAULT|OLD|NEW} {KEEP|DELETE}]

Weblinks

Offizielle Webpräsenz „RoarAudio PlayList Daemon/Protokoll”

UUGRN-Wiki verbessern („Stub”)

Dieser Artikel ist leider sehr kurz. Also: Sei mutig und mache aus ihm bitte einen guten Artikel, wenn du mehr zum Thema „RoarAudio PlayList Daemon/Protokoll” weißt.