Wo kommen unter http://yavdr/admin/#settings-hw-display die Infos für 'Display:' und 'Device:' her, oder auch, wie funktioniert 'Rescan displays'? Geht das auch aus einem Script heraus?
Wie werden Display + Device -Info im WFE ermittelt?
-
-
Wo kommen unter http://yavdr/admin/#settings-hw-display die Infos für 'Display:' und 'Device:' her, oder auch, wie funktioniert 'Rescan displays'? Geht das auch aus einem Script heraus?
EDID!? Sollte in EPROM vom "Device" stehen.Albert
-
-
wie funktioniert 'Rescan displays'?
Was da passiert kannst du auf deinem System auch nachverfolgen - Fang mit den Skripten unter /usr/share/yavdr/events/rescan-display an und folge deren Inhalten.Geht das auch aus einem Script heraus?
Ja. Dafür haben wir ja AFAIK "signal-event <event>" -
Fett! Oh man, wieder was zum durchwursteln. Warum kann das nix scriptiges wie 'get-edid | parse-edid' out off the box...?
-
Fett! Oh man, wieder was zum durchwursteln. Warum kann das nix scriptiges wie 'get-edid | parse-edid' out off the box...?
Warum sollte es das können?Gerald
-
Fett! Oh man, wieder was zum durchwursteln. Warum kann das nix scriptiges wie 'get-edid | parse-edid' out off the box...?
Kommt drauf an, was genau du wissen willst.
Manches bekommst du schon mit nvidia-settings -- query, manches durch startx --logverbose 6
Speziell zum lesen der edid gibt's noch sowas:
Hab's aber nicht selbst ausprobiert. -
Kommt drauf an, was genau du wissen willst.
Ich möchte nur heraus bekommen, ob der an der Graka. hängende TV (und/oder Beamer) tatsächlich an ist, oder nicht. Wenn nicht als Event (udev-Regel), dann eben pollen. Aber z.B. 'get-edid | parse-edid' liefert das selbe, ob der TV nun an ist, oder nicht. Die Abfrage wird also dummer Weise irgend wie gepuffert!? -
AFAIK kann man an einer Grafikkarte nicht erkennen ob ein angeschlossenes VGA/HDMI/DVI-Gerät an oder aus ist...
-
AFAIK kann man an einer Grafikkarte nicht erkennen ob ein angeschlossenes VGA/HDMI/DVI-Gerät an oder aus ist...
Sicher geht das. Zumindest erkenn 'Rescan displays' ja, an welchem Ausgang welches Gerät (TV oder Beamer) hängt und kann (im Gegensatz zu 'get-edid | parse-edid' & Co.) sogar die richtige Typbezeichnung ermitteln. Sobald ich TV oder Beamer abschalte wird auch richtig erkannt, dass nur noch ein Gerät aktiv ist. Ab dem letzten abgeschalteten Gerät bleibt die Info. dann allerdings konstant. Da wird m.E. dann einfach die letzte Info. weiter verwendet. Zusätzliches Indiz: Stecke ich den TV vom DVI auf HDMI um, wechselt nach ein paar Sekunden sogar die Anzeige auf den anderen Ausgang der Graka.
Aber wenn das in Software nicht geht, dann muss ich es halt in Hardware machen. Braucht's halt noch 'ne (unnötige) Strippe in den Keller.
-
Moin Moin,
ZitatIch möchte nur heraus bekommen, ob der an der Graka. hängende TV (und/oder Beamer) tatsächlich an ist, oder nicht.
Wenn du da was rausbekommst, lass es uns bitte wissen, mich wuerde auch sehr interessieren, ob man da irgendwie einen TVonStatus abfragen kann.
-
Irgendwie muss das ja gehe. Im dmesg sehe ich zum besipiel
Code[ 6.980005] HDMI status: Codec=0 Pin=4 Presence_Detect=0 ELD_Valid=0 [ 6.988004] HDMI status: Codec=0 Pin=5 Presence_Detect=0 ELD_Valid=0
Und im Syslog später
Code
Alles anzeigenMay 1 13:11:43 vdr kernel: [ 22.409435] HDMI hot plug event: Codec=0 Pin=5 Presence_Detect=1 ELD_Valid=0 May 1 13:11:43 vdr kernel: [ 22.416182] HDMI status: Codec=0 Pin=5 Presence_Detect=1 ELD_Valid=0 May 1 13:11:43 vdr kernel: [ 22.436931] HDMI hot plug event: Codec=0 Pin=5 Presence_Detect=0 ELD_Valid=1 May 1 13:11:43 vdr kernel: [ 22.444012] HDMI status: Codec=0 Pin=5 Presence_Detect=1 ELD_Valid=1 May 1 13:11:44 vdr kernel: [ 23.212014] HDMI: detected monitor TX-SR608 May 1 13:11:44 vdr kernel: [ 23.212015] at connection type HDMI May 1 13:11:44 vdr kernel: [ 23.212024] HDMI: available speakers: FL/FR LFE FC RL/RR RLC/RRC May 1 13:11:44 vdr kernel: [ 23.212029] HDMI: supports coding type LPCM: channels = 2, rates = 32000 44100 48000 96000 176400 192000 384000, bits = 16 20 24 May 1 13:11:44 vdr kernel: [ 23.212033] HDMI: supports coding type LPCM: channels = 8, rates = 32000 44100 48000 96000 176400 192000 384000, bits = 16 20 24 May 1 13:11:44 vdr kernel: [ 23.212036] HDMI: supports coding type AC-3: channels = 8, rates = 32000 44100 48000, max bitrate = 640000 May 1 13:11:44 vdr kernel: [ 23.212039] HDMI: supports coding type DTS: channels = 8, rates = 44100 48000, max bitrate = 1536000 May 1 13:11:44 vdr kernel: [ 23.212042] HDMI: supports coding type DSD (One Bit Audio): channels = 6, rates = 44100 May 1 13:11:44 vdr kernel: [ 23.212044] HDMI: supports coding type E-AC-3/DD+ (Dolby Digital Plus): channels = 8, rates = 44100 48000 May 1 13:11:44 vdr kernel: [ 23.212047] HDMI: supports coding type DTS-HD: channels = 8, rates = 44100 48000 96000 176400 192000 384000 May 1 13:11:44 vdr kernel: [ 23.212050] HDMI: supports coding type MLP (Dolby TrueHD): channels = 8, rates = 48000 176400 384000
Presence_Detect=0 oder Presence_Detect=1 ist das was Du suchst? Die Frage ist einfach, woher kommen diese Logeinträge? Von alsa? Vom XServer? Vom NvidiaTreiber?
In einem anderen Forum habe ich sowas gefunden.
hdmi_status=$(cat /sys/class/drm/card0-HDMI-A-1/status)
Geht leider nicht mit dem NVidia Treiber.
-
Was gehen sollte, ist der Weg über i2c, aber Infos dazu zu finden, geschweige denn Dokus 8(
(damit keine Missverständnisse aufkommen: Dokus zu i2c gibt's reichlich, aber was man auf welchem der i2c-busse, die nvidia anbietet an welche Adresse schreiben muss, um irgendwas zu erreichen...)Hab's mal kurz angetestet, auch per i2c meldet der Grafikchip noch den bereits ausgeschalteten Monitor:
Ab dem letzten abgeschalteten Gerät bleibt die Info. dann allerdings konstant.
Ist wohl ein feature von Nvidia.
Vermutlich könnte man da viel mehr rausholen (sensors-detect/lmsensors macht's ja auch so oder ähnlich), aber ohne Doku is mir das zu blöd. -
Dachte ja hiermit ginge es:
ftp://download.nvidia.com/XFre…_verify_your_eld_is_valid
Aber anscheinend nur, wenn ich denk XServer nach anschalten des Gerätes starte. Ansonsten tut sich da nichts.
Vor dem Start
Nach dem Start des XServers:
Code
Alles anzeigenroot@vdr:~# cat /proc/asound/card1/eld#0.1 monitor_present 1 eld_valid 1 monitor_name TX-SR608 connection_type HDMI eld_version [0x2] CEA-861D or below edid_version [0x3] CEA-861-B, C or D manufacture_id 0xcb3d product_id 0xa62 port_id 0x20000 support_hdcp 0 support_ai 0 audio_sync_delay 0 speakers [0x4f] FL/FR LFE FC RL/RR RLC/RRC sad_count 8 sad0_coding_type [0x1] LPCM sad0_channels 2 sad0_rates [0x1ee0] 32000 44100 48000 96000 176400 192000 384000 sad0_bits [0xe0000] 16 20 24 sad1_coding_type [0x1] LPCM sad1_channels 8 sad1_rates [0x1ee0] 32000 44100 48000 96000 176400 192000 384000 sad1_bits [0xe0000] 16 20 24 sad2_coding_type [0x2] AC-3 sad2_channels 8 sad2_rates [0xe0] 32000 44100 48000 sad2_max_bitrate 640000 sad3_coding_type [0x7] DTS sad3_channels 8 sad3_rates [0xc0] 44100 48000 sad3_max_bitrate 1536000 sad4_coding_type [0x9] DSD (One Bit Audio) sad4_channels 6 sad4_rates [0x40] 44100 sad5_coding_type [0xa] E-AC-3/DD+ (Dolby Digital Plus) sad5_channels 8 sad5_rates [0xc0] 44100 48000 sad6_coding_type [0xb] DTS-HD sad6_channels 8 sad6_rates [0x1ec0] 44100 48000 96000 176400 192000 384000 sad7_coding_type [0xc] MLP (Dolby TrueHD) sad7_channels 8 sad7_rates [0x1480] 48000 176400 384000
Also bei laufendem XServer kannst Du durchaus erkennen, welches Gerät angeschlossen ist.
-
Geht definitiv nicht abzufragen ohne Neustart des Xservers. Beim Rescan starten wir IMHO auch den Xserver neu (oder zumindest einen neuen Xserver - das müsste man verifizieren). HDMI-CEC wird ja leider nicht durchgereicht - darüber müsste es eigentlich gehen (pulse-eight ?)
-
Bin nach einer umfangreichen google*yaVDRscript-Session gestern Abend auch nicht weiter gekommen. Dann muss ich das halt doch in HW machen. Ist bislang m.E. auch die einzige Möglichkeit, ein sauberes 'wake on TV on' zu realisieren...
-
Hallo zusammen,
grade ist mir was eingefallen wie man den Status des TVs evtl. abfragen könnte
und zwar hat meiner eine Netzwerkbuchse und man kann ihm eine feste IP zuweisen,
da kann man was mit einem einfachen ping machen
Ist zwar ein bischen von hinten durch die brust ins auge, sollte aber klappen.
Ich werde mir morgen mal einen Switch besorgen und das ganze prüfen... -
Grüss dich boostar,
wie soll dann ein ausgabe gerät ohne Netzwerk(Beamer zb.) erkannt werden.
Ich kenne ganz weniger die Nezwerk haben,und genau das wollte ja poster realisieren.
MfG
-
Moin,
ja nee.. ohne Netzwerk geht das nicht.
Hatte ich nicht gesagt, das die Lösung nicht das gelbe vom Ei ist? -
Seahawk1986 hat einen Fernsteuerempfänger auf Arduino-Basis gebaut, der auf meinen Tipp hin mehrere verschiedene Einschalt-Codes kann. Welcher Einschaltcode gekommen ist, kann nach dem Boot abgefragt werden.
Idee:
1. Einschaltcode ist für VDR mit TFT. Der VDR wird eingeschaltet, fragt nach dem Boot den Empfänger ab und weiß er soll auf dem TFT ausgeben.
2. Einschaltcode ist für VDR mit Beamer, diesmal weiß der VDR er soll auf dem Beamer ausgeben.
3. Einschaltcode ist für TV mit XBMC-Betrieb.
4. Einschaltcode ist für XBMC auf dem kleinen TFT im Gehäuse für Musik-Wiedergabe
....Das lässt sich wunderbar mit den verschieden Aktivitäten einer Harmony FB realisieren.
Gerald
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!