1. 先提前视频的音频
ffmpeg -i input_video.mp4 -vn -acodec libmp3lame output_audio.mp3
2. 把提前出来的音频变声(速度会变慢,到是视频变长)
python wavdeal.py
3. 把速度改成和最开始的音频速度一直
python wavdealspeed.py
4. 把变声后的音频和视频合并
ffmpeg -i input_video.mp4 -i output_audio_fast.mp3 -c:v copy -c:a aac -strict experimental -map 0:v:0 -map 1:a:0 output_video.mp4
FFmpeg介绍
要给一个视频添加新的音频,你可以使用 FFmpeg 工具来实现。你需要先提取视频的音频流,然后将新的音频文件合并到视频中。以下是一个示例命令:
ffmpeg -i input_video.mp4 -i new_audio.mp3 -c:v copy -c:a aac -strict experimental -map 0:v:0 -map 1:a:0 output_video.mp4
解释:
-i input_video.mp4
:指定输入的视频文件。-i new_audio.mp3
:指定输入的新音频文件。-c:v copy
:表示视频流进行拷贝,保持不变。-c:a aac
:表示音频流使用 AAC 编码。-strict experimental
:指定使用实验性的 AAC 编码器。-map 0:v:0
:表示从第一个输入文件中选择第一个视频流。-map 1:a:0
:表示从第二个输入文件中选择第一个音频流。output_video.mp4
:指定输出的视频文件名。
执行此命令后,FFmpeg 将会从输入的视频文件中提取视频流,从新的音频文件中提取音频流,然后将视频流和音频流合并为一个新的 MP4 视频文件。你可以将 input_video.mp4
替换为你实际的视频文件名,new_audio.mp3
替换为你希望添加的新音频文件名,output_video.mp4
替换为你希望保存的输出视频文件名。
请确保你已经安装了 FFmpeg,并且已经将其添加到系统的环境变量中,这样你就可以在命令行中直接调用 FFmpeg 命令。
源码:https://github.com/ycltpe/tools
Leave a Reply