【问题标题】:How to automate audio track replacement in a video?如何自动替换视频中的音轨?
【发布时间】:2020-10-11 05:29:46
【问题描述】:

我想为自己创建的视频实现音频增强自动化。

视频有共同点

  • 麦克风是一款经典的笔记本电脑麦克风(中等质量,有大量白噪声)

我有一个大胆创建的白噪声配置文件,如果我手动将降噪应用到音轨,音频听起来几乎就像在工作室中创建的一样。

现在我想运行一个应用程序或脚本来:

  1. 对给定的噪声配置应用降噪并将新的音频文件以 MP3 格式写入磁盘
  2. 将新音轨应用到给定视频(用新音轨替换现有音轨)
  3. 将新视频作为新文件保存到磁盘

周围有人可以帮忙吗?我需要决定建造或购买... 而且我不知道是否存在自动化这些步骤的工具......

我的开发需求:

  • 平台中性语言或平台,最好是 java

如果存在应用程序(例如在 linux 下,那么几乎是平台中立的)

  • 应用程序或软件包以及如何处理它的简要说明(例如 audacity 和 ffmpeg,但我没有找到有助于入门的内容)

【问题讨论】:

标签: automation video-processing audio-processing noise-reduction audacity


【解决方案1】:

要求:

  • 袜子
  • ffmpeg

创建一些较长的示例录音,其中您根本不说话,但为您的麦克风和周围环境捕捉一些常见的噪音。

将其转换为 wav,将其命名为 noisesample.wav 并将其保存到您的视频文件夹中。打开命令行,导航到文件夹并执行:

sox noisesample.wav -n noiseprof noise_profile_file

创建文件夹 mp3

mkdir mp3

将每个视频转换为 mp3 以供以后处理

for f in *.mp4; do ffmpeg -i "$f" -c:a libmp3lame "mp3/${f%.mp4}.mp3"; done

将目录更改为 mp3 并对每个 mp3 文件应用 sox 降噪(如 audacitys)

cd mp3    
for f in *.mp3; do sox "$f" "${f%.mp3}_new.mp3" noisered noise_profile_file 0.26

再次切换到父目录,创建目录并将新的mp3文件与mp4文件合并

cd ..
mkdir out
for f in *.mp4; do ffmpeg -i "$f" -i "mp3/${f%.mp4}_new.mp3" -map 0:v -map 1:a -c:v copy -shortest "out/${f%.mp4}.mp4"; done

这应该是你要求的伎俩。 只要您的噪音配置文件保持不变,您就可以在所有视频中重复使用它。

【讨论】:

    猜你喜欢
    • 2016-09-02
    • 1970-01-01
    • 2019-08-07
    • 2021-03-16
    • 1970-01-01
    • 2020-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多