MoviePy 动画文本

MoviePy animated text

我怎样才能让文字在左侧移动而不停止? 我没有看到我使用的方法有问题。而且我认为我使用了正确的动画公式。

from moviepy.editor import *

# Load video
video = VideoFileClip("auto.mp4")

# Video lenght
duration = video.duration

# Video size
w, h = video.size

# Load text from txt
f = open('data.txt', 'r')
data = f.read().replace('\n', '')

# Text for video
txt = (TextClip(data, fontsize=50, font='Amiri-regular',
                color='white')
       .set_duration(duration))

# Transparent text background
txt_col = txt.on_color(size=(video.w + txt.w, txt.h - 10),
                       color=(0, 0, 0), pos=(6, 'center'), col_opacity=0.8)

# Animate text
txt_mov = txt_col.set_pos(lambda t: (max(w / w, int(w - 0.5 * w * t)),
                                     max(5.4 * h / 6, int(0 * t))))

# Overlay text on video
result = CompositeVideoClip([video, txt_mov])
# Render video
result.write_videofile("test.mp4")

代码在我使用时对我有效

 int(w - 0.5 * w * t)

而不是

 max(w/w, int(w - 0.5 * w * t))

所以max(w/w, ...)正在停止动画

试试这个,你会喜欢的:

#for ticker remove -0.2
 
max(w / 2.5, int(-0.2 * w * t)),  
max(h * 4 / 10, int(10 * t)))