精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

基于Python創建語音識別控制系統

開發 后端
這篇文章主要介紹了通過Python實現創建語音識別控制系統,能利用語音識別識別說出來的文字,根據文字的內容來控制圖形移動,感興趣的同學可以關注一下

 前言:

[[439352]]

這篇文章主要介紹了通過Python實現創建語音識別控制系統,能利用語音識別識別說出來的文字,根據文字的內容來控制圖形移動,感興趣的同學可以關注一下

利用語音識別識別說出來的文字,根據文字的內容來控制圖形移動,例如說向上,識別出文字后,畫布上的圖形就會向上移動。本文使用的是百度識別API(因為免費),自己做的流程圖:

 

基于Python創建語音識別控制系統

 

不多說,直接開始程序設計,首先登錄百度云,創建應用

 

基于Python創建語音識別控制系統

 

注意這里的API Key和Secret Key,要用自己的才能生效

百度語音識別有對應的文檔,具體調用方法說的很清晰,如果想學習一下可以查看REST API文檔

文檔寫的很詳細,本文只說明用到的方法,語音識別使用方法為組裝URL獲取token,然后處理本地音頻以JSON格式發送到百度語音識別服務器,獲得返回結果。

百度語音識別支持pcm、wav等多種格式,百度服務端會將非pcm格式轉成pcm格式,因此使用wav、amr格式會有額外的轉換耗時。保存為pcm格式可以識別,只是windows自帶播放器識別不了pcm格式的,所以改用wav格式,同時要引用wave庫,功能為可讀、寫wav類型的音頻文件。采樣率使用了pcm采樣率16000固定值,編碼為16bit位深得單聲道。

 

基于Python創建語音識別控制系統

 

錄音函數中使用了PyAudio庫,是Python下的一個音頻處理模塊,用于將音頻流輸送到計算機聲卡上。在當前文件夾打開一個新的音頻進行錄音并存放錄音數據。本地錄音:

 

基于Python創建語音識別控制系統

 

然后是獲取token,根據創建應用得到的APIKey和SecreKey(這里要使用自己的)來組裝URL獲取token。在語音識別函數中調用獲取的token和已經錄制好的音頻數據,按照要求的格式來寫進JSON參數進行上傳音頻。

百度語音要求對本地語音二進制數據進行base64編碼,使用base64庫來進行編碼。創建識別請求使用的是POST方式來進行提交,在識別函數中寫入百度語音提供的短語音識別請求地址。識別結果會立刻返回,采用JSON格式進行封裝,識別結果放在 JSON 的 “result” 字段中,統一采用 utf-8 方式編碼。

 

  1. # 組裝url獲取token 
  2. base_url = "https://openapi.baidu.com/oauth/2.0/token?grant_type=client_credentials&client_id=%s&client_secret=%s" 
  3. APIKey = "*****************" 
  4. SecretKey = "********************" 
  5. HOST = base_url % (APIKey, SecretKey) 
  6.    
  7.    
  8. def getToken(host): 
  9.     res = requests.post(host) 
  10.     r = res.json()['access_token'
  11.     return r 
  12.    
  13.    
  14. # 傳入語音二進制數據,token 
  15. # dev_pid為百度語音識別提供的幾種語言選擇,默認1537為有標點普通話 
  16. def speech2text(speech_data, token, dev_pid=1537): 
  17.     FORMAT = 'wav' 
  18.     RATE = '16000' 
  19.     CHANNEL = 1 
  20.     CUID = '*******' 
  21.     SPEECH = base64.b64encode(speech_data).decode('utf-8'
  22.     data = { 
  23.         'format': FORMAT, 
  24.         'rate': RATE, 
  25.         'channel': CHANNEL, 
  26.         'cuid': CUID, 
  27.         'len': len(speech_data), 
  28.         'speech': SPEECH, 
  29.         'token': token, 
  30.         'dev_pid': dev_pid 
  31.     } 
  32.     url = 'https://vop.baidu.com/server_api'  # 短語音識別請求地址 
  33.     headers = {'Content-Type''application/json'
  34.     print('正在識別...'
  35.     r = requests.post(url, json=data, headers=headers) 
  36.     Result = r.json() 
  37.     if 'result' in Result: 
  38.         return Result['result'][0] 
  39.     else
  40.         return Result 

 

最后我們編寫控制移動函數,首先我們要知道如何來把控制圖形移動來呈現出來。本項目中我們使用的是tkinter模塊,Tkinter是一個python模塊,是一個調用Tcl/Tk的接口,它是一個跨平臺的腳本圖形界面接口。是一個比較流行的python圖形編程接口。最大的特點是跨平臺,缺點是性能不太好,執行速度慢。

我們利用tkinter中的canvas來設置一個畫布,并創建一個事件ID為1的矩形,把矩形放在畫布中顯示。在畫布中添加Button按鈕,回調中寫入對應的函數,點擊觸發錄制音頻和語音識別。為了使代碼更加簡潔,我們把移動函數放在語音識別函數中調用,返回識別結果后對結果做出判斷,最后使圖形進行移動。

 

  1. def move(result): 
  2.     print(result) 
  3.     if "向上" in result: 
  4.         canvas.move(1, 0, -30)  # 移動的是 ID為1的事物【move(2,0,-5)則移動ID為2的事物】,使得橫坐標加0,縱坐標減30 
  5.     elif "向下" in result: 
  6.         canvas.move(1, 0, 30) 
  7.     elif "向左" in result: 
  8.         canvas.move(1, -30, 0) 
  9.     elif "向右" in result: 
  10.         canvas.move(1, 30, 0) 
  11.    
  12.    
  13. tk = Tk() 
  14. tk.title("語音識別控制圖形移動"
  15. Button(tk, text="開始錄音", command=AI.my_record).pack() 
  16. Button(tk, text="開始識別", command=speech2text).pack() 
  17. canvas = Canvas(tk, width=500, height=500)  # 設置畫布 
  18. canvas.pack()  # 顯示畫布 
  19. r = canvas.create_rectangle(180, 180, 220, 220, fill="red")  # 事件ID為1 
  20. mainloop() 

 

個人習慣,我把語音識別和圖形控制寫在了兩個文件里,這就導致main.py文件中沒有辦法使用AI.py文件函數中的返回值,因為我們使用的tkinter模塊是不斷循壞的,通過mainloop()才能結束循環,這樣不斷循壞就調用不了返回值,使用的方法是在main.py中重新構建一樣函數來調用AI.py文件中的函數,并聲明全局變量,把AI.py文件中的返回值放在main.py文件的全局變量中,這樣就得到了返回值,再將函數寫到Button回調中就實現了對應的功能。

 

基于Python創建語音識別控制系統

 

 

基于Python創建語音識別控制系統

 

其實代碼寫得十分麻煩,寫在一個文件里會簡單些,我畫了兩個文件的調用關系:

完整demo如下

AI.py

 

  1. import wave  # 可讀、寫wav類型的音頻文件。 
  2. import requests  # 基于urllib,采⽤Apache2 Licensed開源協議的 HTTP 庫。在本項目中用于傳遞headers和POST請求 
  3. import time 
  4. import base64  # 百度語音要求對本地語音二進制數據進行base64編碼 
  5. from pyaudio import PyAudio, paInt16  # 音頻處理模塊,用于將音頻流輸送到計算機聲卡上 
  6.    
  7. framerate = 16000  # 采樣率 
  8. num_samples = 2000  # 采樣點 
  9. channels = 1  # 聲道 
  10. sampwidth = 2  # 采樣寬度2bytes 
  11. FILEPATH = 'speech.wav' 
  12.    
  13. # 組裝url獲取token 
  14. base_url = "https://openapi.baidu.com/oauth/2.0/token?grant_type=client_credentials&client_id=%s&client_secret=%s" 
  15. APIKey = "8bv3inF5roWBtEXYpZViCs39" 
  16. SecretKey = "HLXYiLGCpeOD6ddF1m6BvwcDZVOYtwwD" 
  17. HOST = base_url % (APIKey, SecretKey) 
  18.    
  19.    
  20. def getToken(host): 
  21.     res = requests.post(host) 
  22.     r = res.json()['access_token'
  23.     return r 
  24.    
  25.    
  26. def save_wave_file(filepath, data): 
  27.     wf = wave.open(filepath, 'wb'
  28.     wf.setnchannels(channels) 
  29.     wf.setsampwidth(sampwidth) 
  30.     wf.setframerate(framerate) 
  31.     wf.writeframes(b''.join(data)) 
  32.     wf.close() 
  33.    
  34.    
  35. # 錄音 
  36. def my_record(): 
  37.     pa = PyAudio() 
  38.     # 打開一個新的音頻stream 
  39.     stream = pa.open(format=paInt16, channels=channels, 
  40.                      rate=framerate, input=True, frames_per_buffer=num_samples) 
  41.     my_buf = []  # 存放錄音數據 
  42.     t = time.time() 
  43.     print('正在錄音...'
  44.     while time.time() < t + 5:  # 設置錄音時間(秒) 
  45.         # 循環read,每次read 2000frames 
  46.         string_audio_data = stream.read(num_samples) 
  47.         my_buf.append(string_audio_data) 
  48.     print('錄音結束.'
  49.     save_wave_file(FILEPATH, my_buf) 
  50.     stream.close() 
  51.    
  52.    
  53. def get_audio(file): 
  54.     with open(file, 'rb'as f: 
  55.         data = f.read() 
  56.     return data 
  57.    
  58.    
  59. # 傳入語音二進制數據,token 
  60. # dev_pid為百度語音識別提供的幾種語言選擇,默認1537為有標點普通話 
  61. def speech2text(speech_data, token, dev_pid=1537): 
  62.     FORMAT = 'wav' 
  63.     RATE = '16000' 
  64.     CHANNEL = 1 
  65.     CUID = '*******' 
  66.     SPEECH = base64.b64encode(speech_data).decode('utf-8'
  67.     data = { 
  68.         'format': FORMAT, 
  69.         'rate': RATE, 
  70.         'channel': CHANNEL, 
  71.         'cuid': CUID, 
  72.         'len': len(speech_data), 
  73.         'speech': SPEECH, 
  74.         'token': token, 
  75.         'dev_pid': dev_pid 
  76.     } 
  77.     url = 'https://vop.baidu.com/server_api'  # 短語音識別請求地址 
  78.     headers = {'Content-Type''application/json'
  79.     print('正在識別...'
  80.     r = requests.post(url, json=data, headers=headers) 
  81.     Result = r.json() 
  82.     if 'result' in Result: 
  83.         return Result['result'][0] 
  84.     else
  85.         return Result 

main.py

 

  1. import AI 
  2. from tkinter import *  # 導入tkinter模塊的所有內容 
  3.    
  4. token = None 
  5. speech = None 
  6. result = None 
  7.    
  8.    
  9. def getToken(): 
  10.     temptoken = AI.getToken(AI.HOST) 
  11.     return temptoken 
  12.    
  13.    
  14. def speech2text(): 
  15.     global token 
  16.     if token is None: 
  17.         token = getToken() 
  18.     speech = AI.get_audio(AI.FILEPATH) 
  19.     result = AI.speech2text(speech, token, dev_pid=1537) 
  20.     print(result) 
  21.     move(result) 
  22.    
  23.    
  24. def move(result): 
  25.     print(result) 
  26.     if "向上" in result: 
  27.         canvas.move(1, 0, -30)  # 移動的是 ID為1的事物【move(2,0,-5)則移動ID為2的事物】,使得橫坐標加0,縱坐標減30 
  28.     elif "向下" in result: 
  29.         canvas.move(1, 0, 30) 
  30.     elif "向左" in result: 
  31.         canvas.move(1, -30, 0) 
  32.     elif "向右" in result: 
  33.         canvas.move(1, 30, 0) 
  34.    
  35.    
  36. tk = Tk() 
  37. tk.title("語音識別控制圖形移動"
  38. Button(tk, text="開始錄音", command=AI.my_record).pack() 
  39. Button(tk, text="開始識別", command=speech2text).pack() 
  40. canvas = Canvas(tk, width=500, height=500)  # 設置畫布 
  41. canvas.pack()  # 顯示畫布 
  42. r = canvas.create_rectangle(180, 180, 220, 220, fill="red")  # 事件ID為1 
  43. mainloop() 

文件關系

 

基于Python創建語音識別控制系統

 

錄制的音頻會自動保存在當前文件夾下,就是speech文件

測試結果,運行

 

基于Python創建語音識別控制系統

 

點擊開始錄音

 

基于Python創建語音識別控制系統

 

點擊開始識別

 

基于Python創建語音識別控制系統

 

然后可以看到圖形往右移動

 

 

經測試,大吼效果更佳

到此這篇關于基于Python創建語音識別控制系統的文章就介紹到這了!

責任編輯:華軒 來源: 今日頭條
相關推薦

2022-09-05 15:14:11

語音識別模塊智能家居

2010-06-04 09:33:34

電子訪問控制生物識別身份驗證

2009-04-01 17:58:28

MercurialPython版本控制

2020-03-04 10:51:35

Python算法腳本語言

2022-03-17 00:07:00

工業控制系統

2009-03-23 09:53:47

LinuxGNOMEGit版本

2020-09-27 09:50:35

自動化

2011-04-08 18:00:19

GitSubversion版本控制系統

2020-06-15 10:53:16

工控安全工業控制網絡安全

2023-05-24 14:58:23

2021-02-04 06:54:09

DevOpsGitLab系統

2017-09-01 06:45:37

2014-06-23 10:22:18

2023-10-16 12:42:00

物聯網IOT

2023-10-24 20:41:28

物聯網控制系統

2010-09-14 14:22:22

2020-11-02 17:28:51

人臉識別技術數據

2025-06-27 05:00:00

AI語音詐騙AI語音識別人工智能

2023-07-31 10:15:14

物聯網智能家居

2014-07-31 16:22:38

githubLinux
點贊
收藏

51CTO技術棧公眾號

俄罗斯av网站| 一级特黄aaa大片在线观看| 日韩视频中文字幕| 99久久夜色精品国产亚洲96| 2一3sex性hd| 亚洲精品国精品久久99热| 午夜日韩影院| 免费成人深夜蜜桃视频| 国产91av在线| 精品一区二区日韩| av在线资源站| 成人一区二区三| 亚洲成色777777在线观看影院| 色综合久久网| 在线免费观看视频网站| 精品久久久久久乱码天堂| 亚洲激情自拍视频| av日韩在线免费观看| 国产91丝袜美女在线播放| 日产精品99久久久久久| av在线免费不卡| 高清电影在线免费观看| 中文字幕精品视频在线| 欧美激情一级二级| 99精品热视频| 欧美成人影院| 久久久久性色av无码一区二区| 精品视频一区在线| 91麻豆精品国产91久久久使用方法 | 婷婷国产成人精品视频| 国产精品第七影院| 国产精品久久久久久久第一福利| 久久亚洲人体| 欧美黄色一级生活片| 97在线视频精品| 91在线视频官网| 久久爱91午夜羞羞| 人与动物性xxxx| 日本sm极度另类视频| 日本一区二区三区四区| 91亚洲欧美激情| 欧美又粗又长又爽做受| 欧美日韩国产片| 在线成人www免费观看视频| 国产午夜精品一区理论片| 折磨小男生性器羞耻的故事| 国产精品日韩久久久久| 欧美性极品xxxx娇小| 伊人久久婷婷| 熟妇人妻中文av无码| www.一区二区三区| 精品一区免费av| 成黄免费在线| 熟女人妇 成熟妇女系列视频| 久久精品国产2020观看福利| 亚洲亚洲人成综合网络| 国产精品丝袜在线播放| 亚洲高清视频在线观看| 国产调教视频一区| 老牛精品亚洲成av人片| 亚洲欧美黄色片| 欧美一区二区三区爽大粗免费| 免费97视频在线精品国自产拍| 国产精品久久久久久久久快鸭| 国模私拍一区二区国模曼安| 欧美性x x x| 777久久精品一区二区三区无码| 日韩精品中文字幕一区| 日韩伦理一区二区三区| 久久久久久久久久网站| 国产精品久久久久久久久久久久久久| 国产精品视区| 八戒八戒神马在线电影| 午夜时刻免费入口| 日本一区二区在线| 亚洲日韩中文字幕| 欧美国产综合色视频| 欧美日韩性在线观看| 国产在线视频资源| 欧美福利第一页| 青青草国产精品| 在线观看久久av| 中文字幕中文字幕在线一区 | 日本人dh亚洲人ⅹxx| 91精品婷婷国产综合久久性色| 欧美日本一区二区视频在线观看 | 无码aⅴ精品一区二区三区浪潮| 日韩中文字幕在线视频| 国产日韩欧美制服另类| 国产一区二区区别| av在线天堂播放| 国产又粗又猛又爽又黄的视频小说| 欧美一区1区三区3区公司| 日韩精品视频在线| 久久综合久久综合亚洲| 日韩精品欧美| 国产在线91| 日本成人免费在线观看| 宅男在线精品国产免费观看| 色中色综合影院手机版在线观看| 亚洲美女精品一区| 亚洲视频大全| 亚洲日本中文| 黑人精品一区二区| 91精品人妻一区二区| 日本一区二区三区四区在线观看| 神马国产精品影院av| 有码一区二区三区| 欧美一级播放| 国产在线视频欧美一区| 中文字幕丰满人伦在线| 日韩 欧美 高清| 91精品久久久久久蜜桃| 亚洲白虎美女被爆操| 国产精品免费视频一区| 国产精品久久777777毛茸茸| 警花av一区二区三区| 成人在线免费观看| jizz国产免费| 男人添女人荫蒂国产| 四虎精品欧美一区二区免费| 91在线国产电影| 久久精品91久久香蕉加勒比| 在线播放视频一区| 亚洲精品成人天堂一二三| 国产精品一卡二卡在线观看| 综合久久久久| 99re8这里有精品热视频免费 | 97精品在线视频| 亚洲福利在线视频| 欧美性猛交xxxx免费看漫画| 国产欧美精品一区二区三区四区| 青青草国产精品亚洲专区无| 香蕉视频官网在线观看日本一区二区| 国产成人久久精品一区二区三区| 少妇视频在线| 精品视频二区| 国产成人三级在线播放 | 欧美一区二区三区思思人| 精品久久久久久中文字幕一区奶水| www.视频一区| 久久国产福利国产秒拍| 亚洲国产三级| 色天天综合网| 亚洲专区**| 欧美另类激情| 国产极品人妖在线观看| 自拍视频在线网| 深夜福利视频一区| 蜜臀av在线观看| 国产高中女学生第一次| 人妻中文字幕一区二区三区| 国产无遮挡aaa片爽爽| 久久精品在线观看视频| 日本免费福利视频| 日韩欧美在线视频播放| 久久视频这里有精品| 亚洲国产高清国产精品| 免费一区二区三区在在线视频| 国产第一区电影| 欧美影院久久久| 91国产视频在线播放| 欧美精品一区二区免费| 日韩欧美国产一区二区在线播放| 欧美亚州韩日在线看免费版国语版| 黑人狂躁日本妞一区二区三区 | 国产精品五区| 亚洲一区二区成人| 久久一区二区三区超碰国产精品| 午夜亚洲性色福利视频| 99视频一区| 久久国产精品毛片| 日本不卡高清视频| 精品一区二区三区久久| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 欧美色电影在线| 欧美影院一区二区三区| 岛国视频午夜一区免费在线观看| 亚洲精品国产无天堂网2021 | 自拍av一区二区三区| 韩国一区二区在线观看| 综合在线视频| 国产精品久久久久久av公交车| 欧洲一级精品| av成人在线观看| 久久婷婷五月综合色丁香| 女海盗2成人h版中文字幕| av在线免费观看网站| 成人免费视屏| 亚洲综合图区| 日本不卡影院| 色呦呦在线资源| 亚洲经典一区二区三区| 国产又黄又粗又猛又爽| 免费观看日批视频| 中文字字幕在线中文乱码| 在线免费观看av网址| 91porny九色| 国产寡妇亲子伦一区二区三区四区| 日本特黄一级片| 国产精彩视频在线| 日韩精品乱码久久久久久| 精品一级少妇久久久久久久| 国产一级av毛片| 国产小视频在线免费观看| 九九精品免费视频| 中文字幕 亚洲视频| 国产绳艺sm调教室论坛| 欧美新色视频| av资源在线观看免费高清| 18加网站在线| 欧美与亚洲与日本直播| 91av亚洲| 日本免费一区二区三区视频| 日韩mv欧美mv国产网站| 国产精品久久久久久久免费观看 | 国产精品丝袜一区二区| 男女视频免费看| 亚洲老妇色熟女老太| 国产高清免费av在线| 高清电影在线观看免费| 国产精品久久久久77777丨| 欧美男gay| 久久男女视频| 久久综合狠狠综合| 午夜精品一区二区三区电影天堂 | 日本亚洲色大成网站www久久| 在线观看xxxx| 色哟哟免费在线观看 | 亚洲国产精品欧美久久| 午夜av在线播放| www 久久久| 午夜视频精品| 99精品视频中文字幕| 欧美日韩免费区域视频在线观看| 日韩成人在线视频| 国产91在线视频| 一区精品视频| 337p日本欧洲亚洲大胆张筱雨| 久久精品视频免费在线观看| 色呦呦中文字幕| 91精品国产66| 另类小说综合欧美亚洲| 久久婷婷色综合| 精品美女久久久久久免费| 中文字幕视频在线免费欧美日韩综合在线看| 国产精品99久久久久久白浆小说| 亚洲一区二区不卡视频| 中国黄色a级片| 一本大道熟女人妻中文字幕在线| 亚洲精品国产熟女久久久| 欧美一级特黄aaaaaa| 欧美大陆国产| 精品国产乱码久久久久久蜜坠欲下| 欧美日韩免费观看一区=区三区| 久久综合狠狠综合久久激情| 666欧美在线视频| 97色在线观看| 国产xxxx振车| 久久国产高清视频| 黄上黄在线观看| 久久久久观看| 9i在线看片成人免费| 精品免费99久久| 国产欧美一区二区三区在线| 欧美一级黄色片视频| 国产在线精品观看| 国产区美女在线| 在线看片不卡| 亚洲精品国产无套在线观| 神马久久桃色视频| 一区二区不卡在线| 色欲一区二区三区精品a片| 日本在线www| 日韩国产欧美一区二区| 国产无一区二区| 一本色道久久88综合日韩精品| 免费试看一区| 最新中文字幕av| 无遮挡的视频在线观看| 成人精品久久| 国产精品久久久久久久久搜平片| 色狠狠av一区二区三区香蕉蜜桃| 五月天亚洲综合情| 亚洲欧美卡通动漫| 欧美bbbxxxxx| 亚洲一区国产一区| 欧美性猛交xxxx黑人交| 亚洲a在线观看| 白嫩情侣偷拍呻吟刺激| 国产毛片av在线| 精品一区二区三区在线| 樱桃国产成人精品视频| 国产91精品视频在线观看| 国产九九在线视频| 亚洲欧美激情另类| 精品视频国产| 亚洲最新在线观看| 97久久精品国产| 中文字幕一二三| 欧美日韩在线精品一区二区三区激情综| jazzjazz国产精品久久| 国产精品网站导航| 久久久久中文字幕| 久久精品国产99久久99久久久| 三级视频网站在线| 久久久人成影片免费观看| 欧美午夜视频一区二区| 91在线观看免费观看| 黑人と日本人の交わりビデオ| 欧美大片黄色| 蜜桃av一区二区| 亚洲人成欧美中文字幕| 阿v天堂2018| 亚洲AV无码一区二区三区性 | 精品一区二区视频| 国产一级特黄视频| 伊人成综合网yiren22| 久久亚洲影视婷婷| 久久久久久久久久久91| 亚洲精品性视频| 午夜在线观看视频| 精品一区二区三区在线播放| 这里只有精品视频在线| 黑森林福利视频导航| 亚洲色图21p| 丝瓜av网站精品一区二区| 精品无码久久久久久国产| 91网址在线观看精品| 麻豆电影在线播放| 亚欧美中日韩视频| 在线播放/欧美激情| 亚洲最大的网站| 欧美日韩人妻精品一区在线| 中文字幕在线播放不卡| 人在线成免费视频| 精品在线亚洲视频| 在线观看国产成人av片| 乱子伦一区二区| 亚洲无码精品一区二区三区| 国产精品视频首页| 国产精品日韩成人| 欧美一区二区三区图| 精品人妻一区二区免费视频| 黄色视屏在线免费观看| 国产欧美久久久精品影院| 国产精品久久久久久搜索 | 青青久在线视频| 国产精品中文字幕欧美| 国产+成+人+亚洲欧洲| www.黄色在线| 国产精品久久久久久久久久白浆| 日韩欧美国产激情| 日韩人妻一区二区三区蜜桃视频| 色窝窝无码一区二区三区| 久久精品99国产精品| 亚洲美女精品久久| 国产av麻豆mag剧集| 国产毛片毛片毛片毛片| 狠狠干综合网| 日韩欧美aaa| 一区二区三区在线观看www| 99re这里只有精品在线| 色综合五月天| 欧美精品 国产精品| 佐佐木明希av| 日本不卡视频一区二区| 国产乱色国产精品免费视频| 国产精品久久久久久五月尺| 日韩成人av毛片| 99综合精品| 午夜精品一区二区三区在线视频 | 精品女人视频| 日韩美女视频一区二区在线观看| 大肉大捧一进一出好爽视频| 黄页在线观看免费| 天天av天天翘天天综合网色鬼国产| 色播亚洲婷婷| 色综合888| 欧美激情一区二区| 亚洲综合视频一区| 在线中文免费视频| 欧美激情一区二区三区四区| 国产在线一区二区三区播放| 亚洲av电影一区| 国产午夜精品理论片a级大结局| 免费观看成人在线| 黄网站免费在线观看| 亚洲一区在线观看网站| 国产制服91一区二区三区制服| 欧美日韩在线视频免费观看| 午夜欧美2019年伦理 | 国产乱码精品一区二区三区精东| 国产在线日韩欧美| 精品一区二区三区免费毛片| 国产福利电影在线| 国产精品福利影院| av中文字幕av| 日韩欧美一区二区三区在线观看| 亚洲精品国产品国语在线app|