Changeset 39407


Ignore:
Timestamp:
12/03/16 17:16:07 (6 years ago)
Author:
gost
Message:

[titan] qick switch passthrough

Location:
titan/titan
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • titan/titan/audiotrack.h

    r39278 r39407  
    2424        struct skin* audiotrack = getscreen("audiotrack");
    2525        struct skin* listbox = getscreennode(audiotrack, "listbox");
     26        struct skin* b4 = getscreennode(audiotrack, "b4");
    2627        struct skin* tmp = NULL;
    2728        struct audiotrack* node = NULL;
     
    3435                m_lock(&status.audiotrackmutex, 7);
    3536                node = status.aktservice->channel->audiotrack;
    36                 if(getconfigint("downmixinaudio", NULL) == 1)
    37                 {
    38                         tmp = addlistbox(audiotrack, listbox, tmp, 1);
    39                         if(tmp != NULL)
    40                         {
    41                                 if(status.downmix == 1)
    42                                         changetext(tmp, _("DOWNMIX OFF"));
    43                                 else
    44                                         changetext(tmp, _("DOWNMIX ON"));
    45                                 tmp->type = CHOICEBOX;
    46                                 tmp->del = 1;
    47                                 tmp->handle = (char*)node;
    48                                 changeinput(tmp, "");
    49                         }
    50                 }
     37
    5138                while(node != NULL)
    5239                {
     
    6653                                else
    6754                                        changeinput(tmp, "");
    68                                 if(getconfigint("downmixinaudio", NULL) == 0)
    69                                         if(treffer == 0) listbox->aktline++;
    7055                        }
    7156                        node = node->next;
     
    7560
    7661        if(treffer == 0) listbox->aktline = 1;
     62               
     63        if(status.downmix == 1)
     64                changetext(b4, "passthrough");
     65        else
     66                changetext(b4, getconfig("av_ac3mode", NULL));
    7767
    7868        drawscreen(audiotrack, 0, 0);
     
    10191                        break;
    10292                }
     93                if(rcret == getrcconfigint("rcblue", NULL))
     94                {
     95                        char* ac3dev = NULL;
     96                        ac3dev = getconfig("ac3dev", NULL);
     97                        int ret = 0;
     98                        if(ac3dev != NULL)
     99                        {
     100                                if(status.downmix == 1)
     101                                {
     102                                        ret = writesys(ac3dev, "passthrough", 0);
     103                                        if(ret == 0)
     104                                                status.downmix = 0;
     105                                        else
     106                                                printf("ERROR: set AC3_mode to passthrough\n");
     107                                }
     108                                else
     109                                {
     110                                        ret = writesys(ac3dev, getconfig("av_ac3mode", NULL), 0);
     111                                        if(ret == 0)
     112                                                status.downmix = 1;
     113                                        else
     114                                                printf("ERROR: set AC3_mode to %s\n", getconfig("av_ac3mode", NULL));
     115                                }
     116                        }
     117                        break;
     118                }
    103119        }
    104120
  • titan/titan/global.h

    r39281 r39407  
    39053905                ret = writesys(ac3dev, value, 0);
    39063906                if(ret == 0) addconfig("av_ac3mode", value);
     3907                if(ostrcmp(value, "passthrough") == 0)
     3908                        status.downmix = 0;
     3909                else
     3910                        status.downmix = 1;
    39073911                return ret;
    39083912        }
Note: See TracChangeset for help on using the changeset viewer.