Vnutit linuxovému kernelu (jeho Direct Rendering subsystému) aby držel konkrétní video port zapnutý, a dokonce v konkrétním rozlišení, lze poměrně triviálně argumentem video= na kernel command line, jak už psal @k3dAR. Akorát pořizovat lokální klon EDIDu mi přijde jako kanón na vrabce a potenciálně "more rope to hang yourself with", pokud si třeba pořídíte jinou televizi apod. Tento hodnotící soud je ale dost nejednoznačný, ještě se k tomu vrátím na konci.
Zmíněnému argumentu video= se dá nacpat prostě jenom žádané rozlišení a snímková obnovovací frekvence.
video=HDMI-A-2:1920x1080@50D
Řetězec HDMI-A-2 je jméno výstupního portu. V dnešním PC jich bývá na výběr víc. XWindows používá mírně jiná jména než linuxový kernel (DRM). Pro použití v kernel command line mohu např. doporučit, jednou na začátku při zprovozňování konfigurace přidat na kernel command line zaklínadlo drm.debug=0xe , a pak se podívat v dmesg, jaké výstupy si DRM subsystém sám automaticky našel a jak jim říká. A zvolený pak použít v zaklínadle video= .
50 za zavináčem znamená 50 Hz. Není přítomno "i", takže neprokládaných. A poslední písmenko D znamená "výstup natvrdo zapnout, ignorovat detekci připojeného monitoru a jet digitálně" (asi protože DVI-A umí alternativně analog VGA). Varianta od k3dARa má na konci "e", což znamená prakticky totéž = natvrdo zapnout výstup (a funguje i na analog VGA).
K tomu dokumentace:
https://www.kernel.org/doc/Documentation/fb/modedb.txtNásledně XWindows mají svoji vlastní databázi režimů a režim z kernelu nepřevezmou. A dá se nacpat modeline do xorg.conf. Což je asi nakonec užitečné. Ona totiž geometrie videorežimu není jednoznačně daná rozlišením - a u full HD a UHD existují např. nuance mezi "počítačovým" videorežimem dle CVT a "Consumer Electronics" variantou téhož rozlišení... televize bude patrně preferovat CE režim. Použití "počítačové" CVT varianty videorežimu (nebo nějaké vlastní tvorby) může mít všelijaké důsledky. Třeba mně se občas cukalo přehrávání videa - asi jsem přesně netrefil pixel clock. Později jsem vygooglil modeline, která funguje bez cukání. Nebo (teoreticky) pokud tohle televize rozliší, mohla by na CE režim nasadit jinou sadu "vylepšovacích" filtrů, než na CVT režim (scale + crop, zvýraznění hran, zvýšení saturace barev). Zde bych zaslepil případnou odbočku na téma, "jak zabránit televizi ve vylepšování obrazu na vstupu od počítače".
Obecně mechanika videorežimu nechává autorovi v jistých mezích volnou ruku, kolik řádek a sloupců ponechá na "temné místo" a jakou přesně frekvenci použije na základní pixel clock. Typické geometrie CVT vs. CE (nebo třeba starobylé GTF) jsou jenom konkrétní standardní "souřadnice" v tom nepříliš jasně ohraničeném prostoru přípustných kombinací... Ve velmi obecné rovině "co je správně a co už je za čárou" posuzuje každý monitor či televize podle svého a výrobce zobrazovacího zařízení nemá podrobnosti nikde dokumentovány...
V této souvislosti, pokud Vám tahle bezbřehá svoboda nevyhovuje, tak použijte postup, který popsal @k3dAR: zazálohujte si EDID, který kernel koupil od Vaší reálné televize, a prostě ho vnuťte při bootu natvrdo ze souboru. Tohle by se mělo televizi přesně líbit. Taky by ten EDID s trochou štěstí mohly z kernelu zdědit Xwindows.
Nebo si vygooglete standardní CE modeline pro žádané televizní rozlišení - to by teoreticky mělo chutnat kterékoli televizi. Nebo zřejmě by se aktuální modeline měla dát i zjistit za jízdy (xrandr nebo tak něco).
Deníček z mých vlastních pokusů před pár lety:
https://frr.g6.cz/htpc/htpc.htm#k-cmdŘešil jsem tehdy, že počítače tíhnou spíš k 60Hz refreshi, což je cca soudělné s americkou TV normou NTSC, kdežto u nás PAL má tradičně 50i, tzn. pro přehrávání televize dává o měličko lepší smysl 50 Hz (i neprokládaných). Je mimochodem zábavné, že většina historického materiálu u nás je zaznamenána v PAL@50i, ale rozhodlo se, že HD streamy v rámci DVB-T2 budou u nás vysílány v 1080@50p. Přitom mnoho zemí a satelitních HD kanálů vysílá 1080@50i, a v době přechodu na T2 mnohé starší full HD televize 50p neuměly, resp. tuto schopnost neoznamovaly ve svých EDID - takže když člověk připojil STB, tak on převáděl 1080p zpátky na 1080i, aby ho mohl poslat televizi... Navazuje nekonečná debata o algoritmech správného deinterlacingu, kompenzaci pohybu, závěrky atd.
Reálně nejen v internetech, ale i v některých televizních pořadech (!) potkáte materiál, který byl někde cestou od kamery skrz záznam a prodej / předání do studia lajdácky konvertován mezi nesoudělnými snímkovými kmitočty a už mu nejde pomoct (cuká ale nezabere na něj IVTC apod.) A dnešní ploché televizní přijímače zcela rutinně materiál ve formátu 1920x1080 o pár procent natáhnou a oříznou, což je zvyk zděděný z dřívějších analogových dob, kdy těsně na hraně temného místa bylo přenášeno pár bajtů nějakých metadat, a bez ořezu se to vrtělo na prvním viditelném řádku nebo tak něco... takže tomu zcela zbytečnému ořezu jdou dnešní vysílací pracoviště "naproti" tím, že materiál předem o pár procent smrští, aby na obrazovku hezky pasoval... takže přesné rozlišení 1920x1080 nikdy nedosáhnete, obraz je naschvál mírně mázlý, aby ty několikanásobné nesoudělné konverze nebyly vidět... A televizní přijímače už poměrně dlouho umí všelijaké vylepšovače typu "inference ostrého rozlišení z pomalu se pohybující scény" (takže občas z té mazanice na okamžik "vyskočí obraz jako břitva") nebo TV interně umí poslat na stínítko násobek Hertzů co má materiál, a aby to vůbec k něčemu bylo, tak televize umí i nádherně interpolovat pohyb, takže se pak starý filmový materiál pohybuje jak čerstvý záznam z televizního studia nejmodernější technikou apod.