20260603 056 黏土风格《以爱为伴 护航成长》

背景需求:

学校要求6月9日前,每个班级老师交一个AI作品,今天有两个班级老师让我代做AI视频。

豆包每天免费10分,做5个10秒视频,就是50秒。只能做一个完整故事视频。

所以我用家属的手机号,又注册了一个豆包账户,做了第二个视频。

这是一个空的豆包账户

图片生成

图片下载

视频生成

视频下载

旁白、字幕、音频

'''
测试所有edge_tts普通话中文音频库(含普通话\方言\粤语\台湾国语) 保存音频包含音频库名称
Deepseek,阿夏
20260524
'''
from pathlib import Path
import edge_tts
import asyncio

# ========== 配置区域 ==========
# 文本文件所在文件夹
TEXT_FOLDER = Path(r"D:\test\20桌面素材\20260603《以爱为伴 护航成长》风格:黏土\旁白")  # 修改为你的文件夹路径
TEXT_FILE_NAME = "旁白.txt"                # 文本文件名

# 音频输出路径
SAVE_DIR = TEXT_FOLDER
SAVE_DIR.mkdir(parents=True, exist_ok=True)

# ============================================================
# Edge TTS 普通话声音 (zh-CN) 完整列表
# ============================================================
# 更新时间:根据搜索结果整理,建议运行 edge-tts --list-voices 获取最新列表
# ============================================================

# -------------------- 女声 --------------------
# 可用
VOICE = "zh-CN-XiaoxiaoNeural"   # 晓晓 - 温暖亲切,最常用的女声,支持多种情感风格[citation:2][citation:3]
VOICE_NAME = "晓晓"

# VOICE = "zh-CN-XiaoyiNeural"     # 晓伊 - 活泼可爱,元气少女音[citation:3]
# VOICE_NAME = "晓伊"

# VOICE = "zh-CN-XiaoxuanNeural"   # 晓萱 - 冷静清冽
# VOICE_NAME = "晓萱"

# -------------------- 男声 --------------------
# 可用
# VOICE = "zh-CN-YunyangNeural"    # 云扬 - 专业播音员风格,沉稳有力,适合新闻播报[citation:2][citation:3]
# VOICE_NAME = "云扬"

# VOICE = "zh-CN-YunxiNeural"      # 云希 - 阳光年轻,活泼开朗,少年音[citation:2][citation:3]
# VOICE_NAME = "云希"

# VOICE = "zh-CN-YunjianNeural"    # 云健 - 标准播音腔,适合旁白、叙事[citation:2][citation:3]
# VOICE_NAME = "云健"

# VOICE = "zh-CN-YunxiaNeural"     # 云夏 - 10岁小男孩童声
# VOICE_NAME = "云夏"


# -------------------- 方言/地区口音 --------------------
# 可用
# VOICE = "zh-CN-liaoning-XiaobeiNeural"  # 晓北 - 辽宁口音(东北话)[citation:9]
# VOICE_NAME = "辽宁晓北"

# VOICE = "zh-CN-shaanxi-XiaoniNeural"    # 晓妮 - 陕西口音[citation:9]
# VOICE_NAME = "陕西晓妮"

# -------------------- 香港粤语 (zh-HK) --------------------
# 可用
# VOICE = "zh-HK-HiuGaaiNeural"      # 晓佳 - 标准粤语女声,自然亲切[citation:1][citation:10]
# VOICE_NAME = "粤语晓佳"

# VOICE = "zh-HK-HiuMaanNeural"      # 晓曼 - 标准粤语女声[citation:1][citation:8]
# VOICE_NAME = "粤语晓曼"

# VOICE = "zh-HK-WanLungNeural"      # 云龙 - 标准粤语男声,沉稳自然[citation:1][citation:8]
# VOICE_NAME = "粤语云龙"

# -------------------- 台湾国语 (zh-TW) --------------------
# 可用
# VOICE = "zh-TW-HsiaoChenNeural"    # 晓晨 - 台湾国语女声,温柔细腻[citation:8]
# VOICE_NAME = "台湾晓晨"

# VOICE = "zh-TW-HsiaoYuNeural"      # 晓宇 - 台湾国语女声,语调柔和[citation:8][citation:9]
# VOICE_NAME = "台湾晓宇"

# VOICE = "zh-TW-YunJheNeural"       # 云哲 - 台湾国语男声[citation:8]
# VOICE_NAME = "台湾云哲"

# 音频参数
RATE = "-20%"      # 语速稍慢
PITCH = "+0Hz"     # 标准音调
VOLUME = "+10%"    # 音量适中
# ============================

async def generate_audio():
    # 构建完整的文本文件路径
    txt_path = TEXT_FOLDER / TEXT_FILE_NAME
    
    # 检查文件是否存在
    if not txt_path.exists():
        print(f"❌ 错误:找不到文件 {txt_path}")
        return
    
    # 读取文本文件内容(UTF-8编码)
    with open(txt_path, "r", encoding="utf-8") as f:
        text_content = f.read()
    
    # 去除首尾空白
    text_content = text_content.strip()
    
    if not text_content:
        print("❌ 错误:文本文件为空")
        return
    
    # 生成音频文件名(格式:原文件名- 声音名称 .mp3)
    # 注意:这里保留原文件名(不含扩展名),加上" - 声音名称"
    base_filename = txt_path.stem  # 获取不含扩展名的文件名
    audio_filename = f"{base_filename} - {VOICE_NAME}.mp3"
    out = SAVE_DIR / audio_filename
    
    # 生成语音
    tts = edge_tts.Communicate(
        text_content,
        VOICE,
        rate=RATE,
        pitch=PITCH,
        volume=VOLUME
    )
    
    await tts.save(str(out))
    
    print(f"✅ 已生成:{audio_filename}")
    print(f"📁 来源文件:{txt_path}")
    print(f"🎤 使用声音:{VOICE_NAME} ({VOICE})")
    print(f"📊 文本总字数:{len(text_content)} 字")
    print(f"💾 保存位置:{out}")

if __name__ == "__main__":
    asyncio.run(generate_audio())
    print("\n🎉 音频生成完成!")


# 不可用
# VOICE = "zh-CN-XiaohanNeural"    # 晓涵 - 甜美柔和,抒情风格[citation:2][citation:3]
# VOICE_NAME = "晓涵"  # 添加声音的中文名称,用于文件名

# VOICE = "zh-CN-XiaomengNeural"   # 晓梦 - 软萌萝莉音[citation:3]
# VOICE_NAME = "晓梦"

# VOICE = "zh-CN-XiaomoNeural"     # 晓墨 - 知性智慧,支持多种情感风格[citation:2]
# VOICE_NAME = "晓墨"

# VOICE = "zh-CN-XiaoruiNeural"    # 晓睿 - 成熟专业[citation:2]
# VOICE_NAME = "晓睿"

# VOICE = "zh-CN-XiaoshuangNeural" # 晓双 - 活泼明亮(童声)
# VOICE_NAME = "晓双"

# VOICE = "zh-CN-XiaoxiaNeural"    # 晓霞 - 成熟温柔
# VOICE_NAME = "晓霞"

# VOICE = "zh-CN-XiaoyanNeural"    # 晓颜 - 自然平常
# VOICE_NAME = "晓颜"

# VOICE = "zh-CN-XiaoyouNeural"    # 晓悠 - 软萌童声(7岁左右)
# VOICE_NAME = "晓悠"

# VOICE = "zh-CN-XiaozhenNeural"   # 晓珍 - 温暖关切
# VOICE_NAME = "晓珍"

# VOICE = "zh-CN-XinranNeural"     # 欣然 - 清新自然
# VOICE_NAME = "欣然"

# VOICE = "zh-CN-XiaochenNeural"   # 晓晨 - 温柔治愈[citation:3]
# VOICE_NAME = "晓晨"



# 不能用
# VOICE = "zh-CN-YunfengNeural"    # 云枫 - 年轻清亮[citation:5]
# VOICE_NAME = "云枫"

# VOICE = "zh-CN-YunhaoNeural"     # 云皓 - 25岁男性,声音比云枫更低沉[citation:5]
# VOICE_NAME = "云皓"

# VOICE = "zh-CN-YunyeNeural"      # 云野 - 35-40岁男性,纪录片旁白风格[citation:5]
# VOICE_NAME = "云野"

# VOICE = "zh-CN-YunzeNeural"      # 云泽 - 45-50岁男性,慈祥和蔼的深沉嗓音[citation:5]
# VOICE_NAME = "云泽"

音乐用视频里面自带的背景乐

视频合成

视频长度根据旁白适当加速(缩短)、减速(拉长)

20260603 056 黏土风格《以爱为伴 护航成长》

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐