sub_text = SubtitlesClip(subtitles_path, fontsize=24, color='white') TypeError: __init__() got an unexpected keyword argument 'fontsize'
时间: 2023-12-07 07:02:23 浏览: 236
Use functions Subtitles.zip_matlab function
非常抱歉,我看来在之前的代码中给出了一个过时的`SubtitlesClip`函数调用。从MoviePy 1.0.0版本开始,`SubtitlesClip`类的初始化参数已经改变了。
请使用以下代码修改您的代码:
```python
sub_text = SubtitlesClip(subtitles_path, fontsize=24, color='white', stroke_width=0).set_fps(video.fps)
```
这里我们添加了一个`stroke_width`参数,将它的值设置为0,以便在字幕文本周围没有黑色描边。同时,我们使用了`set_fps`函数来将字幕的帧率设置为与视频相同的帧率。
以下是完整的修改后的代码:
```python
from moviepy.editor import *
from moviepy.video.tools.subtitles import SubtitlesClip
# set input and output file paths
video_path = r"D:\迅雷下载\j疾速.mp4"
subtitles_path = r"D:\迅雷下载\字幕.srt"
output_path = r"D:\迅雷下载\j疾速_with_subs.mp4"
# load video and audio
video = VideoFileClip(video_path)
audio = video.audio
# create text clip with subtitles and set duration to match video
sub_text = SubtitlesClip(subtitles_path, fontsize=24, color='white', stroke_width=0).set_fps(video.fps)
# set text clip to appear at bottom of video
sub_text = sub_text.set_position(('bottom'))
# combine video, audio, and subtitles
result = CompositeVideoClip([video, sub_text.set_audio(audio)])
# write video file to disk
result.write_videofile(output_path, codec='libx264')
```
请注意,尽管上面的代码可以将字幕添加到视频中,但仍需要对字幕样式进行进一步设置以满足您的需求。例如,您可以使用`set_style`函数来设置字体、大小、颜色和其他样式属性。
阅读全文