[vtuner-ng] Aktualisierter vtuner für kernel >= 4.16

  • Ich versuche, den vtuner unter LibreELEC/amlgx zum laufen zu bringen - bisher ohne Erfolg.

    Der Kernel ist 6.6.0, arm64

    Code
    odroid4:~ # uname -a
    Linux odroid4 6.6.0 #1 SMP PREEMPT Fri Dec 22 13:38:17 CET 2023 aarch64 GNU/Linux

    Folgende Versuche habe ich unternommen:

    Code
    odroid4:~ # /usr/sbin/modprobe vtunerc devices=1
    [   51.546782] vtunerc: loading out-of-tree module taints kernel.
    [   51.548341] virtual DVB adapter driver, version 2.0, (c) 2021 Honza Petrous, SmartImp.cz
    [   51.552923] dvbdev: DVB: registering new adapter (vTuner proxy)
    [   51.556219] (NULL device *): DVB: registering adapter 0 frontend 0 (vTuner proxyFE DVB-Multi)...
    [   51.557587] vtunerc: registered /dev/vtunerc0
    
    
    odroid4:~ # /usr/local/bin/satip -h 192.168.178.236 -d /dev/vtunerc0 -m 2 -l 4
    [1353 satip_rtp.c:295]  info: rtp/rtcp port 45791/45792

    Ich habe 2 verschiedene SAT/IP Server (beide DVB-C) getestet: Minitsatip und OctopusNet.


    VDR gibt folgendes aus:

    Und dann gibt es noch

    Code
    odroid4:~ # cat /proc/vtunerc0 
    [vtunerc driver, version 2.0]
     vtunerc0 used by : 1
     adapter0 in use  : yes
     status           : FE_NONE
     last change      : 985
     ts data          : 0
     internal filler  : 0
     external filler  : 0


    Mehr Ausgaben gibt es nicht und ich komme nicht weiter und bin ein wenig ratlos. Mit dem satip-Plugin funktioniert alles soweit einwandfrei.

  • starte doch den Tuner mal so


    startvtuner.sh

    Code
    #/bin/bash
    #exit 0
    
    /usr/sbin/modprobe vtunerc devices=1
    
    /usr/local/bin/satip -h 192.168.178.236 -d /dev/vtunerc0 -m 2 -l 4 2> /tmp/satip0.log &

    dann sollte auch mal ein Logfile in /tmp liegen

    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * NC * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) *

    (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

  • @Zabrismus: Bitte mal das Log in eine Datei umleiten:

    Code
    /usr/local/bin/satip -h 192.168.178.236 -d /dev/vtunerc0 -m 2 -l 4 2> /tmp/satip.log

    Und bitte den vtuner mal mit log starten (geht ins dmesg bzw. syslog / kern):

    Code
    /usr/sbin/modprobe vtunerc debug=1

    Und beides bitte posten.


    Zitat von Zabrismus

    Mit dem satip-Plugin funktioniert alles soweit einwandfrei.

    Und was versprichst Du Dir dann von vtuner-ng? ;)

  • dann sollte auch mal ein Logfile in /tmp liegen

    Ob ich die Ausgabe umleite oder auf der Konsole ausgebe, sollte eigentlich keinen Unterschied machen.

    Mit debug=1 erhalte ich zumindest mehr Lebenszeichen


    und

    und weiterhin

    Code
    odroid4:~ # cat /tmp/satip.log 
    [1305 satip_rtp.c:295]  info: rtp/rtcp port 45385/45386

    Bei einem Kanalwechsel per svdrp kommt das

    Und was versprichst Du Dir dann von vtuner-ng? ;)

    Nur weil es bei mir funktioniert, könnte eine Alternative trotzdem sinnvoll sein. Und natürlich ist es auch Neugier und ein Bastelzwang ;)

  • @Zabrismus: Bei Dir macht das satip-Programm nix, sollte eigentlich so aussehen:

    Code
    [1172 satip_rtp.c:295]  info: rtp/rtcp port 46315/46316
    [1172 satip_rtsp.c:693] debug: connecting...
    [1172 satip_rtsp.c:583] debug: connected -> establishing
    [1172 satip_rtsp.c:308] debug: >>txbuf:
    OPTIONS rtsp://satip.lan:554/ RTSP/1.0
    CSeq: 1

    Versuch da mal -m 7

  • Ich bin auf die Suche gegangen. Bis zu "connecting..." kommt satip gar nicht.

    Code
    void  satip_rtsp_check_update(struct satip_rtsp*  rtsp, int abort)
    {
      if (abort) rtsp->status = RTSP_ABORTING;
      switch ( rtsp->status )
        {
        case RTSP_NOCONFIG:
           if ( satip_valid_config(rtsp->satip_config) &&
                 rtsp->timer == NULL )
        {

    Das Problem ist, daß satip_valid_config(rtsp->satip_config) immer 0 liefert und damit wird der case-Block nie aufgerufen. Wenn ich die Bedingung rausnehme und auf rtsp->timer kürze, dann wird ein Connect ausgeführt, aber es wird immer nur OPTIONS ausgeführt und die Antwort empfangen.



    Ich werde vtuner jetzt mal auf dem Entwicklungsrechner probieren. Weil es ja eigentlich funktionieren soll, wenn man die Meldungen hier im Thread alle liest. Vielleicht werde ich dann erleuchtet.

  • Was hier komisch ist.


    Wenn ich diesen Aufruf mache ohne ein "&" bekomme ich kein "connecting" mit einer Octopus-Net

    /usr/local/bin/satip -h 192.168.178.236 -d /dev/vtunerc0 -m 2 -l 4


    aber mit ein "&" bekomme ich ein "connecting"

    /usr/local/bin/satip -h 192.168.178.236 -d /dev/vtunerc0 -m 2 -l 4 &


    Hm, eigentlich sollte doch beides laufen?

    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * NC * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) *

    (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

  • Vielleicht darf/kann der vtuner nur im Hintergrund gestartet werden?

    MyVDR: yaVDR-Ansible (Ubuntu 20) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Ich habe jetzt alles probiert. Mit/ohne &, -m 7. Es gab bei mir keinen Unterschied. Ich bin noch nicht dazu gekommen, den vtuner-ng lokal zu testen. Das wird noch stattfinden müssen.

    nein geht leider nicht

    /usr/local/bin/satip -h 192.168.1.43 -d /dev/vtunerc0 -m 7 -l 4


    läuft nur mit

    /usr/local/bin/satip -h 192.168.1.43 -d /dev/vtunerc0 -m 7 -l 4 &


    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * NC * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) *

    (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

    4 Mal editiert, zuletzt von cinfo ()

  • Ich habe es auch mal versucht mit vtuner & satpi, leider schmiert der vtunerc ab:


    Code
    linux2:~ # uname -a
    Linux linux2 5.14.21-150400.24.100-default #1 SMP PREEMPT_DYNAMIC Mon Dec 4 19:12:13 UTC 2023 (3f5cd84) x86_64 x86_64 x86_64 GNU/Linux



    Was mag das sein?

    Gruß Uwe

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • Das kann es auch nicht sein.

    uwe67: Hast Du das korrekte KDIR im kernel/Makefile angegeben? Ich habe das bei mir nach dem if-else testweise hart gesetzt.

    IMHO müsste das bei Dir

    KDIR := /lib/modules/5.14.21-150400.24.100-default

    lauten

    Ein make install macht:

    Code
    cp vtunerc.ko /lib/modules/5.14.21/kernel/drivers/media/tuners
    depmod -a

    Und ist auch an richtiger Stelle:

    Code
    linux2:/ # find /lib/modules -name vtunerc.ko
    /lib/modules/5.14.21-150400.24.100-default/kernel/drivers/media/tuners/vtunerc.ko
    
    linux2:/ # ls -al /lib/modules/
    total 64
    drwxr-xr-x 16 root root 4096 Dec 19 18:05 .
    drwxr-xr-x 10 root root 4096 Dec 19 17:44 ..
    lrwxrwxrwx  1 root root   43 Dec 19 18:02 5.14.21 -> /lib/modules/5.14.21-150400.24.100-default/
    drwxr-xr-x  5 root root 4096 Dec 23 15:25 5.14.21-150400.24.100-default

    Erst wenn der VDR auf einen Kanal schaltet, stürzt der vtunerc.ko in der Funktion vtunerc_ctrldev_write ab.

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • Also lokal mit Kernel 6.5 funktioniert es mit minisatip. Die Umschaltzeiten sind richtig gut.

    Mit OctopusNet allerdings funktioniert es nicht.



    Die Requests für minisatip und OctopusNet unterscheiden sich nicht, aber das Verhalten der Server ist eben anders. Aktuell läuft noch Firmware 1.1.6. Ein Update vom März scheint zu existieren. Würde es denn nach dem Update funktionieren? Es gibt ja schon Erfolgsmeldungen und die Frage wäre, ob es an der Firmware liegen kann.

  • Die Umschaltzeiten sind richtig gut.

    Besser als mit dem satip-plugin?

  • Ich nutze es an einer OctopusNet (Firmware Version: octonet-pro-2.1.0)

  • Besser als mit dem satip-plugin?

    Naja, also rein technisch schaltet satip bei Programmen auf dem gleichen Transponder gar nicht mehr um. Da werden dann nur alle alten Pids gelöscht und neue geholt…


    Beim satip-plugin werden (nach meiner Beobachtung) bei jedem Kanalwechsel sämtliche Verbindungen geschlossen und erneut geöffnet…

  • Ich nutze es an einer OctopusNet (Firmware Version: octonet-pro-2.1.0)

    ich auch :]

    (VDR) NUC11PAH & GEEKOM MINI-IT11-11. Generation * BM2LTS * DD NET S2 Max * NC * (Sound) Cinebar Lux Set * (Stream) Apple TV 4K (2022) *

    (Light) PHILIPS Hue Play HDMI Sync Box & Gradient Lightstrip * (OLED TV) LG OLED65G29LA

Jetzt mitmachen!

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