Video Treiber für Odroid-N2+ (softhdodroid)

  • CPU-Last ist auf dem Server bei Nutzung von UHD Streamdev-Verbindungen nicht höher, als bei SD/HD Sendern. Könnte also wenn dann nur ein Problem im VTP Streaming sein, was ich nicht glaube (sonst hätten das schon andere berichtet). Ich mache nachher dennoch einen Versuch mit meinem Sundtek DVB-S USB Stick und wenn das Problem noch da ist, schleppe ich den Odroid zum UHD TV. Spätestens da müsste es dann gehen.


    Frage: zum Betrieb am UHD TV wäre nur ein hdmimode=2160p50hz in config.ini einzutragen oder ist noch ein setzen der Auflösung per /sys/class/display/mode notwendig?

  • Das setzen in der config.ini sollte genügen. Du siehst ja vermutlich am TV welche Auflösung eingestellt wird. Falls es im config.ini nicht reicht

    dannmusst du es noch über /sys/class/display/mode machen. Ich mach es immer beim starten darüber.


    Zurück zu deinem UHD Problem. Die Auflösung am TV ist für UHD völlig egal. Der Odroid skaliert dahin was auch immer im mode eingestellt ist.

    Die UHD Sender senden in DD+. Falls du also passtrough eingeschaltest hast dann sollte dein TV das auch können. Ansonsten schalte bei DD+ mal das passtrough ab.


    Nachtrag:

    Bei 2160p50Hz solltest du eh noch ein

    Code
    echo 420,10bit >/sys/class/amhdmitx/amhdmitx0/attr

    machen damit du auch 10Bit Farben hast.

  • Das Audio Passthrough war das Problem. War wie oben in meinem setup.conf Auszug zu sehen eingeschaltet. Habe es nun ausgemacht und dachte, ich bekomme nun gar keinen Ton. Aber: nun bekomme ich ohne Passthrough bei UHD Sendern perfektes Bild und Ton. Leider habe ich damit bei meinem Test-Setup mit dem HD TV das oben geschriebene Problem bei manchen Senderrn (siehe meine Beitrag #707).


    Jetzt könnte es sein, dass sich der UHD TV hier auch beim Audio anders verhält und dann auf allen Sendern auch den Ton ausgibt. Somit teste ich nachher das ganze mal beim UHD TV.

  • Du kannst das passtrough doch nur für DD+ ausschalten. Dann sollte es bei den normalen HD Sendern keine Probleme geben.

    Dein UHD TV kann sicher auch DD+ mit passtrough.


    Falls Du aber noch andere Probleme hast, dann schildere sie doch bitte nochmal genauer.

  • Habe gerade am UHD TV getestet. Das Bild ist 1A auf den wenigen UHD Testkanälen. Das Verhalten bzgl. dem Ton ist das selbe wie beim HD TV. Ich muss Pass-through ausschalten (habe wie in setup.conf-Auszug ersichtlich nur AC-3 pass-through eingeschaltet, PCM und E-AC-3 war eh aus), damit Bild+Ton bei UHD ruckelfrei laufen. Eine Frage: ich starte vdr so: -P"softhdodroid -a hw:CARD=AMLAUGESOUND,DEV=0". Passt das für Standard Ton-Ausgabe via HDMI?


    Zum Tonproblem bei deaktivierten pass-through: ich habe eben keinen Sender gefunden, bei dem das Problem auftrat. Wie im Post #708 geschrieben, hatte ich bei deaktivierten pass-through im Log folgenden Eintrag bei nicht-funktionierenden Sendern codec: audio 'ATSC A/52A (AC-3)', bei den funktionierenden Sendern codec: audio 'MP2 (MPEG audio layer 2)'. Nicht funktionierend heisst in dem Fall überhaupt keinen Ton. Deshalb kam ich auch auf die pass-through Einstellung nur bei AC-3 auf yes.


    Da ich momentan keine relevanten UHD Sender habe, kann ich mit der "Krücke" leben, dass die UHD Sender hackeln. Zumindest das Tonproblem bei normalen Sendern hatte ich nach meiner Erinnerung bei softhddevice auf meinem ThinkCentre nicht. Kann gerne das und auch das Verhalten bei UHD Sendern mit ThinkCentre testen. Muss nur abwarten, glaube das "kein-Ton" Problem war damals abends bei einem Spielfilm.

  • Ich habe jetzt auch mal die Tanix TX3 an einen UHD-Monitor angeschlossen.

    In der config.ini habe ich keinen Mustereintrag für hdmimode gefunden, dafür

    Code
    # VOUT mode
    #   You can use this setting to set a specific video mode at boot.
    #
    vout='2160p50hz'

    Das habe ich dann mal wie oben auf 2160p50hz geändert. cat /sys/class/display/mode sagt auch 2160p50hz


    Wie kann ich jetzt kontrollieren, ob softhdodroid auch wirklich im 4k-Modus läuft? Diese Einträge verunsichern mich:



    anderseits:


    Code
    journalctl |grep 2160
    Nov 06 19:16:42 CoreELECTanixTX3 kernel: hdmitx: system: get current mode: 2160p50hz420
    Nov 06 19:18:37 CoreELECTanixTX3 kernel: fb: osd[0] canvas.height=2160
    Nov 06 19:18:40 CoreELECTanixTX3 vdr[26654]: aml ApiLevel = 2  Screen 3840-2160 using OSD dma: yes H264-PIP: 0 MPEG2 PIP 0

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • Meine Hauptaufnahmequelle ist DVB-T2 (USB Tuner: WinTV dualHD). Bei solchen Aufnahmen lassen sich Schnittmarken zwar versetzen, aber das Bild wird nicht aktualisiert. Die Marke kann so nicht genau an Film Ende/Anfang positioniert werden.

    Hier ein Aufnahmeschnipsel -> Dropbox Link


    Bitte schaue Dir das mal an.

  • Wie kann ich jetzt kontrollieren, ob softhdodroid auch wirklich im 4k-Modus läuft? Diese Einträge verunsichern mich:

    Die Einträge die du gepostet hast sind vom OSD. Das läuft immer auf 1920x1080 und wird bei der Ausgabe auf die Screensize skaliert.

    Die Screensize ist bei dir 3840x2160 siehe letzten Log Eintrag.

    Bei solchen Aufnahmen lassen sich Schnittmarken zwar versetzen, aber das Bild wird nicht aktualisiert. Die Marke kann so nicht genau an Film Ende/Anfang positioniert werden.

    Hier ein Aufnahmeschnipsel -> Dropbox Link


    Bitte schaue Dir das mal an.

    Ok ich schau mir das an.

  • Die Einträge die du gepostet hast sind vom OSD. Das läuft immer auf 1920x1080 und wird bei der Ausgabe auf die Screensize skaliert.

    Würde ein OSD in 4k nicht besser aussehen? Hast Du es evtl. deswegen nicht implementiert, weil es derzeit (meines Wissens nach) gar keine Skins in UHD-Größe gibt?

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • Ja die Skins können es nicht und es bringt auch kaum etwas an schärfe.

    So einfach ist das nicht.

    Die meisten Skins haben keine Begrenzung auf FullHD. Auch beim skindesigner habe ich vor einiger Zeit diese Begrenzung entfernt. Die OSD Größe kann in den Ausgabedevices eingestellt werden. Wenn es da 4K als Option gibt, sollte es gehen.

    Was es aber bisher wohl nicht gibt, ist ein auf 4K optimierter Skin. Und ob es bei Einstellung 4K mit den vorhandenen Skins einen Mehrwert gibt, muss man einfach ausprobieren. Man kann ja z.B. die Schriftgrößen anpassen und dann mehr Menüpunkte unterbringen, oder so...


    Grüße

    kamel5

    VDR 2.6.8: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.10 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Man kann ja z.B. die Schriftgrößen anpassen und dann mehr Menüpunkte unterbringen, oder so...

    Da der Screen bei 4k nicht grösser wird kann man auch nicht mehr Menüpunkte unterbringen. Die kleinere Schrift ist zwar wohl etwas schärfer aber dennoch kleiner und deswegen eher schlecht lesbar. Ich plane derzeit kein 4k OSD einzubauen.

  • Da der Screen bei 4k nicht grösser wird kann man auch nicht mehr Menüpunkte unterbringen.

    Ja gut, ich brauch das im Moment für meinen 32" FullHD Fernseher auch nicht. Wenn jemand aber einen 65", 75" oder noch größeren 4K Fernseher hat (das soll es ja geben :) ) lässt sich natürlich auch mehr lesbar unterbringen.


    Grüße

    kamel5

    VDR 2.6.8: ASUS Prime X470-PRO, Ryzen 7 5700X, 64GB, 6TB HD, GT1030, Fedora 39 Kernel 6.10 X86_64, Devicebonding 2 x 1 auf 2, TT6400, DVBSky S952 V3

    Git-Repo: gitlab.com/kamel5

  • Wenn jemand aber einen 65", 75" oder noch größeren 4K Fernseher hat (das soll es ja geben :) ) lässt sich natürlich auch mehr lesbar unterbringen.

    Oder man macht das OSD nicht mehr so groß, das es den gesamten Bildschirm ausfüllt, sondern nutzt für das OSD nur einen Teil der Bildfläche.

    Denn auf einem 65" oder auch 75" (hängt bei mir seit neuesten an der Wand) ist so ein großes OSD, was über den gesamten Bildschirm sich verteilt, schlechter lesbar bzw. überschaubar, weil der Text eben über eine sehr große Fläche verteilt ist. ;)


    Bei einem 32" monitor ist das ja wieder völlig anders. :)

  • Ich hatte kürzlich mal in Kodi bei der Wiedergabe eines Filmes mit etwas flauem Bild den Kontrast höhergeregelt. Nach dem Beenden der Wiedergabe und Rückkehr zu vdr stellte ich fest, dass die höhere Kontrasteinstellung immer noch aktiv war. Kodi hätte erst wieder beim nächsten Abspielen eines Films den Kontrast auf den Standardwert zurückgesetzt. Ich habe das zum Anlass genommen, dem Plugin mal Einstellungen für Helligkeit und Kontrast zu spendieren. Dabei werden die amlogic-internen Parameterwerte auf einen Regelbereich von 0 bis 100 umgesetzt. Also statt

    Code
    // output contrast range is -127 to 127 with default of 0. 
    // output brightness range is -255 to 255 with default of 0.

    ist jeweils eine Einstellung zwischen 0 und 100 bei default-Wert 50 möglich.


    Für Hue oder Saturation habe ich keine Einstellungsmöglichkeit gefunden. Der Kernel hat zwar

    Code
    /sys/class/amvecm/saturation_hue
    /sys/class/amvecm/saturation_hue_post
    /sys/class/amvecm/saturation_hue_pre
    /sys/class/video/saturation

    Aber egal was man für Werte setzt, es ändert sich nichts am Bild. Da Kodi für amlogic auch keine Änderungsmöglichkeiten für Farbton und Sättigung in seinen Videoeinstellungen anbietet, gehe ich davon aus, dass es keine gibt.


    Leider gibt es ein kleines Problem mit den bisher im Plugin enthaltenen (ungenutzten) Werten:

    Code
    static int ConfigVideoBrightness;       ///< config video brightness
    static int ConfigVideoContrast = 100;   ///< config video contrast

    Das hat zur Folge, dass jeder, der schon mal die Plugineinstellungen aufgerufen und mit ok verlassen hat, in seiner setup.conf bereits heute die Werte

    Code
    softhdodroid.Brightness = 0
    softhdodroid.Contrast = 100

    stehen hat. Danach richtet sich das um die Einstellungsmöglichkeit ergänzte Plugin nun natürlich und man erhält ein total unnatürlich wirkendes Bild. Da ich ahne, dass das zu etlichen Problemmeldungen führen würde, habe ich beim Einlesen der setup-Werte eine Prüfung eingebaut. Wenn Helligkeit 0 und und Kontrast 100 sind, wird unterstellt, dass das nicht gewollt sein kann und dass diese Kombination ein eindeutiges Indiz dafür ist, dass die Werte aus älteren Pluginversionen mit falschen default-Werten resultieren. Es werden dann stattdessen die Standardwerte = Mittelstellung (jeweils 50) gesetzt.


    Ich denke nicht, dass man mit den Einstellungen die Bildqualität noch groß verbessern kann. Die Standardwerte sind bereits optimal, Nachjustierungen sollten m.E. am TV erfolgen. Die neuen Pluginparameter erlauben es aber nun, in Kodi für schlecht codierte Filme die Einstellungen bei Bedarf zu ändern. Bei Rückkehr zu vdr werden dann wieder die Plugin-Werte (in der Praxis wohl 50) gesetzt. Hat man in vdr einen abweichenden Wert konfiguriert, ist das auch kein Problem, denn Kodi setzt beim Abspielen eines Filmes den Wert immer auf Treiber-default zurück.


    Getestet habe ich das mit S905X3 (Tanix TX3) und S922X (Odroid N2+) . Die Kernelparameter /sys/class/amvecm/contrast1 und /sys/class/amvecm/brightness1 werden auch von Kodi in AMLCodec.cpp verwandt und sollten somit auch bei anderen aml-Chipsätzen funktionieren, soweit diese von softhdodroid unterstützt werden.

  • An dem Problem das manchmal der Ton fehlt suche ich noch. Wenn er mal weg ist dann kommt er auch nicht wieder. Dann muss ich den vdr neu starten um Ton zu bekommen. Muss also wohl am softhdodroid liegen :)

    Hast du schon eine Idee dazu? Ich hätte ja erwartet, daß dann bei einem Senderwechsel der Ton wieder kommt (Initialisierung und so). Aber der bleibt tatsächlich weg.

  • Hast du schon eine Idee dazu? Ich hätte ja erwartet, daß dann bei einem Senderwechsel der Ton wieder kommt (Initialisierung und so). Aber der bleibt tatsächlich weg.

    Das Problem kenne ich so bisher nicht. Wann hatte jojo das gepostet? Tritt das aktuell wirklich noch auf?

    Ich meine mich allerdings zu erinnern, dass -warum auch immer- ab und an in den vdr-Einstellungen die Lautstärke auf 0 gesetzt war - obwohl ich die Lautstärke gar nicht über den vdr regele. Ein vdr-Restart hat dann solange nichts geholfen, bis ich in den vdr-Einstellungen die Lautstärke auf 100% beim Start gesetzt hatte (InitialVolume = 255). Aber das ist wahrscheinlich ein anderes Problem.

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!