Re: [vdr] FullHD OSD problem

2009-09-26 Thread Petri Hintukainen
Kimmo Taskinen wrote:
 I am still using 1.6.0-2 and have patched it for FullHD OSD 
 (http://www.vdrportal.de/board/thread.php?threadid=79647threadview=0hilight=hilightuser=0page=1
  
 ). Frontend is xineliboutput-cvs (vdr-sxfe in other computer; tcp  
 connection) and skinenigmang-0.1.0 is in use. Everything seems fine  
 except that if I use antialiased fonts there is one problem that I  
 have noticed only with epgsearch plugin Schedule view. The problem  
 is that Schedule is not shown if the OSD should be really full. With  
 short EPG info the schedule is shown.
 
 The problem seems to be in buffering as I get following message in / 
 var/log/messages:
 Aug 25 18:04:35 server vdr: [7573] [xine..put] write_osd_command:  
 socket buffer full, OSD send skipped (got 262142 ; need 302366
 
 256k seems to be the limit.

 Is it the problem in vdr, xineliboutput, epgsearch or somewhere else?  

xineliboutput limits compressed OSD bitmap size.

 OK I understand that these versions were not designed for fullHD  
 support but anyways it would be nice fix this.

Does the attached patch fix the problem ?


- Petri
Index: frontend_svr.c
===
RCS file: /cvsroot/xineliboutput/vdr-xineliboutput/frontend_svr.c,v
retrieving revision 1.81
diff -u -r1.81 frontend_svr.c
--- frontend_svr.c	9 Sep 2009 12:38:12 -	1.81
+++ frontend_svr.c	26 Sep 2009 18:02:06 -
@@ -52,6 +52,9 @@
 #define PLAYFILE_CTRL_TIMEOUT   300   /* ms */
 #define PLAYFILE_TIMEOUT  2   /* ms */
 
+#undef  MIN
+#define MIN(a,b) ( (a)  (b) ? (a) : (b))
+
 typedef struct {
   intSize;
   uchar *Data;
@@ -241,7 +244,7 @@
  (ssize_t)(sizeof(xine_clut_t) * ntohl(cmd-colors)) +
  (ssize_t)(ntohl(cmd-datalen));
 
-  if(max  0  max  size) {
+  if(max  0  max  MIN(size, 32768)) {
 /* #warning TODO: buffer latest failed OSD and retry
   - skipped OSDs can be left out but
   latest will be always delivered */
___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr


[vdr] FullHD OSD problem

2009-08-25 Thread Kimmo Taskinen

Hi,

I am still using 1.6.0-2 and have patched it for FullHD OSD (http://www.vdrportal.de/board/thread.php?threadid=79647threadview=0hilight=hilightuser=0page=1 
). Frontend is xineliboutput-cvs (vdr-sxfe in other computer; tcp  
connection) and skinenigmang-0.1.0 is in use. Everything seems fine  
except that if I use antialiased fonts there is one problem that I  
have noticed only with epgsearch plugin Schedule view. The problem  
is that Schedule is not shown if the OSD should be really full. With  
short EPG info the schedule is shown.


The problem seems to be in buffering as I get following message in / 
var/log/messages:
Aug 25 18:04:35 server vdr: [7573] [xine..put] write_osd_command:  
socket buffer full, OSD send skipped (got 262142 ; need 302366


256k seems to be the limit.

Is it the problem in vdr, xineliboutput, epgsearch or somewhere else?  
OK I understand that these versions were not designed for fullHD  
support but anyways it would be nice fix this.


I can avoid problem by disabling anti-alias fonts or setting Try 8bpp  
single area: no from skinenigmang options.


- Kimmo
 


___
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr