1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Fixed handling preferred audio language when switching via Channels menu to the same channel

This commit is contained in:
Klaus Schmidinger 2005-01-06 14:56:08 +01:00
parent 723537ccc8
commit 05bd062f79
2 changed files with 4 additions and 3 deletions

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: device.c 1.68 2005/01/06 13:30:30 kls Exp $ * $Id: device.c 1.69 2005/01/06 14:56:08 kls Exp $
*/ */
#include "device.h" #include "device.h"
@ -543,6 +543,7 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView)
if (LiveView && IsPrimaryDevice()) { if (LiveView && IsPrimaryDevice()) {
// Set the available audio tracks: // Set the available audio tracks:
ClrAvailableTracks(); ClrAvailableTracks();
currentAudioTrack = ttAudioFirst;
for (int i = 0; i < MAXAPIDS; i++) { for (int i = 0; i < MAXAPIDS; i++) {
SetAvailableTrack(ttAudio, i, Channel->Apid(i), Channel->Alang(i)); SetAvailableTrack(ttAudio, i, Channel->Apid(i), Channel->Alang(i));
SetAvailableTrack(ttDolby, i, Channel->Dpid(i), Channel->Dlang(i)); SetAvailableTrack(ttDolby, i, Channel->Dpid(i), Channel->Dlang(i));

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: dvbdevice.c 1.110 2005/01/06 13:32:41 kls Exp $ * $Id: dvbdevice.c 1.111 2005/01/06 14:48:45 kls Exp $
*/ */
#include "dvbdevice.h" #include "dvbdevice.h"
@ -801,7 +801,7 @@ bool cDvbDevice::SetChannelDevice(const cChannel *Channel, bool LiveView)
// PID settings: // PID settings:
if (TurnOnLivePIDs) { if (TurnOnLivePIDs) {
if (!(AddPid(Channel->Ppid(), ptPcr) && AddPid(Channel->Vpid(), ptVideo) && AddPid(Channel->Apid(0), ptAudio))) {//XXX+ dolby dpid1!!! (if audio plugins are attached) if (!(AddPid(Channel->Ppid(), ptPcr) && AddPid(Channel->Vpid(), ptVideo) && AddPid(Channel->Apid(0), ptAudio))) {
esyslog("ERROR: failed to set PIDs for channel %d on device %d", Channel->Number(), CardIndex() + 1); esyslog("ERROR: failed to set PIDs for channel %d on device %d", Channel->Number(), CardIndex() + 1);
return false; return false;
} }