python实现网页录音效果


Posted in Python onOctober 26, 2020

本文实例为大家分享了python实现网页录音效果的具体代码,供大家参考,具体内容如下

服务器:tornado

语言:python,JS,html

效果:(将录好的音放在指定位置)

python实现网页录音效果

实现逻辑:

python实现网页录音效果

部分实现代码:

web:

<button type="submit" class="btn btn-primary mb-2 record_start">开始录音</button>
<button type="submit" class="btn btn-primary mb-2 record_stop">结束录音</button>

注意,class中最后一项 record_start或record_stop,后面JS文件中的方法调用和这个对应

JS:(其中用到Ajax,需要用到jquery-3.4.1.min.js)

$('.record_start').on('click',function(e){
 //css中有CHAT的,点击时开始相应,其中' . '代表是在css中,' # '代表是在id中
 e.preventDefault();
  //防止跳转
 args = {'query':'start'}
 $.ajax({
  async: false,
  url:'/record',
  type:'POST',
  data:$.param(args),
  success: function(res){
  var data =JSON.parse(res)
  if(data.code == 0){
   console.log('发送成功');
  }
  else{
   console.error('发送失败');
  }
  },
  error:function(){
  console.error('发送失败');
  }
 })
 //$代表jquery,可发起ajax请求,相当于requests,
 })
 $('.record_stop').on('click',function(e){
 //css中有CHAT的,点击时开始相应,其中' . '代表是在css中,' # '代表是在id中
 e.preventDefault();
  //防止跳转
 args = {'query':'stop'}
 $.ajax({
  async: false,
  url:'/record',
  type:'POST',
  data:$.param(args),
  success: function(res){
  var data =JSON.parse(res)
  if(data.code == 0){
   console.log('发送成功');
  }
  else{
   console.error('发送失败');
  }
  },
  error:function(){
  console.error('发送失败');
  }
 })
 //$代表jquery,可发起ajax请求,相当于requests,
 })

Python server:

static = Record_wav.Final_record()
 
class RecordHandler(BaseHandler):
 global static
 def post(self):
 query = self.get_argument('query','')
 static.record_wav(query)
 res = {'code':0,'message':'sucess'}
 self.write(json.dumps(res))
 self.finish()
 
 
def make_app():
 return tornado.web.Application([
 #其他没用的我删了
 (r"/record",RecordHandler)
 ],**settings)
 '''
 **settings:将字典中的元素解析出来,写配置的
 '''

这里值得注意的是:定义一个全局变量,因为第二次选择关闭录音的时候也得调用这个类,倘若不加全局,对于static,计算机会重新开辟新空间而不是用之前的,这就导致你的录音没法停止,因为它会停止一个空的录音。

python实现网页录音效果

Python Record_wav.py

rec =Recorder()
 
class Final_record():
 
 def record_wav(self,static):
  global rec
  if static == 'start':
  rec.start()
  return 'success!'
  elif static=='stop':
  rec.stop()
  rec.save(fname)
  asr=ASR.XunFeiASR()
  query=''
  query=asr.transcribe(fname)
  return query

同上,这儿的对象也得是全局变量。(这俩全局变量想了很久才想出来的,当然,贸然设全局变量很不好,但我只能想到这么多了)

其他的代码,例如录音方面的网上很好找,暂且不再次赘述了。

录音代码可以参考这位博主的文章:python实现录音功能(可随时停止录音)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的is和id用法分析
Jan 26 Python
Python实现批量下载文件
May 17 Python
Python实现字符串格式化的方法小结
Feb 20 Python
在python中使用正则表达式查找可嵌套字符串组
Oct 24 Python
python多行字符串拼接使用小括号的方法
Mar 19 Python
实例介绍Python中整型
Feb 11 Python
Python使用字典的嵌套功能详解
Feb 27 Python
python根据多个文件名批量查找文件
Aug 13 Python
Python 从subprocess运行的子进程中实时获取输出的例子
Aug 14 Python
Python用5行代码实现批量抠图的示例代码
Apr 14 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
Apr 21 Python
理解深度学习之深度学习简介
Apr 14 Python
python实现录音功能(可随时停止录音)
Oct 26 #Python
Python用dilb提取照片上人脸的示例
Oct 26 #Python
python用tkinter实现一个gui的翻译工具
Oct 26 #Python
Docker如何部署Python项目的实现详解
Oct 26 #Python
python Gabor滤波器讲解
Oct 26 #Python
详解基于python的图像Gabor变换及特征提取
Oct 26 #Python
多个版本的python共存时使用pip的正确做法
Oct 26 #Python
You might like
《OVERLORD》手游英文版即将上线 手机上也能扮演骨王
2020/04/09 日漫
PHP5函数小全(分享)
2013/06/06 PHP
php文件夹与文件目录操作函数介绍
2013/09/09 PHP
php调用google接口生成二维码示例
2014/04/28 PHP
PHP一致性hash分布式算法封装类定义与用法示例
2018/08/04 PHP
弹出广告特效(一个IP只弹出一次)的代码
2007/07/27 Javascript
jquery方法+js一般方法+js面向对象方法实现拖拽效果
2012/08/30 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
js拼接html注意问题示例探讨
2014/07/14 Javascript
js图片闪动特效可以控制间隔时间如几分钟闪动一下
2014/08/12 Javascript
js实现鼠标触发图片抖动效果的方法
2015/02/27 Javascript
简介AngularJS的视图功能应用
2015/06/17 Javascript
jQuery插件FusionCharts实现的2D柱状图效果示例【附demo源码下载】
2017/03/06 Javascript
jQuery模拟窗口抖动效果
2017/03/15 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
JavaScript学习笔记之函数记忆
2017/09/06 Javascript
详解jQuery如何实现模糊搜索
2019/05/10 jQuery
JavaScript enum枚举类型定义及使用方法
2020/05/15 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
Python迭代器和生成器介绍
2015/03/06 Python
python抓取最新博客内容并生成Rss
2015/05/17 Python
Python 实现选择排序的算法步骤
2018/04/22 Python
PyQt5多线程防卡死和多窗口用法的实现
2020/09/15 Python
浅谈关于html5中图片抛物线运动的一些心得
2018/01/09 HTML / CSS
关于打架的检讨书
2014/01/17 职场文书
四川成都导游欢迎词
2014/01/18 职场文书
大学生职业生涯规划书参考模板
2014/03/05 职场文书
共产党员公开承诺书范文
2014/03/28 职场文书
说明书格式及范文
2014/05/07 职场文书
不尊敬老师检讨书范文
2014/11/19 职场文书
贪污检举信范文
2015/03/02 职场文书
2015年公共机构节能宣传周活动总结
2015/03/26 职场文书
2015年初三班主任工作总结
2015/05/21 职场文书
员工安全责任协议书
2016/03/22 职场文书
python3 sqlite3限制条件查询的操作
2021/04/07 Python
css height属性中的calc方法详解
2021/06/03 HTML / CSS