00:00 / 00:00
![from moviepy.editor import *
from moviepy.video.fx.all import fadein, fadeout
# ===== 配置参数 =====
VIDEO_DURATION = 120 # 2分钟视频
BG_MUSIC = "sad_piano.mp3" # 需准备伤感钢琴曲
FONT_PATH = "STHeiti-Medium.ttc" # 中文字体文件
# ===== 视频片段创建 =====
def create_video():
# 1. 黑色背景作为基板
background = ColorClip((1920, 1080), color=(0,0,0), duration=VIDEO_DURATION)
# 2. 文字片段(经典台词)
texts = [
("“人生大起大落得太快,实在太刺激了”", 8),
("“我连中三元,却输掉一生所爱”", 10),
("“世人笑我太疯癫,我笑他人看不穿”", 12),
("“华府庭院深几许,秋香一笑误终身”", 10),
("“笔墨丹青画尽天下,画不出你的模样”", 12),
("“点秋香的才子,终成孤独的画魂”", 15)
]
text_clips = []
start_time = 5
for text, duration in texts:
txt_clip = TextClip(
text,
fontsize=60,
font=FONT_PATH,
color='#e8d8c8', # 怀旧米黄色
kerning=5,
size=(1600, None)
txt_clip = txt_clip.set_start(start_time).set_duration(duration)
txt_clip = txt_clip.set_position('center')
txt_clip = txt_clip.fx(fadein, 1.5).fx(fadeout, 1.5)
text_clips.append(txt_clip)
start_time += duration + 3
# 3. 老电影效果(叠加纹理)
film_grain = ImageClip("film_grain.png", duration=VIDEO_DURATION)
film_grain = film_grain.resize(width=1920).set_opacity(0.2)
# 4. 添加图片素材(需准备相关剧照)
images = [
("tang_autumn1.jpg", 15, (0.6, 0.6), 20),
("tang_autumn2.jpg", 12, (0.7, 0.7), -20),
("tang_lonely.jpg", 20, (1.0, 1.0), 0)
]
img_clips = []
for idx, (img_path, duration, scale, offset_x) in enumerate(images):
img = ImageClip(img_path).set_duration(duration)
img = img.resize(scale).set_position(("center", 200 + idx*50))
if offset_x:
img = img.set_position(lambda t: ("center" + f"+{offset_x*(t/duration)}", 200 + idx*50))
img = img.fx(fadein, 2).fx(fadeout, 2)
img_clips.append(img.set_start(15 + idx*25))
# 5. 水墨动画效果
ink_clip = VideoFileClip("ink_animation by Hailuo AI Video Generator](https://cdn.hailuoai.com/prod/2025-06-26-17/video_cover/1750929938543486067-cover_78d069588fc7133999cd5b7f6436c80b.jpeg?x-oss-process=image/resize,w_540/format,webp)
创意描述
复制
from moviepy.editor import *
from moviepy.video.fx.all import fadein, fadeout
# ===== 配置参数 =====
VIDEO_DURATION = 120 # 2分钟视频
BG_MUSIC = "sad_piano.mp3" # 需准备伤感钢琴曲
FONT_PATH = "STHeiti-Medium.ttc" # 中文字体文件
# ===== 视频片段创建 =====
def create_video():
# 1. 黑色背景作为基板
background = ColorClip((1920, 1080), color=(0,0,0), duration=VIDEO_DURATION)
# 2. 文字片段(经典台词)
texts = [
("“人生大起大落得太快,实在太刺激了”", 8),
("“我连中三元,却输掉一生所爱”", 10),
("“世人笑我太疯癫,我笑他人看不穿”", 12),
("“华府庭院深几许,秋香一笑误终身”", 10),
("“笔墨丹青画尽天下,画不出你的模样”", 12),
("“点秋香的才子,终成孤独的画魂”", 15)
]
text_clips = []
start_time = 5
for text, duration in texts:
txt_clip = TextClip(
text,
fontsize=60,
font=FONT_PATH,
color='#e8d8c8', # 怀旧米黄色
kerning=5,
size=(1600, None)
txt_clip = txt_clip.set_start(start_time).set_duration(duration)
txt_clip = txt_clip.set_position('center')
txt_clip = txt_clip.fx(fadein, 1.5).fx(fadeout, 1.5)
text_clips.append(txt_clip)
start_time += duration + 3
# 3. 老电影效果(叠加纹理)
film_grain = ImageClip("film_grain.png", duration=VIDEO_DURATION)
film_grain = film_grain.resize(width=1920).set_opacity(0.2)
# 4. 添加图片素材(需准备相关剧照)
images = [
("tang_autumn1.jpg", 15, (0.6, 0.6), 20),
("tang_autumn2.jpg", 12, (0.7, 0.7), -20),
("tang_lonely.jpg", 20, (1.0, 1.0), 0)
]
img_clips = []
for idx, (img_path, duration, scale, offset_x) in enumerate(images):
img = ImageClip(img_path).set_duration(duration)
img = img.resize(scale).set_position(("center", 200 + idx*50))
if offset_x:
img = img.set_position(lambda t: ("center" + f"+{offset_x*(t/duration)}", 200 + idx*50))
img = img.fx(fadein, 2).fx(fadeout, 2)
img_clips.append(img.set_start(15 + idx*25))
# 5. 水墨动画效果
ink_clip = VideoFileClip("ink_animation
Hailuo 02
提示词优化
768p
内容由AI生成