这个项目是个完整AI工作流,神奇之处在于能把文字小说全自动转换成短视频!
项目首页
整个过程巨智能:
- 先抓取小说内容➡️
- 用Gemini划分场景➡️
- 使用AI生成精美配图➡️
- 合成流畅语音➡️
- 添加精准字幕➡️
- 最后输出完整视频!
作为一个又想做小说推广又想搞内容变现的技术控,这简直是救星!特别是它的技术栈也很香:
- DeepSeek-V3和Gemini做内容分析
- Stable Diffusion生成配图
- CosyVoice实现自然语音
- Whisper模型生成字幕
最让我惊喜的是代码架构非常优雅,模块化设计让每个环节都可以单独调优。
多线程处理让效率超高,我昨晚测试一本小说1小时就完成了几十个精美片段,发到平台反馈超棒!
如果你也是技术党,这个项目绝对值得研究 – 不仅能学到各种AI模型的实战应用,还能轻松搭建自己的内容创作流水线。对于自媒体人,这简直是效率神器,帮你把优质小说作品快速变现!
项目概述
TaleStreamAI是一个利用人工智能技术将小说文本自动转换为短视频的工具链。
该项目能够自动抓取网络小说内容,将其分解为多个场景,为每个场景生成合适的图像、旁白和字幕,最终合成为高质量的短视频。
B站有长达6个小时的成片视频,有兴趣的可以去看看!
成片视频
这种自动化工作流程极大地简化了小说内容视频化的过程,让创作者能够高效地将文学作品转化为视觉化的内容,适合在各种短视频平台上分享。
技术架构
该项目利用了多种先进的AI模型和技术工具:
- 大语言模型: DeepSeek-V3:用于润色文本提示词 Gemini-2.0-flash:用于生成章节分镜
- 语音合成: 硅基智能-FunAudioLLM/CosyVoice2-0.5B:实现自然流畅的语音旁白
- 图像生成: 秋葉 aaaki forge 整合包:生成符合故事情境的画面
- 语音识别: Whisper模型:用于生成精确的字幕
- 视频处理: FFmpeg-GPU加速版:高效处理视频合成
核心执行流程
项目的执行流程由以下几个关键步骤组成:
1. 获取小说内容(main.py)
获取小说内容
def get_book_content(book_id: str) -> str: # 从起点网站获取书籍内容 # 保存至 /data/book/{book_id}/{book_id}.html
这一步骤负责从起点网站抓取指定小说的内容,使用了BeautifulSoup库解析HTML,提取章节信息和正文内容。系统会将抓取到的每个章节保存为单独的文本文件,为后续处理做准备。
2. 生成章节分镜(board.py)
def generate_board(book_id: str): # 使用Gemini模型将小说内容转换为分镜信息 # 保存至 data/book/{book_id}/storyboard/{章节索引}.json
这一步骤使用Gemini大语言模型将文本内容分解为多个场景(分镜),每个分镜包含相应的文本内容和镜头语言描述。具体来说:
- 将长章节分块处理,避免超出模型上下文限制
- 每个分镜包含id、text(文本内容)、lensLanguage_cn(中文镜头语言)和lensLanguage_en(英文镜头语言)等信息
- 处理结果以JSON格式保存,方便后续处理
3. 润色提示词(prompt.py)
def refine_prompt(text: str, board_info: str, client=None) -> str: # 使用DeepSeek-V3模型优化分镜提示词 # 将优化结果保存回原JSON文件这一步骤使用DeepSeek-V3模型对分镜中的文本和镜头语言进行加工,生成适合AI绘图模型的详细提示词。
项目使用多线程并行处理,大幅提高效率。优化后的提示词保存在lensLanguage_end字段中。
4. 生成图像(image.py)
def create_Image(prompt: str) -> str: # 调用Stable Diffusion API生成图像 # 根据优化后的提示词生成对应场景的图片
这一步骤将优化后的提示词发送给Stable Diffusion API(免费),为每个分镜生成高质量的图像。系统会:
- 使用分镜的lensLanguage_end字段作为绘图提示词
- 生成的图像保存在data/book/{book_id}/images/{章节}/{id}.jpg
- 在JSON文件中记录图像文件路径
5. 生成音频(audio.py)
def generate_audio(text: str, max_retries=3): # 调用CosyVoice2模型将文本转换为语音 # 支持多API Key轮询以提高并发性能这一步骤使用CosyVoice2语音合成模型,将分镜的文本内容转换为自然流畅的语音旁白。系统支持多线程处理和API密钥轮询,以提高并发性能,生成的音频保存为MP3格式。
6. 生成字幕(tts.py)
def generate_subtitle(audio_file, output_srt=None, model_size='medium', language='zh'): # 使用Whisper模型将音频转换为SRT格式字幕 # 通过静音检测和语音分析优化时间轴
这一步骤使用OpenAI的Whisper模型对生成的音频进行语音识别,创建精确的SRT格式字幕文件。系统采用了增强分段技术,通过静音检测和语音分析,确保字幕时间轴与音频内容精确对应。
7. 生成分镜视频(video.py)
def create_video_with_moving_image(image_path, audio_path, output_path, move_direction='left'): # 将图像、音频和字幕合成为视频片段 # 支持图像移动效果、入场动画等这一步骤将前面生成的图像、音频和字幕整合为单个视频片段。系统使用MoviePy库实现了多种视频效果:
- 图像平移移动(左右上下方向可选)
- 入场动画效果
- 自动嵌入SRT字幕
- 支持自定义视频分辨率和比例
8. 合成最终视频(video_end.py)
def save_output_video(book_id): # 将所有分镜视频按顺序合并为完整视频 # 使用FFmpeg高效处理大量视频片段
最后一步将所有分镜视频按照正确的顺序合并为一个完整的视频文件。系统使用FFmpeg的concat功能高效处理多个视频片段,并应用了内存优化参数,确保处理大量视频时的稳定性。
成片视频也真的不错
系统架构优势
- 高度模块化设计:每个功能模块独立运行,便于调试和优化
- 多线程并行处理:充分利用计算资源,提高处理效率
- 错误恢复机制:支持断点续传,可跳过已处理的内容
- 灵活的配置选项:通过环境变量控制线程数、API参数等
- GPU加速支持:视频处理和模型推理利用GPU加速
关键技术亮点
- 智能分镜技术:使用Gemini模型智能拆分故事情节,创建连贯的视觉叙事
- 提示词优化:DeepSeek-V3模型专门优化绘图提示词,提高图像质量和相关性
- 高精度字幕:结合静音检测和语音分析的增强分段技术,生成精确对应的字幕
- 视频效果引擎:自定义的移动图像算法,创造专业的视频效果
- 资源优化策略:垃圾回收、临时文件管理和内存优化,确保长时间稳定运行
实际应用场景
该项目适用于多种内容创作场景:
- 小说推广:作者可以将作品片段制作成精美视频,吸引更多读者
- 内容变现:将公版小说或原创内容转化为短视频,发布到各平台获取流量
- 教育内容:将文学作品可视化,帮助学生更好理解经典文学
- 媒体制作:为广播剧、有声书等添加视觉元素,丰富内容形式