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

Changed 'Recording/Record Dobly Digital' to 'DVB/Use Dolby Digital' and using it for available audio tracks

This commit is contained in:
Klaus Schmidinger 2005-01-09 12:36:48 +01:00
parent 264fa085bd
commit e60ba0311b
8 changed files with 54 additions and 46 deletions

View File

@ -3281,3 +3281,6 @@ Video Disk Recorder Revision History
Dino Ravnic). Dino Ravnic).
- Implemented displaying mandatory subtitles in the SPU decoder (thanks to Marco - Implemented displaying mandatory subtitles in the SPU decoder (thanks to Marco
Schlüßler). Schlüßler).
- The setup option "Recording/Record Dobly Digital" has been renamed and moved to
"DVB/Use Dolby Digital". It now controls whether Dolby Digital is recorded and
whether an available DD audio track will appear in the "Audio" menu.

12
MANUAL
View File

@ -588,6 +588,13 @@ Version 1.2
Video format = 4:3 The video format (or aspect ratio) of the tv set in use Video format = 4:3 The video format (or aspect ratio) of the tv set in use
(4:3 or 16:9). (4:3 or 16:9).
Use Dolby Digital = yes
Turns recording of the Dolby Digital audio channels on
or off. This may be useful if you don't have the equipment
to replay Dolby Digital audio and want to save disk space.
If turned off, Dolby Digital tracks also don't appear in the
"Audio" menu.
Update channels = 4 Controls the automatic channel update function. '0' means Update channels = 4 Controls the automatic channel update function. '0' means
no update, '1' will only update channel names, '2' will no update, '1' will only update channel names, '2' will
update channel names and PIDs, '3' will perform all update channel names and PIDs, '3' will perform all
@ -690,11 +697,6 @@ Version 1.2
instant recording can be modified at any time by editing instant recording can be modified at any time by editing
the respective timer in the "Timers" menu. the respective timer in the "Timers" menu.
Record Dolby Digital = yes
Turns recording of the Dolby Digital audio channels on
or off. This may be useful if you don't have the equipment
to replay Dolby Digital audio and want to save disk space.
Max. video file size = 2000 Max. video file size = 2000
The maximum size of a single recorded video file in MB. The maximum size of a single recorded video file in MB.
The valid range is 100...2000. Default is 2000, but The valid range is 100...2000. Default is 2000, but

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: config.c 1.130 2005/01/08 10:31:19 kls Exp $ * $Id: config.c 1.131 2005/01/09 12:14:58 kls Exp $
*/ */
#include "config.h" #include "config.h"
@ -281,7 +281,7 @@ cSetup::cSetup(void)
RecordingDirs = 1; RecordingDirs = 1;
VideoFormat = 0; VideoFormat = 0;
UpdateChannels = 4; UpdateChannels = 4;
RecordDolbyDigital = 1; UseDolbyDigital = 1;
ChannelInfoPos = 0; ChannelInfoPos = 0;
OSDLeft = 54; OSDLeft = 54;
OSDTop = 45; OSDTop = 45;
@ -436,7 +436,7 @@ bool cSetup::Parse(const char *Name, const char *Value)
else if (!strcasecmp(Name, "RecordingDirs")) RecordingDirs = atoi(Value); else if (!strcasecmp(Name, "RecordingDirs")) RecordingDirs = atoi(Value);
else if (!strcasecmp(Name, "VideoFormat")) VideoFormat = atoi(Value); else if (!strcasecmp(Name, "VideoFormat")) VideoFormat = atoi(Value);
else if (!strcasecmp(Name, "UpdateChannels")) UpdateChannels = atoi(Value); else if (!strcasecmp(Name, "UpdateChannels")) UpdateChannels = atoi(Value);
else if (!strcasecmp(Name, "RecordDolbyDigital")) RecordDolbyDigital = atoi(Value); else if (!strcasecmp(Name, "UseDolbyDigital")) UseDolbyDigital = atoi(Value);
else if (!strcasecmp(Name, "ChannelInfoPos")) ChannelInfoPos = atoi(Value); else if (!strcasecmp(Name, "ChannelInfoPos")) ChannelInfoPos = atoi(Value);
else if (!strcasecmp(Name, "OSDLeft")) OSDLeft = atoi(Value); else if (!strcasecmp(Name, "OSDLeft")) OSDLeft = atoi(Value);
else if (!strcasecmp(Name, "OSDTop")) OSDTop = atoi(Value); else if (!strcasecmp(Name, "OSDTop")) OSDTop = atoi(Value);
@ -498,7 +498,7 @@ bool cSetup::Save(void)
Store("RecordingDirs", RecordingDirs); Store("RecordingDirs", RecordingDirs);
Store("VideoFormat", VideoFormat); Store("VideoFormat", VideoFormat);
Store("UpdateChannels", UpdateChannels); Store("UpdateChannels", UpdateChannels);
Store("RecordDolbyDigital", RecordDolbyDigital); Store("UseDolbyDigital", UseDolbyDigital);
Store("ChannelInfoPos", ChannelInfoPos); Store("ChannelInfoPos", ChannelInfoPos);
Store("OSDLeft", OSDLeft); Store("OSDLeft", OSDLeft);
Store("OSDTop", OSDTop); Store("OSDTop", OSDTop);

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: config.h 1.208 2005/01/08 10:30:40 kls Exp $ * $Id: config.h 1.209 2005/01/09 12:14:33 kls Exp $
*/ */
#ifndef __CONFIG_H #ifndef __CONFIG_H
@ -239,7 +239,7 @@ public:
int RecordingDirs; int RecordingDirs;
int VideoFormat; int VideoFormat;
int UpdateChannels; int UpdateChannels;
int RecordDolbyDigital; int UseDolbyDigital;
int ChannelInfoPos; int ChannelInfoPos;
int OSDLeft, OSDTop, OSDWidth, OSDHeight; int OSDLeft, OSDTop, OSDWidth, OSDHeight;
int OSDMessageTime; int OSDMessageTime;

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.72 2005/01/08 13:48:19 kls Exp $ * $Id: device.c 1.73 2005/01/09 12:36:48 kls Exp $
*/ */
#include "device.h" #include "device.h"
@ -547,6 +547,7 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView)
currentAudioTrack = ttAudioFirst; 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));
if (Setup.UseDolbyDigital)
SetAvailableTrack(ttDolby, i, Channel->Dpid(i), Channel->Dlang(i)); SetAvailableTrack(ttDolby, i, Channel->Dpid(i), Channel->Dlang(i));
} }
// Select the preferred audio track: // Select the preferred audio track:
@ -663,8 +664,8 @@ void cDevice::ClrAvailableTracks(bool DescriptionsOnly)
bool cDevice::SetAvailableTrack(eTrackType Type, int Index, uint16_t Id, const char *Language, const char *Description, uint32_t Flags) bool cDevice::SetAvailableTrack(eTrackType Type, int Index, uint16_t Id, const char *Language, const char *Description, uint32_t Flags)
{ {
eTrackType t = eTrackType(Type + Index); eTrackType t = eTrackType(Type + Index);
if ((Type == ttAudio && IS_AUDIO_TRACK(t)) || if (Type == ttAudio && IS_AUDIO_TRACK(t) ||
(Type == ttDolby && IS_DOLBY_TRACK(t))) { Type == ttDolby && IS_DOLBY_TRACK(t)) {
if (Language) if (Language)
strn0cpy(availableTracks[t].language, Language, sizeof(availableTracks[t].language)); strn0cpy(availableTracks[t].language, Language, sizeof(availableTracks[t].language));
if (Description) if (Description)
@ -834,12 +835,14 @@ int cDevice::PlayPesPacket(const uchar *Data, int Length, bool VideoOnly)
w = PlayAudio(Start, d); w = PlayAudio(Start, d);
break; break;
case 0xBD: // dolby case 0xBD: // dolby
if (Setup.UseDolbyDigital) {
SetAvailableTrack(ttDolby, 0, c); SetAvailableTrack(ttDolby, 0, c);
if (!VideoOnly && c == availableTracks[currentAudioTrack].id) { if (!VideoOnly && c == availableTracks[currentAudioTrack].id) {
w = PlayAudio(Start, d); w = PlayAudio(Start, d);
if (FirstLoop) if (FirstLoop)
Audios.PlayAudio(Data, Length); Audios.PlayAudio(Data, Length);
} }
}
break; break;
default: default:
;//esyslog("ERROR: unexpected packet id %02X", c); ;//esyslog("ERROR: unexpected packet id %02X", c);

44
i18n.c
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: i18n.c 1.168 2005/01/04 13:40:38 kls Exp $ * $Id: i18n.c 1.169 2005/01/09 12:17:44 kls Exp $
* *
* Translations provided by: * Translations provided by:
* *
@ -3094,6 +3094,27 @@ const tI18nPhrase Phrases[] = {
"TV külgsuhe", "TV külgsuhe",
"Video format", "Video format",
}, },
{ "Setup.DVB$Use Dolby Digital",
"Dolby Digital Ton benutzen",
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
"",//TODO
},
{ "Setup.DVB$Update channels", { "Setup.DVB$Update channels",
"Kanäle aktualisieren", "Kanäle aktualisieren",
"",// TODO "",// TODO
@ -3577,27 +3598,6 @@ const tI18nPhrase Phrases[] = {
"Otsesalvestuse kestus (min)", "Otsesalvestuse kestus (min)",
"Længde af direkte optagelse (min)", "Længde af direkte optagelse (min)",
}, },
{ "Setup.Recording$Record Dolby Digital",
"Dolby Digital Ton aufzeichnen",
"Posnemi dolby digital",
"Registra Dolby Digital",
"Dolby Digital geluid opnamen",
"Gravar em Dolby Digital",
"Enregistrer en Dolby Digital",
"Ta opp Dolby Digital lyd",
"Dolby Digital tallennus",
"Nagrywac Dolby Digital",
"Grabar sonido Dolby Digital",
"ÅããñáöÞ ôïõ Dolby Digital Þ÷ïõ",
"Spela in ljudet med Dolby Digital",
"Înregistreazã Dolby Digital",
"Dolby Digitál felvétel",
"Gravar el so en Dolby Digital",
"·ÐßØáëÒÐâì ×ÒãÚ Dolby Digital",
"Snimi 'Dolby digital' ton",
"Dolby Digital salvestamine",
"Optag Dolby Digital lyd",
},
{ "Setup.Recording$Max. video file size (MB)", { "Setup.Recording$Max. video file size (MB)",
"Max. Video Dateigröße (MB)", "Max. Video Dateigröße (MB)",
"Najvecja velikost datoteke (MB)", "Najvecja velikost datoteke (MB)",

4
menu.c
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: menu.c 1.332 2005/01/09 11:55:12 kls Exp $ * $Id: menu.c 1.333 2005/01/09 12:16:17 kls Exp $
*/ */
#include "menu.h" #include "menu.h"
@ -1943,6 +1943,7 @@ void cMenuSetupDVB::Setup(void)
Add(new cMenuEditIntItem( tr("Setup.DVB$Primary DVB interface"), &data.PrimaryDVB, 1, cDevice::NumDevices())); Add(new cMenuEditIntItem( tr("Setup.DVB$Primary DVB interface"), &data.PrimaryDVB, 1, cDevice::NumDevices()));
Add(new cMenuEditBoolItem(tr("Setup.DVB$Video format"), &data.VideoFormat, "4:3", "16:9")); Add(new cMenuEditBoolItem(tr("Setup.DVB$Video format"), &data.VideoFormat, "4:3", "16:9"));
Add(new cMenuEditBoolItem(tr("Setup.DVB$Use Dolby Digital"), &data.UseDolbyDigital));
Add(new cMenuEditStraItem(tr("Setup.DVB$Update channels"), &data.UpdateChannels, 5, updateChannelsTexts)); Add(new cMenuEditStraItem(tr("Setup.DVB$Update channels"), &data.UpdateChannels, 5, updateChannelsTexts));
Add(new cMenuEditIntItem( tr("Setup.DVB$Audio languages"), &numAudioLanguages, 0, I18nNumLanguages)); Add(new cMenuEditIntItem( tr("Setup.DVB$Audio languages"), &numAudioLanguages, 0, I18nNumLanguages));
for (int i = 0; i < numAudioLanguages; i++) for (int i = 0; i < numAudioLanguages; i++)
@ -2153,7 +2154,6 @@ cMenuSetupRecord::cMenuSetupRecord(void)
Add(new cMenuEditBoolItem(tr("Setup.Recording$Mark instant recording"), &data.MarkInstantRecord)); Add(new cMenuEditBoolItem(tr("Setup.Recording$Mark instant recording"), &data.MarkInstantRecord));
Add(new cMenuEditStrItem( tr("Setup.Recording$Name instant recording"), data.NameInstantRecord, sizeof(data.NameInstantRecord), tr(FileNameChars))); Add(new cMenuEditStrItem( tr("Setup.Recording$Name instant recording"), data.NameInstantRecord, sizeof(data.NameInstantRecord), tr(FileNameChars)));
Add(new cMenuEditIntItem( tr("Setup.Recording$Instant rec. time (min)"), &data.InstantRecordTime, 1, MAXINSTANTRECTIME)); Add(new cMenuEditIntItem( tr("Setup.Recording$Instant rec. time (min)"), &data.InstantRecordTime, 1, MAXINSTANTRECTIME));
Add(new cMenuEditBoolItem(tr("Setup.Recording$Record Dolby Digital"), &data.RecordDolbyDigital));
Add(new cMenuEditIntItem( tr("Setup.Recording$Max. video file size (MB)"), &data.MaxVideoFileSize, MINVIDEOFILESIZE, MAXVIDEOFILESIZE)); Add(new cMenuEditIntItem( tr("Setup.Recording$Max. video file size (MB)"), &data.MaxVideoFileSize, MINVIDEOFILESIZE, MAXVIDEOFILESIZE));
Add(new cMenuEditBoolItem(tr("Setup.Recording$Split edited files"), &data.SplitEditedFiles)); Add(new cMenuEditBoolItem(tr("Setup.Recording$Split edited files"), &data.SplitEditedFiles));
} }

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: recorder.c 1.11 2004/10/16 09:23:01 kls Exp $ * $Id: recorder.c 1.12 2005/01/09 12:16:36 kls Exp $
*/ */
#include <stdarg.h> #include <stdarg.h>
@ -128,7 +128,7 @@ void cFileWriter::Action(void)
} }
cRecorder::cRecorder(const char *FileName, int Ca, int Priority, int VPid, int APid1, int APid2, int DPid1, int DPid2) cRecorder::cRecorder(const char *FileName, int Ca, int Priority, int VPid, int APid1, int APid2, int DPid1, int DPid2)
:cReceiver(Ca, Priority, Setup.RecordDolbyDigital ? 5 : 3, VPid, APid1, APid2, DPid1, DPid2) :cReceiver(Ca, Priority, Setup.UseDolbyDigital ? 5 : 3, VPid, APid1, APid2, DPid1, DPid2)
,cThread("recording") ,cThread("recording")
{ {
active = false; active = false;