Changeset 45014


Ignore:
Timestamp:
12/14/20 14:04:17 (12 months ago)
Author:
obi
Message:

add getfbxres getfbyres and use this on hbbtv start

Location:
titan/titan
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • titan/titan/fb.h

    r44347 r45014  
    5757       
    5858        return fix_screeninfo.smem_len - fbmemcount;
     59}
     60
     61int getfbxres()
     62{
     63        struct fb_var_screeninfo var_screeninfo;
     64        int fd = -1;
     65        char *fbdev = getconfig("fbdev", NULL);
     66       
     67        if(fbdev == NULL)
     68        {
     69                err("failed to find fbdev in config file");
     70                return -1;
     71        }
     72
     73        fd = open(fbdev, O_RDWR);
     74        if(fd == -1)
     75        {
     76                perr("failed to open %s", fbdev);
     77                return -1;
     78        }
     79       
     80        if(ioctl(fd, FBIOGET_VSCREENINFO, &var_screeninfo) < 0)
     81        {
     82                err("failed to read VSCREENINFO");
     83                close(fd);
     84                return -1;
     85        }
     86
     87        close(fd);
     88        return var_screeninfo.xres;
     89}
     90
     91int getfbyres()
     92{
     93        struct fb_var_screeninfo var_screeninfo;
     94        int fd = -1;
     95        char *fbdev = getconfig("fbdev", NULL);
     96       
     97        if(fbdev == NULL)
     98        {
     99                err("failed to find fbdev in config file");
     100                return -1;
     101        }
     102
     103        fd = open(fbdev, O_RDWR);
     104        if(fd == -1)
     105        {
     106                perr("failed to open %s", fbdev);
     107                return -1;
     108        }
     109       
     110        if(ioctl(fd, FBIOGET_VSCREENINFO, &var_screeninfo) < 0)
     111        {
     112                err("failed to read VSCREENINFO");
     113                close(fd);
     114                return -1;
     115        }
     116
     117        close(fd);
     118        return var_screeninfo.yres;
    59119}
    60120
  • titan/titan/infobar.h

    r45013 r45014  
    816816                        status.tuxtxt = 1;
    817817
    818                         char* res = NULL;
    819                         char* cmd = NULL;
    820 //                      cmd = ostrcat("fbset | sed -nr 's/.*mode.*\\\"([^\\\"]+)-.*/\\\1/p' | tr 'x' ' '", NULL, 0, 0);
    821                         cmd = ostrcat("fbset | sed -nr 's/.*mode.*\"([^\"]+)-.*/\\1/p' | tr 'x' ' '", NULL, 0, 0);
    822        
    823                         debug(10, "cmd=%s", cmd);
    824                         res = string_newline(command(cmd));
    825                         if(res == NULL)
    826                         {
    827                                 debug(10, "set default res: %s", res);
    828                                 res = ostrcat("1280 720", NULL, 0, 0);
    829                         }
    830                         tmpstr = ostrcat("run.sh restart ", res, 0, 0);
     818                        tmpstr = ostrcat("run.sh restart ", oitoa(getfbxres()), 0, 0);
     819                        tmpstr = ostrcat(tmpstr, " ", 1, 0);
     820                        tmpstr = ostrcat(tmpstr, oitoa(getfbyres()), 1, 0);
    831821                        tmpstr = ostrcat(tmpstr, " ", 1, 0);
    832822                        tmpstr = ostrcat(tmpstr, status.aktservice->channel->hbbtvurl, 1, 0);
     
    842832                        system(tmpstr);
    843833                        free(tmpstr), tmpstr = NULL;
    844                         free(res), res = NULL;
    845                         free(cmd), cmd = NULL;
    846834
    847835                        while(1)
     
    899887                        system(tmpstr);
    900888                        free(tmpstr), tmpstr = NULL;
    901                         free(res), res = NULL;
    902                         free(cmd), cmd = NULL;
    903 
    904889#endif
    905890
Note: See TracChangeset for help on using the changeset viewer.