softhdcuvid/softhdvaapi/softhddrm with hevc and UHD

  • Hi


    I finally found time to put the softhddevice with HEVC support to github. It is still work in progress, but I think it is time for the public.
    You can download it from https://github.com/jojo61/vdr-plugin-softhddevice


    Please provide feedback here in this thread.


    mfg
    Jojo61


    Edit:

    Das Plugin wird nun hier weiterentwickelt.

    https://github.com/jojo61/vdr-plugin-softhcuvid

  • Läuft bei mir, super


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Mit welcher Quelle hast Du es denn getestet, DVB-T2?


    Ja, weitere Tests folgen. UHD habe ich nicht.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Mal nen kurzen Test mit GTX 950 gemacht.


    Erst mal das Positive:


    DVB-T2 Das Erste HD


    xineliboutput cpulast 60%
    softhddevice cpulast 1-5%


    Dann das Negative:


    Schneideversuch Markierung anspringen (7, 9) Crash.


    Im Produktionssystem werde ich es wohl noch nicht einspielen.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Kann ich machen.


    Ich bekomme öfters die Meldung:


    Code
    vdr[6056]: video/vdpau: can't render mixer: The set of handles supplied are not all related to the same VdpDevice.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • logauszug mit debug:



    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Interessant wäre, ob jojo61 den Fehler reproduzieren kann.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Ja das war mein erster Kontakt mit git. Sorry wenn da chaos ist. Für einen Tipp zum aufräumen wäre ich dankbar


    Am besten bei GitHub ein neues Repository mit dem Namen "vdr-plugin-softhddevice" anlegen. Danach dann:

    Code
    cd ~/src
    # oder wo auch immer du deinen Source gerne liegen haben möchtest
    git clone -o upstream git://projects.vdr-developer.org/vdr-plugin-softhddevice.git
    cd vdr-plugin-softhddevice
    git checkout -b hevc upstream/master
    git remote add origin git@github.com:jojo61/vdr-plugin-softhddevice.git
    git fetch origin
    git push -u origin hevc


    Damit nutzt du als Ausgangspunkt das Original-git-Repository von softhddevice, kannst später von da Änderungen pullen und auch einen vernünftigen Pull-Request erstellen.


    Jetzt bearbeitest du die Dateien und commitest ganz normal wie gehabt:

    Code
    # edit code...
    git add -u
    # bzw. git add neuangelegtedatei
    git commit -m "bla bla bla"
    git push


    Wenn johns was in seinem git ändert:

    Code
    # Arbeitsverzeichnis sollte sauber sein, also prüfen:
    git status
    # On branch hevc
    # Your branch is up-to-date with 'origin/hevc'.
    # nothing to commit, working tree clean
    git pull upstream
    git merge upstream/master
    # ggf. merge-Konflikte auflösen und mit "git add"/"git commit" einchecken
    git push


    Wenn fertig, dann kann johns genauso deine Änderungen aus deinem git-Repository ziehen (und behält dann auch die Commit-Historie bei). Oder man macht mit "git diff master..hevc" einen großen Patch.


    Lars.

  • Absolut sinnvoll, erst mal im git für Ordnung zu sorgen.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Kurzer Zwischenstand beim Testen:


    kompilieren klappt, wenn beim ffmpeg die Optionen richtig gesetzt sind (--enable-shared)
    DVB-T2 läuft bei Kurztest flüssig und ohne Aussetzer
    UHD-Demo auf Astra hat permanent Aussetzer (Geforce950)
    Aber: der Ton funktioniert
    Fehlermeldung im syslog:

    Zitat

    Dec 4 20:03:05 h265 vdr: video/vdpau: missed frame (1820/551)
    Dec 4 20:03:05 h265 vdr: video: packet buffer too small for 589666
    Dec 4 20:03:05 h265 vdr: video/vdpau: synced after 10 frames
    Dec 4 20:03:06 h265 vdr: [1643] [softhddev]Clear:
    Dec 4 20:03:06 h265 vdr: [1643] ERROR: TS packet not accepted in Transfer Mode
    Dec 4 20:03:06 h265 vdr: audio/alsa: using device 'hdmi:AES0=0x4,CARD=NVidia,DEV=1'

    Auf jeden Fall ist es geil, dass sich was Richtung hevc tut. Dafür ein dickes Danke.


    cu
    biggsmann

  • Eine reine Verständnisfrage:
    Der Patch hier reicht momentan "nur" für DVB-T2, da hier hevc mit 8 bit genutzt wird?
    Für DVB-C/S benötigt es 10 Bit (was der Nvidia Treiber 375.20 noch nicht kann) und alle layer müssen auch 10 bit unterstützen (hier ist auch nicht nicht alles unterstützt)?
    In Hardware wird hevc 10 bit bei NVidia nur 950+ und 1050+ Serie unterstützt?

  • Hi,


    wahrscheinlich funktioniert Intel VAAPI noch nicht



    nach "Dec 4 22:31:51 satip vdr: audio: 8Hz sample-rate unsupported" steigt der VDR aus, mit dem Original von Johns hab ich das Problem nicht.


    CU
    9000h

    Es ist eagl in wlehcer Reiehnfogle die Bchustebaen in Woeretrn vokrmomen. Huapstache der estre und leztte Bchustbae sitmmen.

  • VAAPI habe ich überhaupt nicht beachtet und insofern würde es mich auch wundern wenn es funktioniert. Ich habe bisher nur VDPAU getestet und bearbeitet.


    Wie schon im README beschrieben funktioniert das ganze derzeit nur mit DVB-T2 HD weil dort HEVC mit 8 Bit zum einsatz kommt. Auf den SAT UHD Sendern wird derzeit überall 10 Bit genutzt und das funktioniert weder mit AMD noch NVIDIA. Ich habe aber hierfür das dekodieren in Software eingebaut und deswegen sieht man auch bei UHD ein Bild und bekommt Ton. Allerdings schafft ein "normaler" PC das nicht in Software zumal auch kein Multithreading aktiv ist. Deswegen stottert das Bild und bleibt wohl auch hängen. Am weitesten ist derzeit AMD mit der 10 Bit dekodierung. Es ist verfügbar in VDPAU, aber wird von FFMPEG noch nicht unterstützt.


    jojo

  • Gibt es irgendwo VDR hevc samples, die man bei mangelndem DVB-T2 Empfang zum Testen hernehmen könnte? Bzw. hat zufällig jemand einen Allwinner H3 mit VDR am laufen und kann testen, ob das ootb funktioniert? Ansonsten muss ich mir fast mal Zeit nehmen...
    Gruß
    Andreas

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!