wie einzelne vdr-ts-Dateien in Verezichnissen per script zusammenfügen

  • Hallo,

    ich habe in den Einstellungen im VDR die Aufteilung der Dateien in max. 2 GB hinterlegt. Logischerweise liegen größere Aufnahmen daher in mehreren Teildateien in der Form

    00001.ts

    00002.ts

    etc.

    vor.

    Ich benötige nun aber die Dateien jeweils als eine einzige große Datei. Mir ist bekannt, dass ich mit cat die Dateien über

    cat 00001.ts 00002.ts ... 000x.ts > gesamt.ts

    zusammenführen kann.

    Bei einzelnen wenigen Aufzeichnungen kein Problem, ich muss aber mehrere hundert Aufnahmen zusammenfügen, die in verschiedenen Unterordnern von /video liegen.

    Da ich mich leider mit bash-script nicht so auskenne würde ich mich freuen, wenn ihr mir weiterhelfen könntet.

    Ideal wäre, wenn beim Start eines scriptes nach dem Pfad gefragt wird, ab wo dann rekursiv alle Unterverzeichnisse umgewandelt werden. Die Einzeldateien sollen erhalten bleiben. Die Gesamtdatei soll in das jeweilige Verzeichnis geschrieben werden, wobei der Dateiname als Speichername verwendet werden soll in der Form "Aufzeichnungsname der Sendung.ts"

    Gruß

    eurofinder

    Hardware: Linux4Meida cine S2 DVB-S2 * M3N78-VM *Athlon64 X2 4850e AM2 * 2 GB Ram* WD10EADS Caviar Green 1TB
    Software : gen2vdr

  • Da ich mich leider mit bash-script nicht so auskenne würde ich mich freuen, wenn ihr mir weiterhelfen könntet.

    Da liest du am besten erst mal ein bisschen was zu den Grundlagen: :S

    https://wiki.ubuntuusers.de/Shell/Bash-Skr…r_Anf%C3%A4nger

    http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html

    http://tldp.org/LDP/abs/html/

    http://manpages.ubuntu.com/manpages/xenia…an1/find.1.html

    Mal grob aus der Hüfte geschossen:

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • @seahawk1986

    In die Materie werde ich selbstverständlich auch einarbeiten, schon aus eigenem Interesse. Da es aber gerade etwas schneller gehen muss bin ich daher für die Hilfe sehr dankbar.

    Script läuft soweit gut, aber die generierten Dateien werden unter dem eingegebenen Pfad abgelegt und nicht unter dem jeweiligen Directory, in dem die TS-Dateien der Aufnahme liegen. Könntest du mir da noch weiterhelfen, damit ich nicht die generierten Dateien wieder einzeln in deren Verzeichnisse kopieren muss.

    Gruß

    eurofinder

    Hardware: Linux4Meida cine S2 DVB-S2 * M3N78-VM *Athlon64 X2 4850e AM2 * 2 GB Ram* WD10EADS Caviar Green 1TB
    Software : gen2vdr

  • Ungetestet: Ersetze in Zeile 8 "search_path" durch "path". Aber ich bin mir nicht sicher, ob das ordentlich funktioniert mit dem Überschreiben.

    Display Spoiler

    Ich verwende dafür (etwas umständlicher aber wie ich finde anfangs einfacher lesbar):

    Bash
    #!/bin/bash
    
    PFADE=$(find "/srv/vdr/video.00/" -name 00002.ts -exec dirname {} \; | sort -u)
    
    for f in $PFADE
    do  echo  $f  cd $f  mv 00001.ts all.ts && cat 0*.ts >> all.ts && rm index && rm 000*.ts && mv all.ts 00001.ts  vdr --genindex=$(pwd)
    done

    Das Skript findet zuerst alle Pfade, die eine 00002.ts enthalten.

    In der Schleife wechselt es in den Pfad, und fügt die Dateien zusammen. Das wird etwas umständlich gemacht, weil ich manchmal Probleme hatte (weiß aber nicht mehr, warum genau. Das Skript hat sich mit der Zeit so ergeben ;) )

    Es löscht auch noch die index Datei und ruft vdr genindex auf um die neue Einzeldatei zu indizieren.

    LG,

    Johannes

  • Ungetestet: Ersetze in Zeile 8 "search_path" durch "path".

    Ja, das sollte klappen.

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Danke, probiere ich aus, ansonsten melde ich mich.

    Gruß

    eurofinder

    Hardware: Linux4Meida cine S2 DVB-S2 * M3N78-VM *Athlon64 X2 4850e AM2 * 2 GB Ram* WD10EADS Caviar Green 1TB
    Software : gen2vdr

  • Hallo zusammen

    ich wollte das Thema nochmals kurz aufwärmen...

    Mehrere Fragen:

    1: Muss man nach dem zusammenführen nicht noch den Index neu berechnen lassen ?

    2: das müsste doch so auch mit den alten .vdr Dateien funktionieren ? (auch mit INDEX)

  • Beides ja, für .vdr gibt es ein Programm namens genindex.

    Mein VDR

    VDR1 Mediaportal mit QVT-Board, Intel 810 Chipsatz, Pentium III 1,1 Ghz, 256 Mb Ram, WDC WD5000AAKB, DVB-S TT 1.5, Nova-S, Digidish 33, Gentoo Kernel 2.6.31, VDR 1.4.7
    VDR2 Asrock M3N78D, AMD Phenom II X6 1055T, 8 Gb Ram, Geforce GTX 950, WinTV dualHD, Gentoo Kernel 5.10, VDR 2.6.0, softhddevice
    VDR3 MC-1200, GA-B85M-HD3, Celeron G1840, Quadro P400. 4G Ram, CineS2 6, DuoFlex S2, WinTV dualHD, Gentoo Kernel 5.10, VDR 2.6.0, softhddevice
    TV TX-37LZD85F, AV VSX-520D - Consono 35


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

  • Der vdr macht es selbst, wenn kein index da ist, und man kann ihn auch mit bestimmten Parametern aufrufen, damit er es offline macht.

    Lars.

    vdr2: yaVDR 0.5/softhddevice @ G540, Intel DH67BLB3, Asus GT610/2GB, DDBridge + 2x DuoFlex C/T
    hdvdr: yaVDR unstable/softhddevice @ E8400, Asus P5Q SE Plus, 1x L4M-TwinCI + Flex C/T, 1x Sundtek MediaTV Pro, GT520
    Plugins: | avahi4vdr | dbus2vdr | dynamite | epg2timer | noepg | pvrinput | sundtek |

  • Code
    vdr --genindex=/pfad/zu/recording/name.rec
    vdr --updindex=/pfad/zu/recording/name.rec

    Das zweite triggert gleichzeitig ein Update der Aufnahmeliste im laufenden vdr.

    Lars.

    vdr2: yaVDR 0.5/softhddevice @ G540, Intel DH67BLB3, Asus GT610/2GB, DDBridge + 2x DuoFlex C/T
    hdvdr: yaVDR unstable/softhddevice @ E8400, Asus P5Q SE Plus, 1x L4M-TwinCI + Flex C/T, 1x Sundtek MediaTV Pro, GT520
    Plugins: | avahi4vdr | dbus2vdr | dynamite | epg2timer | noepg | pvrinput | sundtek |

  • Der aktuelle vdr kann für .vdr Dateien keinen index erstellen, das geht nur noch mit genindex

    Mein VDR

    VDR1 Mediaportal mit QVT-Board, Intel 810 Chipsatz, Pentium III 1,1 Ghz, 256 Mb Ram, WDC WD5000AAKB, DVB-S TT 1.5, Nova-S, Digidish 33, Gentoo Kernel 2.6.31, VDR 1.4.7
    VDR2 Asrock M3N78D, AMD Phenom II X6 1055T, 8 Gb Ram, Geforce GTX 950, WinTV dualHD, Gentoo Kernel 5.10, VDR 2.6.0, softhddevice
    VDR3 MC-1200, GA-B85M-HD3, Celeron G1840, Quadro P400. 4G Ram, CineS2 6, DuoFlex S2, WinTV dualHD, Gentoo Kernel 5.10, VDR 2.6.0, softhddevice
    TV TX-37LZD85F, AV VSX-520D - Consono 35


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

Participate now!

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