[vdr] Polish EPG problems

Mariusz Bialonczyk manio at skyboo.net
Sun Oct 7 20:59:40 CEST 2012


Hi,
I've been using vdr for very long time (since 1.2.1 afair), but the
polish epg problem is unfortunately still here in recent versions.
I made a deep analysis of the problem and here are the details.
Polish broadcasters are ignorants regarding dvb standards!
It's very sad but it's true :(
Of course e-mails to them about it doesn't give an any effect...
There are two kind of problems with polish providers on HotBird 13E:
First problem is that similar to one handled by CharsetOverride:
Part of the channels are encoded in ISO-8859-2 while not announce that,
this can be handled with VDR_CHARSET_OVERRIDE correctly.
The other part cannot be currently handled correctly in vdr without patching:
Some channels are using ISO6937 while announcing ISO-8859-5! (sic!)

There are also providers which are respecting standards,
but the above bad cases are for two main polish digital platforms,
so it would be great if vdr finally would handle it correctly.

I have two propositions to solve the problem:
1. check if VDR_CHARSET_OVERRIDE is set to ISO-8859-2 and based on
this information, force apply following change:
diff --git a/libsi/si.c b/libsi/si.c
index 80d34d1..bc34bd7 100644
--- a/libsi/si.c
+++ b/libsi/si.c
@@ -373,6 +373,8 @@ const char *getCharacterTable(const unsigned char *&buffer, int &length, bool *i
       length -= 1;
       if (isSingleByte)
          *isSingleByte = tag <= SingleByteLimit;
+      if (tag == 0x01 /* ISO8859-5 */)
+         return cs6937;
       return CharacterTables1[tag];
    }
    return cs;
2. add additional VDR_CHARSET_OVERRIDE option, eg:
VDR_CHARSET_OVERRIDE=PL
this could also return cs6937 when ISO8859-5 is defined (like above).

Please tell me what you think about it.

ps. by the way i want to thank you for your work
and piece of a good software! :)

regards,
-- 
Mariusz Białończyk
jabber/e-mail: manio at skyboo.net
https://github.com/manio



More information about the vdr mailing list