[FYI] yavdr-ansible auf dem Raspberry Pi (Version 2 und 3)

  • für den Schnitt am Server würde es das remoteOSD Plugin brauchen, kann man das bitte ins PPA noch aufnehmen ?

    Ich habe es gerade bauen lassen: https://launchpad.net/~yavdr/+…shed&field.series_filter=

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Wenn die Schnittmarken gesetzt sind, kann man das Schneiden auch vdradmin(-am) veranlassen lassen.

    LG
    Jochen


    Rpi4 headless mit MLD 5.4 als Server via satip-Plugin hinter einem Telestar Digibit Twin, ein Rpi3 als Streamdev-Client mit MLD 5.4

    Rpi3 auch hinter Telestar Digibit Twin und mit MLD 5.4

  • Funktioniert - besten Dank für die wie immer perfekte Unterstützung.

    Server: yaVDR ansible, Asrock 3160, Cine S2 6.5 + Duoflex + Single CI mit Alphacrypt classic, Bionic Beaver
    Clients: 1* yaVDR ansible als streamdev-client, Asus GT520,
    Pentium Dual-Core 8400, , Bionic Beaver
    1* yaVDR ansible als streamdev-client, Asrock 3150 in Antec ISK 300-65, Zotac GT730 (ZT-71107-10L), , Bionic Beaver
    1* ABOX (Amlogic S905x) mit CoreElec

    1* yaVDR ansible TestClient Asus AT5IONT-I, , Bionic Beaver

    1* Rspberry PI2B+, yaVDR ansible, Focal Fossa

  • hi seahawk,

    ist es möglich auf launchpad für arm64 bauen zu lassen und eine ansible dafür zu basteln ohne erstmal auf spezielle Hardware abzustimmen? So dass man das Feintuning selbst vornehmen muss und daraus später eine Rolle generieren kann?Baut ansible ffmpeg selbst?

    Viele Grüße

  • ist es möglich auf launchpad für arm64 bauen zu lassen und eine ansible dafür zu basteln ohne erstmal auf spezielle Hardware abzustimmen? So dass man das Feintuning selbst vornehmen muss und daraus später eine Rolle generieren kann?

    Grundsätzlich kann man auf Launchpad auch arm64 Pakete bauen lassen. Dazu muss ich aber noch eine Reihe von Paketen anpassen - bisher hat es genügt alles für alle Architekturen bauen zu lassen, aber jetzt wird die Fallunterscheidung amd64/arm7h/arm64 insbesondere für ffmpeg und die Ausgabeplugins relevant.


    Da muss ich nur mal etwas Zeit finden, um mich da ungestört dran zu setzen...

    Baut ansible ffmpeg selbst?

    Ansible baut bislang nichts selber, das installiert nur fertige Sachen aus den PPAs und ggf. anderen Quellen. Das Bauen von Kernel-Paketen habe ich mir unter Ubuntu noch nicht genauer angesehen, das funktioniert auf jeden Fall etwas anders als bei normalen Debian-Paketen. Und ohne Kernel macht ein selbst gebautes ffmpeg mit Unterstützung für den RPI4 soweit ich das verstanden habe keinen Sinn.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Bitte auch noch mal mit Zille klären ob 64 Bit sinnvoll ist, da war glaube ich noch irgendwas mit dem Treiber nicht fertig.

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Das war/ist ein Problem vom Raspi 4 aber nicht bei anderen SOCs.

    Ich fände es cool die yaVDR Umgebung unabhängig von den Hardwaregegebenheiten installieren zu können wenn man ein Grundgerüst von Kernel ffmpeg und rootfs bereits installiert hat. Also sozusagen eine Architekturabhängige Basisinstallation ohne ffmpeg und evtl. mit Auswahloption des Ausgabeplugins.

  • Werden die Paketquellen vom Playbook unter roles/yavdr-common/tasks/configure_apt.yml festgelegt? Wenn ich hier zusätzlich Einen Abschnitt arm64 erstelle und ein eigenes ppa mit arm64 Paketen in /roles/yavdr-common/defaults/main.yml eintrage werden dann die Pakete von dort geholt?


    Also so z.B.

    Code
    - name: add PPAs for arm64
      apt_repository:
          repo: '{{ item }}'
          state: present
          update_cache: no
      loop: "{{ arm64_repositories|flatten(levels=1) }}"
      tags:
        - ppa
      when: ansible_architecture == 'arm64'

    und im defaults/main.yml

    Code
    arm64_repositories:
      - 'ppa:joebar77/vdrarm64ppa'

    hinzufüge


    Wenn ich dann eine headless Installation (mit angepasster yavdr07-headless.yml) laufen lasse müsste doch ein arm64 Grundsystem installiert sein oder?


    Viele Grüße

  • Ja, das sollte so klappen, wenn das PPA alle benötigten Pakete bereitstellt (ob die Variable ansible_architecture den Wert arm64 hat, kannst du in der Ausgabe von ansible -m setup localhost sehen). Bei den Rollen musst du das halt so anpassen, dass es stimmig ist - yavdr-xorg und yavdr-desktop wird man da ja eher nicht brauchen können. Du könntest da https://github.com/yavdr/yavdr…lob/focal/yavdr07-rpi.yml als Grundlage nehmen und die Rolle rpi rausnehmen.


    Die Variable musst du auch nicht zwingend in defaults/main.yml setzen, das kann auch in den group_vars/all bzw. host_vars/localhost passieren - die Defaultwerte sind dazu da, dass nichts kaputt geht, wenn jemand Variablen aus Versehen nicht an den anderen Stellen setzt.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Na dann versuche ich das am Wochenende mal auf ner neuen SD Karte. Die Pakete hab ich anhand deines experimental-rpi aus deinen experimental PPAs ausgewählt und für arm64 bauen lassen. Bis auf transcode, das wahrscheinlich von ffmpeg abhängt, minisatip und das plugin audiorecorder ist eigentlich alles durchgelaufen.

    Wird ffmpeg bei einem headless System installiert? Dann müsste ich das noch deaktivieren bzw. wenn ich das rpi Playbook nehme und die rpi Rolle deaktiviere wird dann kein ffmpeg installiert?

    Viele Grüße

  • Wird ffmpeg bei einem headless System installiert? Dann müsste ich das noch deaktivieren bzw. wenn ich das rpi Playbook nehme und die rpi Rolle deaktiviere wird dann kein ffmpeg installiert?

    Höchstens als Abhängigkeit von Paketen wie einigen VDR-Plugins (z.B. vdr-plugin-markad(-ng)).

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • OK, d.h. sobald markad(-ng) installiert wird zieht er ffmpeg nach und überschreibt mir mein selbskompiliertes ffmpeg. Oder wird ein vorher installiertes ffmpeg erkannt? Auf der anderen Seite könnte ich markadd rausschmeißen das macht eh der Server.

  • Pakete überschreiben alle nicht explizit als Konfigurationsdateien markierten Dateien (alles in /etc/ ist automatisch eine Konfigurationsdatei) ohne Rückfrage. Wenn das ffmpeg neu genug ist, kann es sein, dass die Bibliotheken eine andere Versionsnummer bekommen uns sich daher nicht zwangsläufig mit den Dateien aus den Paketquellen beißen.


    Wenn du ffmpeg lokal kompilierst, solltest du es mit Prefix /usr/local installieren lassen, dann kommt es den Dateien aus den Paketquellen nicht in die Quere und solange du die *-dev Pakete für die ffmpeg-Bibliotheken aus den Paketquellen nicht installierst, sollte pkg-config beim Bauen die selbst gebauten Bibliotheken finden.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Die Architekturvariable von arm64 lautet übrigens ansible_architecture == 'aarch64'


    In der Rolle roles/collect-facts/tasks/main.yml kommt es beim Pine im Abschnitt "get detailed PCI device information" zu Fehlern da ja kein PCI device unterstützt wird. Ich hab das jetzt auskommentiert, oder gibt es da einer andere Möglichkeit unter tags als -allways ?

  • Kannst du bitte mal schauen, was lspci -nm auf deinem System liefert?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Es liefert nichts


    Ansible hält gerade bei "TASK [vdr : ensure vdr is stopped]" an mit der Fehlermeldung

    Code
    Tfatal: [localhost]: FAILED! => {
        "changed": false,
        "status": {}
    }
    
    MSG:
    
    Service is in unknown state

    3 Mal editiert, zuletzt von JoeBar ()

  • Ansible hält gerade bei "TASK [vdr : ensure vdr is stopped]" an mit der Fehlermeldung

    Code
    Tfatal: [localhost]: FAILED! => {
        "changed": false,
        "status": {}
    }
    
    MSG:
    
    Service is in unknown state

    Das klingt nach https://github.com/ansible/ansible/issues/71528 - welcher Kernel läuft bei dir? Mein Raspberry Pi 2 mit Ubuntu 20.04 ist noch auf einem Kernel 5.4, da tritt das nicht auf.


    Ich kann mal im laufe des Tages mal versuchen ein neues Ansible-Paket zu bauen und das vom Install-Skript vorab installieren zu lassen, ähnlich wie es bei Ubuntu 18.04 nötig war.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Bei mir läuft Kernel 5.10.4

    Alles klar dann versuch ich das Ansible-Paket wenns fertig ist :thumbup:

  • In der Rolle roles/collect-facts/tasks/main.yml kommt es beim Pine im Abschnitt "get detailed PCI device information" zu Fehlern da ja kein PCI device unterstützt wird. Ich hab das jetzt auskommentiert, oder gibt es da einer andere Möglichkeit unter tags als -allways ?

    Es liefert nichts

    Kannst du dem ansible-playbook-Befehl im Install-Skript bitte mal das zusätzliche Argument -vvv mitgeben? Mir ist gerade nicht klar, warum er da über eine leere Ausgabe stolpern sollte (macht er auf meinem RPI2 auch nicht).

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ok, es scheint so als hätte ihm vorher das Paket pciutils gefehlt, das musste ich vorher nachinstallieren um lspci ausführen zu können. Ich mach jetzt Feierabend und meld mich morgen wieder ;)

Jetzt mitmachen!

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