WavJourney:进入音频故事情节生成世界的旅程

推荐:使用 NSDT场景编辑器快速搭建3D应用场景

若要正确查看音频生成的强大功能,请考虑以下方案。我们只需要提供一个简单的指令,描述场景和场景设置,模型就会生成一个扣人心弦的音频脚本,突出与原始指令的最高上下文相关性。

指令: 在科幻小说主题中生成音频:火星新闻报道人类向半人马座阿尔法星发送光速探测器。从新闻主播开始,然后是记者采访由联合地球和火星政府创立的建造这个探测器的组织的总工程师,最后再次以新闻主播结束。

生成的音频:https://audio-agi.github.io/WavJourney_demopage/sci-fi/sci-fi%20news.mp4

为了真正了解这个奇迹的内部运作,让我们深入了解生成过程的方法和实现细节。

生成过程

下图在一个简单的流程图中总结了整个过程。

WavJourney:进入音频故事情节生成世界的旅程

端到端音频生成过程由多个子模块组成,这些子模块按顺序执行,用于完整的文本到音频模型。

音频脚本生成

WavJourney利用GPT-4模型和预定义的提示模板来生成脚本。提示模板将输出限制为简单的 JSON 格式,以后计算机程序可以轻松解析。每个脚本都有 3 种不同的音频类型,如上图所示:语音音效音乐。然后,每种音频类型都可以作为前景音频运行,也可以作为背景声音效果覆盖在其他音频上。其他属性(如内容描述、长度和字符)足以正式定义脚本生成的音频设置。

脚本解析

然后,输出脚本通过计算机程序传递,该程序解析预定义 JSON 脚本格式中的相关信息。它将每个描述和字符与预设的语音音频相关联。此过程有助于将音频生成过程分解为单独的步骤,包括文本到语音转换、音乐和声音添加。

音频生成

解析后的脚本作为 Python 程序执行。首先生成前景语音,由背景音乐和音效覆盖。对于语音生成,该模型使用预先训练的 Bark 模型和 VoiceFixer 恢复模型来提高音频质量。AudioLDM和MusicGen模型用于声音效果和音乐叠加。所有三种型号的输出组合在一起,形成最终的音频输出。

人机共创

该过程维护生成的脚本的上下文,并且可以类似于 GPT 模型进行提示。您可以使用 GPT 模型的人工反馈和聊天功能轻松修改生成的脚本。

添加特定的细节和音效再简单不过了。下面的流程图显示了添加或修改生成的脚本的特定详细信息是多么简单。

结论

音频生成模式可以改变娱乐行业的游戏规则。该过程能够生成引人入胜的叙述和故事,可用于教育和娱乐目的,自动化繁琐的画外音和视频生成过程。

有关详细理解,请在此处概述论文。该代码将很快在GitHub上提供。

原文链接:WavJourney:进入音频故事情节生成世界的旅程 (mvrlink.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/81738.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数组和指针笔试题解析之【数组】

目录 前言: 1.一维数组: 2.字符数组 : 2.1题型一: 2.2题型二: 2.3题型三: 3.二维数组 : 前言: 1.数组名的意义: sizeof(数组名):这里的数组名表示整…

【C++STL基础入门】list的运算符重载和关于list的算法

文章目录 前言一、list运算符1.1 逻辑运算符1.2 赋值运算符 二、list相关算法2.1 查找函数总结 前言 C标准模板库(STL)是一组强大而灵活的工具,用于处理数据结构和算法。其中,std::list是STL中的一个重要容器,它实现了…

小型网络实验组网

路漫漫其修远兮,吾将上下而求索 时隔多日,没有更新,今日一写,倍感教育的乐趣。如果让我每天发无意义的文章,我宁可不发。 实验拓扑 实验要求 (1)内网主机采用DHCP分配IP地址 (2&…

记录本地Nginx发布vue项目

一、前端:vue-cli-service build 二、下载Nginx,并创建目录,放置静态文件 三、在conf目录下nginx.conf文件配置代理服务 server {listen 8787;server_name localhost;location / {root app/dist; #前端dist包地址index index.html…

Tomcat架构设计及组件详解

继Tomcat配置详解(Tomcat配置server.xml详解)Tomcat配置详解(Tomcat配置server.xml详解)_tomcat xml配置https://blog.csdn.net/imwucx/article/details/132166738文章之后,深入的学习tomcat相关知识,对Tom…

基于SSM+Vue的“魅力”繁峙宣传网站

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

数据分享|R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病...

全文链接:http://tecdat.cn/?p23061 这个数据集(查看文末了解数据免费获取方式)可以追溯到1988年,由四个数据库组成。克利夫兰、匈牙利、瑞士和长滩。"目标 "字段是指病人是否有心脏病。它的数值为整数,0无…

无代码和低代码平台:程序员的竞争优势

无代码和低代码平台:程序员的竞争优势 无代码和低代码平台:程序员的竞争优势摘要引言1. 了解无代码和低代码平台1.1 无代码和低代码平台的定义无代码平台低代码平台 1.2 它们如何简化应用程序开发1.3 主要的无代码和低代码工具和供应商无代码平台低代码…

【八大经典排序算法】堆排序

【八大经典排序算法】堆排序 一、概述二、思路解读三、代码实现(大堆为例) 一、概述 堆排序是J.W.J. Williams于1964年提出的。他提出了一种利用堆的数据结构进行排序的算法,并将其称为堆排序。堆排序是基于选择排序的一种改进,通…

蓝牙核心规范(V5.4)10.1-BLE 入门笔记(1)

ble 规范 深入了解蓝牙LE需要熟悉相关的规格。蓝牙LE的架构、程序和协议由一项关键规范完全定义,称为蓝牙核心规范。产品如何使用蓝牙以实现互操作性由两种特殊类型称为配置文件和服务的规范集合所涵盖。图1展示了BLE规范类型及其相互关系。 1.1 蓝牙核心规范 蓝牙核心规范是…

SpringBoot整合Easy-ES实现对ES操作

请确保已有可用的ES&#xff0c;若没有&#xff0c;请移步&#xff1a;Docker安装部署ElasticSearch&#xff08;ES&#xff09; 新建SpringBoot项目 这里是用的springboot版本是2.6.0 引入依赖 <!-- 排除springboot中内置的es依赖,以防和easy-es中的依赖冲突--><…

Redis五大基本数据类型

1、字符串类型 字符串类型相当于 java 中的 String 类型。Redis 中的 String 类型以二进制方式存储&#xff0c;不会做任何的编码转换&#xff0c;因此不仅仅可以存储文本数据、整数、普通的字符串、JSON、xml文件&#xff0c;还可以存储图片、视频、音频。String 存储的种类虽…

插槽指的是什么?插槽的基础用法体验

什么是插槽 插槽(Slot)是 vue 为组件的封装者提供的能力。允许开发者在封装组件时&#xff0c;把不确定的、希望由用户指定的部分定义为插槽。 <template><p>这是MyCom1组件的第1个p标签</p><&#xff01;--通过slot标签&#xff0c;为用户预留内容占位符…

Vue3 Ajax(axios)异步

文章目录 Vue3 Ajax(axios)异步1. 基础1.1 安装Ajax1.2 使用方法1.3 浏览器支持情况 2. GET方法2.1 参数传递2.2 实例 3. POST方法4. 执行多个并发请求5. axios API5.1 传递配置创建请求5.2 请求方法的别名5.3 并发5.4 创建实例5.5 实例方法5.6 请求配置项5.7 响应结构5.8 配置…

jvm的调优工具

1. jps 查看进程信息 2. jstack 查看进程的线程 59560为进程id 产生了死锁就可以jstack查看了 详细用途可以看用途 3. jmap 如何使用dump文件看下 查看 4.jstat 空间占用和次数 5. jconsole可视化工具 各种使用情况&#xff0c;以及死锁检测 6. visualvm可视化工具…

SpringMVC自定义注解---[详细介绍]

一&#xff0c;对于SpringMVC自定义注解概念 是一种特殊的 Java 注解&#xff0c;它允许开发者在代码中添加自定义的元数据&#xff0c;并且可以在运行时使用反射机制来获取和处理这些信息。在 Spring MVC 中&#xff0c;自定义注解通常用于定义控制器、请求处理方法、参数或者…

面试题四:请解释一下watch,computed和filter之间的区别

watch与computed、filter&#xff1a; watch:监控已有属性&#xff0c;一旦属性发生了改变就去自动调用对应的方法 computed:监控已有的属性,一旦属性的依赖发生了改变&#xff0c;就去自动调用对应的方法.computed有详细的介绍&#xff0c;移步computed的使用 filter:js中为…

MATLAB中filloutliers函数用法

目录 语法 说明 示例 在向量中对离群值进行插值 使用均值检测和最邻近值填充方法 使用移窗检测法 填充矩阵行中的离群值 指定离群值位置 返回离群值阈值 filloutliers函数功能是检测并替换数据中的离群值。 语法 B filloutliers(A,fillmethod) B filloutliers(A,f…

聚观早报 | iPhone 15系列正式发布;月饼专利申请超10000项

【聚观365】9月14日消息 iPhone 15系列正式发布 月饼专利申请超10000项 “五个女博士”自建研究院 2023中国民营企业研发十强公布 华为和小米达成全球专利交叉许可协议 iPhone 15系列正式发布 2023年苹果秋季新品发布会如期而至。发布会上&#xff0c;苹果发布了iPhone 1…

STM32 CAN使用记录:FDCAN基础通讯

文章目录 目的基础说明关键配置与代码轮询方式中断方式收发测试 示例链接总结 目的 CAN是非常常用的一种数据总线&#xff0c;被广泛用在各种车辆系统中。这篇文章将对STM32中FDCAN的使用做个示例。 CAN的一些基础介绍与使用可以参考下面文章&#xff1a; 《CAN基础概念》htt…