gpt4 book ai didi

python - 通过删除背景音乐来隔离人声

转载 作者:太空宇宙 更新时间:2023-11-04 04:07:33 27 4
gpt4 key购买 nike

我想隔离人声并删除 mp3 文件中的背景音乐。我不需要完全摆脱背景音乐,但至少将其最小化。

我尝试了 pydub 来帮助处理音频。我尝试了这段删除人声并保留背景音乐的代码。我需要做相反的事情。我尝试切换单声道声道并反转另一个声道,但也没有用。

from pydub import AudioSegment
from pydub.playback import play

# read in audio file and get the two mono tracks
sound_stereo = AudioSegment.from_file(myAudioFile, format="mp3")
sound_monoL = sound_stereo.split_to_mono()[0]
sound_monoR = sound_stereo.split_to_mono()[1]

# Invert phase of the Right audio file
sound_monoR_inv = sound_monoR.invert_phase()

# Merge two L and R_inv files, this cancels out the centers
sound_CentersOut = sound_monoL.overlay(sound_monoR_inv)

# Export merged audio file
fh = sound_CentersOut.export(myAudioFile_CentersOut, format="mp3")

有谁知道解决这个问题的方法是什么?谢谢!

最佳答案

如果您的 sound_CentersOut 已经移除了人声,为什么不使用 sound_CentersOut 的倒置形式在您的 sound_stereo 上应用相位消除>?

# invert sound_CentersOut
sound_CentersOut_inv = sound_CentersOut.invert_phase()

# phase cancellation on original stereo with inverted sound_CentersOut
# the vocals should remain
vocals = sound_stereo.overlay(sound_CentersOut_inv)

请注意,大多数歌曲的中央都会有人声和贝斯,因此您的人声中也可能包含贝斯。如果你真的想做手术,你可能需要做一些 EQ 来过滤掉较低的频率。

关于python - 通过删除背景音乐来隔离人声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56980742/

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