親愛的小伙伴們!前段時間,有一位同事家的可愛小孩參加了一場英語演講比賽。同事找到我,希望我能幫個忙,把講視頻中的人聲去掉,只提取出其中相應的伴奏。今天,我就來和大家分享一下究竟如何實現從 MP4 視頻中分離人聲,并且成功提取出伴奏視頻,相信這個小技巧會在很多時候派上用場哦。
提取音頻
首先我們利用python從視頻中提取出mp3格式的音頻
from moviepy.editor import VideoFileClip # 輸入文件路徑 input_video = r"123.mp4" # 輸出文件路徑 output_audio = r"123.mp3" # 加載視頻文件 video = VideoFileClip(input_video) # 提取音頻并保存為 MP3 文件 video.audio.write_audiofile(output_audio) print(f"轉換完成!音頻文件已保存為 {output_audio}")
工具下載
利用工具進行人聲分離,這里我們直接適用工具SpleeterGUI直接操作,省去了復雜的python依賴配置,下載后直接使用。
下載網址:SpleeterGUI | Maken It So
然后下載相應的spleeter模型,這里我已經下載打包好,需要的小伙伴可以關注我私信領取。
將下載好的模型放置到對應的位置。
分離的三種模式,各位可根據需要自行選擇。
視頻合成
最后將伴奏與原視頻進行合成,生成新的伴奏視頻。
from moviepy import * from moviepy.editor import * import glob ? video_dirs = glob.glob('視頻.mp4') audio = AudioFileClip("伴奏.mp3") # 提取音軌 for video_dir in video_dirs:video = VideoFileClip(video_dir) # 讀入視頻video = video.set_audio(audio) # 將音軌合成到視頻中video.write_videofile("all.mp4") # 輸出
好了,一個只有伴奏的視頻做好了,希望得到大家的關注和點贊,我們下期見。