HOWTO: VDRAdmin Autotimer mit regular Expressions

  • Hallo Leute,


    ich hab nirgends gescheite Beispiele gefunden und mich damit ein wenig rumgeplagt. Ich dachte ich enthalte euch das nicht vor. Irgendwann mal werd ich das auch wieder vergessen haben und hier nachschauen können ;).


    Die Texte zwischen (also ohne!) die " könnt ihr direkt in VDRAdmin eingeben. VDRAdmin erkennt an den "/"'s, dass es sich um eine RegExp handelt.


    testen könnt ihr das ganze auch wunderbar auf der Kommandline mit grep, dann aber ohne die "/"'s am Anfang und Ende.


    # grep "\[TagesTipp\].*Action \*\*" /var/cache/vdrdevel/epg.data


    Beispiele


    Finde den Tagestipp von TVMovie mit einer Bewertung von midnestens zwei Sternchen bei Action:


    "/\[TagesTipp\].*Action \*\*/"


    Nehme einen Film mit einem bestimmten Originaltitel auf. Hier als Beispiel "Lawrence of Arabia". Man beachte TITLE und nicht TITEL!


    "/Originaltitle.*Lawrence/"


    Nehme nur die JAG Folgen aus der 2004er Staffel auf. Das ist sehr praktisch, denn es kommen immer zwei Folgen Sonntags. Eine aus der alten Staffel (die kenne ich schon) und eine aus der neuen Staffel.


    "/J\.A\.G\..*Year.*2004/"


    Nehme alle Filme mit Sean Connery auf.


    "/Cast:.*Sean Connery/"


    Nehme alle Tipps von TVMovie auf (nicht nur den Tagestipp!) aus dem Genre Liebesfilm oder Krimi (WAF!)


    "/Genre.*(Krimi|Liebes).*Rating.*Tipp/"


    Auch noch gern genommen (KAF=Kids ...)


    "/Maus.*Spezial/"


    Vergesst nicht beim Autotimer alle drei Häkchen zu setzen für das Durchsuchen von Titel, Untertitel UND Beschreibung!


    DAS ist der Vorteil von offenen Lösungen und der GPL. Alles was gut ist und laeuft wird einfach wiederverwendet.


    Enjoy!

  • Yohoo!


    Super! Einfach nur klasse.


    Ja, ich kann sehr gut mit RegEx umgehen und verwende sie bei der bash-Programmierung auch intensiv, z.T. auch im Autotimer.


    Aber daß die Geschichte auch so genial funktioniert... 8)


    Und das steht alles im "normalen" EPG drinnen? Wahnsinn! :D


    Danke für die Tips!

    Glotze: yaVDR (ASRock Q1900M, 4GB RAM, DD Cine S2 V6.5, ZOTAC GT630 (Rev. 2)
    Server: HP ProLiant MicroServer G8, VMware ESXi 5.5 :P

    Einmal editiert, zuletzt von knebb ()

  • ab ins Wiki damit.


    . . . aber schnell :D

    Mein anderer VDR ist (auch) ein EPIA
    1)VIA M10000-Nehemiah, 160+120G Samsung; NEC 1300A; YY A106; LCD20x4 ...
    2) ctvdr+e-tobi ; C3M266+1,2GHz-Nehmiah; 160G Samsung + 4x500G Seagate SATA; NEC3500; TT-Case; DVB-S 1.3+4MB + Nova ; gLCD 240x128 ...
    . . .TB rulez. . .

  • ... ich vermisse nur die großflächigen, schwarz-gelben Warnhinweisen für den Fall, dass man sich mal vertippt...


    Ein unbeschränkter AutoTimer (also nicht auf einen Kanal oder Uhrzeit beschränkten) mit nem Fehler in der RegExp, die auf so ziemlich alles passt, macht unheimlichen Spaß... die timers.conf wächst da gern mal auf ein paar Megabyte und VDR beginnt, mal eben nen Dutzend Recordings gleichzeitig aufzunehmen...


    Zudem fehlt in der Beschreibung noch die Suche ohne Berücksichtigung von Groß-Kleinschreibung, und die Art und Weise, wie VDR-Admin Titel, Subtitel und Beschreibung zusammensetzt. Siehe HISTORY.


    Viele Grüße, Mirko

  • Klar sollte man mit RegExp bei Autotimern vorsichtig sein. Gerade deshalb habe ich ja hingewiesen auf die Möglichkeit das vorher per grep zu testen. Erst wenn die grep Zeile auch wirklich nur die Results zurueckliefert, die man haben will, kommt die Zeile in den VDRAdmin.


    Und wen interessiert wie man ohne Berücksichtigung der Groß- und Kleinschreibung greppt oder welche unbeschraenkten Möglichkeiten es noch gibt, der möge hier beginnen weiterzulesen.


    Gruss und happy grepping.

  • ... leider falsch, weil VDR-Admin ausschließlich den Parameter "i" akzeptiert, aber keine weiteren Parameter für den regulären Ausdruck.


    Steht aber auch in der HISTORY, auf die ich so oft verweise und die trotzdem so häufig ignoriert wird.


    Viele Grüße, Mirko

  • @Mirko:


    OK, wieder was neues erfahren. TNX a lot. Woher kommt die Restriktion im VDRAdmin? VDRAdmin nutzt doch die Perl RegExpr. Was bei denen möglich ist sollte doch auch in VDRAdmin funktionieren. Geht das in Perl genrell nicht?

  • Die Restriktion kommt von mir -- ich sehe keine sinnvolle Möglichkeit, g, m, o, s und x vernünftig bei einer einzeilen Regexp auf einen einzeiligen String anzuwenden. Gerade m würde eine mehrfache Auswertung erfordern, g ist ohnehin gesetzt.


    Die Slashes markieren lediglich einen regulären Ausdruck (d.h. da zwischen steht die Regexp, die VDR-Admin dann benutzt), ich hätte genauso gut irgend ein anderes Zeichen benutzen können.


    Nur damit es nicht zu Missverständnissen kommt: Ich hab nichts gegen ein Howto für die RegExp-Funktion von VDR-Admin -- sie ist halt nur gefährlich, und das muss man dem Benutzer unbedingt sagen. Ich befürchte, dass sich zu viele Anwender von den Möglichkeiten blenden lassen, aber mit dem mächtigen Werkzeug nicht wirklich umgehen können -- das ist der Grund, warum ich in der HISTORY auch ausdrücklich auf den entsprechenden Perl-Code verweise, falls jemand nähere Infos braucht: Wer den Code gar nicht versteht, wird sehr wahrscheinlich auch Probleme mit korrekten Perl-RegExp bekommen. Schließlich gibt es bei Perl-RegExp durchaus andere Schreibweisen bzw. Quoting-Vorschriften als z.B. bei sed oder grep.


    Viele Grüße, Mirko

  • Hi,


    seit meinem Upgrade von ctvdr4 auf 4.5 funktionieren meine Autotimer im Vdradmin eingegeben nicht mehr.
    So habe ich regelmäßig das C'T Magazin mit dem Suchstring
    /c't magazin/i
    gefunden und aufgenommen.
    In der neuen Version findet der Autotime nichts mehr.
    Was mache ich falsch?


    Gruß
    Karsten

    Hermes 651
    2 * Nexus S 2.1
    LCD 128x64
    c't VDR 4.5: 1.3.41-1ctvdr2
    Kernel : 2.6.12-ct-1

  • Keine Ahnung, was da nicht funktioniert.


    Mein letzter Stand ist, dass die c't einen gepatchten VDR-Admin verwendet, du wirst dich wohl oder übel direkt da hin wenden müssen.


    Viele Grüße, Mirko

  • Hallo snoozevdr,


    ist zwar schon was her, aber ich bin grad erst zufällig drauf gestoßen. Vermutlich liegt das Problem am Apostroph. Ich hatte den gleichen Autotimer programmiert, von Anfang an habe ich das Sonderzeichen aber umgangen:


    /c.t magazin/i

    Debian Squeeze Bullseye mit vdr 1.7.18 2.6.0-1~etobi1 e-tobi/multipatch, AMD Phenom-CPU, 4 GB RAM, Technotrend S2-6400, Digital Devices Cine S2 V6, 2 TByte HDD für Videodaten.

Jetzt mitmachen!

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