একক মনিটরের জন্য কীভাবে ইডিআইডি পাবেন?


20

নির্দিষ্ট ইডিআইডিএস সহ ডিভাইসগুলিকে ব্ল্যাকলিস্ট করতে কোনও সম্ভাব্য কর্মক্ষেত্রের নিরীক্ষণ করায় এক্সরেন্ডারের একটি উত্তর মুলতুবি হিসাবে এমপ্লিফায়ার সনাক্ত করে । দুর্ভাগ্যক্রমে এমন ফর্ম্যাটে সমস্ত কিছু মুদ্রণ করে যা পার্স করা জটিল এবং একক ডিভাইসগুলির অনুসন্ধানের পক্ষে সমর্থন করে না এবং এর আউটপুট মনিটরের আইডিগুলিতে মানচিত্র করা সহজ বলে মনে হয় না (উদাহরণস্বরূপ )।xrandr --verboseget-edidxrandrDVI-1

একটি একক মনিটরের জন্য সহজেই পার্সেবল ইডিআইডি পাওয়ার কোনও উপায় আছে কি ?


আমি xrandrপার্সিং করতে যাই এটি কষ্টকর, তবে আপনি একবারে এবং একবারে আপনার স্ক্রিপ্টটি লিখুন এবং তারপরে এটি সর্বত্র কাজ করবে।
গিলস 'অশুভ হওয়া বন্ধ করুন'

উত্তর:


18

লিড # 1: মনিটর-সম্পাদিত

আমি ইডিআইডি এবং মনিটরগুলিতে তেমন আপ নই তবে আমি এই সরঞ্জামটি পেয়েছি, monitor-edidযা আপনার এখানেও কার্যকর হতে পারে।

যদি এটি বেসের বাইরে থাকে তবে আমাকে ক্ষমা করুন, আমি আপনাকে এই বিষয়ে বিভিন্ন প্রশ্ন জিজ্ঞাসা করে, এই স্থান সম্পর্কে আরও জানার চেষ্টা করছি।

$ monitor-edid 
EISA ID: LEN4036
EDID version: 1.3
EDID extension blocks: 0
Screen size: 30.3 cm x 19.0 cm (14.08 inches, aspect ratio 16/10 = 1.59)
Gamma: 2.2
Digital signal

    # Monitor preferred modeline (60.0 Hz vsync, 55.8 kHz hsync, ratio 16/10, 120 dpi)
    ModeLine "1440x900" 114.06 1440 1488 1520 2044 900 903 909 930 -hsync -vsync

    # Monitor supported modeline (50.0 Hz vsync, 51.8 kHz hsync, ratio 16/10, 120 dpi)
    ModeLine "1440x900" 114.06 1440 1488 1520 2204 900 903 909 1035 -hsync -vsync

সীসা # 2: ddcontrol

আমি ডাকতে পেরেছিলাম এমন আরও একটি সরঞ্জাম ছিল ddccontrolযা আপনার পরে তথ্যটি পেতে সহায়ক হতে পারে।

সীসা # 3: / sys

শেষ অবধি পোকার জন্য /sysআমি লক্ষ্য করেছি যে বিভিন্ন ভিডিও ইন্টারফেস বন্ধ করে পাতার নোড রয়েছে।

$ sudo find . |grep -i edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-1/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-2/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-HDMI-A-3/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-VGA-1/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-1/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-2/edid
./devices/pci0000:00/0000:00:02.0/drm/card0/card0-DP-3/edid
./module/drm/parameters/edid_fixup
./module/drm_kms_helper/parameters/edid_firmware

তবে আমার লেনভোর ল্যাপটপে এই "ফাইলগুলি" খালি ছিল, সম্ভবত এটি আপনার সিস্টেমে আলাদা। আমি এই ফোরামের থ্রেডটি পেয়েছি যা ভিজিএ ইডিআইডি থেকে নমুনা আউটপুট দেখিয়েছে।

$ lspci | grep VGA
01:00.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 440 Go 64M] (rev a3)
$ xxd  /sys/devices/pci0000:00/0000:00:0b.0/0000:01:00.0/drm/card0/card0-VGA-1/edid
0000000: 00ff ffff ffff ff00 5a63 0213 0101 0101  ........Zc......
0000010: 2b0a 0103 1c25 1bb0 eb00 b8a0 5749 9b26  +....%......WI.&
0000020: 1048 4cff ff80 8199 8159 714f 6159 4559  .HL......YqOaYEY
0000030: 3159 a94f 0101 863d 00c0 5100 3040 40a0  1Y.O...=..Q.0@@.
0000040: 1300 680e 1100 001e 0000 00ff 0033 3139  ..h..........319
0000050: 3030 3433 3030 3737 330a 0000 00fd 0032  004300773......2
0000060: a01e 6114 000a 2020 2020 2020 0000 00fc  ..a...      ....
0000070: 0047 3930 6d62 0a20 2020 2020 2020 00ba  .G90mb.       ..

উত্স: EDID ব্যবহার করে মনিটরের সিরিয়াল নম্বর / উত্পাদন তারিখের নিষ্কাশন?

তথ্যসূত্র


@ l0b0 - এটি মাত্র 2 হয়েছে? আরো ভালো লাগছিল। আমি এই Q এর বিভাগটি বিভ্রান্ত করতে পারি / কেবল আপনি তাদের জিজ্ঞাসা করছেন। আমি আপত্তিজনক বিট 8-) সরিয়ে দেব
slm

# 3 / sys / ... আমার জন্য কাজ, আমি Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)সঙ্গে i915চালক কুবুন্টু 15,04
user.dz

# 3 / এসআইএস / ... এবং xrandr --verboseউভয়ই আমার এইচডিএমআই মনিটরের জন্য ইডিআইডি ডেটা ফেরত দেয় তবে আমার ডিভিআই মনিটরের জন্য উভয়ই ইডিআইডি ডেটা ফেরত দেয় না।
noobninja

মনিটর-সম্পাদিত লিঙ্কটি মারা গেছে এবং সংরক্ষণাগার.অর্গের কোনও ব্যাকআপ নেই। যে সরঞ্জামটি আমি কোথায় পেতে পারি কেউ জানেন?
পিটার ডাব্লু।

@PeterW। - বিকল্প আছে, এটি আমার নজরে আনার জন্য ধন্যবাদ। এছাড়াও সরঞ্জামটি বেশিরভাগ বড় দোকানে রয়েছে। আমি এটি ফেডোরা 24-তে পেয়েছি, উদাহরণস্বরূপ এবং সেন্টোসও। সুতরাং আপনি বাইনারি হিসাবে সরঞ্জামটি ইনস্টল করতে পারেন যা সম্ভবত আরও সহজ বিকল্প।
slm

11

xrandr --propsকম সংখ্যক উপায়ে প্রতিটি সংযুক্ত প্রদর্শনের জন্য হেক্স ইডিআইডি স্ট্রিংগুলির আউটপুট অন্তর্ভুক্ত। নির্দিষ্ট সংযুক্ত মনিটরের জন্য একটি ইডিআইডি দখল করতে এটি ব্যবহার করে এখানে একটি সাধারণ পাইথন স্ক্রিপ্ট

আমি আমার এনভিডিয়া-ভিত্তিক সিস্টেমে ইডিআইডি নিষ্কাশন করার জন্য কাজ করে এমন কোনও ডিস্ট্রো-প্যাকেজযুক্ত সি এল এল সরঞ্জাম খুঁজে পাইনি, তবে বাইনারি ইডিআইডি পার্স করার বেশিরভাগ সরঞ্জাম ঠিকঠাক বলে মনে হচ্ছে।


8

আপনি যদি কোনও x86 বা পাওয়ারপিসি খিলান ব্যবহার করে থাকেন তবে আপনি ব্যবহার করতে পারেন read-edid। ডিবিয়ান উপর এটি এখানে পাওয়া যায়

ব্যবহার সহজভাবে (আপনার মূল হতে হবে):

$ sudo get-edid > /tmp/edid

এবং তারপরে কাঠামোটি বিশ্লেষণ করুন:

$ parse-edid < /tmp/edid
Checksum Correct

Section "Monitor"
    Identifier "HP v220"
    ModelName "HP v220"
    VendorName "HWP"
    # Monitor Manufactured week 13 of 2008
    # EDID version 1.3
    # Analog Display
    DisplaySize 470 300
    Gamma 2.20
    Option "DPMS" "true"
    Horizsync 30-81
    VertRefresh 56-76
    # Maximum pixel clock is 160MHz
    #Not giving standard mode: 1152x720, 60Hz
    #Not giving standard mode: 1280x960, 60Hz
    #Not giving standard mode: 1280x1024, 60Hz
    #Not giving standard mode: 1440x900, 60Hz
    #Not giving standard mode: 1600x1000, 60Hz
    #Not giving standard mode: 1680x1050, 60Hz
    Modeline    "Mode 0" -hsync +vsync 
EndSection

প্রায়শই এটি একত্রিত হয়:

$ sudo get-edid | parse-edid

কীভাবে আপনার গ্রাফিক কার্ডে এই কাস্টম এডিড ফাইলটি পাস করবেন তা এখানেও দেখুন :

  • কাস্টমডিআইডি বা,
  • drm_kms_helper.edid_firmare

3
কেবল "স্পষ্টতই আমি আইডিসি-ডেভ" না করা পর্যন্ত গেট-এডিড আমার পক্ষে কাজ করে না তা স্পষ্ট করে বলতে চাই। এবং উত্পাদিত "পার্স-এডিড" উত্পাদিত মডেলিন জর্জি গ্রহণ করেন নি। সুতরাং আমি এটি ডিভাইস বিভাগে ব্যবহার করেছি: অপশন "কাস্টমডিআইডি" "সিআরটি -0: /etc/X11/edid-StarLight-170418_gb-nv-gf-650-GTX-VGA.bin" আমাকে নিজেই EDID সরবরাহ করতে হবে যেহেতু এটি 10 ​​মিটার দীর্ঘ ভিজিএ কেবলটি সঠিকভাবে পড়া যায় না। "ডিসপ্লেসাইজ" সেট করা আমার পক্ষেও কার্যকর ছিল।
ডিলিয়ান কুরস্তেভ

3

এডিড-ডিকোড নামে একটি সরঞ্জামের সাম্প্রতিক সংস্করণটি EDID সম্পর্কিত তথ্য পার্স করতে পারে এবং এটি পাঠ্য এবং বাইনারি EDID ফাইলগুলি পড়তে এবং লিখতে পারে। এটি আউটপুট উপর ভাল কাজ করে xrandr --verbose। উদাহরণস্বরূপ, এটি একটি বাইনারি ফাইলে EDID সংরক্ষণ করতে ব্যবহার করা যেতে পারে:

xrandr --verbose | edid-decode - /file/to/save

ফেডোরা ২ 27 (প্যাকেজ: xorg-x11-utils) এর সাথে আসা এডিড-ডিকোডের সংস্করণটি খুব পুরানো এবং এটি পুরোপুরি কার্যকর হয় না। আমি সবচেয়ে সাম্প্রতিক সংস্করণ ব্যবহার করেছি ।


2

বাইনারি ফর্মের মধ্যে EDID পাওয়া যায় /sys/class/drm/card%d-%s/edid, যেখানে %dডিআরএম ডিভাইস সূচক (সম্ভবত একটি জিপিইউ সূচক) উপস্থাপন করে এবং %sআপনি একটি xrandrআউটপুট দেখতে পান এমন একটি সংযোগকারী আইডি ।

সমস্ত উপলব্ধ তালিকাবদ্ধ করতে, চালান ls -1 /sys/class/drm/*/edid

যদি আপনার জিপিইউ ড্রাইভার ডিআরএম সমর্থন করে না, আপনি এইভাবে ইডিআইডি পেতে সক্ষম হবেন না।

হেক্স আকারে দেখতে, hexdumpএটি চালান ।

আপনি যদি মানব-পঠনযোগ্য ফর্ম চান তবে এটিতে প্রবেশ করুন edid-decode, যেমন:

cat /sys/class/drm/card0-eDP-1/edid | edid-decode

(আপনাকে sudo apt install edid-decodeউবুন্টুর জন্য আপনার প্যাকেজ ম্যানেজার ব্যবহার করে এটি ইনস্টল করার প্রয়োজন হতে পারে )


আপনি কিভাবে এটি পাস edid-decode? এছাড়াও নোট করুন যে সংযোগ বিচ্ছিন্ন মনিটরের জন্য সাব-ডিরেক্টরি রয়েছে।
WinEunuuchs2 ইউনিক্স

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