一.简介 1.1  引   人生中第一份工作公司有语音识别业务,需要做一个web网页来整合语音引擎的标注结果和错误率等参数,并提供人工比对的语音标注功能(功能类似于TranscriberAG等),(博主有点话痨...适应适应,原谅我) 可以直接读第二行,简单来说,我用wavesurfer.js绘制波形,并提供语音标注的文本框进行音频标注,简易页面如下: 1.2 啥是wavesurf? wavesurfer.js是一个可自定义的语音音频可视化工具,建立于web audio和H5 canvas之上…
NAudio的录音和播放录音都有对应的类,我在使用Wav格式进行录音和播放录音时使用的类时WaveIn和WaveOut,这两个类是对功能的回调和一些事件触发. 在WaveIn和WaveOut之外还有对音频流读写使用的WaveFileWriter和WaveFileReader类,具体细节可查看其源码进行分析. 其中绘制音频波形图根据录制和播放需要不同途径实现. 1.录音时实时显示波形图,在录音时实时获取需要使用WaveIn.DataAvailable回调事件,在这个回调事件中会传递出音频流数据,数…
下午写了一篇关于NAudio的录音.播放和波形图的博客,不太满意,感觉写的太乱,又总结了下 NAudio是个相对成熟.开源的C#音频开发工具,它包含录音.播放录音.格式转换.混音调整等功能.本次介绍主要功能有音频.录音文件播放.实时音频流波形图显示等.具体如下: 1. 录音 NAudio录音主要使用WaveIn和WaveFileWriter两个类 1.1   WaveIn WaveIn的功能是对录音的音频参数进行设置以及对数据的采集,参数如通道数.采样率.平均数据传输速率(WaveFormat)…
最近在对超大音频的渐进式请求实现上面消耗了不少时间,主要是因为一对音频的基本原理不太理解,二刚开始的时候太依赖插件,三网上这块的资料找不到只能靠自己摸索.由于交互复杂加上坑比较多,我怕描述不清,这里主要根据问题来做描述(前提你需要对wavesurfer.js有一定的了解)我的这篇博客有做说明:Wavesurfer.js音频播放器插件的使用教程 实现效果: 未加载部分: 后端接口描述: a.音频主要信息接口:获取总时长.字节数.总字节.音频格式等. b. 分段请求接口:根据字节参数,传来对应段的音…
Wavesurfer.js是一款基于HTML5 canvas和Web Audio的音频播放器插件,本文主要记录它及其视觉效果插件Regions插件的使用方法. 1.创建实例 引入插件 import WaveSurfer from "wavesurfer.js"; 创建实例对象 this.wavesurfer = WaveSurfer.create(options); options 参数 默认值 说明 audioRate 1 音频的播放速度,数值越小越慢 barWidth none 如…
vue解决音频可视化播放,使用wavesurfer.js 上效果:   1.安装wavesurfer  npm install wavesurfer.js 2.在页面导入 import WaveSurfer from 'wavesurfer.js' 注:我没有使用时间轴,所以没有引入,如果需要再引入 import Timeline from 'wavesurfer.js/dist/plugin/wavesurfer.timeline.js' 3.上源码 <template> <el-ro…
最近研究了如何在iOS上绘制wav波形图.查了很多资料,都没能找到一个很完整的介绍,我这里总结一下一些经验. 首先需要了解wav的这3个重要指标:采样率.采样位数.声道数.下面以16KHz, 16Bit, 单声道为例来说明. 采样率:(也称为采样速度或者采样频率)定义了每秒从连续信号中提取并组成离散信号的采样个数,单位用赫兹(Hz)来表示.采样频率的倒数是采样周期(也 称为采样时间),它表示采样之间的时间间隔.采样率为16KHz,表明每秒钟采样有16K次,即0.001秒内采集16个值. 采样位数…
利用d3,js将数据可视化,能够做到数据与代码的分离.方便以后改动数据. 这次利用d3.js绘制了一个五维的雷达图.即将多个对象的五种属性在一张图上对照. 数据写入data.csv.数据类型写入type.csv文件. 效果例如以下图所看到的 源代码连接:http://download.csdn.net/detail/svap1/7358123 使用是仅仅需调用 radar()函数就可以.例如以下是測试页面代码. <!DOCTYPE html> <html> <head>…
<!-- <!doctype html> --> <html lang="en"> <head> <meta charset="UTF-8"> <title>js绘制数学函数</title> </head> <body> <div id="main" style="border-bottom:solid red 0px;he…
做一项目,用到“叫号功能”,网页上有一“叫号”按钮,点击后就读数据库中存的号码,如123号, 然后就发声音出来, 思路是网上下载0123456789的叫号声音,然后按钮点击事件里就在JS里写用那个HTML5的video来播放声音就行了,顺序播放声音的话就得用到Setinterval隔一段时间来播放声音的, 网上搜索了一下,终于做出个简单的示例了: 上面的四个按钮分别播放4种声音 下面的在文本框里输入数字后,再点播放,会按顺序来进行播放的. 源码下载:http://image.niunan.net…