From 3c349510b5060ec05a684425b6b2e5b70d67f65c Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 23 May 2004 18:00:00 +0200 Subject: Version 1.3.8 - Fixed a crash when switching the skin and having selected a non-default theme that is not available for the newly selected skin (thanks to Sascha Volkenandt for reporting this one). - Fixed some issues with gcc 3.4 (thanks to Prakash K. Cheemplavam and Marcel Wiesweg). - Added a hint to PLUGINS.html about how to name a plugin that implements a skin. - Completed the Finnish OSD texts (thanks to Rolf Ahrenberg). - Single shot timers and events now show the day of week (adopted with some changes from the "elchi" patch, orginally introduced by Oskar Signell). Plugins that use cEvent::GetDateString() should note that this function now returns a longer string, including the day of week. The new function const char *WeekDayName(time_t t) can be called with a time_t value to get the day of week for that time. - When processing XPM data, the color name "None" is now mapped to #00000000, which is "fully transparent" (suggested by Sascha Volkenandt). - Fixed the OSD alignment in the SPU decoder (thanks to Miko Wohlgemuth for reporting this one and helping to test the fix). - Fixed freezing picture when a recording starts on a system that always uses 'Transfer Mode' (thanks to Michal Dobrzynski for reporting this one). - Fixed a memory leak in NIT processing (thanks to Marcel Wiesweg). - Added a few missing initializations (thanks to Marcel Wiesweg). - Moved the declaration of cMenuText to VDR/menu.h to make it available to plugins. It now also has a SetText() function that can be used to dynamically set the text in an already existing cMenuText (both suggested by Stefan Huelswitt). - Added play mode pmVideoOnly (thanks to Marcel Wiesweg). - Added a missing cStatus::MsgOsdClear() to cDisplayChannel::~cDisplayChannel() (thanks to Oliver Endriss). - No longer displaying unused color buttons in the "Classic VDR" skin (thanks to Oliver Endriss for reporting this one). - Added some missing cStatus::MsgOsdTextItem() calls (thanks to Oliver Endriss for reporting this one). --- dvbdevice.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'dvbdevice.c') diff --git a/dvbdevice.c b/dvbdevice.c index afeb973..cb143a6 100644 --- a/dvbdevice.c +++ b/dvbdevice.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbdevice.c 1.84 2004/05/01 13:15:46 kls Exp $ + * $Id: dvbdevice.c 1.86 2004/05/23 10:11:42 kls Exp $ */ #include "dvbdevice.h" @@ -679,7 +679,7 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne if (ProvidesSource(Channel->Source()) && ProvidesCa(Channel)) { result = hasPriority; - if (Priority >= 0 && Receiving()) { + if (Priority >= 0 && Receiving(true)) { if (dvbTuner->IsTunedTo(Channel)) { if (!HasPid(Channel->Vpid())) { #ifdef DO_MULTIPLE_RECORDINGS @@ -873,6 +873,16 @@ bool cDvbDevice::SetPlayMode(ePlayMode PlayMode) CHECK(ioctl(fd_audio, AUDIO_PLAY)); CHECK(ioctl(fd_video, VIDEO_SET_BLANK, false)); break; + case pmVideoOnly: + CHECK(ioctl(fd_video, VIDEO_SET_BLANK, true)); + CHECK(ioctl(fd_video, VIDEO_STOP, true)); + CHECK(ioctl(fd_audio, AUDIO_SELECT_SOURCE, AUDIO_SOURCE_DEMUX)); + CHECK(ioctl(fd_audio, AUDIO_SET_AV_SYNC, false)); + CHECK(ioctl(fd_audio, AUDIO_PLAY)); + CHECK(ioctl(fd_video, VIDEO_CLEAR_BUFFER)); + CHECK(ioctl(fd_video, VIDEO_SELECT_SOURCE, VIDEO_SOURCE_MEMORY)); + CHECK(ioctl(fd_video, VIDEO_PLAY)); + break; case pmExtern_THIS_SHOULD_BE_AVOIDED: close(fd_video); close(fd_audio); -- cgit v1.2.3