06, MoviePy audio音频处理

2,624 阅读1分钟

由于音频相关的api比较少, 因此audioclip和audio.fx放在了一起。一个简单的demo差不多就能满足了我们的基本用处。

# coding:utf-8
from moviepy.editor import *
from moviepy.audio.fx import *

video = VideoFileClip('../demo/result.mp4', audio=False)
music = AudioFileClip('../demo/music.mp3')
out_music = music.fx(afx.volumex, 2).fx(afx.audio_loop, duration = video.duration).fx(afx.audio_fadein, 0.5).fx(afx.audio_fadeout, 1)
video1 = video.set_audio(out_music)

video1.write_videofile('../demo/result_audio.mp4',audio=True)
  1. afx.volumex

音乐的音量, 为原来音量的系数

  1. afx.audio_loop

音乐是否循环播放, 如果视频时长30s 而音乐10秒, 设置为True后,音乐就会循环播放, 后面20s依旧有音乐

  1. afx.audio_fadein, afx.audio_fadeout

音乐淡入和淡出

  1. video.set_audio

将视频和音乐合并

总结:

至此, 本系列的文章终于告一段落, 讲解了大部分常用的api, 也有很多没有讲到了, 这个大家可以去官网上看看, 后续有计划会更新几个demo, 来灵活使用这些api。 当然对于一些复杂的绘图大家可能会用到cv2, PIL等库