mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Implemented Setup.CurrentDolby
This commit is contained in:
parent
ec27c329cf
commit
f79f81dfd4
8
MANUAL
8
MANUAL
@ -183,7 +183,7 @@ Version 1.2
|
|||||||
selected for at least 3 seconds.
|
selected for at least 3 seconds.
|
||||||
|
|
||||||
After switching to a different channel the channel number and name, as well
|
After switching to a different channel the channel number and name, as well
|
||||||
as the current time are displayed at the top of the screen. If available, the
|
as the current time are displayed in the OSD. If available, the
|
||||||
'current/next' information will be displayed below this line. This display
|
'current/next' information will be displayed below this line. This display
|
||||||
automatically goes away after about five seconds, or if any key is pressed.
|
automatically goes away after about five seconds, or if any key is pressed.
|
||||||
To bring up the channel display without switching channels you can press
|
To bring up the channel display without switching channels you can press
|
||||||
@ -208,6 +208,12 @@ Version 1.2
|
|||||||
The "Audio" menu will automatically disappear after 5 seconds of user inactivity,
|
The "Audio" menu will automatically disappear after 5 seconds of user inactivity,
|
||||||
or if any key other than the ones described above is pressed.
|
or if any key other than the ones described above is pressed.
|
||||||
|
|
||||||
|
Once a Dolby Digital track has been selected on any channel, further channel
|
||||||
|
switches will first search for a Dolby Digital track of one of the preferred
|
||||||
|
audio languages. If no such track can be found, a normal audio track will
|
||||||
|
be selected. Note that this only works is the broadcasters use actual language
|
||||||
|
codes in their PID data, not things like "dd" or "2ch".
|
||||||
|
|
||||||
* Switching through channel groups
|
* Switching through channel groups
|
||||||
|
|
||||||
If the 'channels.conf' file contains "group separators" you can switch
|
If the 'channels.conf' file contains "group separators" you can switch
|
||||||
|
5
config.c
5
config.c
@ -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: config.c 1.129 2005/01/04 13:48:49 kls Exp $
|
* $Id: config.c 1.130 2005/01/08 10:31:19 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
@ -298,6 +298,7 @@ cSetup::cSetup(void)
|
|||||||
ResumeID = 0;
|
ResumeID = 0;
|
||||||
CurrentChannel = -1;
|
CurrentChannel = -1;
|
||||||
CurrentVolume = MAXVOLUME;
|
CurrentVolume = MAXVOLUME;
|
||||||
|
CurrentDolby = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
cSetup& cSetup::operator= (const cSetup &s)
|
cSetup& cSetup::operator= (const cSetup &s)
|
||||||
@ -452,6 +453,7 @@ bool cSetup::Parse(const char *Name, const char *Value)
|
|||||||
else if (!strcasecmp(Name, "ResumeID")) ResumeID = atoi(Value);
|
else if (!strcasecmp(Name, "ResumeID")) ResumeID = atoi(Value);
|
||||||
else if (!strcasecmp(Name, "CurrentChannel")) CurrentChannel = atoi(Value);
|
else if (!strcasecmp(Name, "CurrentChannel")) CurrentChannel = atoi(Value);
|
||||||
else if (!strcasecmp(Name, "CurrentVolume")) CurrentVolume = atoi(Value);
|
else if (!strcasecmp(Name, "CurrentVolume")) CurrentVolume = atoi(Value);
|
||||||
|
else if (!strcasecmp(Name, "CurrentDolby")) CurrentDolby = atoi(Value);
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
return true;
|
return true;
|
||||||
@ -513,6 +515,7 @@ bool cSetup::Save(void)
|
|||||||
Store("ResumeID", ResumeID);
|
Store("ResumeID", ResumeID);
|
||||||
Store("CurrentChannel", CurrentChannel);
|
Store("CurrentChannel", CurrentChannel);
|
||||||
Store("CurrentVolume", CurrentVolume);
|
Store("CurrentVolume", CurrentVolume);
|
||||||
|
Store("CurrentDolby", CurrentDolby);
|
||||||
|
|
||||||
Sort();
|
Sort();
|
||||||
|
|
||||||
|
3
config.h
3
config.h
@ -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: config.h 1.207 2005/01/04 13:47:38 kls Exp $
|
* $Id: config.h 1.208 2005/01/08 10:30:40 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __CONFIG_H
|
#ifndef __CONFIG_H
|
||||||
@ -252,6 +252,7 @@ public:
|
|||||||
int ResumeID;
|
int ResumeID;
|
||||||
int CurrentChannel;
|
int CurrentChannel;
|
||||||
int CurrentVolume;
|
int CurrentVolume;
|
||||||
|
int CurrentDolby;
|
||||||
int __EndData__;
|
int __EndData__;
|
||||||
cSetup(void);
|
cSetup(void);
|
||||||
cSetup& operator= (const cSetup &s);
|
cSetup& operator= (const cSetup &s);
|
||||||
|
12
device.c
12
device.c
@ -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.71 2005/01/08 10:15:00 kls Exp $
|
* $Id: device.c 1.72 2005/01/08 13:48:19 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
@ -541,6 +541,7 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView)
|
|||||||
|
|
||||||
if (Result == scrOk) {
|
if (Result == scrOk) {
|
||||||
if (LiveView && IsPrimaryDevice()) {
|
if (LiveView && IsPrimaryDevice()) {
|
||||||
|
currentChannel = Channel->Number();
|
||||||
// Set the available audio tracks:
|
// Set the available audio tracks:
|
||||||
ClrAvailableTracks();
|
ClrAvailableTracks();
|
||||||
currentAudioTrack = ttAudioFirst;
|
currentAudioTrack = ttAudioFirst;
|
||||||
@ -551,16 +552,21 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView)
|
|||||||
// Select the preferred audio track:
|
// Select the preferred audio track:
|
||||||
eTrackType PreferredTrack = ttAudioFirst;
|
eTrackType PreferredTrack = ttAudioFirst;
|
||||||
int LanguagePreference = -1;
|
int LanguagePreference = -1;
|
||||||
for (int i = ttAudioFirst; i <= ttDolbyLast; i++) {
|
int StartCheck = Setup.CurrentDolby ? ttDolbyFirst : ttAudioFirst;
|
||||||
|
int EndCheck = ttDolbyLast;
|
||||||
|
for (int i = StartCheck; i <= EndCheck; i++) {
|
||||||
const tTrackId *TrackId = GetTrack(eTrackType(i));
|
const tTrackId *TrackId = GetTrack(eTrackType(i));
|
||||||
if (TrackId && TrackId->id && I18nIsPreferredLanguage(Setup.AudioLanguages, I18nLanguageIndex(TrackId->language), LanguagePreference))
|
if (TrackId && TrackId->id && I18nIsPreferredLanguage(Setup.AudioLanguages, I18nLanguageIndex(TrackId->language), LanguagePreference))
|
||||||
PreferredTrack = eTrackType(i);
|
PreferredTrack = eTrackType(i);
|
||||||
|
if (Setup.CurrentDolby && i == ttDolbyLast) {
|
||||||
|
i = ttAudioFirst - 1;
|
||||||
|
EndCheck = ttAudioLast;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Make sure we're set to an available audio track:
|
// Make sure we're set to an available audio track:
|
||||||
const tTrackId *Track = GetTrack(GetCurrentAudioTrack());
|
const tTrackId *Track = GetTrack(GetCurrentAudioTrack());
|
||||||
if (!Track || !Track->id || PreferredTrack != GetCurrentAudioTrack())
|
if (!Track || !Track->id || PreferredTrack != GetCurrentAudioTrack())
|
||||||
SetCurrentAudioTrack(PreferredTrack);
|
SetCurrentAudioTrack(PreferredTrack);
|
||||||
currentChannel = Channel->Number();
|
|
||||||
}
|
}
|
||||||
cStatus::MsgChannelSwitch(this, Channel->Number()); // only report status if channel switch successfull
|
cStatus::MsgChannelSwitch(this, Channel->Number()); // only report status if channel switch successfull
|
||||||
}
|
}
|
||||||
|
3
menu.c
3
menu.c
@ -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: menu.c 1.330 2005/01/08 10:15:00 kls Exp $
|
* $Id: menu.c 1.331 2005/01/08 10:46:44 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "menu.h"
|
#include "menu.h"
|
||||||
@ -2951,6 +2951,7 @@ eOSState cDisplayTracks::ProcessKey(eKeys Key)
|
|||||||
if (track != oldTrack) {
|
if (track != oldTrack) {
|
||||||
Show();
|
Show();
|
||||||
cDevice::PrimaryDevice()->SetCurrentAudioTrack(types[track]);
|
cDevice::PrimaryDevice()->SetCurrentAudioTrack(types[track]);
|
||||||
|
Setup.CurrentDolby = IS_DOLBY_TRACK(types[track]);
|
||||||
}
|
}
|
||||||
return timeout.TimedOut() ? osEnd : osContinue;
|
return timeout.TimedOut() ? osEnd : osContinue;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user