To h264
VDR Aufnahme mit ffmpeg oder libav in h264 umwandeln
Platzersparnis: bei Aufzeichnungen von ÖRs mit großen Bitraten Faktor 3 und mehr.
Beschreibung
Funktioniert mit .vdr und .ts
Ziel wird in .rec Ordner + 1 min gespeichert
Video wird nach h264 konvertiert
Audio mp2 wird nach aac konvertiert
Profil 1
- unter 160 kb/s --> 96 kb/s
- bis 192 kb/s --> 128 kb/s
- über 192 kb/s --> 192 kb/s
Profil 2
- unter 160 kb/s --> 72 kb/s
- bis 192 kb/s --> 96 kb/s
- über 192 kb/s --> 128 kb/s
AC3 wird kopiert
Alle Tonspuren bleiben erhalten
Untertitel werden kopert
info.vdr wird ergänzt mit "L 99"
Softhddevice spielt das Ergebnis klaglos ab.
Menü:
/mnt/3TB/video/U/%Unsere_Welt_war_eine_schöne_Lüge/2012-03-29.22.27.21-0.rec #0:0[0xd2]: mpeg2video 720x576 16:9 #0:1[0xdc]( deu mp2 stereo 256 kb/s #0:2[0xdd]( mis mp2 mono 128 kb/s #0:3[0xe1]( deu ac3 stereo 448 kb/s ffmpeg Version 1.0.7 Format=ts Anzahl Dateien: 3 mkv= audio_auswahl= subtitel=yes join=concat aac_br_select=2 72,96,128 scale= press Enter (a1,a2,p,c,n,o,a,m,?)
Hilfe dazu:
? a audio_auswahl a1,a2 aac_br_select c cat f ffmpeg m mkv n no o concat p projectx t tsmuxer
Einstellungen
Schalter im script:
aac_br_select=2 # 1 = 96,128,192 2 = 72,96,128 stop=yes # Bestätigung bei wichtigen Meldungen + Menüs #mkv=yes # Matroska Format erzeugen #audio_auswahl=yes # Reihenfolge und Auswahl der Audiospuren join=ffmpeg # concat ffmpeg >= 1.1, wird bei < 1.1 autom. abgeschaltet join=cat # concat für ffmpeg < 1.1 mittels cat, # bei ffmpeg >= 1.1 wird autom. builtin benutzt # funktioniert bei neueren TS-Files join=concat # avconv + ffmpeg >= 1.0 #join=tsmuxer # Alternative zu cat bei TS, Auf A/V-Synchronität achten #join=projectx # projectx for fixing problems # empfehlenswert bei .vdr # sehr empfehlenswert bei .vdr > 1 Datei und > 1 Audiospur #demux_x264=yes # nach demux mit x264 wandeln #demux_aac=yes # nach demux in aac wandeln # wenn beide an sind wird 00001.ts direkt mit tsmuxer erzeugt # von Vorteil bei problemat. ffmpeg Versionen # Muxing after projectx #mux=tsmuxer #mux=mkvmerge # testing only mux=ffmpeg # works fine #scale="-vf scale=720:576:interl=1" # HD --> SD crf=21 # Qualität, default 23, kleiner ist besser gop="-g 50" # verbessert die Navigation, default 250
Parameter lassen sich am Einfachsten durch '#' deaktivieren (die wichtigsten Schalter lassen sich über das Menü steuern).
join=projectx
Voraussetzung:
ProjectX installiert.
hiermit lassen sich fehlerhafte Aufzeichnungen reparieren. Bei .vdr Dateien erkennt ffmpeg nicht die richtige Reihenfolge der Audio-Streams, das führt zu Problemen bei Aufzeichnungen, die aus mehreren Dateien bestehen und mehr als einen Audio-Stream haben. Hier sollte unbedingt mit projectx gearbeitet werden.
Eine echte Herrausforderung war die korrekte Zuordnung der Audio-Streams, hierzu musste ich das Projectx-Protokoll parsen.
join=tsmuxer
Voraussetzung:
tsmuxer installiert.
Alternative zu cat bei TS, hierbei ist unbedingt auf A/V-Synchronität zu achten. Tsmuxer führt an den Schnittstellen gewisse Reperaturen durch, die von Vorteil sein können, aber, wie gesagt, zu Synchron-Problemen führen können.
#aaclib="libfaac" aaclib="libfdk_aac" # Fraunhofer Library - bessere Qualität
Die Fraunhofer Library ist aufgrund der besseren Qualität zu empfehlen.
temp=temp
Verzeichnis, wird von projectx benutzt. Arbeite ich über NFS (Netzwerk), sollte hier ein lokales Laufwerk angegeben werden.
videodir=/video
Videoverzeichnis, um vdr mitzuteilen, das Verzeichnis neu einzulesen.
vdr=$VDRDIR/vdr
Aufruf von vdr um index neu zu erstellen.
Diskussion im vdr-Portal:
to_h264