Definition at line 549 of file edid-parse.c.
References MonitorInfo::active_off, DetailedTiming::analog, MonitorInfo::analog, MonitorInfo::aspect_ratio, MonitorInfo::blue_x, MonitorInfo::blue_y, MonitorInfo::checksum, MonitorInfo::continuous_frequency, MonitorInfo::detailed_timings, DetailedTiming::digital, MonitorInfo::digital, DetailedTiming::digital_sync, DISPLAY_PORT, MonitorInfo::dsc_product_name, MonitorInfo::dsc_serial_number, MonitorInfo::dsc_string, DVI, MonitorInfo::established, FIELD_LEFT, FIELD_RIGHT, FOUR_WAY_INTERLEAVED, Timing::frequency, MonitorInfo::gamma, MonitorInfo::green_x, MonitorInfo::green_y, DetailedTiming::h_addr, DetailedTiming::h_blank, DetailedTiming::h_front_porch, DetailedTiming::h_sync, HDMI_A, HDMI_B, Timing::height, DetailedTiming::height_mm, MonitorInfo::height_mm, i, MonitorInfo::is_digital, MonitorInfo::major_version, MonitorInfo::manufacturer_code, MDDI, MonitorInfo::minor_version, MonitorInfo::model_year, MONOCHROME, MonitorInfo::n_detailed_timings, NO_STEREO, OTHER_COLOR, DetailedTiming::pixel_clock, MonitorInfo::preferred_timing_includes_native, MonitorInfo::product_code, MonitorInfo::production_week, MonitorInfo::production_year, MonitorInfo::red_x, MonitorInfo::red_y, RGB, DetailedTiming::right_border, MonitorInfo::serial_number, SIDE_BY_SIDE, MonitorInfo::srgb_is_standard, MonitorInfo::standard, MonitorInfo::standby, DetailedTiming::stereo, MonitorInfo::suspend, DetailedTiming::top_border, TWO_WAY_LEFT_ON_EVEN, TWO_WAY_RIGHT_ON_EVEN, UNDEFINED, UNDEFINED_COLOR, DetailedTiming::v_addr, DetailedTiming::v_blank, DetailedTiming::v_front_porch, DetailedTiming::v_sync, MonitorInfo::white_x, MonitorInfo::white_y, Timing::width, DetailedTiming::width_mm, MonitorInfo::width_mm, and yesno().
553 printf (
"Checksum: %d (%s)\n",
562 printf (
"Production Week: unspecified\n");
567 printf (
"Production Year: unspecified\n");
570 printf (
"Model Year: %d\n", info->
model_year);
572 printf (
"Model Year: unspecified\n");
576 printf (
"Display is %s\n", info->
is_digital?
"digital" :
"analog");
579 const char *interface;
580 if (info->
digital.bits_per_primary != -1)
581 printf (
"Bits Per Primary: %d\n", info->
digital.bits_per_primary);
583 printf (
"Bits Per Primary: undefined\n");
585 switch (info->
digital.interface)
587 case DVI:
interface = "
DVI";
break;
588 case HDMI_A:
interface = "HDMI-
a";
break;
589 case HDMI_B:
interface = "HDMI-
b";
break;
590 case MDDI:
interface = "
MDDI";
break;
592 case UNDEFINED:
interface = "undefined";
break;
593 default:
interface = "unknown";
break;
595 printf (
"Interface: %s\n", interface);
597 printf (
"RGB 4:4:4: %s\n",
yesno (info->
digital.rgb444));
598 printf (
"YCrCb 4:4:4: %s\n",
yesno (info->
digital.ycrcb444));
599 printf (
"YCrCb 4:2:2: %s\n",
yesno (info->
digital.ycrcb422));
604 printf (
"Video Signal Level: %f\n", info->
analog.video_signal_level);
605 printf (
"Sync Signal Level: %f\n", info->
analog.sync_signal_level);
606 printf (
"Total Signal Level: %f\n", info->
analog.total_signal_level);
608 printf (
"Blank to Black: %s\n",
610 printf (
"Separate HV Sync: %s\n",
612 printf (
"Composite Sync on H: %s\n",
614 printf (
"Serration on VSync: %s\n",
617 switch (info->
analog.color_type)
621 case RGB: s =
"rgb";
break;
623 default: s =
"unknown";
break;
626 printf (
"Color: %s\n", s);
630 printf (
"Width: undefined\n");
632 printf (
"Width: %d mm\n", info->
width_mm);
635 printf (
"Height: undefined\n");
637 printf (
"Height: %d mm\n", info->
height_mm);
642 printf (
"Aspect Ratio: undefined\n");
644 if (info->
gamma >= 0)
645 printf (
"Gamma: %f\n", info->
gamma);
647 printf (
"Gamma: undefined\n");
654 printf (
"Preferred Timing Includes Native: %s\n",
658 printf (
"Red X: %f\n", info->
red_x);
659 printf (
"Red Y: %f\n", info->
red_y);
660 printf (
"Green X: %f\n", info->
green_x);
661 printf (
"Green Y: %f\n", info->
green_y);
662 printf (
"Blue X: %f\n", info->
blue_x);
663 printf (
"Blue Y: %f\n", info->
blue_y);
664 printf (
"White X: %f\n", info->
white_x);
665 printf (
"White Y: %f\n", info->
white_y);
667 printf (
"Established Timings:\n");
669 for (i = 0; i < 24; ++
i)
676 printf (
" %d x %d @ %d Hz\n",
681 printf (
"Standard Timings:\n");
682 for (i = 0; i < 8; ++
i)
689 printf (
" %d x %d @ %d Hz\n",
698 printf (
"Timing%s: \n",
700 " (Preferred)" :
"");
701 printf (
" Pixel Clock: %d\n", timing->
pixel_clock);
702 printf (
" H Addressable: %d\n", timing->
h_addr);
703 printf (
" H Blank: %d\n", timing->
h_blank);
705 printf (
" H Sync: %d\n", timing->
h_sync);
706 printf (
" V Addressable: %d\n", timing->
v_addr);
707 printf (
" V Blank: %d\n", timing->
v_blank);
709 printf (
" V Sync: %d\n", timing->
v_sync);
710 printf (
" Width: %d mm\n", timing->
width_mm);
711 printf (
" Height: %d mm\n", timing->
height_mm);
713 printf (
" Top Border: %d\n", timing->
top_border);
718 case FIELD_RIGHT: s =
"Field Sequential, Right on Sync";
break;
719 case FIELD_LEFT: s =
"Field Sequential, Left on Sync";
break;
725 printf (
" Stereo: %s\n", s);
729 printf (
" Digital Sync:\n");
730 printf (
" composite: %s\n",
yesno (timing->
digital.composite));
731 printf (
" serrations: %s\n",
yesno (timing->
digital.serrations));
732 printf (
" negative vsync: %s\n",
734 printf (
" negative hsync: %s\n",
739 printf (
" Analog Sync:\n");
740 printf (
" bipolar: %s\n",
yesno (timing->
analog.bipolar));
741 printf (
" serrations: %s\n",
yesno (timing->
analog.serrations));
742 printf (
" sync on green: %s\n",
yesno (
743 timing->
analog.sync_on_green));
747 printf (
"Detailed Product information:\n");
750 printf (
" Unspecified String: %s\n", info->
dsc_string);
char dsc_product_name[14]
char manufacturer_code[4]
struct MonitorInfo::@34::@36 digital
struct DetailedTiming::@30::@33 digital
static const char * yesno(int v)
int preferred_timing_includes_native
return Display return Display Bool Bool int int int return Display XEvent Bool(*) XPointer return Display return Display Drawable _Xconst char unsigned int unsigned int return Display Pixmap Pixmap XColor XColor unsigned int unsigned int return Display _Xconst char char int char return Display Visual unsigned int int int char unsigned int unsigned int in i)
DetailedTiming detailed_timings[4]
struct DetailedTiming::@30::@32 analog
char dsc_serial_number[14]
unsigned int serial_number
GLboolean GLboolean GLboolean GLboolean a
struct MonitorInfo::@34::@37 analog
GLboolean GLboolean GLboolean b