Dateianhang 'processTS.py'
Herunterladen 1 #!/usr/bin/python
2 # -*- coding: utf8 -*-
3 # Dieses Script für TS-Segmente welche vom Linux VDR bei der Aufnahme generiert werden per Binärkopie
4 # zu einer TS-Datei zusammen und benennt die Datei nach den Titelinfos in der Info-Datei, welche vom
5 # VDR generiert werden.
6
7 # Importiere notwendige Module
8 import os, glob, shutil, sys
9
10 # Quellpfad wird vom VDR per Postrecording Hook oder Editing Hook an das Script übergeben
11 source_path = sys.argv[1]
12
13 print "Quellpfad " + source_path
14
15 # Dateinamen plus Pfad zur zugehörigen Info-Datei zusammenbasteln
16 source_info = source_path + "/info"
17
18 # Titelinfo aus Info-Datei auslesen
19 f = open(source_info)
20 info_lines = f.readlines()
21 f.close()
22
23 Titel = ""
24 Subtitel = ""
25
26 for line in info_lines:
27 if line[:1] == 'T':
28 Titel = line
29 if line[:1] == 'S':
30 Subtitel = line
31
32
33 # Unnötige Whitespaces & Sonderzeichen putzen
34 Titel = Titel[2:].strip() + '-' + Subtitel[2:].strip()
35 Titel = Titel.replace (" ", "_")
36 Titel = Titel.replace ("?", "_")
37 Titel = Titel.replace (".", "_")
38 Titel = Titel.replace ("/", "_")
39 Titel = Titel.replace ("(", "_")
40 Titel = Titel.replace (")", "_")
41
42 # Namen der Zieldatei inklusive Extension generieren
43 # Zielpfad liegt im Homeverzeichnis des Hauptbenutzers und gehört der
44 # Gruppe VDR mit Schreibrechten
45 Zieldatei = '/home/<euer-user>/Pfad/zu/den/VDR-Videos/' + Titel + '.ts'
46
47 sourcefiles = []
48
49 # Alle ts-Dateien der Aufnahme finden
50 for filename in glob.iglob(os.path.join(source_path, '*.ts')):
51 sourcefiles.append (filename)
52
53 # Array mit den Quelldateinamen sortieren um sie in der korrekten Reihenfolge anzuhängen
54 sourcefiles = sorted(sourcefiles)
55
56 # Zieldatei zum Schreiben öffnen
57 destination = open(Zieldatei, 'wb')
58
59 # Alle ts-Dateien der Aufnahme binär zusammenfügen
60 for source_ts in sourcefiles:
61 print 'Merging ' + source_ts
62 shutil.copyfileobj(open(source_ts, 'rb'), destination)
63
64 # Zieldatei schließen
65 destination.close()
Gespeicherte Dateianhänge
Um Dateianhänge in eine Seite einzufügen sollte unbedingt eine Angabe wie attachment:dateiname benutzt werden, wie sie auch in der folgenden Liste der Dateien erscheint. Es sollte niemals die URL des Verweises ("laden") kopiert werden, da sich diese jederzeit ändern kann und damit der Verweis auf die Datei brechen würde.Sie dürfen keine Anhänge an diese Seite anhängen!