赞
踩
大家好,我是空空star,本篇给大家分享一下Moviepy模块之视频添加字幕。上一篇讲了最基本的字幕添加,而且添加的字幕也仅仅是英文,如果字幕是中文,并且我们希望设置字幕的字体、大小、颜色,那该如何设置呢?
本篇使用的moviepy版本如下:
Name: moviepy
Version: 1.0.3
demo.srt
1
00:00:00,000 --> 00:00:03,000
这是第一条字幕
2
00:00:03,000 --> 00:00:06,000
这是第二条字幕
3
00:00:06,000 --> 00:00:11,000
这是第三条字幕
from moviepy.editor import *
from moviepy.video.tools.subtitles import SubtitlesClip
local = ‘/Users/kkstar/Downloads/video/’
video = VideoFileClip(local+‘demo.mp4’)
创建一个 lambda 函数,使用 TextClip 类创建一个文本片段,传入的参数是 txt,字体是 ‘STHeitiMedium.ttc’,字体大小是 20,颜色是黄色。
generator = lambda txt: TextClip(txt, font=‘STHeitiMedium.ttc’, fontsize=20, color=‘yellow’)
subtitles = SubtitlesClip(local+‘demo.srt’, generator)
subtitles = subtitles.set_position((‘center’, ‘bottom’))
video_with_subtitles = CompositeVideoClip([video, subtitles])
video_with_subtitles.write_videofile(local+‘result.mp4’)
主要思想
:使用lambda函数传递文本,使用TextClip类来设置字体、大小以及颜色。然后利用SubtitlesClip类来生成完整的字幕剪辑,从demo.srt文件读取时间码和文本,并自动适应字幕长度。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。