kein Bild beim nachträglichem TV einschalten

  • Hallo zusammen.


    Habe ein Problem beim verspäteten Einschalten des Fernsehers. Da kommt leider kein Bild.
    Schalte ich den Fernseher vor dem VDR-Rechner ein, ist alles prima.
    Beim nachträglichem Einschalten bekomme ich zwar mit

    Code
    1. xrandr -d :0 --output HDMI2 --mode 1920x1080 --rate 50


    wieder ein Bild, aber das kann ja nur ein Notbehelf sein.


    Das Problem liegt wohl daran, dass mein Fernseher nicht direkt am VDR-Rechner hängt sondern am AV-Receiver.
    So kann der Rechner die EDID-Infos nicht auslesen. Ich habe den Fernseher auch mal direkt an den VDR-Rechner angeschlossen.
    Da gibt es keine Probleme mit dem verspätetem Einschalten.


    Weiss jemand eine Möglichkeit, wie ich den X-Server überreden kann, auf die EDID-Erkennung zu verzichten und den HDMI-Ausgang immer anzusteuern?
    Ich habe schon mit verschiedenen Optionen in einer von mir erstellten /usr/share/X11/xorg.conf.d/10-monitor.conf experimentiert. Leider ohne Erfolg.


    Gruß
    Jürgen

    Files

    Asrock H81M-HDS, Pentium G3220, DVBSky S952, 2x 2GB Kingston DDR3-RAM, WD Red 2TB-HD, DVD Plextor PX-891SA, Gehäuse AOpen HT80D
    Lubuntu 16.04 (64Bit) mit Kernel 4.4.0-31-generic, VDR 2.2.0

  • Du kannst die EDID-Informationen des Monitor/TV auslesen und ihre Nutzung erzwingen, siehe z.B. http://vdr-wiki.de/wiki/index.…abe_.C3.BCber_Grafikkarte

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Du kannst die EDID-Informationen des Monitor/TV auslesen und ihre Nutzung erzwingen, siehe z.B. http://vdr-wiki.de/wiki/index.…abe_.C3.BCber_Grafikkarte


    Die EDID-Infos vom Fernseher konnte ich auslesen und in einer Datei speichern.
    In die 10-monitor.conf habe in der Screen-Section folgendes ergänzt:
    Option "CustomEDID" "/home/juergen/edid.bin"


    Leider kennt der Intel-Treiber diese Option nicht. Im Xorg-Log war nämlich folgende Zeile zu finden:

    Code
    1. [7530.832] (WW) intel(0): Option "CustomEDID" is not used


    Trotzdem Danke für den Tip.

    Asrock H81M-HDS, Pentium G3220, DVBSky S952, 2x 2GB Kingston DDR3-RAM, WD Red 2TB-HD, DVD Plextor PX-891SA, Gehäuse AOpen HT80D
    Lubuntu 16.04 (64Bit) mit Kernel 4.4.0-31-generic, VDR 2.2.0

  • Ah ok, das mit der Intel-Grafik hatte ich nicht gesehen - dann könntest du es über die Kernel Mode Settings versuchen: https://wiki.archlinux.org/ind…ng#Forcing_modes_and_EDID

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Habe mir das Verzeichnis /usr/lib/firmware erstell und darin die EDID-Infos als 1920x1080.bin hineinkopiert.


    Dann in /etc/default/grub an die Zeile
    GRUB_CMDLINE_LINUX_DEFAULT
    den Parameter
    drm_kms_helper.edid_firmware=edid/1920x1080.bin
    angefügt.


    Neu gestartet.
    Leider schon mit TV kein Ton über HDMI.
    Ohne TV auch kein Bild.
    Wenn ich die von dir verlinkte Seite richtig verstanden habe, gelten diese Einstellungen nur für die virtuellen Konsolen und nicht für das X-Window-System.
    Aber einen Versuch wars trotzdem wert.


    Ich habe jetzt versuchsweise getestet ob das Ein-/Ausschalten des TV's vom UDEV-System erkannt wird:

    Code
    1. sudo udevadm monitor
    2. monitor will print the received events for:
    3. UDEV - the event which udev sends out after rule processing
    4. KERNEL - the kernel uevent
    5. #TV ausgeschaltet
    6. KERNEL[9352.330358] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
    7. UDEV [9352.332299] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
    8. #TV eingeschaltet
    9. KERNEL[9370.221225] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
    10. UDEV [9370.223268] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)


    Werde versuchen, eine UDEV-Regel zu erstellen, so dass beim Einschalten per xrandr-Befehl den TV in die richtige Auflösung geht.
    Weiterer Bericht folgt die nächsten Tage...

    Asrock H81M-HDS, Pentium G3220, DVBSky S952, 2x 2GB Kingston DDR3-RAM, WD Red 2TB-HD, DVD Plextor PX-891SA, Gehäuse AOpen HT80D
    Lubuntu 16.04 (64Bit) mit Kernel 4.4.0-31-generic, VDR 2.2.0

  • Die EDID-Infos vom Fernseher konnte ich auslesen und in einer Datei speichern.
    In die 10-monitor.conf habe in der Screen-Section folgendes ergänzt


    Wird das nicht direkt in die /etc/X11/xorg.conf eingetragen? X dürfte es doch egal sein, ob da nVidia oder Intel werkelt... Außerdem gibts hier überhaupt keine xorg.conf.d/irgendwas


    Bei mir steht in der xorg.conf (unter /etc/X11/xorg.conf):

    Code
    1. Section "Screen"
    2. ....
    3. Option "CustomEDID" "DFP-1:/etc/X11/edid.bin"
    4. SubSection "Display"
    5. Depth 24
    6. EndSubSection
    7. EndSection


    Ob DFP-0 oder DFP-1, hängt von deiner Hardware ab. Die erzeugte edid.bin liegt logischerweise in /etc/X11


    BJ1

  • Auf meinem VDR-Rechner gibt es keine /etc/X11/xorg.conf. Alle X11-Konfigurationen sind auf meinem Lubuntu 13.10 in /usr/share/X11/xorg.conf.d/ auf einzelne Dateien verteilt.
    Darin befinden sich im Urzustand nur Konfig-Dateien für Eingabegeräte.
    Das ist auf meinem Arbeitsplatzrechner mit Ubuntu 12.04 genauso.
    Die einzelnen Optionen in den X11-Konfig-Dateien sind sowohl treiberspezifisch als auch treiberunabhängig.
    Hier die Seite für Nvidia: [url]http://http.download.nvidia.com/XFree86/Linux-x86/1.0-8762/README/appendix-d.html[/url]
    Hier die Seite für Intel: [url]http://www.x.org/archive/X11R7.5/doc/man/man4/intel.4.html[/url]

    Asrock H81M-HDS, Pentium G3220, DVBSky S952, 2x 2GB Kingston DDR3-RAM, WD Red 2TB-HD, DVD Plextor PX-891SA, Gehäuse AOpen HT80D
    Lubuntu 16.04 (64Bit) mit Kernel 4.4.0-31-generic, VDR 2.2.0

  • Die UDEV-Regel /etc/udev/rules.d/70-persistent-monitor.rules habe ich eingerichtet:

    Code
    1. KERNEL=="card0", SUBSYSTEM=="drm", ACTION=="change", RUN+="/home/juergen/hdmi-resync"


    Das Script hdmi-resync sieht so aus:

    Shell-Script
    1. #!/bin/sh
    2. xrandr -d :0 --output HDMI2 --mode 1920x1080 --rate 50


    Damit bekomme ich beim nachträglichem Einschalten des TV zwar ein Bild, aber keinen Ton.
    Schalte ich meinen AV-Receiver auf einen anderen Eingang und dann wieder zurück auf den VDR-PC ist zwar Ton da.
    Dieser ist aber seltsam verzerrt: Es gibt ca. alle 2 Sekunden eine Pause für 0,2 Sekunden. In der restlichen Zeit wird dann die Ausgabe nachgeholt.
    Dadurch sind die Stimmen dann zu hoch. Für kurze Zeit ist das ja ganz lustig, aber ich möchte doch gerne ein normale Tonwiedergabe.


    Diese seltsame Tonwiedergabe habe ich auch wenn ich das X11-System mit sudo restart lightdm neu starte.

    Asrock H81M-HDS, Pentium G3220, DVBSky S952, 2x 2GB Kingston DDR3-RAM, WD Red 2TB-HD, DVD Plextor PX-891SA, Gehäuse AOpen HT80D
    Lubuntu 16.04 (64Bit) mit Kernel 4.4.0-31-generic, VDR 2.2.0