klaus20
Goto Top

Verzeichnis durchsuchen und den Namen ersetzen

Vielleicht kann mir jemand von den Profis weiterhelfen.
Habe Videoaufnahmen im *.ts Format und möchte gerne die Aufnahmen in mp4 umwandeln
und in einen anderes Verzeichnis kopieren.
z.B.: Im Aufnahme Ordner habe ich Aufnahne1.ts und Aufnahme2.ts.
Nun suche ich nach einer Lösung die folgendes macht.
1. Alles mit *.ts suchen
2. Den Befehl Filename mit der gefundenen *.ts austauschen und den Befehl ausführen
ffmpeg -i Filename.ts -c copy Filename.mp4

3. Solange wiederholen bis keine *.ts mehr vorhanden ist.
4. Alle *.mp4 verschieben in den Speicher Ordner.
5. Alles im Aufnahme Ordner löschen.

Gruß Klaus

Content-Key: 9400515992

Url: https://administrator.de/contentid/9400515992

Printed on: February 21, 2024 at 05:02 o'clock

Mitglied: 8030021182
Solution 8030021182 Dec 03, 2023, updated at Dec 04, 2023 at 09:13:38 (UTC)
Goto Top
@echo off &setlocal enabledelayedexpansion
set "quelle=d:\aufnahme"  
set "ziel=d:\speicher"  
for %%a in ("%quelle%\*.ts") do (  
    ffmpeg -i "%%a" -c copy "%ziel%\%%~na.mp4"  
    if !errorlevel! == 0 del "%%a"  
)
Tutorial zur FOR-Schleife

G. Katrin
Member: Klaus20
Klaus20 Dec 03, 2023 at 13:29:21 (UTC)
Goto Top
Vielen Dank - Klappt wunderbar.

Gruß und noch einen schönen Adventsonntag

Klaus
Member: Klaus20
Klaus20 Dec 04, 2023 at 07:41:27 (UTC)
Goto Top
Ist es möglich daß nur die Files gelöscht werden die ohne Fehler verarbeitet wurden ?

Gruß Klaus
Mitglied: 8030021182
8030021182 Dec 04, 2023 updated at 09:16:29 (UTC)
Goto Top
Zitat von @Klaus20:

Ist es möglich daß nur die Files gelöscht werden die ohne Fehler verarbeitet wurden ?

s. Anpassung oben.
Member: Klaus20
Klaus20 Dec 05, 2023 at 11:57:10 (UTC)
Goto Top
Ich hoffe daß ich dazu die letzte Frage habe.
Kann ich vorher prüfen ob das Verzeichnis leer ist, wenn Nein den Befehl ausführen ?

Gruß Klaus
Mitglied: 8030021182
8030021182 Dec 05, 2023 updated at 14:13:18 (UTC)
Goto Top
Zitat von @Klaus20:

Ich hoffe daß ich dazu die letzte Frage habe.
Kann ich vorher prüfen ob das Verzeichnis leer ist, wenn Nein den Befehl ausführen ?
Das geschieht doch schon im For-Loop ..., wenn keine *.ts im Ordner sind wird auch nichts gemacht!
Member: Klaus20
Klaus20 Dec 05, 2023 at 16:25:48 (UTC)
Goto Top
Vielen Dank - Sorry hatte den del Befehl immer noch dazu .
Member: Klaus20
Klaus20 Dec 14, 2023 at 09:18:45 (UTC)
Goto Top
Hallo Katrin,
könntest Du mir bitte bei der Erweiterung meiner (eigentlich Deiner) Batch Datei helfen.
Ich möchte gerne daß die konvertierten Datein mit Datum und Zeit in eine Textdatei geschrieben werden.
Habe damit angefangen weiß nur nicht wie ich die fertigen mp4's aufgelistet bekomme ?

Gruß Klaus

set "quelle=D:\Empfang\TS\quelle"    
set "ziel=D:\Empfang\TS\Ziel"    
SET Meldung=%date:~0% - %time:~0,8% - "??? Konvertieren"  

for %%a in ("%quelle%\*.ts") do (    
    ffmpeg -i "%%a" -c copy -f mp4 "%ziel%\%%~na.mp4"    
    if %errorlevel% == 0 (del "%%a") else (echo %Meldung% %errorlevel% >>D:\Empfang\TS\Ziel\fehler.txt)  
)
echo %Meldung% >> Konvertiert.txt
Mitglied: 8030021182
8030021182 Dec 14, 2023 updated at 10:47:09 (UTC)
Goto Top
@echo off &setlocal enabledelayedexpansion
set "quelle=d:\aufnahme"    
set "ziel=d:\speicher"    
for %%a in ("%quelle%\*.ts") do (    
    ffmpeg -i "%%a" -c copy "%ziel%\%%~na.mp4"    
    if !errorlevel! == 0 (
        >>"FeddischFeierabend.txt" echo %date% %time% - %%a  
        del "%%a"  
    ) else (
        >>"ScottyWirHabenEinProblem.txt" echo ExitCode !errorlevel!: %date% %time% - %%a  
    )
)
Never ending story ma wieder ... ­čÉč
Member: Klaus20
Klaus20 Dec 14, 2023 at 13:30:50 (UTC)
Goto Top
Erst mal vielen Dank !!!
Ich hoffe auch daß "die Story auch mal wieder endet".
Aber da es bisher alles funktioniert versuchte ich das zu erweitern.
Wahrscheinlich fehlen mir einige Basics !! Umsomehr bin ich froh und dankbar
über die Hilfe !!

Gruß Klaus
Member: Klaus20
Klaus20 Dec 15, 2023 updated at 13:15:24 (UTC)
Goto Top
Ich hoffe zu diesen Thema eine letzte Frage.
Habe im Verzeichnis quellverzeichnis neben a.ts, b.ts. u.a. auch noch folgende Dateien a.eit und a.meta del *.* klappt leider nicht ? Möchte aber das ganze Verzeichnis leer machen.
del "%%a"   

Gruß Klaus

P.S.: Habe eine Lösung gefunden zwar nicht so elegant aber es funktioniert.
if errorlevel 0 goto Ende

:Ende
del *. /q  \\Diskstation\video\VU+
EXIT