草庐IT

Audero-Wav-Extractor

全部标签

三、pcm音频转wav

前言ffmpeg录制下来的音频为pcm格式(内部存储着十六进制数据),但pcm格式的音频无法直接播放本文先将pcm转换成wav格式(提要提前了解音频知识)首先分析wav文件格式(wav的本质是在pcm数据前加上文件头),即在pcm的十六进制数据前加上文件头(文件头也是十六进制数据,但有些内容是固定的,有些内容是变化的)pcm转换成wav基本思路:首先封装一个方法,该方法需要实现在传入wav文件头后把源pcm文件转为wav文件。具体功能是先将文件头的十六进制数据写入文件(需要记录下变化的地方,等待读取pcm的数据之后才能确定),然后将pcm中的十六进制数据写入wav文件。这些思路都是有wav文件

使用 Windows Core Audio APIs 进行 Loopback Recording 并生成 WAV 文件

参考文档COMCodingPracticesAudioFileFormatSpecificationsCoreAudioAPIsLoopbackRecording#include#include#include#include#include#include#include#include#include//利用RAII手法,自动调用CoUninitializeclassCoInitializeGuard{public:CoInitializeGuard(){_hr=CoInitializeEx(nullptr,COINIT::COINIT_MULTITHREADED);}~CoInitial

使用 Windows Core Audio APIs 进行 Loopback Recording 并生成 WAV 文件

参考文档COMCodingPracticesAudioFileFormatSpecificationsCoreAudioAPIsLoopbackRecording#include#include#include#include#include#include#include#include#include//利用RAII手法,自动调用CoUninitializeclassCoInitializeGuard{public:CoInitializeGuard(){_hr=CoInitializeEx(nullptr,COINIT::COINIT_MULTITHREADED);}~CoInitial

android音频学习笔记之wav头文件

如何存储和解析wav文件定义:wav格式,就是微软开发的一种文件格式规范,文件分为两部分(1)第一部分:文件头,记录重要的参数信息,对于音频而言,包括:采样率,通道数,位宽等等(2)第二部分:数据块,也就是一帧一帧的二进制数据,对于音频而言,就是原始的PCM数据(一)将采集的PCM音频数据保存到wav文件文件头wav格式头,主要分为三个部分(1)属于最顶层的信息块ChunkID来表示这是一个RIFF格式文件Format填入WAVE来标识这是一个wav文件ChunkSize记录了整个wav文件的字节数(2)第二部分属于fmt信息块主要记录了本wav音频文件的详细音频参数信息,例如通道数,采样率,

android音频学习笔记之wav头文件

如何存储和解析wav文件定义:wav格式,就是微软开发的一种文件格式规范,文件分为两部分(1)第一部分:文件头,记录重要的参数信息,对于音频而言,包括:采样率,通道数,位宽等等(2)第二部分:数据块,也就是一帧一帧的二进制数据,对于音频而言,就是原始的PCM数据(一)将采集的PCM音频数据保存到wav文件文件头wav格式头,主要分为三个部分(1)属于最顶层的信息块ChunkID来表示这是一个RIFF格式文件Format填入WAVE来标识这是一个wav文件ChunkSize记录了整个wav文件的字节数(2)第二部分属于fmt信息块主要记录了本wav音频文件的详细音频参数信息,例如通道数,采样率,

WAV文件的频谱图显示——总结篇

前言绘制频谱图需要纯音频数据,WAV就是纯音频,如果要用mp3等其他压缩格式的音频还需先进行解码(解码自行查找资料),这里只讲WAV文件绘制;频谱是什么?频谱的全称是频率谱密度。一般信号都是用时间和幅度的关系。通过傅立叶变换,可以得到频率和幅度的关系,这个就是信号的频谱。通过傅立叶变换,就可以把时域信号变成频域信号。那么具体如何绘制呢?下面就会详细讲解到。在讲解绘制频谱之前,我们要先了解WAV文件格式,进行分析;WAV文件解析WAV是一种以RIFF为基础的无压缩音频编码格式,该格式以Header、FormatChunk及DataChunk三部分构成。下图展示了WAV文件格式。 HeaderCh

WAV文件的频谱图显示——总结篇

前言绘制频谱图需要纯音频数据,WAV就是纯音频,如果要用mp3等其他压缩格式的音频还需先进行解码(解码自行查找资料),这里只讲WAV文件绘制;频谱是什么?频谱的全称是频率谱密度。一般信号都是用时间和幅度的关系。通过傅立叶变换,可以得到频率和幅度的关系,这个就是信号的频谱。通过傅立叶变换,就可以把时域信号变成频域信号。那么具体如何绘制呢?下面就会详细讲解到。在讲解绘制频谱之前,我们要先了解WAV文件格式,进行分析;WAV文件解析WAV是一种以RIFF为基础的无压缩音频编码格式,该格式以Header、FormatChunk及DataChunk三部分构成。下图展示了WAV文件格式。 HeaderCh

基于Wav2Lip的AI主播

现在市面上的各种AI主播产品,基本都是基于现有的人物造型,其中包括3D动漫,真人,二次元等等,然后通过对口型的方式进行的,但是这个会有一个问题,对于这种AI主播有个名词叫虚拟数字人,虽然虚拟数字人没有肖像权的问题,但是存在软件著作权的问题,现在都是购买会员免费试用,但是也容易出现很多问题,不如用自己的形象做一个AI数字人模型更加稳妥。先说下如果用自己形象进行数字人生成的话建议用自己很多口播视频进行训练,因为官方给的预训练模型使用英语训练出来的,所以你会发现生成好的数字人口型可能对不上的情况。如果想自己训练建议准备一定数量的口播短视频+对应的修正的字幕文档。如果硬件条件达不到的话,使用预训练模型

基于Wav2Lip的AI主播

现在市面上的各种AI主播产品,基本都是基于现有的人物造型,其中包括3D动漫,真人,二次元等等,然后通过对口型的方式进行的,但是这个会有一个问题,对于这种AI主播有个名词叫虚拟数字人,虽然虚拟数字人没有肖像权的问题,但是存在软件著作权的问题,现在都是购买会员免费试用,但是也容易出现很多问题,不如用自己的形象做一个AI数字人模型更加稳妥。先说下如果用自己形象进行数字人生成的话建议用自己很多口播视频进行训练,因为官方给的预训练模型使用英语训练出来的,所以你会发现生成好的数字人口型可能对不上的情况。如果想自己训练建议准备一定数量的口播短视频+对应的修正的字幕文档。如果硬件条件达不到的话,使用预训练模型

基于Wav2Lip+GFPGAN的高清版AI主播

继上一篇基于Wav2Lip的AI主播的内容之后很多小伙伴反应一个问题就是生成的AI人物并不是很清晰,尤其是放到编辑器里会出现明显的痕迹,因此这次带来的了Wav2Lip+GFPGAN高清版的内容,如果不太了解这个项目实做什么的可以来先看一下效果。该项目暂时没有中文介绍,我这个应该是首发。基于Wav2Lip自制高清版,用自己形象做数字人清楚多了虽然说是自制但是也基于git大佬的源代码按照自己的需求进行的修改,整体的原理就是基于视频的每一帧进行高清处理,然后进行合并拼接成视频,最后拼接音频形成完整的视频。文章目录准备工作环境配置创建虚拟环境激活虚拟环境pip安装匹配版本(追加安装)生产流程input