伺服器:tornado
語言:python,js,html
效果:(將錄好的音放在指定位置)
實現邏輯:
部分實現**:
web:
注意,class中最後一項 record_start或record_stop,後面js檔案中的方法呼叫和這個對應
js:(其中用到aja需要用到jquery-3.4.1.min.js)
$('.record_start').on('click',function(e)
$.ajax(
else
},error:function()
}) //$代表jquery,可發起ajax請求,相當於requests,
}) $('.record_stop').on('click',function(e)
$.ajax(
else
},error:function()
}) //$代表jquery,可發起ajax請求,相當於requests,
})python server:
static = record_w**.final_record()
class recordhandler(basehandler):
global static
def post(self):
query = self.get_argument('query','')
static.record_w**(query)
res =
self.write(json.dumps(res))
self.finish()
def make_app():
return tornado.web.application([
#其他沒用的我刪了
(r"/record",recordhandler)
],**settings)
'''**settings:將字典中的元素解析出來,寫配置的
'''這裡值得注意的是:定義乙個全域性變數,因為第二次選擇關閉錄音的時候也得呼叫這個類,倘若不加全域性,對於static,計算機會重新開闢新空間而不是用之前的,這就導致你的錄音沒法停止,因為它會停止乙個空的錄音。
python record_w**.py
rec =recorder()
class final_record():
def record_w**(self,static):
global rec
if static == 'start':
rec.start()
return 'success!'
elif static=='stop':
rec.stop()
rec.s**e(fname)
asr=asr.xunfeiasr()
query=''
query=asr.transcribe(fname)
return query
同上,這兒的物件也得是全域性變數。(這倆全域性變數想了很久才想出來的,當然,貿然設全域性變數很不好,但我只能想到這麼多了)
其他的**,例如錄音方面的網上很好找,暫且不再次贅述了。
本文標題: python實現網頁錄音效果
本文位址:
python實現錄音小程式
學習目標 掌握python的pyaudio擴充套件包程式設計客棧和w e模組錄製語音的方法 python w 包是自帶的,pyaudio需要 pip3 install pyaudio python讀w 檔案 fp w e.open rb nf fp.getnframes 獲取檔案的取樣點數量 pri...
分析Guitar Pro 7如何實現切音效果
guitar pro 7是一款適合初學編曲還是吉他初學者的結他編曲軟體,目前在國內還是比較受國人的喜愛的,本章節就採用 結合的方式給大家分析guitar pro中切音是如何實現的。首先我們先來普及下切音的知識,請大家繼續往下看 切音是產生鮮明節奏的重要彈法,倫巴 吉特巴 探戈各種各等明朗有力的節奏和...
js實現 回到網頁頂部 效果
實現效果 當頁面內容比較多的時候,會出現滾動條,通過js 做了乙個實現 回到網頁頂部 的功能,而且回到頂部的速度是逐步增加的。2 獲取這個鏈結標籤物件,然後給它新增乙個事件 3 核心是 中定義的操作 具體 如下 aaaaaaaa aaaaaaaa aaaaaaaa aaaaaaaa aaaaaaaa...