c# - 如何在 c# 中使用 ffmpeg 向 wav 文件添加额外的 5 秒持续时间

标签 c# audio ffmpeg wav audio-streaming

如何在 c# 中使用 ffmpeg 为 wav 文件添加额外的 5 秒持续时间。

这是我使用的示例代码,

ffmpeg -i file1.wav -i file2.wav -c 复制 file3.wav

我需要在 file1.wav 和 file2.wav 之间添加静音持续时间。

如何在不合并 5 秒静音 wav 文件的情况下做到这一点。

“file1.wav + 5 秒静音 + file2.wav”

最佳答案

利用

ffmpeg -i file1.wav -i file2.wav -f lavfi -t 5 -i anullsrc
       -filter_complex "[0][2][1]concat=n=3:v=0:a=1" file3.wav
-f lavfi -t 5 -i anullsrc生成 5 秒的静默流。

如果您想要不同持续时间的间隙,您可以使用拆分和修剪过滤器。
ffmpeg -f lavfi -i anullsrc -i file1.wav -i file2.wav -i file3.wav -i file4.wav
       -filter_complex "[0]asplit=3[s1][s2][s3];
                        [s1]atrim=duration=2[t1];
                        [s2]atrim=duration=5[t2];
                        [s3]atrim=duration=3[t3]; 
                        [1][t1][2][t2][3][t3][4]concat=n=7:v=0:a=1" 
        file3.wav

或者您可以生成多个 anullsrc
ffmpeg -i file1.wav -f lavfi -t 2 -i anullsrc
       -i file2.wav -f lavfi -t 5 -i anullsrc
       -i file3.wav -f lavfi -t 3 -i anullsrc
       -i file4.wav
       -filter_complex
        "[0][1][2][3][4][5][6]concat=n=7:v=0:a=1" 
        file3.wav

关于c# - 如何在 c# 中使用 ffmpeg 向 wav 文件添加额外的 5 秒持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38611059/

相关文章:

c# - 获取任务栏中所有窗口的句柄

powershell - 将文件夹中的每个 .flac 文件转换为 320kbps .mp3,而不丢失元数据

ffmpeg - 如何在不重新编码的情况下使用 ffmpeg 删除帧?

python - tensorflow ffmpeg contrib 输出

c# - 对象引用未设置为对象的实例 #1

c# - .NET 应用程序无法启动并收到 XamlParseException

c# - 使用 Html Agility Pack 抓取 H3 的 InnerText

iphone - 在iPhone 4上录制视频时可以播放音频吗?

javascript - 如何使用音频元素创建连续的曲调

c# - 在 C# (.NET 4.0) 中填充和播放音频缓冲区