Mp3-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Fehlermeldung "Could not read YUV4MPEG2 header: unsupported features!")
 
(42 dazwischenliegende Versionen von 24 Benutzern werden nicht angezeigt)
Zeile 3: Zeile 3:
  
 
Spielt MP3s, OGGs, WAVs etc. ab. Auch [[Internetradio]] kann damit benutzt werden. Es benutzt als Ausgabegerät entweder die DVB-Karte oder eine Soundkarte. Das Bedienkonzept ist playlisten-zentriert.
 
Spielt MP3s, OGGs, WAVs etc. ab. Auch [[Internetradio]] kann damit benutzt werden. Es benutzt als Ausgabegerät entweder die DVB-Karte oder eine Soundkarte. Das Bedienkonzept ist playlisten-zentriert.
 +
 +
===Status===
 +
Letztes Update 12/2009
  
 
==Bilder==
 
==Bilder==
 
[[Bild:mp3-plugin.jpg|thumb|none|''Einstellungen'']]
 
[[Bild:mp3-plugin.jpg|thumb|none|''Einstellungen'']]
 +
 +
==Bedienung==
 +
===[[SVDRP]] Befehle===
 +
{| class="wikitable"
 +
|- bgcolor=#efefef
 +
!Parameter
 +
!Beschreibung
 +
|-
 +
| PLAY <filename> || Triggers playback of file 'filename'.
 +
|-
 +
| TEST <filename> || Tests if playback of file 'filename' is possible.
 +
|-
 +
| CURR            || Returns filename of song currently being replayed.
 +
|}
  
 
==Hardwareanforderungen==
 
==Hardwareanforderungen==
* DVB Karte
+
* veraltete SDTV [[Full-featured-DVB-Karte]] mit Firmware >= 261d oder sinnvoller
* Optional Soundkarte
+
* Soundkarte
  
 
==Softwareanforderungen==
 
==Softwareanforderungen==
Zeile 21: Zeile 38:
  
 
==Installation==
 
==Installation==
 
+
===Optionen===
...der benötigten Bibliotheken:
+
{| class="wikitable"
 
+
<pre>
+
cd $SOURCEDIR
+
tar xfvz zlib-<VERSION>.tar.gz
+
cd zlib-<VERSION>.tar.gz
+
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
cd -
+
 
+
tar xvzf libid3tag-<VERSION>.tar.gz
+
cd libid3tag-<VERSION>
+
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
cd -
+
 
+
tar xvzf libmad-<VERSION>.tar.gz
+
cd libmad-<VERSION>
+
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
cd -
+
 
+
tar xvzf libsndfile-<VERSION>.tar.gz
+
cd libsndfile-<VERSION>
+
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
 
+
tar xvzf libogg-<VERSION>.tar.gz
+
cd libogg-<VERSION>
+
./configure --prefix=/usr/local
+
make
+
make install
+
ldconfig
+
cd -
+
 
+
tar xvzf libvorbis-<VERSION>.tar.gz
+
cd libvorbis-<VERSION>
+
./configure --prefix=/usr/local \
+
            --with-ogg-libraries=/usr/local/lib
+
make
+
make install
+
ldconfig
+
</pre>
+
 
+
...des MP3-Plugins: Entpacken des Plugins in VDR/PLUGINS/src/mp3 (nur Zahlen und Buchstaben im Verzeichnisnamen, sonst findet <code>make plugins</code> das Plugin nicht), dann im VDR-Verzeichnis <code>make plugins</code>.
+
 
+
==Optionen==
+
{| border=1 cellpadding=2 cellspacing=0
+
 
|-
 
|-
|bgcolor=#efefef|WITHOUT_MP3=1
+
| bgcolor=#efefef | WITHOUT_MP3=1
|Übersetzen ohne MP3-Plugin
+
| Übersetzen ohne MP3-Plugin
 
|-
 
|-
|bgcolor=#efefef|WITHOUT_MPLAYER=1
+
| bgcolor=#efefef | WITHOUT_MPLAYER=1
|Übersetzen ohne MPlayer-Plugin
+
| Übersetzen ohne MPlayer-Plugin
 
|-
 
|-
|bgcolor=#efefef|WITHOUT_LIBSNDFILE=1
+
| bgcolor=#efefef | WITHOUT_LIBSNDFILE=1
|Übersetzen ohne Libsndfile
+
| Übersetzen ohne Libsndfile
 
|-
 
|-
|bgcolor=#efefef|WITHOUT_LIBVORBISFILE=1
+
| bgcolor=#efefef | WITHOUT_LIBVORBISFILE=1
|Übersetzen ohne libvorbisfile
+
| Übersetzen ohne libvorbisfile
 
|-
 
|-
|bgcolor=#efefef|WITH_OSS_OUTPUT=1
+
| bgcolor=#efefef | WITH_OSS_OUTPUT=1
|Übersetzen mit "OSS sound Ausgabe". Laut HISTORY kann das DSP device mit angegeben werden: -D [NUM] somit -D 1
+
| Übersetzen mit "OSS sound Ausgabe". Laut HISTORY kann das DSP device mit angegeben werden: -D [NUM] somit -D 1
|-
+
|bgcolor=#efefef|BROKEN_PCM=1
+
|Please note that you need a 261d firmware or you have to compile with...
+
 
|}
 
|}
 
<!-- ==Patches== -->
 
  
 
==Konfiguration==
 
==Konfiguration==
Es wird davon ausgegangen, das das Plugin bereits entpackt und verlinkt wurde, siehe [[Plugin Installation]].
+
  mkdir -p /var/lib/cddb [[Struktur|$VDRCONFIG]]/plugins/{mp3,mplayer}
 
+
  cd [[Struktur|$SOURCEDIR]]/VDR/PLUGINS/src/mp3/examples
Minimale Installation: examples/mp3sources.conf.example nach /video/plugins/ kopieren, anpassen, VDR per <code>vdr -P'mp3'</code> starten.
+
  # Die network.sh ist an die Bedürfnisse anzupassen.
 
+
  mv network.sh.example network.sh
  mkdir -p /var/lib/cddb
+
  mv mount.sh.example mount.sh
  cd $SOURCEDIR/VDR/PLUGINS/src/mp3/examples
+
  # Die [[network.sh]] ist an die Bedürfnisse anzupassen.
+
  mv network.sh.example [[network.sh]]
+
  mv mount.sh.example [[mount.sh]]
+
 
  chmod 777 *.sh
 
  chmod 777 *.sh
  cp mp3sources.conf.example /etc/vdr/plugins/[[mp3sources.conf]]
+
  cp mp3sources.conf.example [[Struktur|$VDRCONFIG]]/plugins/mp3/[[mp3sources.conf]]
  cp mp3sources.conf.example /etc/vdr/plugins/[[mplayersources.conf]]
+
  cp mp3sources.conf.example [[Struktur|$VDRCONFIG]]/plugins/mplayer/[[mplayersources.conf]]
 
  cd /usr/local/bin
 
  cd /usr/local/bin
  ln -vs $SOURCEDIR/VDR/PLUGINS/src/mp3/examples/*.sh .
+
  ln -vs [[Struktur|$SOURCEDIR]]/VDR/PLUGINS/src/mp3/examples/*.sh .
cd $SOURCEDIR/VDR
+
make all plugins
+
  
 
Übergabe:
 
Übergabe:
  
  vdr -P'mp3 -m /usr/local/bin/[[mount.sh]] -B /var/lib/cddb -n /usr/local/bin/[[network.sh]]'
+
  vdr -P'mp3 -m [[Struktur|$PATH]]/mount.sh -B /var/lib/cddb -n [[Struktur|$PATH]]/network.sh -S mp3'
  
Es ist auch möglich Internet-Streams zu empfangen, sicher nur für Standleitungen von Interesse.
+
Es ist auch möglich Internet-Streams ([[Internetradio]]) zu empfangen, sicher nur für Standleitungen von Interesse.
  
Nun sollte auch klar werden, für was die [[network.sh]] anzupassen ist.
+
Nun sollte auch klar werden, für was die network.sh anzupassen ist.
  
 
Ruft man einen Stream auf, kann mit besagten Script die Internetverbindung hergestellt werden.
 
Ruft man einen Stream auf, kann mit besagten Script die Internetverbindung hergestellt werden.
Zeile 142: Zeile 93:
  
 
Unter folgenden Adressen, findet man für jeden Geschmack etwas.
 
Unter folgenden Adressen, findet man für jeden Geschmack etwas.
 
 
* http://www.shoutcast.com
 
* http://www.shoutcast.com
 
* http://www.di.fm
 
* http://www.di.fm
  
 
Oder per Script.
 
Oder per Script.
 
 
* http://vdrportal.de/board/thread.php?threadid=19478
 
* http://vdrportal.de/board/thread.php?threadid=19478
  
==Einstellungen==
+
===Einstellungen===
 
;Audio Modus = Streuen
 
;Audio Modus = Streuen
 
Der MP3-Dekoder liefert 24bit Daten, die auf 16bit herunterskaliert werden müssen. Der Modus
 
Der MP3-Dekoder liefert 24bit Daten, die auf 16bit herunterskaliert werden müssen. Der Modus
Zeile 225: Zeile 174:
 
Die Port Nummer des CDDB Servers.
 
Die Port Nummer des CDDB Servers.
  
==Parameter==
+
===Parameter===
{| border=1 cellpadding=2 cellspacing=0
+
{| class="wikitable"
|- bgcolor=#efefef
+
|-
 
!Parameter (kurz)
 
!Parameter (kurz)
 
!Parameter (lang)
 
!Parameter (lang)
 
!Beschreibung
 
!Beschreibung
 
|-
 
|-
| -m || --mount=CMD  || use CMD to mount/unmount/eject mp3 sources (default: mount.sh)
+
| -m ''<DATEI>'' || --mount=''<DATEI>'' || Skripts zum Mounten/Unmounten/Auswerfen (Standard: ''mount.sh'')
 
|-
 
|-
| -n || --network=CMD || execute CMD before & after network access (default: none)
+
| -n ''<CMD>''  || --network=''<CMD>'' || Führe Befehl vor/nach Netzwerk-Zugriff aus (Standard: kein)
 
|-
 
|-
| -C || --cache=DIR  || store ID3 cache file in DIR (default: video dir)
+
| -C ''<DIR>'' || --cache=''<DIR>''   || Speichere ID3-Cache in diesem Verzeichnis (Standard: Videoverzeichnis)
 
|-
 
|-
| -V || --cddb=DIR     || search CDDB files in DIR (default: /var/lib/cddb)
+
| -V ''<DIR>'' || --cddb=''<DIR>''    || Suche CDDB-Dateien in disem Verzeichnis (Standard: ''/var/lib/cddb'')
 
|-
 
|-
| -D || --dsp=DIR    || device for OSS output (default: none)
+
| -D ''<DATEI>'' || --dsp=''<DATEI>''  || Gerätedatei für OSS-Output (Standard: kein)
 
|-
 
|-
| -i || --iconv=CMD  || use CMD to convert background images (default: image_convert.sh)
+
| -i ''<DATEI>'' || --iconv=''<DATEI>'' || Skript zum konvertieren der Hintergrundbilder (Standard: ''image_convert.sh'')
 
|-
 
|-
| -c || --icache=DIR  || cache converted images in DIR (default: /var/cache/images/mp3)
+
| -c ''<DIR>'' || --icache=''<DIR>'' || Cache-Verzeichnis für konvertierte Hintergrundbilder (Standard: ''/var/cache/images/mp3'')
 +
|-
 +
| -S ''<SUB>'' || --sources=''<SUB>'' || Suche sources config in SUB Unterverzeichnis (Standard: "")
 
|}
 
|}
  
<!-- ==Bedienung== -->
+
==Aktuelle Version==
 
+
[http://www.muempf.de/down/vdr-mp3-0.10.2.tar.gz 0.10.2]
==Probleme==
+
===Fehlermeldung "Could not read YUV4MPEG2 header: unsupported features!"===
+
Damit die Anzeige der Hintergrundbilder (mit "mjpegtools/sid 1:1.8.0-0.1") funktioniert, muß das Beispielskript image_convert.sh noch angepaßt werden. Die Zeilen
+
 
+
ppmtoy4m -v 0 -n 1 -r -F 30000:1001 | \
+
 
+
ppmtoy4m -v 0 -n 1 -r -F 25:1 | \
+
 
+
müssen in
+
ppmtoy4m -v 0 -n 1 -r -F 30000:1001 -S 420mpeg2 | \
+
 
+
ppmtoy4m -v 0 -n 1 -r -F 25:1 -S 420mpeg2 | \
+
 
+
geändert werden. Sonst gibt mpeg2enc die Fehlermeldung "Could not read YUV4MPEG2 header: unsupported features!" aus.
+
 
+
----
+
Glaube folgende Änderung, wäre besser, um es ein wenig Abwärtskompatibel zu halten.
+
 
+
<pre>
+
--- image_convert.sh.example.org 2006-02-01 23:38:20.000000000 +0100
+
+++ image_convert.sh.example 2006-02-01 23:39:10.000000000 +0100
+
@@ -61,17 +61,23 @@
+
#
+
# now run the conversion
+
#
+
+
+
+# 'chroma subsampling mode' mjpegtools >= 1.8.0
+
+if ppmtoy4m -h | egrep -q "'420mpeg2'" ; then
+
+    SUBSAMPLINGMODE="-S 420mpeg2"
+
+fi
+
+
+
if [ "$FORMAT" = "ntsc" ]; then
+
  pnmscale $S $TMP | \
+
    pnmpad -black -width 704 -height 480 | \
+
    ppmntsc | \
+
-    ppmtoy4m -v 0 -n 1 -r -F 30000:1001 | \
+
+    ppmtoy4m -v 0 -n 1 -r -F 30000:1001 $SUBSAMPLINGMODE | \
+
    mpeg2enc -f 7 -T 90 -F 4 -nn -a 2 -v 0 -o "$MPG"
+
else
+
  pnmscale $S $TMP | \
+
    pnmpad -black -width 704 -height 576 | \
+
    ppmntsc --pal | \
+
-    ppmtoy4m -v 0 -n 1 -r -F 25:1 | \
+
+    ppmtoy4m -v 0 -n 1 -r -F 25:1 $SUBSAMPLINGMODE | \
+
    mpeg2enc -f 7 -T 90 -F 3 -np -a 2 -v 0 -o "$MPG"
+
fi
+
#
+
</pre>
+
 
+
<!-- ==Tipps== -->
+
<!-- ==Wunschliste== -->
+
<!-- ==Snapshot== -->
+
  
 
==Links==
 
==Links==
{|
+
# [http://www.muempf.de/index.html Homepage des Plugins]
| [1]
+
| http://www.underbit.com/products/mad
+
| (M)PEG (A)udio (D)ecoder Homepage
+
|-
+
| [2]
+
| http://www.zip.com.au/~erikd/libsndfile
+
| Homepage -> libsndfile
+
|-
+
| [3]
+
| http://www.vorbis.com/setup_linux/
+
| Ogg Vorbis CODEC Project
+
|-
+
| [4]
+
| http://www.gzip.org/zlib
+
| Zlib
+
|-
+
| [5]
+
| http://www.muempf.de/index.html
+
| Homepage des Plugins
+
|}[[Kategorie:Plugins]]
+
  
 +
[[Kategorie:Plugins]]
 +
[[Kategorie:Medienspieler-Plugins]]
 
{{i18n|mp3-plugin}}
 
{{i18n|mp3-plugin}}

Aktuelle Version vom 29. August 2013, 16:49 Uhr

Inhaltsverzeichnis

[Bearbeiten] Beschreibung

Autor: Stefan Huelswitt

Spielt MP3s, OGGs, WAVs etc. ab. Auch Internetradio kann damit benutzt werden. Es benutzt als Ausgabegerät entweder die DVB-Karte oder eine Soundkarte. Das Bedienkonzept ist playlisten-zentriert.

[Bearbeiten] Status

Letztes Update 12/2009

[Bearbeiten] Bilder

Einstellungen

[Bearbeiten] Bedienung

[Bearbeiten] SVDRP Befehle

Parameter Beschreibung
PLAY <filename> Triggers playback of file 'filename'.
TEST <filename> Tests if playback of file 'filename' is possible.
CURR Returns filename of song currently being replayed.

[Bearbeiten] Hardwareanforderungen

[Bearbeiten] Softwareanforderungen

  • zlib
  • libid3tag
  • libmad
  • libsndfile (optional für WAV-Dateien)
  • libvorbis, libvorbisfile (optional für OGG-Dateien)
  • netpbm (optional für Hintergrundbilder)
  • mjpegtools (optional für Hintergrundbilder)

[Bearbeiten] Installation

[Bearbeiten] Optionen

WITHOUT_MP3=1 Übersetzen ohne MP3-Plugin
WITHOUT_MPLAYER=1 Übersetzen ohne MPlayer-Plugin
WITHOUT_LIBSNDFILE=1 Übersetzen ohne Libsndfile
WITHOUT_LIBVORBISFILE=1 Übersetzen ohne libvorbisfile
WITH_OSS_OUTPUT=1 Übersetzen mit "OSS sound Ausgabe". Laut HISTORY kann das DSP device mit angegeben werden: -D [NUM] somit -D 1

[Bearbeiten] Konfiguration

mkdir -p /var/lib/cddb $VDRCONFIG/plugins/{mp3,mplayer}
cd $SOURCEDIR/VDR/PLUGINS/src/mp3/examples
# Die network.sh ist an die Bedürfnisse anzupassen.
mv network.sh.example network.sh
mv mount.sh.example mount.sh
chmod 777 *.sh
cp mp3sources.conf.example $VDRCONFIG/plugins/mp3/mp3sources.conf
cp mp3sources.conf.example $VDRCONFIG/plugins/mplayer/mplayersources.conf
cd /usr/local/bin
ln -vs $SOURCEDIR/VDR/PLUGINS/src/mp3/examples/*.sh .

Übergabe:

vdr -P'mp3 -m $PATH/mount.sh -B /var/lib/cddb -n $PATH/network.sh -S mp3'

Es ist auch möglich Internet-Streams (Internetradio) zu empfangen, sicher nur für Standleitungen von Interesse.

Nun sollte auch klar werden, für was die network.sh anzupassen ist.

Ruft man einen Stream auf, kann mit besagten Script die Internetverbindung hergestellt werden.

Einfach ein Verzeichnis erstellen, möglichst unterhalb von den Einträgen der mp3sources.conf.

mkdir -p /mp3/streams

Dazu sind einfache Textfiles zu erstellen.

cd /mp3/streams
echo http://205.188.234.65:8030 > Beschreibung

Unter folgenden Adressen, findet man für jeden Geschmack etwas.

Oder per Script.

[Bearbeiten] Einstellungen

Audio Modus = Streuen

Der MP3-Dekoder liefert 24bit Daten, die auf 16bit herunterskaliert werden müssen. Der Modus „Runden“ schneidet einfach die 8bit mit der niedrigsten Bedeutung vom 24bit-Wort ab, wo hingegen „Streuen“ eine Fehlerstrategie implementiert. Der Modus „Streuen“ ist geringfügig rechenintensiver.

Nur 48kHz Modus benutzen = nein

Falls „ja“, wird das MP3-Plugin gezwungen die Abtastrate der DVB-Karte von 48 kHz zu verwenden. Die Abtastraten der Musikstücke werden dann auf 48 kHz umgerechnet.

Anzeige Modus = 3

Bestimmt, welche Informationen im Fortschrittsbalken angezeigt werden: 1. Zeigt Titel und Künstlernamen 2. Zeigt zusätzlich Album und Jahr 3. Zeigt zusätzlich Abtastrate, Bitrate und Anzahl der Kanäle

Hintergrund Modus = Schwarz

Hintergrund wählt die Hintergrundanzeige während der Wiedergabe. Zur Auswahl steht „Schwarz“, das Live-Bild des zuletzt gewählten Fernsehkanals oder es wird ein Bild (.jpg, .gif, ...) angzeigt, das im Verzeichnis der mp3-Datei liegt (siehe Readme)

Default Loop Modus = nein

Bei „ja“ wird die automatische Wiederholung nach dem Ende einer Abspielliste eingeschaltet.

Default Shuffle Modus = nein

Bei „ja“ wird die Zufallswiedergabe der Abspielliste eingeschaltet.

ID3 Einlesen = Hintergrund

Ermöglicht das Einlesen von ID3-Tags im Hintergrund während der Wiedergabe. In der Abspielliste werden Titel und Künstler nur für Lieder angezeigt, die schon gespielt wurden, oder deren ID3-Tags bereits eingelesen wurden. Auch wenn „Hintergrund“ gewählt ist, wird die Funktion nur ausgeführt, wenn die Prozessorleistung für den Hintergrundprozess ausreicht.

Editor Modus = ID3 Namen

Dieser Eintrag bestimmt, ob in der Abspielliste Titel und Künstler, oder die Dateinamen angezeigt werden. Die Anzeige von Titel und Künstler kann etwas länger dauern, da alle ID3-Tags der Musikdateien erst eingelesen werden müssen. Hauptmenü Modus = Verz.Anzeige Wählt, ob bei Aufruf des MP3-Plugins die Abspielliste gezeigt wird oder ob gleich zur Verzeichnisanzeige weitergesprungen wird.

Normalisierer Pegel = 25

48 Einstellungen Setzt den Lautstärkepegel für den Normalisierer. Es sind Werte zwischen 0 und 50 erlaubt. Bei 0 wird der Normalisierer ausgeschaltet. Der Normalisierer wird gebraucht, wenn die Musikstücke einer Abspielliste mit verschiedenen Lautstärkepegeln aufgenommen wurden.

Begrenzer Pegel = 70

Setzt den Lautstärkepegel für den Lautstärkebegrenzer. Es sind Werte zwischen 25 und 100 erlaubt. Bei 100 wird der Begrenzer ausgeschaltet.

HTTP Proxy benutzen = nein

Ermöglicht die Benutzung eines HTTP Proxy-Servers beim Abspielen von Shoutcats / Icecast Streams.

HTTP Proxy Name = localhost

Der Hostname des HTTP Proxy-Servers. Wird nur benutzt, falls HTTP Proxy benutzen eingeschaltet wurde.

HTTP Proxy Port = 8080

Die Port Nummer des HTTP Proxy Servers. Wird nur benutzt, falls HTTP Proxy benutzen eingeschaltet wurde.

CDDB für CD-Audio = local/remote

Wenn eine Audio-CD gespielt wird, ermöglicht dieser Eintrag nach Titel und Stücknamen in der CDDB-Datenbank zur CD zu suchen. Man kann zwischen „local“ und „local&remote“ wählen. Für die lokale Suche muss natürlich die CDDB-Datenbank auf dem VDR-Rechner installiert sein.

CDDB Server = freedb.freedb.org

Hat man einen Internet-Anschluss für seinen VDR-Rechner, so kann über das Netz auf eine CDDBDatenbank zugegriffen werden. Der Hostname des CDDB Servers muss hier eingetragen werden und funktioniert nur, wenn local/remote im Eintrag vorher gewählt wurde.

CDDB Port = 888

Die Port Nummer des CDDB Servers.

[Bearbeiten] Parameter

Parameter (kurz) Parameter (lang) Beschreibung
-m <DATEI> --mount=<DATEI> Skripts zum Mounten/Unmounten/Auswerfen (Standard: mount.sh)
-n <CMD> --network=<CMD> Führe Befehl vor/nach Netzwerk-Zugriff aus (Standard: kein)
-C <DIR> --cache=<DIR> Speichere ID3-Cache in diesem Verzeichnis (Standard: Videoverzeichnis)
-V <DIR> --cddb=<DIR> Suche CDDB-Dateien in disem Verzeichnis (Standard: /var/lib/cddb)
-D <DATEI> --dsp=<DATEI> Gerätedatei für OSS-Output (Standard: kein)
-i <DATEI> --iconv=<DATEI> Skript zum konvertieren der Hintergrundbilder (Standard: image_convert.sh)
-c <DIR> --icache=<DIR> Cache-Verzeichnis für konvertierte Hintergrundbilder (Standard: /var/cache/images/mp3)
-S --sources= Suche sources config in SUB Unterverzeichnis (Standard: "")

[Bearbeiten] Aktuelle Version

0.10.2

[Bearbeiten] Links

  1. Homepage des Plugins


In anderen Sprachen