Beiträge von zillerbaer

    Unabhängig davon sollte es aber doch nicht gleich den ganzen VDR zerschießen...

    Möglicherweise liegt das Problem aber auch direkt bei ffmpeg.

    FFmpeg gibt lediglich das Abort Signal. Das zerschiesst doch nix. Es wird halt alles beendet.


    Ich hab mein defektes H3 raus geholt und fest gestellt das nach längerer Laufzeit (> 1h) auf einmal keine Daten mehr von vdr kommen. PlayVideo() und PlayAudio() wird nicht mehr aufgerufen. Das betrifft auch progressive Videos. Man muss nur lang genug warten und bei Senderwechsel scheint die Wartezeit zurück gesetzt zu werden. Am hw Deinterlacer liegt das nicht. Warum weiss ich nicht. Das Problem gibt es nur auf H3. H5 und rk3399 laufen Problemlos. Kannst Du das bestätigen oder ist das nur bei meinem kaputten Board so?


    Kleine Veränderungen hab ich im git. Damit scheint es länger zu dauern das keine Daten mehr kommen.


    Gruß

    zille

    Unabhängig davon sollte es aber doch nicht gleich den ganzen VDR zerschießen...

    Mal sehen ob ich das abfangen kann. So wie es sich darstellt kommen weder Audio noch Videodaten schnell genug an. Wie hoch taktet die CPU? Wo kommt das Video / Audio her?

    Das sieht komisch aus:

    Code
    AlsaPlayer: ring buffer empty
    AlsaFlushBuffers: AlsaFlushBuffers
    AudioPlayHandlerThread: pthread_cond_wait
    dequeueing failed
    [deinterlace_v4l2m2m @ 0x728b00] no frame (field 0)
    FilterHandlerThread: ret -22 Das Argument ist ungültig
    FilterHandlerThread: width 0 height0

    Audiodaten sind nicht da und Videodaten auch nicht. Es gab aber kein PlayMode 0! Wo kommt das "dequeueing failed" her? Ich kann das in meinem Code nicht finden.

    Ich beziehe mich in openglosd.cpp auf VideoRender/ _Drm_Render

    Das sollte aber auch auf dem Raspi laufen. Da ist es besser wenn Du gleich auf VideoRender zugreifst. Wenn Du Inhalte aus VideoRender brauchst solltest Du eine Abfrage in video_xxx.c einbauen wie da.


    Gruss

    zille

    wann/ob man double buffering benötigt.

    Zwei Buffer werden eigentlich nur benötigt wenn bewegte Bilder in schneller Folge dargestellt werden sollen. Aktuell nutzt softhddevice-drm nur einen Buffer dazu.


    Mit GL habe ich noch nicht gearbeitet. Welche Methoden da zur Verfügung stehen in einen Framebuffer zu schreiben weiß ich nicht. Den Buffer lege ich da an und beschreibe den mit dem was vdr schickt und zeige das an. Vdr sagt dann wenn das OSD wieder geschlossen werden soll.


    Die PKG Config Sachen gehören m. E. im System eingestellt und nicht im Makefile. Die Pfade unterscheiden sich auch bei unterschiedlichen Distributionen.


    Das Verschieben bitte nicht. Die video.h wird von mmal und drm genutzt. Da soll auch nur das drin stehen was beide mit dem Rest verbindet.

    Ich habe hier immer mal wieder VideoFilter Fehlermeldungen

    Die Fehlermeldungen brauche ich. Ich habe kein funktionierendes H3 Board und kann das leider nicht testen.

    Hallo Zabrimus,


    wird der download der Media Dateien vom Browser gemacht oder nutzt Du dafür ffmpeg? Auf einen Browser auf dem VDR wollte ich verzichten und die Netzwerkfähigkeit von ffmpeg nutzen. Softhddevice-drm soll ohne Konversion direkt abspielen. Mit Mediathekviewgeladenen MP4 Dateien funktionieren schon. Es ist aber zeitraubend da der Download erst abgeschlossen sein muss bis man das angucken kann.


    Wie webm Inhalte gehandelt werden können weiss ich noch nicht und die Android Seite ist momentan noch Wunschdenken.

    Damit ist klar das mein Bananapi H3 einen Treffer hat, Sch*****! Hab mir jetzt ein Bananapi H5 zugelegt. Hoffentlich bringt Jernej den HW Deinterlacer zum laufen!

    Auch der HW Deinterlacer scheint zu laufen.

    Kann eigentlich nicht sein. Bei meinen Tests habe ich hier nur ein rotes Bild. Mit LE auch. Das LE Image soll aber gut laufen. Ich denke das mein Board einen Treffer hat. HW Deinterlacing ist aktuell noch abgeschaltet. Ich will Dich bitten da das Kommentarzeichen zu entfernen und zu testen ob es funzt.


    Gruss

    zille

    Mein Android Tablet fragt beim Abspielen aus einer Mediathek immer welchen Player ich benutzen will. An der Stelle wird sicher der lokale Player gestartet mit der Übergabe der URL.


    Kann man auf dem Tablet einen Pseudoplayer einrichten der die URL dann per SVDRP auf den VDR übergibt?


    Kann man mit FFmpeg Funktionen einen Player basteln der mit dieser URL umgehen kann?


    Gruss

    zille

    Mmmh! Der Sound hängt hinterher! Das hab ich noch nie gesehen. Schalt mal bitte SOUND_DEBUG im Makefile ein.


    Was sagt "cat /sys/bus/cpu/devices/cpu0/cpufreq/cpuinfo_cur_freq"? Kannst Du eine USB-Soundkarte zum Test anstöpseln?

    BTW: Sollte https://github.com/zillevdr/vd…blob/drm/video_drm.c#L813 und https://github.com/zillevdr/vd…blob/drm/video_drm.c#L830 nicht (bzw. zusätzlich) FramesDropped und FramesDuped anzeigen?

    Ja, je nachdem ob das Bild zu spät (FramesDropped) oder zu früh (FramesDuped) im Vergleich zur AudioClock ist. Im Normalfall sollte nix von beiden zu sehen sein weil Audio und Video synchron abgespielt wird.


    Edit: Wenn das ein interlaced Video ist, ist es normal. Der HW Deinterlacer läuft noch nicht. Jedes Bild muss 2x angezeigt werden.

    Mit alsamixer kann ich jedenfalls auf "H3 Audio Codec" zugreifen, das sollte softhddevice dann auch ausgewählt haben!?

    Ja, das device sollte default sein und wenn nix anderes in der commandline verlangt wird wird das benutzt. Im Log wird das default device geöffnet und konfiguriert ohne Fehler.


    Einen Fehler finde ich in den logs nicht. Schalt bitte mal AV_SYNC_DEBUG im Makefile ein.

    Du kannst FFmpeg auch von da nehmen. Dann musst Du nicht mit patches fummeln. Im Kernel habe ich nur den 0005-cedrus-improvements.patch eingebaut.


    Audio ist der Taktgeber. Nach der Audioclock werden die Bilder synchronisiert. Ich benutze eine USB-Soundkarte. Wie realisierst Du Audio? Hörst Du einen Ton? Passiert das bei SD oder HD Material? Gibt es eine Fehlermeldung?

    Müsste es nicht möglich sein, auf dieser Basis auch ein VDR-Ausgabeplugin zu schreiben?

    softhddevice-drm sollte mit Amlogic nach kleinen Anpassungen umgehen können. Ich habe mich auf Rockchip konzentriert da ich mich für ein Rockpro64 entschieden habe. Ich habe hier noch ein Odroid-C2 rumzuliegen. Das hat ein S905 SoC. Das werde ich mal aktivieren und so du etwas basteln nicht scheust bekommen wir das sicher auch auf einem S922 zum laufen.


    Gruss zille