c3tracker:repair

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
c3tracker:repair [2025/09/14 10:15] v0ttic3tracker:repair [2026/07/26 22:17] (current) – external edit 127.0.0.1
Line 1: Line 1:
-== C3Tracker: Repair+## C3Tracker: Repair
  
 subpage of [[:c3tracker]] subpage of [[:c3tracker]]
Line 5: Line 5:
 Es gibt verschiedene Arten von Defekten, sowie verschiedene Lösungsansätze: Es gibt verschiedene Arten von Defekten, sowie verschiedene Lösungsansätze:
  
-== Defekte Timestamps+## Defekte Timestamps
  
 Falls das Recording zu früh gestoppt, oder neu gestartet wurde kann es Probleme mit den Timestamps im TS geben. Dies äußert sich z.B. dadurch das Shotcut oder VLC beim Abspielen des uncut.ts keine Timestamps mehr anzeigt. Falls das Recording zu früh gestoppt, oder neu gestartet wurde kann es Probleme mit den Timestamps im TS geben. Dies äußert sich z.B. dadurch das Shotcut oder VLC beim Abspielen des uncut.ts keine Timestamps mehr anzeigt.
  
-=== Kappute Schnipsel verschieben+### Kappute Schnipsel verschieben
  
 Im einfachsten Fall reicht es die kaputten Schnipsel in einen Unterordner zu verschieben, das Recording Ticket im Tracker auf recorded zu setzen und es dadurch vom entsprechenden Worker neu, und dadurch ohne diese defekten Schnipsel, auf prepared setzen zu lassen. Im einfachsten Fall reicht es die kaputten Schnipsel in einen Unterordner zu verschieben, das Recording Ticket im Tracker auf recorded zu setzen und es dadurch vom entsprechenden Worker neu, und dadurch ohne diese defekten Schnipsel, auf prepared setzen zu lassen.
  
-=== Timestamps mit ffmpeg reparieren+### Timestamps mit ffmpeg reparieren
  
 Falls das nicht funktioniert kann man die Timestamps mit ffmpeg neu setzen und diese als repair-File (siehe 'Manually repairing a Recording') zu setzen. Falls das nicht funktioniert kann man die Timestamps mit ffmpeg neu setzen und diese als repair-File (siehe 'Manually repairing a Recording') zu setzen.
Line 26: Line 26:
  
  
-== Manually repairing a Recording (TS)+## Manually repairing a Recording (TS)
 Das reparierte Material wird im gleichen Format wie das Capture zur Verfügung gestellt, also MPEG2-TS mit 4 Audiospuren etc.pp. Dabei wird im Prozess zwar noch vor dem Schnitt eingesetzt, ein Abstecken mit KDEnlive erfolgt aber **nicht** nochmal. Das Material sollte also bereits zugeschnitten sein (siehe auch nächster Abschnitt). Allerdings darf das ersetzte Material **nicht** bereits Intro oder Outro beinhalten, da dies beim Encoding angefügt wird. Das reparierte Material wird im gleichen Format wie das Capture zur Verfügung gestellt, also MPEG2-TS mit 4 Audiospuren etc.pp. Dabei wird im Prozess zwar noch vor dem Schnitt eingesetzt, ein Abstecken mit KDEnlive erfolgt aber **nicht** nochmal. Das Material sollte also bereits zugeschnitten sein (siehe auch nächster Abschnitt). Allerdings darf das ersetzte Material **nicht** bereits Intro oder Outro beinhalten, da dies beim Encoding angefügt wird.
  
Line 37: Line 37:
 Wenn es einen Fuse/Mountfehler gibt kann es sein, dass die Mounts noch aus dem alten Durchlauf schief sind. Wenn es einen Fuse/Mountfehler gibt kann es sein, dass die Mounts noch aus dem alten Durchlauf schief sind.
  
-=== Camera backup Audio stereo to 2x stereo+### Camera backup Audio stereo to 2x stereo
  
 Soll der Kameraton benutzt werden liegt dieser meist als L: original R: translation vor. Das muss im repair.ts auf 2 stereo streams geaendert werden das sollte mit dieser zeile funktionieren: Soll der Kameraton benutzt werden liegt dieser meist als L: original R: translation vor. Das muss im repair.ts auf 2 stereo streams geaendert werden das sollte mit dieser zeile funktionieren:
Line 44: Line 44:
 </code> </code>
  
-=== Hints for simple .ts repairs with ffmpeg+### Hints for simple .ts repairs with ffmpeg
  
 For basic repairs (for example, removing sections from the middle of a recording), you can use ''ffmpeg'' directly. This approach not only offers excellent performance but also preserves secondary video and audio tracks with minimal effort. For basic repairs (for example, removing sections from the middle of a recording), you can use ''ffmpeg'' directly. This approach not only offers excellent performance but also preserves secondary video and audio tracks with minimal effort.
Line 70: Line 70:
  
  
-== Hints for repairing / manual cutting with KDEnlive+## Hints for repairing / manual cutting with KDEnlive
  
 Die grundsätzliche Bedienung von KDEnlive wird hier nicht erklärt. Es ist zu beachten, dass KDEnlive (derzeit) nicht in der Lage ist, mehrere Video- oder Audiospuren zu exportieren. Für Slide-Video-Spuren oder übersetztes Audio muss man also mehrfach exportieren und die Dateien am Ende zu einer Repair- oder Masterdatei zusammenmuxen. Die grundsätzliche Bedienung von KDEnlive wird hier nicht erklärt. Es ist zu beachten, dass KDEnlive (derzeit) nicht in der Lage ist, mehrere Video- oder Audiospuren zu exportieren. Für Slide-Video-Spuren oder übersetztes Audio muss man also mehrfach exportieren und die Dateien am Ende zu einer Repair- oder Masterdatei zusammenmuxen.
Line 84: Line 84:
 **Achtung** da die Software "nur" libavcodec und libavformat verwendet, ist die Angabe von Filtern im Exportprofil prinzipbedingt nicht möglich. Ein Denoising, wie es in der Pipeline für die Masterfiles gemacht wird, muss als Filter auf die entsprechenden Videostücken geklickt werden! **Achtung** da die Software "nur" libavcodec und libavformat verwendet, ist die Angabe von Filtern im Exportprofil prinzipbedingt nicht möglich. Ein Denoising, wie es in der Pipeline für die Masterfiles gemacht wird, muss als Filter auf die entsprechenden Videostücken geklickt werden!
  
-=== Lokal schneiden, remote rendern+### Lokal schneiden, remote rendern
  
 Dafür muss auf dem Encoder (oder der Server auf dem gerendert wird), muss melt installiert werden: `sudo apt install melt`. Beim Schneiden mit KDEnvlive sollten die Quelldateien schon an gleicher stelle wie auf dem Encoder liegen. Dafür muss auf dem Encoder (oder der Server auf dem gerendert wird), muss melt installiert werden: `sudo apt install melt`. Beim Schneiden mit KDEnvlive sollten die Quelldateien schon an gleicher stelle wie auf dem Encoder liegen.
Line 90: Line 90:
 Wenn man fertig ist im KDEnlive auf rendern klicken, das Profil `VOC H.264 main video track with audio` auswählen, den richtigen Exportpfad setzen und auf `Generate Script` klicken. Jetzt sollte in `$HOME/Videos/kdenlive-renderqueue/` eine passende `.mlt`-Datei liegen. Diese muss nun auf den Encoder kopiert werden. Hier kann nun in einem Screen/tmux `melt $DATEINAME.mlt` gestartet werden. Wenn man fertig ist im KDEnlive auf rendern klicken, das Profil `VOC H.264 main video track with audio` auswählen, den richtigen Exportpfad setzen und auf `Generate Script` klicken. Jetzt sollte in `$HOME/Videos/kdenlive-renderqueue/` eine passende `.mlt`-Datei liegen. Diese muss nun auf den Encoder kopiert werden. Hier kann nun in einem Screen/tmux `melt $DATEINAME.mlt` gestartet werden.
  
-== Convert to TS+## Convert to TS
  
 (Not necessary for repairing) (Not necessary for repairing)
Line 105: Line 105:
 </code> </code>
  
-== remux TS file+### Convert intro without audio to ts 
 +Input can be any file that can be read by ffmpeg. The intro needs a audio track in order to be compatible with the tracker pipeline. 
 + 
 +<code> 
 +ffmpeg -loop 1 -i 123.mp4 -ar 48000 -ac 1 -f s16le -i /dev/zero -ar 48000 -ac 1 -f s16le -i /dev/zero -ar 48000 -ac 1 -f s16le -i /dev/zero -ar 48000 -ac 1 -f s16le -i /dev/zero  -map 0:v -c:v mpeg2video -q:v 0 -aspect 16:9 -map 1:0 -map 2:0 -map 3:0 -map 4:0 -shortest -f mpegts 123.ts 
 +</code> 
 + 
 +## remux TS file
 <code> <code>
 ffmpeg -v verbose -y \ ffmpeg -v verbose -y \
Line 113: Line 120:
 </code>können </code>können
  
-=== source replacement with remapped audio streams + av-delay+### source replacement with remapped audio streams + av-delay
  
 <code> <code>
Line 119: Line 126:
 </code> </code>
  
-==Audio Stream Reihenfolge reparieren via Jobfile.xml+## Audio Stream Reihenfolge reparieren via Jobfile.xml
 Issue: Audio Spuren vertauscht, Translation + Main in falscher Reihenfolge Issue: Audio Spuren vertauscht, Translation + Main in falscher Reihenfolge
 Ausgangslagen: Tracker steht auf to cut, AudioSpuren sind vertauscht Ausgangslagen: Tracker steht auf to cut, AudioSpuren sind vertauscht
Line 136: Line 143:
   -    - 
  
 +## Kamerastream in definiertem Zeitintervall durch Slidestream ersetzen
 +Ausgangslagen: Tracker steht auf to cut
 +  - Sich selbst als encoding worker zuweisen
 +  - Track nach Wiki Anleitung schneiden
 +  - Warten bis Recording auf finalized steht
 +  - TS- HD master mp4 aufrufen
 +  - Job file runterladen
 +  - Job file in Editor öffnen
 +  - Nach [1:v:0] scale=1920:1080, fps=25 [1v025];
 +  - Einfügen von [1v025][1:v:1]overlay=enable='between(t,<intimeinseconds>-<jobfiletimein>,outtimeinseconds-<jobfiletimein>)':shortest=1 [1v025];
 +  - Zur Bestimmung des Zeitinterfalls Zeit aus Shotcut in Sekunden umwandeln. 
 +  - - Intime muss immer ein Zeitstempel sein
 +  - - Outtime kann Zeitstempel bzw. inf, wenn bis Talkende benötigt wird, sein.
 +  -  FFMPEG Job auf minion ausführen.
 +  - Master im Tracker auf Encoded stellen.
 +  - HD Master muss unassigned werden
  
- +## Audiospur bearbeiten
-== Audiospur bearbeiten+
  
 Beim Checken fällt auf, dass das Audio defekt ist z.B.  Beim Checken fällt auf, dass das Audio defekt ist z.B. 
Line 167: Line 189:
 ffmpeg -i 10397-hd-async.mp4 -itsoffset 0.200 -i 10397-hd-async.mp4 -c copy -map 0:v:0 -map 0:v:1 -map 1:a:0 -map_metadata 0 10397-hd.mp4 ffmpeg -i 10397-hd-async.mp4 -itsoffset 0.200 -i 10397-hd-async.mp4 -c copy -map 0:v:0 -map 0:v:1 -map 1:a:0 -map_metadata 0 10397-hd.mp4
 </code> </code>
-== Copyright aus audio mit hilfe von YouTube entfernen  +## Copyright aus audio mit hilfe von YouTube entfernen
  
   * Copyright meldung im YT frontend öffen und "audio ersetzen" klicken   * Copyright meldung im YT frontend öffen und "audio ersetzen" klicken
Line 189: Line 211:
    * anschließend (re)releasen (''Publishing.YouTube.Enable'' am Ticket auf no setzen!), danach Subformate neu encoden und releasen    * anschließend (re)releasen (''Publishing.YouTube.Enable'' am Ticket auf no setzen!), danach Subformate neu encoden und releasen
  
-=== mit Avidemux+### mit Avidemux
 Etwas unsauber aber, falls es schnell gehen muss und eh nur nach YouTube veröffentlicht wird: Etwas unsauber aber, falls es schnell gehen muss und eh nur nach YouTube veröffentlicht wird:
  
Line 202: Line 224:
  
  
-== Manually repairing a Recording (DV)+## Manually repairing a Recording (DV)
 Old SD process, mostly irrelevant. Old SD process, mostly irrelevant.
  
Line 211: Line 233:
 Now place a ''Record.SourceReplacement'' propery on the Recording-Ticket and reset it to the ''recorded''-State. It will now be prepared from the repair-File instead of the Capture-Snippets. The repair-process will create a fuse-mount that needs to be cut again, at least ''inframe != 0'' - **this is very different from TS!** Now place a ''Record.SourceReplacement'' propery on the Recording-Ticket and reset it to the ''recorded''-State. It will now be prepared from the repair-File instead of the Capture-Snippets. The repair-process will create a fuse-mount that needs to be cut again, at least ''inframe != 0'' - **this is very different from TS!**
  
-== Cut the last second off a recording +## Cut the last second off a recording
  
 When the outro has additional frames (bacause of a non empty output folder after a --debug run) the files can be shortened by downloading them from media and using the fowllowing script. When the outro has additional frames (bacause of a non empty output folder after a --debug run) the files can be shortened by downloading them from media and using the fowllowing script.
Line 234: Line 256:
 </code> </code>
  
-== ReLive to fusemount+## ReLive to fusemount
  
 If you for example screwed up a recording, it could be useful to use the ReLive-Snippets as a source for the fuse-ts. This python-script might help you. The Fahplan-ID has to be given as a argument. If you for example screwed up a recording, it could be useful to use the ReLive-Snippets as a source for the fuse-ts. This python-script might help you. The Fahplan-ID has to be given as a argument.
Line 259: Line 281:
 </code> </code>
  
 +## Render-Settings in DaVinci Resolve
 +
 +Wenn der Repair mit Davinci gemacht wird und die Datei gerendet wird, sollten folgende Dinge berücksichtigt werden:
 +
 +### Generelles
 +
 +* In der Deliver-Page muss im File-Tab das Setting `Render without timecode` aktiviert werden.
 +
 +### Talk mit Translations und Multispur-Audio
 +
 +Davinci kann mehrere Audio-Spuren exportieren. Dabei muss beachtet werden, dass jede Sprache in einer Spur ist und in der ersten Spur der Orginal-Ton ist, in der 2. die Translation 1, usw.
  
 +* In der Deliver-Page muss im Audio-Tab das Dropdown "Output Track 1" auf `All Timeline Tracks` gestellt werden. 
  • c3tracker/repair.1757844950.txt.gz
  • Last modified: 2025/09/14 10:15
  • by v0tti