文|桃小真
内附录制音频小技巧,建议看完。本文大约需要2分钟左右。
前段时间有朋友私信我,问我是用什么来录制音频的。 今天给大家具体分享一下我录制音频全过程(如何开通音频,制作音频,上传音频)
大家都知道,今日头条在今年也推出了音频项目,对于不想真人出镜的人来说,是特别赞的。 只要你普通话标准,有原创干货分享或者是朗读文章等等内容都是可以的。(具体音频规范管理在头条后台查看即可)现在进入正题:
第一.如何开通音频
首先,你要有自己的头条号(电脑端和手机端均可注册),登录头条号主页(目前只支持电脑端发音频)、发头条、点击音频、创建新专辑、写好专辑名称,简介、选自己要上传音频的相关封面,分类(比如我选的是育儿类)和章节,提交发布,等待审核。
PS:这里要注意,内容简介是自己的原创内容,不可从网上复制粘贴某些话语。相关封面最好是和你要上传音频内容是吻合的,不可侵权别人图片。
第二.如何制作音频
这里可以用喜马拉雅APP,荔枝APP,手机自带录音APP,快影APP和剪映APP
我在刚开始学习录制时,这些APP中剪映我用的最顺手也比较简单易上手, 对于音频小白来说可以先从剪映APP开始学起。
1.打开剪映,点击开始创作
2.选取相册中随意几张图片
3.点击添加音频,然后录音和添加音乐(可以是本地音乐也可以是剪映自带音乐)即可。
4.编辑音量和多余部分
5.最后导出
第三.如何上传音频
①.编辑好的视频会自动保存到手机,我的是在文件管理,视频中可找到。
②.打开电脑,登录qq
③.选择录好的视频上传到电脑端qq或者"发送到我的电脑"
④打开头条主页音频,点击上传音频即可(视频会自动转化为音频格式)
录制音频小技巧:
•戴耳机, 选择空间小点无太大噪音的地方,比如书房就可以。
• 录音前喝点水或者吃点水果,避免录制过程中出现口干等有吞口水现象等。
• 戴耳机录音的话,耳麦不要离嘴太近,以免出现喷麦,声音忽大忽小现象。
•提前准备并熟练自己要说的内容,尽量流畅有逻辑。
•注意音调,语气和表情管理。毕竟你的听众是能通过你的声音来认识你,尽量做到有交流,不是一味的自言自语。
本内容由头条号桃小真育儿原创首发,欢迎个人转发、收藏、评论,未经授权的情况下,严禁转载到其他平台。若要转载请注明出处。
关注#桃小真育儿#了解更多母婴育儿趣事或小知识。使育儿变得轻松高效~
Original: https://blog.csdn.net/weixin_29499829/article/details/112618881
Author: 道酝欣赏
Title: 仿今日头条音频_建议收藏|音频小白简单易上手的详细音频制作全过程
相关阅读1
Title: 006-中断
利用中断消除数码管的显示抖动
中断
引例:烧水,电视,电话,在某个场景下同时发生,此刻人作为处理这些问题的唯一主体,就需要有一个轻重缓急,按照紧迫程度(优先级)去解决这些问题。
中断使能寄存器——IE的控制位(8位控制):
- 第7位 EA——总中断, 为1时打开(总开关)
- 第1位 ET0——定时器0中断使能,为1时打开(相当于闹钟开关)
注意:
- 中断函数不需要调用,达到中断条件自动进入。
- 刷新时间固定1ms,不会受到计算过程的影响。
- 中断函数定义时,格式为:
void InterruptTime0() interrupt 1
其中的1表示中断函数编号,其计算方式为:x*8+3=?,?为中断向量地址的十进制值,例如本例采用T0中断,对应地址为0x000B=11,所以x=1。
- 中断优先级分为固有优先级和抢占优先级:
固有优先级:几个中断同时发生时,先处理优先级默认高的程序,处理过程中对其他一切中断不予响应。
抢占优先级:同时发生中断,优先级高的西先响应,在处理中断过程中,出现更高级别优先级,则先执行更改级别优先级再回来处理当前优先级。
实验一:我们对【005-数码管的使用】中 方案三 的程序进行改动,使用中断函数以解决抖动问题。
#include<reg52.h> //头文件
sbit LS1 = P2^2; //74LS138控制端
sbit LS2 = P2^3;
sbit LS3 = P2^4;
unsigned char shu_ma_guan[16] = {
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, //0~F的对应值
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//全局变量
unsigned char LedBuff[8]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; //定义8个数码管初始状态均为00000000,即都不显示
unsigned char flag1s = 0; //一秒到达标志位,为1即表示到达一秒
unsigned int cnt = 0;
unsigned char i = 0;
void main() //主函数
{
unsigned long sec = 0;
TMOD = 0x01; //定时器定义,晶振12Mhz,每次1ms
TH0 = 0xFC;
TL0 = 0x18;
TR0 = 1; //打开定时器
EA = 1; //打开中断总开关
ET0 = 1; //打开定时器0中断开关
while(1)
{
if(flag1s == 1 ) //判断是否到一秒
{
flag1s = 0; //时间到达一秒,标志复位
sec++; //时间到达一秒自动加1
LedBuff[0] = shu_ma_guan[sec%10]; //确定数码管在某个时间时各个位的显示数字
LedBuff[1] = shu_ma_guan[sec/10%10];
LedBuff[2] = shu_ma_guan[sec/100%10];
LedBuff[3] = shu_ma_guan[sec/1000%10];
LedBuff[4] = shu_ma_guan[sec/10000%10];
LedBuff[5] = shu_ma_guan[sec/100000%10];
LedBuff[6] = shu_ma_guan[sec/1000000%10];
LedBuff[7] = shu_ma_guan[sec/10000000%10];
}
}
}
//中断函数
void InterruptTime0() interrupt 1 //函数名中在:Interrupt——中断函数,Time0——定时器0中断
//不要忘记interrupt关键字及1(1的计算看文章开头)
{
TH0 = 0xFC; /定义定时器
TL0 = 0x18; //注意:右移TF0溢出时,进入定时器中断硬件自动清零,不在需要软件清零,省略语句TF0=0;
cnt++; //TFO溢出一次,自动加1
if(cnt == 1000) /时间到达一秒
{
cnt = 0; //复位,从新计次
flag1s = 1; //1秒到达标志置1
}
P0 = 0x00; //消除鬼影,使得数码管的所有段全灭
switch(i) //数码管刷新
{
case 0: LS3=0;LS2=0;LS1=0;i++;P0=LedBuff[0];break;
case 1: LS3=0;LS2=0;LS1=1;i++;P0=LedBuff[1];break;
case 2: LS3=0;LS2=1;LS1=0;i++;P0=LedBuff[2];break;
case 3: LS3=0;LS2=1;LS1=1;i++;P0=LedBuff[3];break;
case 4: LS3=1;LS2=0;LS1=0;i++;P0=LedBuff[4];break;
case 5: LS3=1;LS2=0;LS1=1;i++;P0=LedBuff[5];break;
case 6: LS3=1;LS2=1;LS1=0;i++;P0=LedBuff[6];break;
case 7: LS3=1;LS2=1;LS1=1;i=0;P0=LedBuff[7];break;
default: break;
}
}
</reg52.h>
Original: https://www.cnblogs.com/Yang-shihao/p/14353178.html
Author: shihao_Yang
Title: 006-中断
相关阅读2
Title: 工作5年后我才发现:90%的技术问题,可以解决
; 01.前言
现在市面上的智能电子产品千千万,为了达到人们使用更加方便的目的,很多智能产品都开发了语音识别功能,用来语音唤醒进行交互;另外,各大公司也开发出来了各种智能语音机器人,比如小米公司的"小爱",百度公司的"小度",三星公司的"bixby",苹果的"siri"等等。这些语音识别的功能,提高人们使用电子的产品的体验,但是作为一名测试员,给你一款语音识别产品,要怎么进行测试呢?
接下来,我就以小米手机为例,给大家介绍小米手机语音识别如何测试。
小米语音识别功能如何进行测试?
要知道语音识别功能如何测试,我们先了解智能产品语音交互流程:
所以,要进行测试的话,我们需要从以下几个维度来准备测试点:
02.基础功能测试:
1 声纹的录入:
语音唤醒,为了确保每个人的声音、每个人在不同场景下的声音都能成功语音唤醒,测试一定要有各种不同的声纹来进行测试。
所以,就需要录入各种不同的声纹,来丰富测试场景的覆盖;
2 语音唤醒:
正常唤醒:使用正常的声纹进行语音唤醒,检查可以成功;
异常唤醒:使用异常的声音,比如视频/录音进行唤醒,音乐声进行唤醒,确保不会有误唤醒。
3 唤醒后的功能:
a、语音找设备:可以唤醒设备,比如手机,通过语音找到设备。
b、音量调节:可以通过语音对设备进行音量调节
c、连续对话:唤醒设备后,可以与其进行持续的语音对话,功能正常。
d、指令识别:唤醒后,可以下发指令比如播放音乐,查询天气,拨打电话、定闹钟等,检查指令可以正常被执行。
4 功能冲突交互测试
a、中断测试:语音识别过程中,有中断干扰,比如手机唤醒的时候有电话中断;有闹钟中断、低电量中断等,确保这些中断能被正常处理,不会造成异常;
b、麦克风冲突:如果麦克风被占用了,测试是否能被唤醒;
5 多用户场景
因为用户使用语音识别的场景非常多,测试很难进行完全的覆盖。所以,我们需要通过分析用户的主流使用场景,来覆盖主要的场景。
通过一些数据的采集,发现用户使用的场景屏幕分布如下:
调查结果发现,用户使用语音功能主要覆盖以下场景:
所以测试就主要优先去覆盖这些用户场景,其他的场景用例优先级可以逐步降低,调整测试权重,保证用户主流场景的稳定性和准确性。
; 03.UI 测试
语音唤醒的有 UI 界面需要进行 UI 测试。
比如手机的语音唤醒功能,需要进行 UI 界面的检查,保持 UI 的友好型和美观性;
04.兼容性测试
1,第三方应用的兼容性测试
如果设备里有安装其他的应用,比如手机里的其他应用,是否可以通过语音识别唤醒后进行指定的动作操作;第三方应用兼容性需要保证;
2,外界设备兼容
a、三段式耳机接入
b、四段式耳机接入
c、type-c 数字耳机接入
d、蓝牙耳机接入
通过接入这些第三方的耳机设备,可以进行语音识别并且功能正常。
05.自动化语音识别测试
以上都是通过手工进行测试的,要进行一个比较完整的语音识别覆盖,至少需要以下配置:
测试人数:10/20 人(男女各一半)
测试次数:每个场景 50 次
测试环境:办公室、会议室
测试场景:亮屏唤醒、灭屏唤醒、手机播放音乐唤醒、声纹误唤醒、基本语句识别率
但是手工测试是有不可忽视的一些严重缺陷的:
1、测试手法不统一:不同的距离和不同的角度都会导致识别结果不一样。
2、测试过程中人员声音波动大
同一算法,同一产品,在测试人员不变,场景一致的情况下,多轮测试的数据差异大;
由此可见,手工测试耗时耗力、测试数据参考价值低。所以,语音识别测试也可以进行一些自动化测试。
06.自动化测试的关键点
1 实现半自动化语音测试
因为手工测试就是没有办法提供那么多人进行不同语料的测试,所以需要实现语料自动合成和模拟。可以采用 python+pyaudio 开发 + 音箱模拟人声,来对语音进行识别测试。
而且通过增加语料量级(至少 40 组声纹),降低唤醒/识别频次;增加不同的噪音环境,不同噪音 + 不同距离,模拟用户真实环境。
这样,就可以覆盖更多的不同的语料以及场景,大大提高识别的正确率。
2 语料自动化播放 + 自动化检测
现在有了语料,但是需要手动播放的话,工作量依然很大,所以需要实现语料自动播放和自动化监测。
3 增加噪声播放系统 + 滑轨控制系统
因为用户的使用场景往往有很多的噪音,如果测试不模拟这种噪音环境,是没有办法真正还原用户场景的。所以,需要设置一些噪音源,可以自动化增加噪音,并可以调整距离。
如下图,就是小米公司的专为为测试语言识别造的混响室,以及自动化调节人头系统
最后: 可以在公众号:伤心的辣条 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 "点赞" "评论" "收藏" 一键三连哦!喜欢软件测试的小伙伴们,可以加入我们的测试技术交流扣扣群:914172719(里面有各种软件测试资源和技术讨论)
; 好文推荐
转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!
面试经:一线城市搬砖!又面软件测试岗,5000就知足了...
面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号...
Original: https://blog.csdn.net/AI_Green/article/details/120535356
Author: 软件测试君
Title: 工作5年后我才发现:90%的技术问题,可以解决
相关阅读3
Title: ASR项目实战-交付团队的分工
对于通常的软件项目,参与角色,比如可以有用户,消费者,产品团队,研发团队(研发团队包括开发和测试),运营团队,运维团队,管理团队。
通常认为,用户,负责购买服务的群体,而消费者,负责使用业务的群体。这两个群体,不在本文的讨论范围之内,因此后续的介绍中,除非明确说明,否则默认均不涉及。
产品团队,研发团队(研发团队包括开发和测试),运营团队,运维团队,管理团队,可以归纳为产品交付团队。
关于各团队的简单的说明:
- 产品团队,负责定义产品,规划路标,收集和定义需求的团队。
- 研发团队,可以细分为架构团队,设计团队,开发团队,测试团队。
- 架构团队,依据产品定义,路标规划,定义并看护产品的架构。
- 设计团队,依据需求定义,结合架构方案,输出设计方案,指导开发团队交付需求,指导测试团队完成功能验证,指导运维团队在生产实施和维护。
- 开发团队,依据需求方案,按照一定的节奏交付特性。
- 测试团队,依据需求方案,实施功能验证,确认是否达成一定的质量要求。
- 管理团队,产品团队、研发团队、运营团队、运维团队等的管理组织,制订计划,跟进计划的执行,全程参与产品的交付,并对产品最终的结果负责。
- 运营团队,负责产品的推广、用户拓展和经营、用户培训、宣传方案、使用资料等。
这几个团队的规模视情况而定,职能和人员可能存在一定的重叠,比如
- 有些公司没有专职的运营人员,相关的职能由产品团队和运维团队承担;
- 有些公司没有专职的产品团队,相关的职能由管理团队以及研发团队中的架构、设计团队一起承担。
具体到ASR的交付,由于涉及到了机器学习算法,依据职责和人员技能,新增了如下团队:
- 数据团队,负责采集、清洗、转换数据。
- 算法设计团队,负责设计模型的结构、模型的训练算法、算法的评测指标和评测方法,同时决定训练平台。
- 算法训练团队,依据设计好的模型结构和训练算法,执行训练任务,输出、评测模型。
- 算法工程化团队,依据设计好的模型结构,综合考虑训练平台,选型推断代码的运行平台,输出推断代码,并负责调优,满足工程交付的要求。
- 模型测试团队,依据事先确定的评测方法,执行评测工作,输出相应的指标数据。
为了区分,原有的设计、开发、测试团队,则分别命名为业务设计、业务开发、业务测试团队。
组织很庞大,分工很细致,因此平衡各方面的利益和诉求,非常考验管理团队和架构团队。
为了完成产品的交付,各团队之间存在相互依赖和诉求。
比如:
- 数据团队
- 依赖算法工程化团队,提供采集、清洗、转换的工具。
- 依赖算法设计团队,提供数据的标准和来源。
- 依赖算法训练和模型测试等团队,提供对数据质量的反馈。
- 算法设计团队
- 依赖数据团队,提供样例数据。
- 依赖产品团队,提供需求和优先级。
- 依赖算法训练团队,反馈训练算法、模型存在的问题。
- 算法训练团队
- 依赖数据团队,提供训练数据。
- 依赖算法设计团队,提供模型定义、训练算法。
- 依赖算法测试团队,反馈模型的问题。
- 模型测试团队
- 依赖数据团队,提供测试数据。
- 依赖算法工程化团队,提供支撑测试的工具。
- 算法工程化团队
- 依赖业务设计、算法设计团队,提供接口定义。
- 业务设计团队
- 依赖算法设计团队,定义算法的能力,协同定义集成方案,交互的接口。
- 业务开发团队
- 依赖架构团队,给出架构方案、技术选型等。
- 依赖业务设计团队,给出集成方案和接口文档等。
- 依赖算法工程化团队,协同完成集成。
- 依赖算法训练团队,提供符合要求的模型。
- 业务测试团队
- 依赖业务设计团队、算法设计团队,提供设计方案。
- 依赖数据团队,提供发布验证的数据。
- 依赖业务开发团队,提供转测试的版本。
- 管理团队
- 依赖架构、设计、开发、测试团队,各自给出计划,关键时间点,内、外部的风险和困难等。
前述各团队的分工、职责、人员可能未必可以划分的如此清晰,在项目的实际运作过程中,经常存在重合的现象,需要各团队、各成员相互之间补位,凡事以达成产品的交付目标为重。
为了提高各团队之间的沟通效率,团队之间需要统一语言,相互之间学习基本的概念和业务,增进相互的理解,此外在沟通时注重就事论事,减少无意义的PK,这样才能提高沟通效率,改善生活质量。
Original: https://blog.csdn.net/babyblue_963/article/details/113728440
Author: 小南家的青蛙
Title: ASR项目实战-交付团队的分工