FFmpeg concat - 删除源文件

问题描述:

我有一个文件夹〜100 .ts mpegts文件。我需要将它们连接在一起,并在加入文件时立即删除它们。FFmpeg concat - 删除源文件

我需要列出文件>加入文件#1和#2>删除#1>重复..我如何编写它?

for f in *.ts; do ffmpeg <what here?>; rm $f; done

找到一种方法来做到这一点不FFmpeg的:

find tsfolder -name '*.ts' | while read filename; do cat "$filename" >> tsfolder/out.tmp; rm "$filename"; done 
  • find tsfolder:文件夹tsfolder包含MPEGTS .ts文件
  • do cat "$filename" >> tsfolder/out.tmp:追加由find提供给最终当前文件tsfolder/out.tmp
  • rm "$filename":删除当前文件

例子:

$ ls tsfolder 
20170125.ts 20170126.ts 20170127.ts 
$ find tsfolder -name '*.ts' | while read filename; do cat "$filename" >> tsfolder/out.tmp; rm "$filename"; done 
$ ls tsfolder 
out.tmp 

提示:

  • 使用-maxdepth 1忽略子目录
  • -type f影响的文件只
+0

它是有用的l如果您的计算机上的存储空间有限,并且无法首先删除某些文件,则无法进行连接。 – VixinG