int _openDevice (VideoDevice * vd) { FILE *pfb1_mode; char buf[100]; if (vd->mode_num) { sprintf (buf, "/sys/class/graphics/fb%d/mode", vd->fbidx); pfb1_mode = fopen (buf, "w"); if (pfb1_mode == NULL) { VS_ERROR ("No /sys/class/graphics/fb1/mode device to open\n"); goto error; } video_mode_to_str (buf, &vd->modes[vd->current_mode]); fwrite (buf, 1, strlen (buf), pfb1_mode); fflush (pfb1_mode); fclose (pfb1_mode); } return 0; error: return -1; }
void AmConfigVout::set_cvbs_config(VoutParameters *cvbsConfig) { if (cvbsConfig) { set_value("COMMON:VideoColorConversion", (cvbsConfig->is_video_csc_enabled ? "1" : "0")); set_value("COMMON:QtSupport", (cvbsConfig->tailored_info == 0 ? "0" : "1")); set_value("CVBS:Resolution", video_mode_to_str(cvbsConfig->video_mode)); set_value("CVBS:VoutSize", (cvbsConfig->vout_video_size.specified ? "1" : "0")); set_value("CVBS:VoutSize/VoutWidth", cvbsConfig->vout_video_size.vout_width); set_value("CVBS:VoutSize/VoutHeight", cvbsConfig->vout_video_size.vout_height); set_value("CVBS:VoutSize/VideoWidth", cvbsConfig->vout_video_size.video_width); set_value("CVBS:VoutSize/VideoHeight", cvbsConfig->vout_video_size.video_height); set_value("CVBS:CvbsRotateVideo", rotate_info_to_str(cvbsConfig->video_rotate)); set_value("CVBS:EnableVideo", (cvbsConfig->is_video_enabled ? "1" : "0")); set_value("CVBS:CvbsFlipVideo", flip_info_to_str(cvbsConfig->video_flip)); set_value("CVBS:FramebufferID", cvbsConfig->framebuffer_id); set_value("CVBS:VideoOffset", (cvbsConfig->video_offset.specified ? "1" : "0")); set_value("CVBS:VideoOffset/OffsetX", cvbsConfig->video_offset.offset_x); set_value("CVBS:VideoOffset/OffsetY", cvbsConfig->video_offset.offset_y); set_value("CVBS:OsdRescale", (cvbsConfig->osd_rescale.enable ? "1" : "0")); set_value("CVBS:OsdRescale/Width", cvbsConfig->osd_rescale.width); set_value("CVBS:OsdRescale/Height", cvbsConfig->osd_rescale.height); set_value("CVBS:OsdOffset", (cvbsConfig->osd_offset.specified ? "1" : "0")); set_value("CVBS:OsdOffset/OffsetX", cvbsConfig->osd_offset.offset_x); set_value("CVBS:OsdOffset/OffsetY", cvbsConfig->osd_offset.offset_y); } }