ffmpeg - 转换文件但保留与原始文件相同的修改日期?
ffmpeg - Convert files but keep Same Date Modification as Original?
所以我想从 ffmpeg 开始,powershell 并不是我的强项,但我一直在使用以下 powershell 命令将特定目录中的每个 .flac 文件转换为 320K 文件。
dir *.flac | foreach {ffmpeg -i $_.FullName -c:v copy -b:a 320k $_.FullName.Replace('flac', 'mp3')}
这完全符合我的要求,无需转码任何专辑封面,但我想合并一种方法,以便创建的新 .mp3 文件具有 .flac 文件的相同日期修改值。这样的事情甚至可能吗?
audio_ex.flac = Date Modification: 1/1/2010
audio_ex.mp3 = Date Modification: 9/8/2021
应该改为
audio_ex.flac = Date Modification: 1/1/2010
audio_ex.mp3 = Date Modification: 1/1/2010
我有一个包含 6K 个文件的文件夹,并且希望每个原始日期 mod 都匹配新创建的文件,所以如果我可以执行上述命令并且日期 mod 时间匹配一次执行,那将是理想的。
我考虑过使用第 3 方工具手动更改每个文件 mod 时间,但这太耗时了。
尝试以下操作(请注意,别名已扩展为其基础 cmdlet 名称):
Get-ChildItem -Filter *.flac | ForEach-Object {
$outFile = $_.FullName -replace '\.flac$', '.mp3'
ffmpeg -i $_.FullName -c:v copy -b:a 320k $outFile
(Get-Item -LiteralPath $outFile).LastWriteTime = $_.LastWriteTime
}
所以我想从 ffmpeg 开始,powershell 并不是我的强项,但我一直在使用以下 powershell 命令将特定目录中的每个 .flac 文件转换为 320K 文件。
dir *.flac | foreach {ffmpeg -i $_.FullName -c:v copy -b:a 320k $_.FullName.Replace('flac', 'mp3')}
这完全符合我的要求,无需转码任何专辑封面,但我想合并一种方法,以便创建的新 .mp3 文件具有 .flac 文件的相同日期修改值。这样的事情甚至可能吗?
audio_ex.flac = Date Modification: 1/1/2010
audio_ex.mp3 = Date Modification: 9/8/2021
应该改为
audio_ex.flac = Date Modification: 1/1/2010
audio_ex.mp3 = Date Modification: 1/1/2010
我有一个包含 6K 个文件的文件夹,并且希望每个原始日期 mod 都匹配新创建的文件,所以如果我可以执行上述命令并且日期 mod 时间匹配一次执行,那将是理想的。
我考虑过使用第 3 方工具手动更改每个文件 mod 时间,但这太耗时了。
尝试以下操作(请注意,别名已扩展为其基础 cmdlet 名称):
Get-ChildItem -Filter *.flac | ForEach-Object {
$outFile = $_.FullName -replace '\.flac$', '.mp3'
ffmpeg -i $_.FullName -c:v copy -b:a 320k $outFile
(Get-Item -LiteralPath $outFile).LastWriteTime = $_.LastWriteTime
}