Comments (5)
I have modified the EDID report output to replace any character having value 127 with the string "", where HH is the hex value of the character.
from ddcutil.
I should add that if edid text fields are always suppose to decode to ASCII and not UTF-8, perhaps any invalid ASCII characters could just be filtered out or replaced.
from ddcutil.
As per the VESA ENHANCED EXTENDED DISPLAY IDENTIFICATION DATA STANDARD (Defines EDID Structure Version 1, Revision 4) Release A, Revision 2 September 25, 2006 the contents of Alphanumeric Data String Descriptor Definition (tag #FE), which ddcutil refers to as the Extra Descriptor, consists of ASCII characters. This is also documented as code page 437 in the EDID Display Descriptors section of the Wikipedia EDID page.
This descriptor is reported in the EDID summary for purely informational purposes. Usually it is blank. If we are occasionally seeing non-ASCII characters in the string, the simplest solution woud be to simply not report the field.
from ddcutil.
Further, slightly more awake comments. What the EDID spec considers as ASCII is defined in its Appendix E - ASCII Reference Tables. Table ASCII-II, which defines code points x80..xFF, indeed appears to be identical to Microsoft Code Page 437, as stated in the Wikipedia spec. In that table, x80 is defined as C-Cedilla. The string in question is not UTF-8 encoded. x80 would only appear as the 2nd, 3rd or 4th byte of a multi-byte character encoding. In ISO 8859-1, x80 is undefined and in a range reserved for control characters.
In any event, the x80 is probably just someone's sloppiness or an attempt at a clever encoding that only their software understood. ddcutil could emit a character sequence such as "" for characters in the range x80..xFF, but as I noted for our purposes the Extra Descriptor is just a curiosity and not worth a lot off effort. On the other hand, if a character in the range x80..xFF appeared in a model name or serial number that would be problematic.
As it happens, there was a time I swam in the character encoding swamp. I attended several of the early Unicode Technical Committee meetings on behalf of the Research Libraries Group for which I did work at the time. Their cross-library database allowed for cataloging materials using most of the world's scripts (Latin, Cerillic, Hebrew, Arabic, Chinese, Japanese, and Korean, IIRC). The notable exception was Devanagari.
from ddcutil.
Because I've dealt with this in vdu_controls
, I don't have any issues with what the ddcutil
command produces.
For ddcutil-dbus-server
I'm currently filtering text fields to remove bad UTF-8, but I will simplify that to filter non-printable ASCII.
As it happens, there was a time I swam in the character encoding swamp. I attended several of the early Unicode Technical Committee meetings on behalf of the Research Libraries Group for which I did work at the time. Their cross-library database allowed for cataloging materials using most of the world's scripts (Latin, Cerillic, Hebrew, Arabic, Chinese, Japanese, and Korean, IIRC). The notable exception was Devanagari.
Down here in NZ, many of my clients had not even progressed beyond uppercase EBCDIC/ASCII.
from ddcutil.
Related Issues (20)
- "Display not found" when using model / sn / mfg flags on ddcutil 2.1.4 HOT 2
- ddcutil 2.1.4 - display not found; ddcutil 1.4.1 works HOT 4
- ddcutil Fails to Detect EDID on New Ubuntu System with AOpen Monitor HOT 1
- TEMPORARY ALTERNATIVE REPOS HOT 1
- Does this work with Alienware AW3423DW?
- libddcutil ddca_get_display_info_list2 returns DDCRC_OTHER (-3022) HOT 2
- libddcutil behaves differently/fails after a hotplug compared to ddcutil HOT 2
- Bricked LG Monitor HOT 6
- Ubuntu 24.04 LTS prebuild package HOT 2
- Unable to set input source on Gigabyte M27Q HOT 2
- Failed assertion in check_video_adapters_list_implements_drm HOT 1
- Small suggestion for ddcutil documentation on the website HOT 1
- Dell UltraSharp 2209WAf: DDC communication failed HOT 8
- Ubuntu and Debian packages in OBS are missing libddcutil.so.x.x.x HOT 2
- Enhancement - consider packaging module loading HOT 2
- "Keeping adjust sleep multiplier" warning shown many times HOT 1
- Monitor resets many times on boot after new udev rule installed HOT 9
- System cannot enter S0ix sleep after running ddcutil detect HOT 6
- No (DisplayLink) displays found on 2.1.4, but works on 2.0.0 HOT 6
- ddcutil 2.1.4-1: DDC communication failed HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ddcutil.