当前位置: 首页 > 工具软件 > MoviePy > 使用案例 >

Moviepy模块之视频去除声音、添加音乐

裴俊能
2023-12-01


前言

大家好,我是空空star,本篇给大家分享一下Moviepy模块之视频去除声音、添加音乐。
本篇使用的moviepy版本如下:
Name: moviepy
Version: 1.0.3


一、视频去除声音

1.1 引入库

from moviepy.video.io.VideoFileClip import VideoFileClip

1.2 加载视频文件

local = '/Users/kkstar/Downloads/video/'
video = VideoFileClip(local+"demo.mp4")

1.3 去除视频声音

video_without_audio = video.without_audio()

1.4 保存无声视频

video_without_audio.write_videofile(local+"output_video.mp4")

二、视频添加音乐

2.1 引入库

from moviepy.audio.io.AudioFileClip import AudioFileClip
from moviepy.video.io.VideoFileClip import VideoFileClip

2.2 加载视频文件

local = '/Users/kkstar/Downloads/video/'
video = VideoFileClip(local+"demo.mp4")

2.3 加载音频文件

audio = AudioFileClip(local+"demo.mp3")

2.4 裁剪多余音频

if audio.duration>video.duration:
    audio = audio.subclip(0,video.duration)

2.5 将音频文件添加到视频中

video = video.set_audio(audio)

2.6 保存新的视频文件

video.write_videofile(local+"new_video.mp4")

总结

without_audio:从视频中删除音频轨道,只保留视频轨道。具体来说,它会将视频文件中的音频部分剪切掉,只保留视频部分,返回一个新的仅包含视频的视频剪辑副本。这个函数常用于需要仅保留视频部分的情况,比如在制作无声视频或者需要单独编辑音频和视频的时候。
set_audio:用于将音频替换或添加到视频剪辑中的函数。它可以接受一个音频文件路径或一个AudioFileClip对象作为参数,并将其与视频剪辑合并。如果视频剪辑已经具有音频,set_audio函数还可以用于替换现有的音频。需要注意的是,set_audio函数返回一个新的视频剪辑对象,而不是修改原始视频剪辑。因此,如果您想在原始视频剪辑中替换音频,您需要将结果重新分配给原始变量。
subclip:用于从一个视频剪辑中提取一个子剪辑,可以指定起始时间和结束时间,只保留这个时间段内的视频。该函数的参数包括剪辑起始时间、剪辑结束时间以及可选的命名参数如音频和视频编解码器。该函数返回一个新的视频剪辑对象,可以再次编辑和导出。subclip函数是Moviepy中非常有用的函数之一,可以帮助用户快速提取需要的视频片段,提高视频编辑效率。

 类似资料: