gpt4 book ai didi

bash - 如何在bash中使用ffmpeg从一堆单声道文件中制作一堆立体声文件?

转载 作者:行者123 更新时间:2023-12-04 23:10:12 25 4
gpt4 key购买 nike

我有两个文件夹“左 channel ”和“右 channel ”。每个文件夹都包含同名的单声道文件。示例:“左声道”包含“A.wav”、“B.wav”、“C.wav”,“右声道”包含“A.wav”、“B.wav”、“C.wav”。我需要为每个单声道文件制作立体声文件。
所以我必须结合

ffmpeg -i left.mp3 -i right.mp3 -filter_complex "[0:a][1:a]join=inputs=2:channel_layout=stereo[a]" -map "[a]" output.mp3 
for file in /dir/* do ffmpeg -i ...; done
如何在 bash 中使用 ffmpeg 浏览所有单声道文件并从这些单声道文件中制作一堆立体声文件?

最佳答案

请您尝试以下方法:

#!/bin/bash

lch="Left channel"; rch="Right channel" # directory names of wav files
for f in "dir/$lch/"*.wav; do
fname=${f##*/} # filename such as "A.wav"
outfile="output_${fname%.*}.mp3" # output filename such as "output_A.mp3"
if [[ -f dir/$lch/$fname && dir/$rch/$fname ]]; then
echo ffmpeg -i "dir/$lch/$fname" -i "dir/$rch/$fname" -filter_complex "[0:a][1:a]join=inputs=2:channel_layout=stereo[a]" -map "[a]" "$outfile"
fi
done
它只是将命令行输出为空运行。如果输出看起来不错,请删除 echo并再次运行。
请注意 echo 的输出删除文件名周围的双引号。如果您复制 echo 的输出并在命令行上执行它,它不会很好地工作。

关于bash - 如何在bash中使用ffmpeg从一堆单声道文件中制作一堆立体声文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71354448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com