1
0
mirror of https://github.com/rofafor/vdr-plugin-femon.git synced 2023-10-10 13:36:53 +02:00

Fixed AC3-info flickering (Thanks to Pasi Juppo for reporting this one).

Added "Analog" type CA system.
Plugin is now stripped by default.
This commit is contained in:
Rolf Ahrenberg 2005-07-23 04:20:00 +03:00
parent 8e57eec535
commit 7c948cde72
7 changed files with 51 additions and 10 deletions

View File

@ -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.

View File

@ -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)

10
README
View File

@ -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."

View File

@ -11,7 +11,7 @@
#include <vdr/plugin.h>
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";

View File

@ -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

View File

@ -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;

View File

@ -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))