背景
最近小朋友喜欢看某动画片,为了不让小朋友总是看手机和电视,于是就想让小朋友听动画片音频。为了提取视频中的音频,学习了python从视频文件(MP4),提取MP3音频的方法。
准备环境
安装moviepy模块。
pip install moviepy
或者
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple moviepy
程序实现
#!/usr/bin/python3
from moviepy.editor import VideoFileClip
import os
# 指定视频文件夹和音频文件夹
input_folder = "/home/Leo/mp4/"
output_folder = "/home/Leo/mp3/"
def convert_video_to_audio(input_path, output_path):
video_clip = VideoFileClip(input_path)
audio_clip = video_clip.audio
audio_clip.write_audiofile(output_path)
def batch_convert_videos(input_folder, output_folder):
if not os.path.exists(output_folder):
os.makedirs(output_folder)
for filename in os.listdir(input_folder):
if filename.endswith(".mp4"):
input_path = os.path.join(input_folder, filename)
output_filename = os.path.splitext(filename)[0] + ".mp3"
output_path = os.path.join(output_folder, output_filename)
convert_video_to_audio(input_path, output_path)
print(f"Converted {filename} to {output_filename}")
def main():
batch_convert_videos(input_folder, output_folder)
if __name__ == '__main__':
main()
总结
本文介绍了利用moviepy模块,实现提取mp4视频中的音频的功能。代码在Ubuntu系统下wsl环境中均可以测试通过。