diff options
-rw-r--r-- | CONTRIBUTORS | 3 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | dvbdevice.c | 10 |
3 files changed, 9 insertions, 6 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index a7ae8f91..86a7e3dc 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -510,3 +510,6 @@ Gerald Berwolf <genka@genka.de> Thomas Sailer <sailer@scs.ch> for pointing out how to set the terminal parameters to read from the keyboard + +Sven Goethel <sgoethel@jausoft.com> + for making switching audio channels work without stopping/restarting the DMX @@ -1884,3 +1884,5 @@ Video Disk Recorder Revision History - Fixed recording overlapping timers on the same channel in case DO_REC_AND_PLAY_ON_PRIMARY_DEVICE and/or DO_MULTIPLE_RECORDINGS is not defined (thanks to Jaakko Hyvätti). +- No longer stopping/restarting the DMX when switching audio channels (thanks to + Sven Goethel). diff --git a/dvbdevice.c b/dvbdevice.c index 45b7fbb1..adc900b6 100644 --- a/dvbdevice.c +++ b/dvbdevice.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbdevice.c 1.39 2002/12/13 15:29:50 kls Exp $ + * $Id: dvbdevice.c 1.40 2002/12/14 10:52:13 kls Exp $ */ #include "dvbdevice.h" @@ -686,11 +686,9 @@ const char **cDvbDevice::GetAudioTracksDevice(int *CurrentTrack) const void cDvbDevice::SetAudioTrackDevice(int Index) { if (0 <= Index && Index < NumAudioTracksDevice()) { - int vpid = pidHandles[ptVideo].pid; // need to turn video PID off/on to restart demux - DelPid(vpid); - DelPid(pidHandles[ptAudio].pid); - AddPid(Index ? aPid2 : aPid1, ptAudio); - AddPid(vpid, ptVideo); + int Pid = Index ? aPid2 : aPid1; + pidHandles[ptAudio].pid = Pid; + SetPid(&pidHandles[ptAudio], ptAudio, true); } } |