Beiträge von aunone

    Hi,
    ich nochmal ...
    Das konvertieren hat nun geklappt, eines hätte ich da noch ...


    Der Filename enthält auch den Directoryname.
    Beispiel:
    /srv/vdr/video.00/Breaking_Bad/(10~14)_Gedächtnisschwund/2010-11-06.22.40.21-0.rec/... wird zu Breaking_Bad-(10~14)_Gedächtnisschwund.mkv. Da würde mir der letzte Teil reichen ...


    Cheers, aunone

    Hi Alex,
    ich habe das script angepasst :


    - es wurden nicht alle *.vdr file in die Filecollection von ProjectX mit aufgenommen, immer nur 001.vdr
    - seit vdr 1.7.3 ist das recording dir umbenannt worden, das habe ich auch hier gemacht
    - file permissions habe ich für das erzeugte .ts file vorsichtshalber angepasst (wie 001.vdr)


    Ich habe auch dein server perl script aus deinem letzten posting genommen, der konvertiert noch ...


    #!/usr/bin/perl -w
    use warnings ;
    use strict ;
    use File::Find ;
    use File::Copy;


    my $Indir = $ARGV[0] ;
    my @VideoList ;


    find ( \&funcfind , "$Indir" ) ; # alle /.*rec\/001.vdr/ Dateien finden


    foreach my $CurrDir ( @VideoList ) {
    print "found $CurrDir\n" ;
    # for shell
    $CurrDir = dosh($CurrDir) ;
    system ("java -Djava.awt.headless=true -jar /usr/share/java/ProjectX.jar -tots ${CurrDir}0*.vdr") ;
    my $_xxx = ${CurrDir};
    $_xxx =~ s/\\//g;
    $_xxx = "$_xxx/001[pes][remux].ts";
    if( -e "$_xxx" )
    {
    $CurrDir =~ s/\/$//;
    $CurrDir =~ s/\\//g;
    my $owner = (stat("$CurrDir/001.vdr"))[4];
    my $group = (stat("$CurrDir/001.vdr"))[5];
    move("$_xxx","$CurrDir/00001.ts") || die "can not move $_xxx to 00001.ts\n";
    chown($owner, $group, "$CurrDir/00001.ts");
    unlink("$CurrDir/001_log.txt");
    my $recdirpath = mydirname($CurrDir);
    my $newrecdir = myrendir($CurrDir);
    chomp($newrecdir);
    rename("$CurrDir","$recdirpath/$newrecdir") || die "can't rename $CurrDir to $recdirpath/$newrecdir";
    }
    }


    sub mydirname {
    my $_tmp = shift;
    $_tmp =~ s!/?[^/]*/*$!!;
    return $_tmp;
    }


    sub myrendir {
    my $orgdir = shift;
    my @_dir = split(/\//,$orgdir);
    my @_tmp = split(/\./,$_dir[$#_dir]);
    return(sprintf("%s.%s.%s.0-0.rec\n","$_tmp[0]",$_tmp[1],$_tmp[2]));
    }


    #################################################################
    sub dosh { my $in = $_[0] ; #$in =~ s/\s+/\ /g ;
    $in =~ s/(\(\d+)\/(\d+\))/${1}\/${2}/g ; ## das (1/5) problem
    $in =~ s/([\s \( \) \$ \& \§ \" \! \? \[ \] \' \,\@ \| \> \<])/\\$1/g;
    $in =~ s/\\\\/\\/g ;
    return $in ;
    }
    #################################################################
    sub funcfind {
    return unless ( $File::Find::name =~ /.*\/.*rec\/001.vdr$/ ) ;
    $File::Find::name=~s/001.vdr// ;
    push ( @VideoList , $File::Find::name ) ;
    }
    #################################################################



    Cheers, aunone

    Hi Alex,


    ## General settings
    Indir = /srv/vdr/video.00/
    Outdir = /srv/vdr/video.00/film/


    PES -> TS mache ich mit ProjectX :
    java -Djava.awt.headless=true -jar /usr/share/java/ProjectX.jar -tots 0*.vdr


    Dann muss ich leider auch noch das .rec Verzeichniss umbenennen, weil sonst ein vdr --genindex nicht geht (kann ich mir aber auch schenken ... da ich ja eh in .mkv umwandel möchte !), dennoch sucht dein perl script nach dem index File !!!


    Distri.: yavdr-0.3


    project-x:
    Installiert: 0.90.4.00b+cvs2009-10-09-1ubuntu1


    Ich würde mich echt freuen wenn das rund läuft, dann kann ich alle meine alten SD Aufnahmen bequem umwandeln ...


    Cheers, aunone

    Hi,
    ich habe mal vdrtranscode ausprobiert, leider habe ich noch sehr viele alte .vdr Aufnahmen, die musste ich erst ins .ts Format wandeln um dann mit vdrtranscode weiter zu machen.
    Soweit geht das echt gut, nur ist das fertige File irgendwie nicht im $Outdir gelandet ... was ich gefunden habe ist eine File 'filmvdrtrancode_tmp.mkv' im $Indir !!! Im vdrtranscode_server.log konnte ich nicht auffälliges finden, sah alles soweit ganz ok aus.
    Schön wäre da wenn der transcode Server auch diese Aufgabe übernehmen könnte (PES -> TS).
    Cheers, aunone