diff --git a/HISTORY b/HISTORY index c030dc6..a6b23ca 100644 --- a/HISTORY +++ b/HISTORY @@ -161,3 +161,9 @@ VDR Plugin 'femon' Revision History - Renamed compiling switches ('DEBUG' to 'FEMON_DEBUG' and 'NTSC_SYSTEM' to 'FEMON_NTSC'). - Enabled preliminary support for the device switching. + +2005-07-23: Version 0.9.1 + +- Fixed AC3-info flickering (Thanks to Pasi Juppo for reporting this one). +- Added "Analog" type CA system. +- Plugin is now stripped by default. diff --git a/Makefile b/Makefile index a514165..40074ea 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,11 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).h | awk '{ pri ### The C++ compiler and options: CXX ?= g++ -CXXFLAGS ?= -g -O2 -Wall -Woverloaded-virtual -fPIC +ifdef FEMON_DEBUG +CXXFLAGS ?= -g -Wall -Woverloaded-virtual -fPIC +else +CXXFLAGS ?= -O2 -Wall -Woverloaded-virtual -fPIC +endif ### The directory environment: @@ -80,6 +84,9 @@ all: libvdr-$(PLUGIN).so libvdr-$(PLUGIN).so: $(OBJS) $(CXX) $(CXXFLAGS) -shared $(OBJS) -o $@ @cp $@ $(LIBDIR)/$@.$(VDRVERSION) +ifndef FEMON_DEBUG + strip $(LIBDIR)/$@.$(VDRVERSION) +endif dist: clean @-rm -rf $(TMPDIR)/$(ARCHIVE) diff --git a/README b/README index 7e62b22..d246a55 100644 --- a/README +++ b/README @@ -63,7 +63,7 @@ Ok - Switch between display modes: basic, transponder, stream, AC-3 Green - Select next audio track Yellow - Select audio channel: stereo, mono left, mono right Back - Exit plugin -Left/Right - Switch to next/previous device that provides the current channel +Left/Right - Switch to next/previous device that provides the current channel Installation: @@ -80,14 +80,16 @@ Notes: - The plugin supports only those DVB cards with _one_ frontend (do any cards with multiple frontends even exist?), because I haven't yet figured howto do it without patching the VDR core. + - Disable the stream analyze to speed up heavy zapping sessions. + - The signal strength and signal-to-noise ratio values are comparable only between the same brand/model frontends. Due to the lack of proper frontend specifications those values cannot be calculated into any real units. + - If the OSD isn't visible, you've configured the OSD height too big or too small. Please, try to adjust the variable on the setup page before writing - any bug reports. -- There's a shrinked default OSD height for NTSC users: make FEMON_NTSC=1 -- The device switching feature is still non-functional. + any bug reports. NTSC users should use a shrinked default OSD height by + compiling the plugin with: make FEMON_NTSC=1 "Femon - A real womon who lives according to her natural feminine inclinations." diff --git a/femon.h b/femon.h index f17b693..b43070d 100644 --- a/femon.h +++ b/femon.h @@ -11,7 +11,7 @@ #include -static const char *VERSION = "0.9.0"; +static const char *VERSION = "0.9.1"; static const char *DESCRIPTION = "DVB Signal Information Monitor (OSD)"; static const char *MAINMENUENTRY = "Signal Information"; diff --git a/femoni18n.c b/femoni18n.c index 0df0c89..e492e8f 100644 --- a/femoni18n.c +++ b/femoni18n.c @@ -1836,6 +1836,27 @@ const tI18nPhrase Phrases[] = { "Fikseeritud", // Eesti "", // Dansk }, + { "Analog", // English + "", // Deutsch + "", // Slovenski + "", // Italiano + "", // Nederlands + "", // Português + "", // Français + "", // Norsk + "analoginen", // suomi + "", // Polski + "", // Español + "", // ÅëëçíéêÜ (Greek) + "", // Svenska + "", // Romaneste + "", // Magyar + "", // Català + "", // ÀãááÚØÙ (Russian) + "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk + }, { "Free to Air", // English "Free to Air", // Deutsch "", // Slovenski diff --git a/femonosd.c b/femonosd.c index d6f2f5e..11007f3 100644 --- a/femonosd.c +++ b/femonosd.c @@ -405,7 +405,10 @@ void cFemonOsd::DrawInfoWindow(void) break; case 0x0001 ... 0x00FF: /* Standardized systems */ - snprintf(buf, sizeof(buf), "%s", tr("Fixed")); + if ((value == 0x00A0) || (value == 0x00A1)) + snprintf(buf, sizeof(buf), "%s", tr("Analog")); + else + snprintf(buf, sizeof(buf), "%s", tr("Fixed")); break; case 0x0100 ... 0x01FF: /* Canal Plus */ @@ -1057,9 +1060,11 @@ eOSState cFemonOsd::ProcessKey(eKeys Key) } if (cDevice::GetDevice(device)->ProvidesChannel(channel)) { Dprintf("%s(%d) device(%d)\n", __PRETTY_FUNCTION__, Key, device); + // here should be added some checks, if the device is really available (i.e. not recording) cStatus::MsgChannelSwitch(cDevice::PrimaryDevice(), 0); cControl::Shutdown(); cDevice::GetDevice(device)->SwitchChannel(channel, true); + // does this work with primary devices ? cControl::Launch(new cTransferControl(cDevice::GetDevice(device), channel->Vpid(), channel->Apids(), channel->Dpids(), channel->Spids())); cStatus::MsgChannelSwitch(cDevice::PrimaryDevice(), channel->Number()); break; diff --git a/femonreceiver.c b/femonreceiver.c index fd4ecbb..93f9526 100644 --- a/femonreceiver.c +++ b/femonreceiver.c @@ -72,7 +72,7 @@ void cFemonReceiver::GetVideoInfo(uint8_t *mbuf, int count) uint8_t *headr; int found = 0; int c = 0; - m_VideoValid = false; + //m_VideoValid = false; while ((found < 4) && ((c + 4) < count)) { uint8_t *b; b = mbuf + c; @@ -165,7 +165,7 @@ void cFemonReceiver::GetAudioInfo(uint8_t *mbuf, int count) int found = 0; int c = 0; int tmp = 0; - m_AudioValid = false; + //m_AudioValid = false; while (!found && (c < count)) { uint8_t *b = mbuf + c; if ((b[0] == 0xff) && ((b[1] & 0xf8) == 0xf8)) @@ -214,7 +214,7 @@ void cFemonReceiver::GetAC3Info(uint8_t *mbuf, int count) int found = 0; int c = 0; uint8_t frame; - m_AC3Valid = false; + //m_AC3Valid = false; while (!found && (c < count)) { uint8_t *b = mbuf + c; if ((b[0] == 0x0b) && (b[1] == 0x77))