当前位置: 首页 > news >正文

GPT-Sovits-1-数据处理

1.1 切割音频

将音频切割为多个10s内的片段

1.2 降噪

这一步用的是modelscope的pipeline

如果要去除背景音,可以用傅立叶转为为频谱,去除低频部分后再转回来

1.3 提取音频特征

这里用到了 funasr 库

这一步目的是输出音频样本的《文本标签文件》,名字为“denoise_opt.list”,内容格式如下:

音频样本的路径 | 标签 | 文本

样例:

./m4a_0000017280_0000207040.wav|denoise_opt|ZH|人高马大欺负女人,该打我最看不起不尊重女性的男人。
./m4a_0000209600_0000594240.wav|denoise_opt|ZH|如果你觉得我不对的话,你马上报啊头套还了一人做事,一人当刚才那个杂碎呢,我变得很happy.如果局长觉得我做的不对呢,随时整死我。
./m4a_0000594240_0000740160.wav|denoise_opt|ZH|这是我们应该做什么,没什么特别单位哪个部门最危险的。
./m4a_0000740160_0000903040.wav|denoise_opt|ZH|我想去,其实不知道,我知道这份资料写的很详细啊,这个案子很危险的。
./m4a_0000903040_0001033600.wav|denoise_opt|ZH|嗯,但是我向来是享受危险。
./m4a_0001033600_0001362880.wav|denoise_opt|ZH|回家吃晚饭,现在你去真是好无行,我怎么做,你不要不问行不行,你得找错事。
./m4a_0001362880_0001457600.wav|denoise_opt|ZH|以后在我面前,不准说我们的坏话。

操作界面如下:
在这里插入图片描述

2.数据进一步处理

数据的处理还有进一步操作,即格式化微调模型所需数据 ,其输出放在“./logs”文件夹下

位置在 <<1-GPT-SoVITS-TTs>>下的<<1Aa-文本内容提取>>, 界面如下:
在这里插入图片描述

2.1 文本获取

  • 1Aa-文本内容提取

通过<GPT_SoVITS/pretrained_models/chinese-roberta-wwm-ext-large>模型,输入文本标注文件,logs文件夹下得到:

<2-name2text.txt>文件 和 ❤️-bert>文件夹

- 2-name2text.txt: 音素化的文本词向量表(phoneme-tokenization) - 执行’./GPT_SoVITS/prepare_datasets/1-get-text.py'文件内容格式为:name, phones, word2ph(文字的音素长度, 1或2个单位), norm_text样例:
wmd1.m4a_0000017280_0000207040.wav	r en2 g ao1 m a3 d a4 q i1 f u5 n v3 r en2 , g ai1 d a2 w o3 z ui4 k an4 b u5 q i3 b u4 z un1 zh ong4 n v3 x ing4 d e5 n an2 r en2 .	[2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1]	人高马大欺负女人,该打我最看不起不尊重女性的男人.
wmd1.m4a_0000594240_0000740160.wav	zh e4 sh ir4 w o3 m en5 y ing1 g ai1 z uo4 sh en2 m e5 , m ei2 sh en2 m e5 t e4 b ie2 d an1 w ei4 n a3 g e5 b u4 m en2 z ui4 w ei1 x ian3 d e5 .	[2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1]	这是我们应该做什么,没什么特别单位哪个部门最危险的.
-  3-bert文件夹文件夹内是音频片段的robert提取特征,size = [1024, length]

2.2 语音特征压缩

这里通过hubert压缩语音特征,用于微调模型的输入

- 1Ab-SSL自监督特征提取  通过<GPT_SoVITS/pretrained_models/chinese-hubert-base>模型,  logs文件夹下得到:- 4-cnhubert 文件夹文件夹内是音频片段的hubert抽取特征: size = [batch_size, 768, length]- 5-wav32k文件夹文件夹内是音频片段的32k重采样频率音频

2.3 语义token获取

  • 1Ac-语义token提取

这个得到llm的语义token,放在:

- 6-name2semantic文件夹

这里执行的是‘GPT_SoVITS/prepare_datasets/3-get-semantic.py’文件, 文件代码逻辑包括:

- 1.将<4-cnhubert>文件夹内的特征,输入入VITS的音频生成器:SynthesizerTrn
- 2. SynthesizerTrn输出得到里面的语义输出向量:semantic_code
- 3.将输出保存为tsv表格文件,数据格式如下:
item_name	semantic_audio
wmd1.m4a_0000017280_0000207040.wav	208 14 160 160 103 656 334 433 451 200 877 956 136 215 80 436 451 65 5 965 566 848 221 631 560 647 359 807 844 320 559 358 674 708 51 527 918 220 929 914 825 362 842 95 555 599 409 219 452 337 366 187 187 138 905 577 554 26 938 787 7 201 781 1011 1017 141 659 62 393 858 795 321 321 980 44 718 237 699 623 623 1005 451 1005 221 1001 451 318 208 242 96 3 961 71 613 1011 650 241 361 172 944 63 621 84 946 374 889 529 546 787 1001 823 26 539 46 527 35 512 527 909 497 7 997 187 1003 671 767 385 255 11 948 841 183 886 734 844 516 49 760 1001 23 365 203 814 232 576 232 59 1005
wmd1.m4a_0000594240_0000740160.wav	509 390 606 175 387 869 918 71 324 257 55 181 416 769 831 289 15 55 562 947 790 233 803 813 687 340 696 168 718 731 577 588 175 256 213 738 625 215 758 103 930 727 182 397 459 501 101 594 108 143 64 997 201 183 31 103 103 132 1021 909 341 432 625 837 653 10 1018 878 207 988 62 82 172 499 456 65 11 859 886 534 257 277 79 341 427 20 205 430 897 420 201 60 1003 139 841 456 544 788 243 539 153 526 215 1001 208 318 965 454 601 102 258 612 160
wmd1.m4a_0000903040_0001033600.wav	14 1001 787 533 533 172 632 341 420 670 670 357 477 33 581 565 758 758 14 14 593 758 160 208 208 14 570 65 203 515 457 1001 565 96 430 522 40 389 685 605 692 629 661 777 376 685 950 319 781 413 854 589 603 45 281 376 703 1003 659 923 656 916 603 392 245 194 70 717 129 513 745 172 854 738 1017 581 797 797 797 3 647 65 1005 27 90 451 14 214 272 366 910 814 566 479 538 526 858 456 16 127 844
wmd1.m4a_0001362880_0001457600.wav	913 474 953 774 953 273 382 5 714 602 642 1017 443 591 354 202 877 1020 682 85 515 82 409 188 661 701 148 345 345 20 59 33 172 51 964 164 474 707 956 860 711 556 708 333 917 187 691 893 233 449 780 255 216 37 841 700 873 758 199 219 123 92 433 909 842 69 746 190 602 208 215 23 23
wmd1.m4a_0000209600_0000594240.wav	539 559 726 420 813 19 713 776 395 1016 938 203 82 455 125 825 422 757 805 526 702 199 384 889 488 939 173 962 385 961 172 1000 95 429 747 173 638 803 188 842 324 400 812 243 173 205 389 225 877 625 625 1005 539 641 10 969 909 881 881 1018 200 257 69 409 259 956 784 924 924 240 418 638 27 504 27 1005 844 902 1021 909 909 625 625 758 539 186 136 526 215 208 602 318 689 348 238 172 546 138 631 644 352 480 307 186 475 55 172 724 437 66 534 1016 978 940 593 1008 962 428 221 663 797 365 76 135 936 876 576 578 194 642 601 960 803 658 649 559 964 546 688 238 653 781 358 605 95 924 219 246 645 458 354 497 410 980 406 175 774 16 910 8 417 792 306 334 55 607 734 865 202 807 517 31 581 541 556 595 908 136 436 203 541 160 160 213 871 603 203 1005 185 775 714 497 255 485 674 665 744 925 790 480 219 973 930 175 711 292 588 971 555 962 964 581 748 448 82 688 336 803 519 1011 47 747 638 742 42 265 221 813 656 33 731 983 474 903 453 354 886 461 429 31 185 334 103 368 801 389 406 504 634 239 921 703 389 727 761 33 761 390 997 963 654 306 414 107 479 21 799 599 616 754 758 1002 80 515 884 718 406 27 625 612 837 368 627 918 949 641 844 507 560 864 218 406 253 1001 160 982 27 132 679 721
wmd1.m4a_0000740160_0000903040.wav	282 526 160 208 14 1002 406 189 481 531 1 964 11 456 325 180 717 703 685 391 402 724 325 385 754 625 625 775 986 136 704 448 148 228 508 451 194 569 754 562 476 676 853 871 203 1001 760 814 773 366 920 384 55 740 727 787 134 25 791 881 962 450 514 80 7 104 547 647 365 994 461 594 703 703 854 854 746 658 416 1003 594 633 736 122 944 5 365 365 14 579 950 46 497 456 713 779 332 422 805 674 625 135 477 580 737 27 827 183 157 470 645 161 416 546 736 456 625 44 503 16 663 799 37 258 134 656 721
wmd1.m4a_0001033600_0001362880.wav	582 272 304 839 576 770 294 479 467 454 437 221 722 320 596 474 535 474 53 280 53 13 545 864 920 177 930 533 497 734 504 731 948 69 44 101 32 771 666 187 958 830 411 21 31 581 775 602 872 320 758 10 74 123 31 526 341 831 294 411 441 320 244 244 1010 283 228 695 865 816 10 328 878 714 596 23 642 239 771 438 666 761 40 448 332 458 172 391 232 491 183 456 807 438 376 172 464 172 938 160 673 560 160 160 216 520 515 845 761 1023 82 439 738 134 254 47 449 608 784 403 949 320 436 424 878 102 687 576 420 602 602 171 814 208 673 660 215 679 578 834 104 631 535 10 764 568 688 181 411 602 23 23 913 642 216 23 758 449 330 606 338 933 805 758 670 187 972 204 480 264 193 543 799 704 673 526 23 23 23 23 23 325 215 679 23 913 913 23 913 660 900 535 23 23 913 214 139 599 103 453 427 863 231 612 893 245 702 554 174 736 685 845 94 576 973 559 201 51 664 321 101 560 511 526 160 160 160 160 216 216 509 603 588 904 121 935 561 527 940 59 387 792 193 758 239 320 760 608 620 917 475 949 362 155 642 602 721

Reference

  • https://github.com/yangdongchao/SoundStorm/blob/master/soundstorm/s1/AR/models/t2s_model.py
  • https://google-research.github.io/seanet/soundstorm/examples/

相关文章:

GPT-Sovits-1-数据处理

1.1 切割音频 将音频切割为多个10s内的片段 1.2 降噪 这一步用的是modelscope的pipeline 如果要去除背景音&#xff0c;可以用傅立叶转为为频谱&#xff0c;去除低频部分后再转回来 1.3 提取音频特征 这里用到了 funasr 库 这一步目的是输出音频样本的《文本标签文件》&am…...

web前端多媒体标签设置(图片,视频,音频)以及图片热区(usemap)的设置

多媒体标签运用 在HTML中有以下常见多媒体标签&#xff1a; <img> &#xff08;图像标签&#xff09; - 作用&#xff1a;用于在网页中嵌入图像。 - 示例&#xff1a; <img src"image.jpg" alt"这是一张图片"> 。其中 src 属性指定图像的…...

尚硅谷react教程_扩展_stateHook

1.类式组件写 import React, {Component} from react;export default class Demo extends Component {state {count:0}add () > {this.setState(state>({count:state.count1}))}render() {return (<div><h2>当前求和为{this.state.count}</h2><b…...

专线物流公共服务平台:数据驱动,标准引领,共创金融双赢新时代

专线物流公共服务平台&#xff1a;数据驱动&#xff0c;标准引领&#xff0c;共创金融双赢新时代 在当今这个数据驱动、标准引领、金融赋能的经济发展新时代&#xff0c;专线物流作为商贸流通领域的重要一环&#xff0c;正面临着前所未有的机遇与挑战。为应对复杂多变的市场环…...

界面控件DevExpress JS ASP.NET Core v24.1亮点 - 支持Angular 18

DevExtreme拥有高性能的HTML5 / JavaScript小部件集合&#xff0c;使您可以利用现代Web开发堆栈&#xff08;包括React&#xff0c;Angular&#xff0c;ASP.NET Core&#xff0c;jQuery&#xff0c;Knockout等&#xff09;构建交互式的Web应用程序。从Angular和Reac&#xff0c…...

Spring之依赖注入(DI)和控制反转(IoC)——配置文件、纯注解

依赖注入 依赖注入(Dependency Injection&#xff0c;简称 DI)与控制反转(loC)的含义相同&#xff0c;只不过这两 个称呼是从两个角度描述的同一个概念。对于一个 Spring 初学者来说&#xff0c;这两种称呼很难理解, 下面我们将通过简单的语言来描述这两个概念。 当Java对象&…...

基于SpringBoot的宠物健康咨询系统的设计与实现

摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理&#xff0c;然而&#xff0c;随着近些年信息技术的迅猛发展&#xff0c;让许多比较老套的信息管理模式进行了更新迭代&#xff0c;宠物健康知识信息因为其管理内容繁杂&#xff0c;管理数量繁多导致手工进行处理不…...

Lucene的使用方法与Luke工具(2)

文章目录 第2章 Lucene快速入门2.1 项目搭建2.1.1 SQL语句2.1.2 maven依赖2.1.3 实体类&#xff1a;2.1.4 编写DAO&#xff1a; 2.2 建立索引2.2.1 步骤&#xff1a;2.2.2 实现代码&#xff1a; 2.3 Luke工具2.3.1 运行界面介绍&#xff1a;1&#xff09;主界面2&#xff09;文…...

【客户端开发】electron 中无法使用 js-cookie 的问题

产生问题的原因 谷歌浏览器升级之后&#xff0c;出于安全考虑&#xff0c;cookie的SameSite属性默认值由None变为Lax&#xff0c;对于跨域的请求&#xff0c;禁止携带cookie。electron内核是chromium内核,所以也会有这个限制。 Cookie的SameSite属性用来限制第三方 Cookie&…...

kafka客户端消费者吞吐量优化

问题背景 业务场景 mq消息消费实时性要求不高&#xff0c;期望可以牺牲一部分实时性&#xff0c;换取吞吐量&#xff0c;例如&#xff1a;数据库单条insert优化为batchInsert。优化后结果不符合预期&#xff1a;消费者消费消息的batchSize远小于实际配置的max.poll.records&a…...

电子工程师-高质量工具包

目录 来源 高质量工具包介绍 总体框架如下 ZL01-各类元器件相关资料 ZL02-电源设计资料 ZL03-大厂参考资料 ZL04-开发工具 ZL05-仿真工具 ZL06-各类电路接口设计指南 ZL07-付费专栏全集 ZL08-优质电子书 ZL09-硬件工程师 ZL10FPGA工程师教程 ZL10-PCB设计教程 Z…...

简单认识redis - 12 redis锁

在斜体样式**redis中&#xff0c;不同的问题有不一样的解决办法&#xff0c;那么锁也有不同的锁来解决不一样的问题&#xff0c;下面将举出几个常用的redis锁。 1. SETNX锁&#xff08;简单独占锁&#xff09; 原理&#xff1a; SETNX&#xff08;SET if Not eXists&#xff…...

基于springboot+vue车辆充电桩管理系统

基于springbootvue车辆充电桩管理系统 摘 要 随着信息化时代的到来&#xff0c;管理系统都趋向于智能化、系统化&#xff0c;车辆充电桩管理系统也不例外&#xff0c;但目前国内仍都使用人工管理&#xff0c;市场规模越来越大&#xff0c;同时信息量也越来越庞大&#xff0c;…...

shodan用法(完)

声明 学习视频来自B 站up主泷羽sec&#xff0c;如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识&#xff0c;以下网站只涉及学习内容&#xff0c;其他的都与本人无关&#xff0c;切莫逾越法律红线&#xff0c;否则后果自负。 shodan 今天&#xff0c;我们把shoda…...

【若依框架】代码生成详细教程,15分钟搭建Springboot+Vue3前后端分离项目,基于Mysql8数据库和Redis5,管理后台前端基于Vue3和Element Plus,开发小程序数据后台

今天我们来借助若依来快速的搭建一个基于springboot的Java管理后台&#xff0c;后台网页使用vue3和 Element Plus来快速搭建。这里我们可以借助若依自动生成Java和vue3代码&#xff0c;这就是若依的强大之处&#xff0c;即便你不会Java和vue开发&#xff0c;只要跟着石头哥也可…...

转子侧串级调速系统和双馈调速系统

转子侧串级调速系统和双馈调速系统是两种不同的电机调速技术&#xff0c;它们在基本原理、效率以及应用场景等方面存在区别。以下是详细的对比分析&#xff1a; 基本原理 转子侧串级调速系统&#xff1a;通过在绕线式异步电动机的转子回路中串入一个可调节的附加电势&#xff0…...

AI学习指南自然语言处理篇-Transformer模型的实践

AI学习指南自然语言处理篇 - Transformer模型的实践 目录 引言Transformer模型概述 自注意力机制编码器-解码器结构 环境准备Transformer模型的实现 编码器实现解码器实现Transformer模型整体实现 Transformer在NLP任务中的应用 文本分类机器翻译 总结与展望 引言 在过去的数…...

【LVGL速成】LVGL修改标签文本(GUI Guider生成的字库问题)

目录 前置篇章&#xff1a; 一.问题背景 二.失败方案 三.成功方案 1.Gui guider的源码结构 2.手动生成字体 3.Keil中配置相关文件 ​编辑 4.修改文字 四.字体样式函数说明 前置篇章&#xff1a; 【LVGL快速入门(二)】LVGL开源框架入门教程之框架使用(UI界面设计)_lvgl…...

C语言项目实践-贪吃蛇

⽬录&#xff1a; 1. 游戏背景 2. 游戏效果演⽰ 3. 实现的⽬标 4. 实现的定位 5. 技术要点 6. 贪吃蛇游戏设计与分析 7. 贪吃蛇游戏数据结构设计 8. 相关Win32API介绍 9. 参考代码 正文开始 1. 游戏背景 贪吃蛇是久负盛名的游戏&#xff0c;它也和俄罗斯⽅块&#xf…...

在kanzi 3.9.8里使用API创建自定义材质

1. kanzi studio设置 1.1 创建一个纹理贴图&#xff0c;起名Render Target Texture 1.2 创建一个Image节点&#xff0c;使用该贴图 2. 代码设置 2.1 创建一个自定义节点类 class mynode2d : public Node2D { public: virtual void renderOverride(Renderer3D& renderer…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求&#xff0c;设计一个邮件发奖的小系统&#xff0c; 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式&#xff08;Decorator Pattern&#xff09;允许向一个现有的对象添加新的功能&#xff0c;同时又不改变其…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值&#xff0c;最大值左侧的数值严格单调递增&#xff0c;最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值&#xff0c;最小值左侧的数值严格单调递减&#xff0c;最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案

在大数据时代&#xff0c;海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构&#xff0c;在处理大规模数据抓取任务时展现出强大的能力。然而&#xff0c;随着业务规模的不断扩大和数据抓取需求的日益复杂&#xff0c;传统…...