Batch Video Dateien zusammenführen ab bestimmer Größe und in aplhabetischer Reihenfolge
Hallo zusammen,
meine Kamera nimmt MTS-Dateien in alphabetischer Reihenfolge auf. Leider beträgt die maximale Dateigröße 1,97GB wodurch die Videoaufnahme in mehrere Dateien zerlegt wird.
Ich möchte gern ein Skript entwickelt, dass einen Ordner durchsucht und anhand der Dateigröße (falls diese kleiner als 1,97GB ist) erkennt, dass eine neue Videoaufnahme vorliegt.
Zusammensetzen will ich die die Dateien mit copy /b: Ist ja an sich klar: Solange die Dateien hinzufügen bis sie kleiner als 1.97GB sind.
Die Dateien auswerten möchte ich mit einer for Schleife. Der ganze Vorgang muss natürlich alphabetisch erfolgen, damit die richtige Videoteile zusammengefügt werden. Geht das ganze irgendwie elegant oder muss ich da erst mit dem Befehl dir in eine .txt schreiben und diese dann mit der for Schleife einlesen?
Ehrlich gesagt hat es bei praktischen Umsetzung dann gehabert (bei setlocal ENABLEDELAYEDEXPANSION hörte es dann auf bei mir :D )
Wäre über eine Lösung sehr dankbar!
Vielen Dank schon mal im vorraus
meine Kamera nimmt MTS-Dateien in alphabetischer Reihenfolge auf. Leider beträgt die maximale Dateigröße 1,97GB wodurch die Videoaufnahme in mehrere Dateien zerlegt wird.
Ich möchte gern ein Skript entwickelt, dass einen Ordner durchsucht und anhand der Dateigröße (falls diese kleiner als 1,97GB ist) erkennt, dass eine neue Videoaufnahme vorliegt.
Zusammensetzen will ich die die Dateien mit copy /b: Ist ja an sich klar: Solange die Dateien hinzufügen bis sie kleiner als 1.97GB sind.
Die Dateien auswerten möchte ich mit einer for Schleife. Der ganze Vorgang muss natürlich alphabetisch erfolgen, damit die richtige Videoteile zusammengefügt werden. Geht das ganze irgendwie elegant oder muss ich da erst mit dem Befehl dir in eine .txt schreiben und diese dann mit der for Schleife einlesen?
Ehrlich gesagt hat es bei praktischen Umsetzung dann gehabert (bei setlocal ENABLEDELAYEDEXPANSION hörte es dann auf bei mir :D )
Wäre über eine Lösung sehr dankbar!
Vielen Dank schon mal im vorraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 316552
Url: https://administrator.de/forum/batch-video-dateien-zusammenfuehren-ab-bestimmer-groesse-und-in-aplhabetischer-reihenfolge-316552.html
Ausgedruckt am: 22.04.2025 um 06:04 Uhr
4 Kommentare
Neuester Kommentar

@echo off & setlocal enabledelayedexpansion
set "folderIN=E:\videos"
set "folderOUT=E:\videos\fertig"
set "filter=*.mts"
if not exist "%folderOUT%" md "%folderOUT%" >nul
set fileset=
set counter=1
for %%a in ("%folderIN%\%filter%") DO (
if "!fileset!" NEQ "" (set "fileset=!fileset!+"%%a"") else (set "fileset="%%a"")
if %%~za LSS 2115271393 (
echo File %%a ist kleiner als 1.97GB, starte merging des Sets '!fileset!'
copy /b !fileset! "%folderOUT%\video_!counter!.mts"
set /a counter+=1
set fileset=
)
)

Hier tun sie das.
Ansonsten eine Schleife mit dir /b /s /a-d /on verwenden.
Ich würde auch ein Video-Join Tool bemühen, der TO wollts aber mit copy. Das kann er ja dann machen wie er lustig ist.
R.
Ansonsten eine Schleife mit dir /b /s /a-d /on verwenden.
Ich würde auch ein Video-Join Tool bemühen, der TO wollts aber mit copy. Das kann er ja dann machen wie er lustig ist.
R.