Version 1.4.0-2

- Removed leftover LSMOD=... line from 'runvdr'.
- Modified the Makefile to copy additional libraries a plugin might provide (suggested
  by Wayne Keer). See PLUGINS.html for details.
- Fixed handling Transfer Mode when replaying Dolby Digital audio and the option
  '-a' was given (based on a patch from Werner Fink). To avoid having to increment
  the API version, several #if checks have been introduced around this. These will
  be removed once the API version actually needs to be incremented.
- Fixed deleting the 'skinDescriptions' in cMenuSetupOSD::~cMenuSetupOSD() (thanks
  to Tobias Grimm).
- Fixed calculating the start time of repeated timers with "first day" (thanks to
  Udo Richter).
- Now setting a timer's cached start time to 0 after a call to Skip() (thanks to
  Udo Richter).
- Fixed handling the running status of EPG events in case the "Schedule" menu is
  currently open (i.e. a write lock on the schedules data can't be achieved).
- Fixed handling VPS timers in case the EPG event hasn't been 'seen' in a while.
- Fixed calculating the cache size in cUnbufferedFile::Read() (thanks to Artur Skawina).
- Removed -fPIC from VDR's and libsi's Makefile (suggested by Prakash Punnoor).
- Modifed the device selection to better handle timer conflicts (reported by
  Christian Wieninger).
- Avoiding a compiler warning in libsi's TypeLoop::operator[].
- Now processing the "frequency list descriptor" (based on a patch from Anssi Hannula).
- Improved the repeat function for LIRC remote controls (thanks to Joerg Riechardt).
- Fixed moving channels, which sometimes stopped the current replay session
  (reported by Mirko Dölle).
- Fixed deleting channels in case the current channel's number changes (reported
  by Mirko Dölle).
This commit is contained in:
Klaus Schmidinger
2006-05-28 18:00:00 +02:00
parent 5d8e3b18dc
commit 177b875945
24 changed files with 351 additions and 117 deletions

View File

@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbdevice.c 1.156 2006/04/01 14:19:43 kls Exp $
* $Id: dvbdevice.c 1.157 2006/05/20 09:52:23 kls Exp $
*/
#include "dvbdevice.h"
@@ -356,7 +356,12 @@ void cDvbTuner::Action(void)
// --- cDvbDevice ------------------------------------------------------------
int cDvbDevice::devVideoOffset = -1;
bool cDvbDevice::setTransferModeForDolbyDigital = true;
int cDvbDevice::setTransferModeForDolbyDigital = 1;
#if APIVERSNUM == 10400
int cDvbDevice__setTransferModeForDolbyDigital = -1;
#else
#warning ******* API version changed - remove old stuff
#endif
cDvbDevice::cDvbDevice(int n)
{
@@ -653,7 +658,7 @@ eVideoSystem cDvbDevice::GetVideoSystem(void)
bool cDvbDevice::SetAudioBypass(bool On)
{
if (!setTransferModeForDolbyDigital)
if (setTransferModeForDolbyDigital != 1)
return false;
return ioctl(fd_audio, AUDIO_SET_BYPASS_MODE, On) == 0;
}
@@ -914,10 +919,23 @@ void cDvbDevice::SetDigitalAudioDevice(bool On)
}
}
#if APIVERSNUM == 10400
void cDvbDevice::SetTransferModeForDolbyDigital(bool On)
{
setTransferModeForDolbyDigital = On;
if (cDvbDevice__setTransferModeForDolbyDigital >= 0) {
setTransferModeForDolbyDigital = cDvbDevice__setTransferModeForDolbyDigital;
cDvbDevice__setTransferModeForDolbyDigital = -1;
}
else
setTransferModeForDolbyDigital = On;
}
#else
#warning ******* API version changed - remove old stuff
void cDvbDevice::SetTransferModeForDolbyDigital(int Mode)
{
setTransferModeForDolbyDigital = Mode;
}
#endif
void cDvbDevice::SetAudioTrackDevice(eTrackType Type)
{
@@ -932,7 +950,7 @@ void cDvbDevice::SetAudioTrackDevice(eTrackType Type)
}
}
else if (IS_DOLBY_TRACK(Type)) {
if (!setTransferModeForDolbyDigital)
if (setTransferModeForDolbyDigital == 0)
return;
// Currently this works only in Transfer Mode
ForceTransferMode();