[softhdcuvid] Problem mit FFMPEG v8.1

  • jojo61

    Hi,


    beim erstellen mit dem FFMPEG Paket v8.1 habe ich folgendes Problem beim Erstellen von softhddrm ...

    ffmpeg version n8.1-dev

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

  • video.c:2896:31: error: ‘FF_PROFILE_HEVC_MAIN_10’ undeclared (first use in this function); did you mean ‘AV_PROFILE_HEVC_MAIN_10’?

    Also mit ffmpeg 8.1 habe ich es noch nie compiliert. Wenn ich mal von den Warnings absehe dann scheint mir da mal wieder ein define Umbenannt zu sein. Könntest du zum testen mal in video.c in Zeile 2896 aus dem FF_PROFILE... ein AV_PROFILE.. machen und schauen ob es dann compiliert ? Im Moment habe ich hier kein ffmpeg 8.1 zum ausprobieren. Wenn das dann klappen sollte dann werde ich die 8.1 Version von ffmpeg über einen ifdef abfangen.

  • Hallo,

    das Ändern auf AV_PROFILE... hat den Fehler erstmal beseitigt.

    Doch dann kommt dieser Fehler.

    Code
    video.c: In function ‘Video_get_format’:
    video.c:6093:60: error: ‘AVCodecContext’ has no member named ‘ticks_per_frame’
     6093 |     ms_delay = (1000 * video_ctx->time_base.num * video_ctx->ticks_per_frame) / video_ctx->time_base.den;
          |                                                            ^~
  • Hallo,

    das Ändern auf AV_PROFILE... hat den Fehler erstmal beseitigt.

    Doch dann kommt dieser Fehler.

    Code
    video.c: In function ‘Video_get_format’:
    video.c:6093:60: error: ‘AVCodecContext’ has no member named ‘ticks_per_frame’
     6093 |     ms_delay = (1000 * video_ctx->time_base.num * video_ctx->ticks_per_frame) / video_ctx->time_base.den;
          |                                                            ^~

    richtig kann man auskommentieren "ist was vom Debug" aber dann...

    im Makefile mußte ich dies auskommentieren

    Code
    TMPDIR ?= /tmp
    
    ### The compiler options:
    
    #export CFLAGS  = $(call PKGCFG,cflags) -fpermissive
    #export CXXFLAGS = $(call PKGCFG,cxxflags) -fpermissive

    Files

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

    Edited 3 times, last by cinfo (October 19, 2025 at 1:58 PM).

  • im Makefile mußte ich dies auskommentieren

    Ich vermute das kommt vom -fpermissive Ich weiss gar nicht wie das da rein kommt. In meinem Workdirectory ist das gar nicht im Makefile drin. Könntest du das nochmal ohne das -fpermissive testen, aber mit dem export ?

    Dann würde ich es im Makefile ändern und im video.c ein ifdef auf die ffmpeg Version einbauen. Wie gesagt ich kann es im Moment hier leider nicht testen.

  • Ich habe das video.c File nun eingecheckt. Für das Makefile warte ich noch auf Rückmeldung :)

    OK neu aus dem Git geladen und Makefile angepasst

    Code
    ### The compiler options:
    
    export CFLAGS   = $(call PKGCFG,cflags)
    export CXXFLAGS = $(call PKGCFG,cxxflags)

    jetzt wurde softhddrm.so erstellt - mal sehen ob es auch hell wird nach einem Neustart -

    Ja sieht gut aus

    so würde es vom Makefile her passen :)

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

    Edited 2 times, last by cinfo (October 19, 2025 at 7:58 PM).

  • die Git-Version 3.33 hat wohl noch diese Fehler

    Oct 25 17:47:33 BM2LTS-MC vdr: video: Init of VAAPI deint Filter failed

    Oct 25 17:47:33 BM2LTS-MC vdr: Cannot create buffer source

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

  • Da geht das initialisieren von deinterlace_vaapi schief. Ist das im ffmpeg eincompiliert ? was sagt denn "ffmpeg -filters | grep vaapi"

    Ja

    --enable-vaapi --enable-libdrm 


    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

    Edited once, last by cinfo (October 30, 2025 at 8:53 PM).

  • Hier mit der Debug Version:

    Oct 31 07:50:50 BM2LTS-MC vdr: Cannot create buffer source
    Oct 31 07:50:50 BM2LTS-MC vdr: video: Init of VAAPI deint Filter failed

  • Da bin ich etwas am raten warum es nicht geht. Aber testet doch mal mit der angehängten Source. Da ich zwischen 3.32 und 3.33 an der Stelle nichts geändert habe, liegt es vermtl. am ffmpeg 8.1.

    Das Plugin kann damit nicht geladen werden

    Code
    Oct 31 16:02:12 BM2LTS-VT vdr: [1452] loading plugin: /usr/lib/vdr/plugins/libvdr-softhddrm.so.9
    Oct 31 16:02:12 BM2LTS-VT vdr: [1452] ERROR: /usr/lib/vdr/plugins/libvdr-softhddrm.so.9: undefined symbol: avfilter_register_all
    Oct 31 16:02:12 BM2LTS-VT vdr[1452]: vdr: /usr/lib/vdr/plugins/libvdr-softhddrm.so.9: undefined symbol: avfilter_register_all

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

  • Hm wenn ich hier auf ARD schaue -- finde ich diesen fehler von gggggg eigentlich nicht -- Oder muß auf einen anderen Kanal testen?

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

  • Quote

    PS: Gibt es evtl. nun eine libavfilter.so die noch dazugelinkt werden muss ?

    ja die gibt es

    so in codec.c?

    Code
    #include <libavutil/opt.h>
    + #include <libavfilter/avfilter.h>

    damit wird das Plugin geladen (codec.c aus dem Git)

    aber der Fehler ist noch da

    (VDR) NUC-11. Generation * BM2LTS * DD NET S2 Max * (Sound) Sonos ARC Ultra, ERA300, Sub Mini * (Stream) Apple TV 4K (2022) * (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G57LW

    Edited 2 times, last by cinfo (October 31, 2025 at 6:57 PM).

  • Danke euch für die Behebung in der 3.34.

    Weshalb kommt nun überheupt keine Meldung mehr bez. dem Deinterlacer ?

    Bisher kam immer Sep  8 17:12:28 BM2LTS-MC vdr: Init VAAPI deint ok

    Ich fand die "Positivmeldung" hilfreich. Es kommen diese 3 Meldung nicht mehr ???

    Sep 8 17:12:28 BM2LTS-MC vdr: video: stretch output 1280x720+0+0
    Sep 8 17:12:28 BM2LTS-MC vdr: GetFormat Init ok 720x576
    Sep 8 17:12:28 BM2LTS-MC vdr: Init VAAPI deint ok
    Sep 8 17:12:28 BM2LTS-MC vdr: ++++++++++++++++++++++++++++++++++++starte audio

    Liebe Grüße g ;)

    NCV6dvbS2+Alphacrypt+ORF, BM2LTS4.4 NUC11i3 NVMe+HDD, BM2LTS2.94.4 AVG1 T7400 SSD+HDD NvidiaGT720

Participate now!

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