思路是通过moviepy
将mp3与图片(jpg)转换成mp4后,再利用ffmpeg
将mp3与srt合并
MP3转换为MP4
相关代码如下:
代码语言:python代码运行次数:0复制# -*- coding:utf-8 -*-
# @author:Ye Zhoubing
# @datetime:2024/8/4 15:05
# @software: PyCharm
"""
将音频与字幕合成为视频(添加图片)
"""
from moviepy.editor import *
## mp3转mp4
# 添加音频文件
audioclip = AudioFileClip(r"audio.mp3")
# 给视频添加图片
videoclip = ImageClip("image.jpg")
# 设置视频时长
videoclip = videoclip.set_duration(audioclip.duration)
# 把音频文件添加到视频剪辑中
videoclip = videoclip.set_audio(audioclip)
# 保存视频文件
videoclip.write_videofile("output_video.mp4", fps=24)
MP4与SRT合并
第二步按理来说其实也能用moviepy
实现,但之前用过ffmpeg
,更熟悉点,所以依然使用ffmpeg
命令。
在当前路径下打开命令行,输入ffmpeg -i "output_video.mp4" -vf subtitles="test.srt" output_srt.mp4
,最终生成结果文件output_srt.mp4