Project

General

Profile

Files » xineliboutput-atmolight-switch.patch

durchflieger, 02/02/2011 09:54 AM

View differences:

xine_frontend.c
} else if (!strcmp(data, "POWER_OFF")) {
shutdown_system(this->shutdown_cmd, 1);
} else if (!strncasecmp(data, "ATMOLIGHT", 9)) {
if (this->postplugins) {
int i;
for (i = 0; i < this->postplugins->post_video_elements_num; ++i) {
post_element_t *pve = this->postplugins->post_video_elements[i];
if (pve->enable && !strcmp(pve->name, "atmo")) {
xine_post_in_t *input_api = (xine_post_in_t *) xine_post_input(pve->post, "parameters");
if (input_api) {
xine_post_api_t *post_api = (xine_post_api_t *) input_api->data;
xine_post_api_descr_t *api_descr = post_api->get_param_descr();
xine_post_api_parameter_t *parm = api_descr->parameter;
while(parm->type != POST_PARAM_TYPE_LAST) {
if (!strcmp(parm->name, "enabled")) {
uint8_t *param_data = malloc(api_descr->struct_size);
if (param_data) {
post_api->get_parameters(pve->post, param_data);
int *enabled = (int *)(param_data + parm->offset);
char *p = strpbrk(data + 9, "01");
if (p)
*enabled = (atoi(p)) ? 1: 0;
else
*enabled = (*enabled) ? 0: 1;
post_api->set_parameters(pve->post, param_data);
free(param_data);
}
break;
}
parm++;
}
}
break;
}
}
}
} else {
LOGDBG("Event: %s", data);
xine_frontend_kbd.c
fe->send_event(fe, "TOGGLE_DEINTERLACE");
continue;
}
if (code == 'a' || code == 'A') {
fe->send_event(fe, "ATMOLIGHT");
continue;
}
}
snprintf(str, sizeof(str), "%016" PRIX64, code);
......
fe->send_input_event(fe, NULL, str+5, 0, 0);
continue;
}
if (!strncasecmp(str, "ATMOLIGHT", 9)) {
fe->send_event(fe, str);
continue;
}
LOGMSG("Unknown slave mode command: %s", str);
xine_frontend_lirc.c
fe->send_event(fe, "TOGGLE_DEINTERLACE");
continue;
}
if (!strcmp(KeyName, "Atmolight")) {
if (!repeat)
fe->send_event(fe, "ATMOLIGHT");
continue;
}
}
alarm(3);
xine_frontend_main.c
" mapping keyboard f,F -> fullscreen toggle\n"
" keyboard d,D -> deinterlace toggle\n"
" keyboard p,P -> power off\n"
" keyboard a,A -> atmolight toggle\n"
" LIRC Deinterlace -> deinterlace toggle\n"
" LIRC Fullscreen -> fullscreen toggle\n"
" LIRC PowerOff -> power off\n"
" LIRC Atmolight -> atmolight toggle\n"
" LIRC Quit -> exit\n");
break;
case 'b': nokbd = daemon_mode = 1;
(2-2/2)