মানব পাঠযোগ্য আকারে মনিটরের মেক এবং মডেল এবং অন্যান্য তথ্য পান


19

আমি কম্পিউটারের সাথে সংযুক্ত বর্তমান মনিটরের শর্টহ্যান্ড সংস্করণটি বের করেছি।
এখানে একটি উদাহরণ: vendor "VSC", prod id "18500"

উবুন্টুর মনিটর পছন্দগুলিতে এটি হিসাবে চিহ্নিত Viewsonic Corporation 16"

আমি কীভাবে এই মানব পাঠযোগ্য ফর্মটি বের করতে পারি? ... এবং এছাড়াও, আমি কীভাবে নির্ধারণ করতে পারি যে কোনও মনিটর একটি CRTবা একটি LCD? (এটি আসলে এই অনুসন্ধানে আমাকে শুরু করেছিল)

ইডিআইডি ফর্ম্যাটটি উইকিপিডিয়ায় পাওয়া যাবে: বর্ধিত প্রদর্শন শনাক্তকরণ ডেটা
এখানে EDID পেতে কোড ব্যবহার করা হয় VendorএবংProduct id

edid=$(xrandr -q --verbose | 
         sed -n '/^[[:space:]]\+00ffffffffffff00/,/[^a-fA-F0-9[:space:]]/{
                                                  /[^a-fA-F0-9[:space:]]/d
                                                  s/[[:space:]]\+//g; p}')
nibble=({0..1}{0..1}{0..1}{0..1})
vend=$(for i in {16..19} ;do 
           printf "%s" ${nibble[$((16#${edid:$i:1}))]}
       done)
vend="$(for i in 1 6 11 ;do
            printf \\x$(printf %x $((2#${vend:$i:5} +64)))
        done)"
prod=$((16#${edid:22:2}${edid:20:2}))
printf "monitor: vendor \"%s\", prod id \"%s\"\n" "${vend}" "$prod"

সম্পাদনা করুন: xrandr -q verboseEDID হেক্স ডাম্পের শেষ অবধি এখানে আউটপুট ...

Screen 0: minimum 320 x 200, current 1280 x 960, maximum 8192 x 8192
VGA1 connected 1280x960+0+0 (0x47) normal (normal left inverted right x axis y axis) 320mm x 240mm
        Identifier: 0x41
        Timestamp:  26386
        Subpixel:   unknown
        Clones:    
        CRTC:       0
        CRTCs:      0 1
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter: 
        EDID:
                00ffffffffffff005a63444809000000
                15090101682018b1e84f22a157479925
                0f484ffffe00315945596159714f8140
                818001010101000000ff004848393231
                30303030390a2020000000fd0032781e
                46ff000a202020202020000000fc0056
                696577536f6e696320453737000000fc
                00312d320a2020202020202020200084
  1280x1024 (0x46)  108.0MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock   64.0KHz
        v: height 1024 start 1025 end 1028 total 1066           clock   60.0Hz
  1280x960 (0x47)  ....  
        ...
        ... etc

স্ট্যাকওভারফ্লো.কম এ একই বিষয় রয়েছে ।
পেভিক

@ পিটার-ও সম্ভবত আপনার অর্থ xrandr -q --verbose (আপনার আদেশে টাইপো)
dovah

উত্তর:


8

উবুন্টুর মনিটর পছন্দগুলিতে এটি ভিউসোনিক কর্পোরেশন 16 "হিসাবে চিহ্নিত হয়েছে। আমি কীভাবে এই মানব পাঠযোগ্য ফর্মটি বের করতে পারি?

সেই মানব পাঠযোগ্য ফর্ম ( "ভিউজোনিক কর্পোরেশন" ) আপনার ইডিআইডি থেকে সরাসরি আসে না:
উবুন্টু নীচে জিনোম লাইব্রেরি ব্যবহার করে। libgnome-desktop এডিডটি ডিকোড করে এবং - পিএনপি-আইডিগুলির মাধ্যমে - তিন-বর্ণের বিক্রেতা আইডি ( আপনার নির্দিষ্ট ক্ষেত্রে "ভিএসসি" ) প্রদর্শনের জন্য একটি সুন্দর নাম রূপান্তর করে।

gnome-pnp-ids.c , লাইন 51:

* Note: we now prefer to use data coming from hwdata (and shipped with gnome-desktop)*

আমার সিস্টেমে

grep VSC /usr/share/hwdata/pnp.ids

আয়:

VSC    ViewSonic Corporation

এদিকে, অতিরিক্ত তথ্য ইডিআইডি থেকে বর্ণনাকারী ব্লকগুলি থেকে নেওয়া যেতে পারে। একই উইকিপিডিয়া লিঙ্ক থেকে:

বর্ণনাকারী ব্লক অগ্রাধিকার ক্রম হ্রাসে বিশদ সময় বিবরণকারী। সমস্ত বিস্তারিত সময় বর্ণনাকারীর পরে, অতিরিক্ত বর্ণনাকারীদের অনুমতি দেওয়া হয়:

  • পরিসর সীমা সীমা (প্রয়োজনীয়)
  • ASCII পাঠ্য (মনিটরের নাম (প্রয়োজনীয়), মনিটরিয়াল সিরিয়াল নম্বর বা কাঠামোগত কাঠামোগত)
  • 6 অতিরিক্ত স্ট্যান্ডার্ড সময় সম্পর্কিত তথ্য ব্লক
  • রঙিন পয়েন্ট ডেটা

বর্তমানে সংজ্ঞায়িত বর্ণনাকারী ধরণগুলি হ'ল:

  • 0xFF: মনিটরিয়াল সিরিয়াল নম্বর (পাঠ্য)
  • 0xFE: অনির্দিষ্ট পাঠ্য (পাঠ্য)
  • 0xFD: পর্যবেক্ষণ সীমা সীমা। 6- বা 13 বাইট বাইনারি বিবরণকারী।
  • 0xFC: মনিটরের নাম (পাঠ্য)
  • 0xFB: অতিরিক্ত সাদা পয়েন্ট ডেটা। 2 × 5-বাইট বর্ণনাকারী, 0 এ 20 20 সহ প্যাডেড।
  • 0xFA: অতিরিক্ত মানক সময় শনাক্তকারী। 6 × 2-বাইট বর্ণনাকারী, 0 এ প্যাডযুক্ত।

আপনার ইডিআইডি-তে আপনার 0xFFবিবরণী 1 (ক্রমিক নম্বর) 1 (বাইট 54-71) রয়েছে:

00 ff 00 48 48 39 32 31 30 30 30 30 39 0a 20 20 00 00

এবং আপনার কাছে 0xFCবর্ণনামূলক 3 (মনিটরের নাম) 3 (বাইটস 90-1010) এবং 4 (বাইটস 108–125) রয়েছে:

  00 fc 00 56 69 65 77 53 6f 6e 69 63 20 45 37 37 00 00
  00 fc 00 31 2d 32 0a 20 20 20 20 20 20 20 20 20 00 84

সুতরাং এটি কেবল সেখান থেকে তথ্য তোলার বিষয়, যেমন বর্ণনাকারী 3:

56 69 65 77 53 6f 6e 69 63 20 45 37 37>> ভিউসনিক E77

এখানে কিছু লিনাক্স সরঞ্জাম রয়েছে যা EDIDs পার্স করে ... আমি ব্যবহার করি monitor-edid। আমার মেশিনে পার্ল ডাম্পার বিন্যাসে এখানে আউটপুট দেওয়া হচ্ছে:

(
+{
          'EISA_ID' => 'CMO1574',
          'checksum' => 25,
          'detailed_timings' => [
                                  {
                                    'ModeLine' => '"1600x900" 97.75 1600 1648 1680 1760 900 903 908 926 -hsync -vsync',
                                    'ModeLine_comment' => '# Monitor preferred modeline (60.0 Hz vsync, 55.5 kHz hsync, ratio 16/9, 118 dpi)',
                                    'digital_composite' => 3,
                                    'horizontal_active' => 1600,
                                    'horizontal_blanking' => 160,
                                    'horizontal_border' => 0,
                                    'horizontal_dpi' => '118.139534883721',
                                    'horizontal_image_size' => 344,
                                    'horizontal_sync_offset' => 48,
                                    'horizontal_sync_positive' => 0,
                                    'horizontal_sync_pulse_width' => 32,
                                    'interlaced' => 0,
                                    'pixel_clock' => '97.75',
                                    'preferred' => 1,
                                    'stereo' => 0,
                                    'vertical_active' => 900,
                                    'vertical_blanking' => 26,
                                    'vertical_border' => 0,
                                    'vertical_dpi' => '118.445595854922',
                                    'vertical_image_size' => 193,
                                    'vertical_sync_offset' => 3,
                                    'vertical_sync_positive' => 0,
                                    'vertical_sync_pulse_width' => 5
                                  }
                                ],
          'diagonal_size' => '15.5292379824145',
          'edid_revision' => 3,
          'edid_version' => 1,
          'established_timings' => [],
          'extension_flag' => 0,
          'feature_support' => {
                                 'DPMS_active_off' => 0,
                                 'DPMS_standby' => 0,
                                 'DPMS_suspend' => 0,
                                 'GTF_compliance' => 0,
                                 'has_preferred_timing' => 1,
                                 'rgb' => 0,
                                 'sRGB_compliance' => 0
                               },
          'file' => '/sys/class/drm/card0-LVDS-1/edid',
          'gamma' => 120,
          'manufacturer_name' => 'CMO',
          'max_size_horizontal' => '34.4',
          'max_size_precision' => 'mm',
          'max_size_vertical' => '19.3',
          'monitor_details' => '',
          'monitor_text' => [
                              'N156O6-L01',
                              'CMO',
                              'N156O6-L01'
                            ],
          'product_code' => 5492,
          'ratio' => '1.78238341968912',
          'ratio_name' => '16/9',
          'ratio_precision' => 'mm',
          'serial_number' => 0,
          'standard_timings' => [],
          'video_input_definition' => {
                                        'composite_sync' => 0,
                                        'digital' => 1,
                                        'separate_sync' => 0,
                                        'sync_on_green' => 0,
                                        'voltage_level' => 0
                                      },
          'week' => 41,
          'year' => 2008
        }
,
)

পরিশেষে, কোনও মনিটর এলসিডি বা সিআরটি হলে কীভাবে (লিনাক্সে) নির্ধারণ করবেন তা আমার কোনও ধারণা নেই। আমি এমন কোনও লাইব্রেরি জানি না যা এই জাতীয় ফাংশন প্রয়োগ করে ( এমএসের মতো এটি )।


এটি একটি দুর্দান্ত উত্তর। চেষ্টা করার জন্য ধন্যবাদ.
পিটার.ও

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.