Aus VDR Wiki
Wechseln zu: Navigation, Suche



Autor: Werner Fink

Dieses Plugin empfängt den mit 16 bit kodierten Audio-Stream einer DVB-Karte und sendet ihn über den PCI-Bus an den S/PDIF-Ausgang einer vom ALSA-Treiber unterstützen Soundkarte.




  • Eine von ALSA unterstütze Soundkarte


  • ALSA
  • libmad



tar xvzf libmad-<VERSION>.tar.gz
cd libmad-<VERSION>
./configure --prefix=/usr/local
make install


pacman -S libmad


prt-get depinst libmad


apt-get install libmad0-dev


emerge libmad


yast -i mad-devel



Parameter (kurz) Parameter (lang) Beschreibung
-o --onoff Hauptmenueintrag anschalten
-m <DATEI> --mute=<DATEI> Script zum an-/abschalten des S/PDIF-Interface


Version Datum Beschreibung Link
0.89c 13.05.2008
  • Make it build even with make plugins
0.89b 17.04.2008
  • Support only VDR 1.6.0 and higher
  • Scan always mpeg audio header in mad_frame_decode() as we work around the buffer guard internal of mad_header_decode()
  • Do not delay first resulting PCM frame of mad_frame_decode()
0.85 14.03.2006
  • Various cleanups and bug fixes
  • Try to get Mpeg Audio more lip sync
0.84 23.06.2005
  • Add recording check to avoid to run into Add/DelPid trouble
  • Use switching thread even for VDR 1.3.21+
  • The ORF sample provided by a user has a large delay gap therefore do not timeout after 3 seconds.
0.83a 12.04.2005
  • kleines Bugfix-Release, damit sollte muten nun ohne Verlust des AC3 Kanals möglich sein
0.83 01.04.2005
  • Add bug fix from Marcel Wiesweg in byte handle class
  • Add thread locking class based on cThreadLock to get a non interrupted S/P-DIF forwarding in case of starting and

handling low state of the HW buffer of the sound card.

  • Drop workaround on VDR Add/DelPid bug for ptOther and the handling on `Device or resource busy' because it breaks

replay part of the plugin.

  • Start the live forwarding thread by attaching the receiver, requires a new logic to wait on the data stream and its type.
  • Make MP2 Audio more synchron
  • Be sure to store the correct name for PCMinitial
  • Do not flood the syslog with mp2 messages if burst size is less than for layer II/III.
0.81 18.03.2005
0.80 15.03.2005
  • Add nonlinear mp2 loop through S/P-DIF similar to AC3/DTS
  • Use a frame based mp2 parser for libmad with buffer gard
  • Make PCM initial wait frames configurable
  • Remove Z680 option
  • Remove MP2offset
  • Add a workaround for broken sub audio header in PS1 payloads
  • Be smarter in AV synchronization, wait on stable STC value
  • Make xlist find plain AC3 in PS1 payload even from ORF
0.70 20.02.2005 [8]
0.61f 26.10.2004
  • für alle bitstreamout user, die oft Synchronisationsprobleme mit dem ZDF haben, eine neue Version.
0.61 03.06.2004
0.50e 29.04.2004
  • Simply continue to get next pcm frame if PTS != STC
  • Compare system clock delay with STC delay and only if both clocks are in sync we assume that STC is stable
  • Switch back to frame repeat instead of sample repeat even for real audio.
  • Try to solve delay detection to get the min start delay
  • Don't repeat frames but stereo samples in case of audio
  • Fix boolean cut&paste error in shm_malloc()
  • Lock threads in Live Receiver and also in S/P-DIF forwarding thread.
0.50b 26.03.2004
  • Use always cDevice::CurrentChannel() in ChannelSwitch() to be sure to get always the live channel on the primary card.
  • Be sure that we do not get a SIGSEGV if terminated
  • Add a further delay value for LiveTV
  • Try out some DTS sanity checks
  • Add some kernel version magic to shm_memory_tool
0.50a 09.01.2004
0.50 09.01.2004 [12]
0.49 20.12.2003 [13]
... ...


  1. ALSA Soundkarten Treiber
  2. MAD (M)PEG (A)udio (D)ecoder Homepage
  3. Homepage des Plugins
  4. AC3 mit bitstreamout HOWTO und AC3overDVB Infos
In anderen Sprachen