#! /bin/sh /usr/share/dpatch/dpatch-run ## 10_dd_replay_option.dpatch by Thomas Schmidt <tschmidt@debian.org> ## ## Thomas Günther <tom@toms-cafe.de>: ## - adapted to VDR-1.3.48 ## - fixed i18n texts for replay ## ## All lines beginning with `## DP:' are a description of the patch. ## DP: Allowes to choose if to record and to replay Dolby Digital ## DP: independently (to work around some audio issues with the ## DP: dvd-plugin) @DPATCH@ --- vdr-1.3.48/config.c +++ vdr-1.3.48/config.c @@ -252,6 +252,7 @@ VideoDisplayFormat = 1; VideoFormat = 0; UpdateChannels = 5; + RecordDolbyDigital = 1; UseDolbyDigital = 1; ChannelInfoPos = 0; ChannelInfoTime = 5; @@ -413,6 +414,7 @@ else if (!strcasecmp(Name, "VideoDisplayFormat")) VideoDisplayFormat = atoi(Value); else if (!strcasecmp(Name, "VideoFormat")) VideoFormat = 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, "ChannelInfoTime")) ChannelInfoTime = atoi(Value); @@ -481,6 +483,7 @@ Store("VideoDisplayFormat", VideoDisplayFormat); Store("VideoFormat", VideoFormat); Store("UpdateChannels", UpdateChannels); + Store("RecordDolbyDigital", RecordDolbyDigital); Store("UseDolbyDigital", UseDolbyDigital); Store("ChannelInfoPos", ChannelInfoPos); Store("ChannelInfoTime", ChannelInfoTime); --- vdr-1.3.48/config.h +++ vdr-1.3.48/config.h @@ -235,6 +235,7 @@ int VideoDisplayFormat; int VideoFormat; int UpdateChannels; + int RecordDolbyDigital; int UseDolbyDigital; int ChannelInfoPos; int ChannelInfoTime; --- vdr-1.3.48/i18n.c +++ vdr-1.3.48/i18n.c @@ -3656,8 +3656,30 @@ "Video format", "Formát videa", }, - { "Setup.DVB$Use Dolby Digital", - "Dolby-Digital-Ton benutzen", + { "Setup.DVB$Record Dolby Digital", // English + "Dolby-Digital-Ton aufzeichnen", // Deutsch / German + "", // Slovenski / Slovenian + "", // Italiano / Italian + "", // Nederlands / Dutch + "", // Português / Portuguese + "", // Français / French + "", // Norsk / Norwegian + "", // suomi / Finnish + "", // Polski / Polish + "", // Español / Spanish + "", // ÅëëçíéêÜ / Greek + "", // Svenska / Swedish + "", // Românã / Romanian + "", // Magyar / Hungarian + "", // Català / Catalanian + "", // ÀãááÚØÙ / Russian + "", // Hrvatski / Croatian + "", // Eesti / Estonian + "", // Dansk / Danish + "", // Èesky / Czech + }, + { "Setup.DVB$Replay Dolby Digital", + "Dolby-Digital-Ton wiedergeben", "Uporabljaj Dolby Digital", "",//TODO "Dolby Digital gebruiken", --- vdr-1.3.48/menu.c +++ vdr-1.3.48/menu.c @@ -2339,7 +2339,8 @@ Add(new cMenuEditBoolItem(tr("Setup.DVB$Video format"), &data.VideoFormat, "4:3", "16:9")); if (data.VideoFormat == 0) Add(new cMenuEditStraItem(tr("Setup.DVB$Video display format"), &data.VideoDisplayFormat, 3, videoDisplayFormatTexts)); - Add(new cMenuEditBoolItem(tr("Setup.DVB$Use Dolby Digital"), &data.UseDolbyDigital)); + Add(new cMenuEditBoolItem(tr("Setup.DVB$Record Dolby Digital"), &data.RecordDolbyDigital)); + Add(new cMenuEditBoolItem(tr("Setup.DVB$Replay Dolby Digital"), &data.UseDolbyDigital)); Add(new cMenuEditStraItem(tr("Setup.DVB$Update channels"), &data.UpdateChannels, 6, updateChannelsTexts)); Add(new cMenuEditIntItem( tr("Setup.DVB$Audio languages"), &numAudioLanguages, 0, I18nNumLanguages)); for (int i = 0; i < numAudioLanguages; i++) --- vdr-1.3.48/recorder.c +++ vdr-1.3.48/recorder.c @@ -122,7 +122,7 @@ } cRecorder::cRecorder(const char *FileName, int Ca, int Priority, int VPid, const int *APids, const int *DPids, const int *SPids, cTtxtSubsRecorderBase *tsr) -:cReceiver(Ca, Priority, VPid, APids, Setup.UseDolbyDigital ? DPids : NULL, SPids) +:cReceiver(Ca, Priority, VPid, APids, Setup.RecordDolbyDigital ? DPids : NULL, SPids) ,cThread("recording") { // Make sure the disk is up and running: @@ -131,7 +131,7 @@ ringBuffer = new cRingBufferLinear(RECORDERBUFSIZE, TS_SIZE * 2, true, "Recorder"); ringBuffer->SetTimeouts(0, 100); - remux = new cRemux(VPid, APids, Setup.UseDolbyDigital ? DPids : NULL, SPids, true); + remux = new cRemux(VPid, APids, Setup.RecordDolbyDigital ? DPids : NULL, SPids, true); writer = new cFileWriter(FileName, remux, tsr); }