文章怎么测试语音时长

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文章怎么测试语音时长相关的知识,希望对你有一定的参考价值。

今天在测试同事的微信平台的发送语音的时候,发现有时候语音能发过来,有时候就不行,经过检查,发现丢掉了检测音频时长(微信里面语言时长要限定在60S内),好吧,我补上,闲着也是闲着~

首先是读取语音的时长:

<span style="font-size:14px;"> /// <summary>
/// 获取上传音频的时间长度
/// </summary>
/// <param name="strFullUrl">The STR full URL.</param>
/// <returns>System.String.</returns>
/// <remarks>Editor:v-liuhch CreateTime:2015/5/15 17:32:57</remarks>
public string GetLocalVoiceTotalTime(string strFullUrl)


ShellClass sh = new ShellClass();
Folder dir = sh.NameSpace(Path.GetDirectoryName(strFullUrl));
FolderItem item = dir.ParseName(Path.GetFileName(strFullUrl));
return dir.GetDetailsOf(item, 27); // 获取歌曲时长。

</span>

使用shellclass的时候要先引用COM组件Microsoft Shell Controls And Automation,并将Embed Interop Type 设为False。

由于上述函数只支持读取本地文件,所以,我们将得到的文件先放在临时文件夹中,判断完成之后立即删除。

<span style="font-size:14px;">/// <summary>
/// 检查上传音频文件的总时间长度是否小于60s
/// </summary>
/// <param name="file">The file.</param>
/// <returns><c>true</c> if XXXX, <c>false</c> otherwise</returns>
/// <remarks>Editor:v-liuhch CreateTime:2015/5/15 17:34:51</remarks>
public bool ChkVideoTotalTime(HttpPostedFile file)

string strTempUrl = Path.GetTempPath() + DateTime.Now.ToString("yyyyMMddHHmmssfff").ToString() + Path.GetExtension(file.FileName);
file.SaveAs(strTempUrl);//保存到本地临时文件夹

try

string strTotalTime = GetLocalVoiceTotalTime(strTempUrl); //获取文件时长

return (Convert.ToDateTime(strTotalTime) - Convert.ToDateTime("00:01:00")).Seconds > 0 ? false : true;


catch (Exception)
return false;
finally System.IO.File.Delete(strTempUrl);//删除临时文件

</span>

之后,在处理文件之前加入如下判断就ok了:

<span style="font-size:14px;"> if (int.TryParse(HttpContext.Current.Request.QueryString["MaterialVoice"], out MaterialVoice))//如果是素材里面上传音频的话

if (!ChkVideoTotalTime(files[0]))

return strRequest = "errorTime"; //如果超过60s

</span>

PS:别忘了前台验证。

打开CSDN APP,看更多技术内容

java获取amr格式语音长度
该java代码实现了将获取到的语音计算出其长度,方便在页面上播放
最新发布 java获取音频时长(wav)
package com.xyz.common.utils; import lombok.extern.slf4j.Slf4j; import javax.sound.sampled.*; import java.io.File; import java.net.URL; @Slf4j public class VoiceUtils //获取时长 public static Long getVoiceLength(String wavFilePath) //可以是本地
继续访问
微信开发之消息接收--语音消息(七)
一、消息格式 <xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1357290913</CreateT...
继续访问
uni-app实战仿微信app开发
<div style="color:#444444;"> 适用人群 </div> <div> <div style="color:#444444;"> <p style="color:#666666;"> 具有html+Css+javascript基础,有一定的Vue.js基础,挑战高薪职位 </p> </div> <div style="color:#444444;"> 课程概述 <p> 本季度为uni-app + egg.js 实战仿微信app和小程序全栈开发,开启纯nvue原生渲染,大大提高性能。一次开发,同时搞定androidios和小程序端等。 </p> <p> 课程大纲见以下图! </p> <p> <img src="https://img-bss.csdn.net/202003071752171980.png" alt="" /><img src="https://img-bss.csdn.net/202003071752255131.png" alt="" /><img src="https://img-bss.csdn.net/202003071752382716.png" alt="" /><img src="https://img-bss.csdn.net/202003071752459844.png" alt="" /><img src="https://img-bss.csdn.net/202003071752516999.png" alt="" /></p> </div> </div>
继续访问

最新微信小程序获取音频时长与实时获取播放进度
#微信小程序获取音频时长与实时获取播放进度 在小程序官方文档中 audio 注意:1.6.0 版本开始,该组件不再维护。建议使用能力更强的 wx.createInnerAudioContext 接口 ##第一种方法 通过audio组件获取音频时长和实时播放进度 audio 有一个bindtimeupdate 属性 当播放进度改变时触发 timeupdate 事件,detail = current...
继续访问
copy即用:MultipartFile 音频视频获取时长(时分秒)
三个步骤: 本地生成file文件 MultipartFile转为file,获取时长(毫秒),换算毫秒为时分秒 删除本地的file文件 导入maven,该jar包可能会自动下载失败,需手动下载的,请移步: CSDN下载:jave-1.0.2.jar --计算视频时长所必需的jar包 网盘下载:链接:https://pan.baidu.com/s/1eION3Z4mDi-Jo-v...
继续访问
关于微信开发的语音存储问题
微信开发的语音存储问题
继续访问
Android开发--仿微信语音对讲录音
自微信出现以来取得了很好的成绩,语音对讲的实现更加方便了人与人之间的交流。今天来实践一下微信的语音对讲的录音实现,这个也比较容易实现。在此,我将该按钮封装成为一个控件,并通过策略模式的方式实现录音和界面的解耦合,以方便我们在实际情况中对录音方法的不同需求(例如想要实现wav格式的编码时我们也就不能再使用MediaRecorder,而只能使用AudioRecord进行处理)。
继续访问
Java读取音频\视频时长 - JAVE
JAVE官网地址 JAVE(JAVA 一 UDIO VIDEO Encoder)库是在Java包装 ffmpeg的项目。开发人员可以利用JAVE将音频和视频文件从一种格式转码为另一种格式。在例子中,你可以转码的AVI文件到MPEG一个,你可以改变一个DivX视频流转换为(YouTube的等)的Flash FLV一个,你可以一个WAV音频文件转换成MP3或奥格Vorbis的一个,你可以分离和
继续访问
multipartfile 获取音频时长_我在音频平台日赚150元的正确打开方式。或许适合你...
听一本书,比看一本书让我们获取知识变得更加的容易和方便,随时随地都可以进行学习,不论是躺在床上,还是在开车都可以随时收听,音频不同于图文,我们不需要聚精会神的看,音频他特有的属性,能在各种场景中发挥最大的效果。有声阅读也成为了一个用户获取知识的渠道。小白操作流程1.自己先注册账号,完善自己的账号信息,明确自己,你做什么产品,你就要卖什么服务。切记不要什么内容都讲,讲的越杂,收听的人越少,转换率越低...
继续访问
java获取网络音乐文件时长
java获取网络音乐文件时长,自己整理的三种方法
iOS 音频时长获取不正确
iOS 使用lame库将音频转化MP3会发现通过player获取时长与原文件时长不符,本文主要解决该问题
JAVA编程获取音频时长
具体代码如下: File source =new File('C:/Users/Qiang/Desktop/Alone.mp3'); Encoder encoder = new Encoder(); MultimediaInfo m = encoder.getInfo(source); long ls = m.getDuration(); duration = ls/1000; System.
继续访问
Android 仿微信语音,录音时间不能少于一秒,不超过一分钟,并且设置了录音倒计时提示等.rar
Android 仿微信语音,录音时间不能少于一秒,不超过一分钟,并且设置了录音倒计时提示等.rar [注:本内容来自网络,在此分享仅为帮助有需要的网友,如果侵犯了您的权利,麻烦联系我,我会第一时间删除,谢谢您。]
语音时长调整算法
关于语音时长调整的文档资源:基于混合域处理的快速WSola算法、基于语音分段的自适应时长调整算法、语音的时域压缩与扩展、语音时长调整快速算法
MultipartFile 视频获取时长(时分秒) VideoUtil.java
本地生成file文件 MultipartFile转为file,获取时长(毫秒),换算毫秒为时分秒 删除本地的file文件
热门推荐 java获取音频时长
下载 jave-1.0.2.jar http://pan.baidu.com/s/1nueaBjF File source =new File('d:\\test.mp3'); Encoder encoder = new Encoder(); MultimediaInfo m = encoder.getInfo(source); long ls = m.getDuration(
继续访问
微信小程序获取音频时长与实时获取播放进度问题
主要介绍了微信小程序获取音频时长与实时获取播放进度,文中给大家通过一个例子介绍了微信小程序音频长度获取的问题,感兴趣的朋友跟随脚本之家小编一起看看吧
参考技术A 如果不设置任何分句停顿符号,或者没有设置对应的停顿符号,软件就默认选择一大段文本来读。

以上是关于文章怎么测试语音时长的主要内容,如果未能解决你的问题,请参考以下文章

微信朗读功能怎么用

语音识别系列︱用python进行音频解析

语音识别系列︱用python进行音频解析

语音识别系列︱用python进行音频解析

新款文章,绝无仅有!微信语音aud文件转换为mp3格式

信息隐藏简单扩频语音水印算法