[英]Compositing two soundtracks with moviepy
I am trying to add an audio to a clip. 我正在尝试将音频添加到剪辑。 Problem is it's replacing the original soundtrack with the new one ie pond5.wav. 问题在于它用新的原声带替换了原声带,即,punk5.wav。 I first concat some small clips, each of these clips contain original soundtrack. 我首先合并一些小片段,每个片段都包含原始的配乐。 The end result doesn't contain the original soundtracks, however. 但是,最终结果不包含原始配乐。 I need both original and new soundtracks (the new sound track's volume must be lower than the original). 我既需要原始音轨,也需要新音轨(新音轨的音量必须低于原始音轨)。 I need clues how to modify the following code and composite two soundtracks. 我需要有关如何修改以下代码并合成两个音轨的线索。
media = "promo"
clips = [VideoFileClip(clip)
for clip in get_filepaths(media)
if ntpath.basename(clip).startswith('clip_')
and ntpath.basename(clip).endswith('.mp4')
]
vclip = concatenate_videoclips([clips[0],
clips[1].crossfadein(0.3),
clips[2].crossfadein(0.3),
clips[3].crossfadein(0.3),
],
method="compose",
padding=-0.3)
audio = AudioFileClip(os.path.join(folder,"pond5.wav"))
audio = audio.audio_loop(duration=vclip.duration)
cc = vclip.set_audio(audio
.set_duration(vclip.duration)
.volumex(0.3)
.audio_fadein(1.0)
.audio_fadeout(1.0)
)
cc.write_videofile(os.path.join(folder, "demo.mp4"), fps=60, codec="libx264", bitrate="20000k", threads=6)
You need to create a composite audio clip from vclip
's audio and set this as the audio. 您需要根据vclip
的音频创建复合音频片段,并将其设置为音频。 Something like (did not test) : 诸如此类(未测试):
composite = CompositeAudioClip(clicp.audio + [audio])
# set audio returns a new instance...
final = vclip.set_audio(composite)
final.writevideofile(...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.