免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

啟元 Q1 的三套優(yōu)先級(jí):排他鎖、復(fù)合權(quán)重與音量閃避

啟元 Q1 的三套優(yōu)先級(jí):排他鎖、復(fù)合權(quán)重與音量閃避 一、從一個(gè)字段名說(shuō)起AudioFile.msg里有這么一行注釋# 可選項(xiàng)(1~100) priority priority_weight% is final priority uint32 priority_weight而PlayTtsRequest.msg里同樣叫priority_weight的字段注釋是這樣的# 可選非產(chǎn)品要求勿用優(yōu)先級(jí)加權(quán)參數(shù)(0-99)最小單位為 1 uint32 priority_weight兩個(gè)字段同名、同類型都是uint32含義卻差得很遠(yuǎn)。前者的取值范圍是 1–100是個(gè)百分比后者是 0–99是個(gè)絕對(duì)偏移。更關(guān)鍵的是PlayTts的最終權(quán)重算法在《接口說(shuō)明.md》里寫得很明確最終權(quán)重 主級(jí) * 100 子權(quán)也就是說(shuō)TTS 的priority_weight直接加到百位以上而音頻文件那邊它是對(duì)priority做一個(gè)百分比調(diào)整。同樣是「微調(diào)優(yōu)先級(jí)」一處加在百位一處加在個(gè)位還帶著百分號(hào)。我最初以為這是文檔寫錯(cuò)了。把三套機(jī)制的定義都取出來(lái)放在一起之后才看清楚不是寫錯(cuò)是三套獨(dú)立設(shè)計(jì)的優(yōu)先級(jí)機(jī)制恰好共享了兩個(gè)字段名。這篇文章拆的就是這三套機(jī)制。它們分別屬于運(yùn)控輸入源、TTS 播報(bào)、音頻文件播放各有各的取值空間、比較方式和失敗行為。搞混任何一處代碼都會(huì)在沒有任何報(bào)錯(cuò)的情況下做出錯(cuò)誤行為——這是我在實(shí)測(cè)里反復(fù)撞到的同一類問(wèn)題。二、三套機(jī)制并排看先把三套機(jī)制放在一張表里。機(jī)制接口字段取值空間主級(jí)形態(tài)比較方式低優(yōu)先級(jí)方的結(jié)果運(yùn)控輸入源SetMcInputSourcepriority0–100 連續(xù)整數(shù)連續(xù)排他鎖先到先得幀被靜默丟棄1000 ms 看門狗脫鎖TTS 播報(bào)PlayTtspriority_levelpriority_weight主級(jí) 6 檔 × 子權(quán) 0–99跳段復(fù)合權(quán)重比大小同步返回is_successfalse高權(quán)重可中途掐斷音頻文件PlayAudioFileprioritypriority_weightmedia_rolepriority1–10weight1–100(%)連續(xù)百分比加權(quán)不終止靠音量閃避duck讓位三套機(jī)制連「失敗」的定義都不同運(yùn)控那邊輸?shù)囊环绞裁炊疾粫?huì)收到只能靠自己周期性查詢才發(fā)現(xiàn)控制權(quán)沒了TTS 那邊輸?shù)囊环綍?huì)收到一個(gè)明確的false音頻那邊輸?shù)囊环郊葲]有錯(cuò)誤也沒有終止只是音量被壓低。把它們畫成刻度形狀的差異更直觀。圖 1 中三條刻度各自獨(dú)立歸一化橫向長(zhǎng)度不代表數(shù)值大小只用來(lái)看結(jié)構(gòu)運(yùn)控是均質(zhì)的連續(xù)刻度TTS 是跳段的離散塊跳過(guò) 3、5、9音頻是連續(xù)刻度上再疊一套四檔角色。圖中 L1–L10 的權(quán)重區(qū)間、priority的 1–10 取值、media_role的 40/60/80/100 四檔全部取自對(duì)應(yīng).msg文件與《接口說(shuō)明.md》§2.1.1.4、§2.2.1.2、§2.2.1.3 三節(jié)。有一處值得單獨(dú)指出音頻文件播放那一行priority是 1–10而 TTS 的主級(jí)恰好也是 1、2、4、6、8、10 這幾個(gè)數(shù)字。數(shù)值看起來(lái)一樣含義毫無(wú)關(guān)系。AudioFile.priority是連續(xù)的 1–10默認(rèn) 6相鄰值只差一檔TtsPriorityLevel的主級(jí)是枚舉語(yǔ)義層跳過(guò)的那些值是為將來(lái)插入新檔位預(yù)留的位置。把priority_level 6的經(jīng)驗(yàn)搬到AudioFile.priority 6讀起來(lái)像實(shí)際語(yǔ)義完全不同。三、TTS 的權(quán)重空間99 與 100 的那 1 之隔TTS 這套最值得細(xì)看因?yàn)樗乃阈g(shù)規(guī)則寫得最明確而邊界恰好踩在一個(gè)很微妙的位置上。TtsPriorityLevel.msg在接口里實(shí)際只定義了 6 個(gè)有效檔位uint8 value uint8 UNKNOWN 0x00 # 后臺(tái)服務(wù)層 uint8 BACKGROUND_L1 0x01 # 主動(dòng)服務(wù)層 uint8 SERVICE_L2 0x02 # 任務(wù)執(zhí)行層 uint8 MISSION_L4 0x04 # 交互相應(yīng)層 uint8 INTERACTION_L6 0x06 # 危險(xiǎn)預(yù)警層 uint8 WARNING_L8 0x08 # 生命安全層 uint8 SAFETY_L10 0x0a主級(jí)取 1、2、4、6、8、10步長(zhǎng) 2跳過(guò) 3、5、7、9。配合「最終權(quán)重 主級(jí) × 100 子權(quán)」就得到下面這張取值表。常量value最終權(quán)重區(qū)間來(lái)源BACKGROUND_L10x01100 – 199接口 文檔SERVICE_L20x02200 – 299接口 文檔MISSION_L40x04400 – 499接口 文檔INTERACTION_L60x06600 – 699接口 文檔WARNING_L80x08800 – 899接口 文檔SAFETY_L100x0a1000 – 1099接口 文檔SYSTEM_L77700 – 799僅文檔接口無(wú)此常量表中最后一行的SYSTEM_L7是這篇文章的一個(gè)關(guān)鍵發(fā)現(xiàn)后面第七節(jié)會(huì)給出實(shí)測(cè)證據(jù)。先看一個(gè)更基礎(chǔ)的性質(zhì)。子權(quán)上限是 99主級(jí)步長(zhǎng)是 100。相差 1這個(gè) 1 不是巧合。圖 2 的橫軸是最終權(quán)重1 單位對(duì)應(yīng) 1 像素??梢灾庇^看到L4用滿子權(quán)封頂 499L6一個(gè)子權(quán)都不給也有 600兩者相差 101。中間那 100 個(gè)整數(shù)位500–599沒有任何檔位覆蓋。這意味著子權(quán)的作用半徑被精確限制在同檔內(nèi)部。任何一個(gè)「低一檔但更緊急」的播報(bào)都沒有任何可用手段能頂?shù)缴弦粰n去——把priority_weight調(diào)到 99也只是讓它在本檔里排到最前面。這是設(shè)計(jì)上的精確也是設(shè)計(jì)上的代價(jià)。它換來(lái)的是排序的絕對(duì)可預(yù)測(cè)性主級(jí)一旦確定跨檔關(guān)系就鎖死了不會(huì)因?yàn)槟硞€(gè)調(diào)用方擅自把子權(quán)拉滿而產(chǎn)生檔位穿透。代價(jià)是分層變得剛性——如果產(chǎn)品上確實(shí)需要「低一檔的緊急播報(bào)壓過(guò)高檔的例行播報(bào)」這套算術(shù)給不出解法只能改主級(jí)。再看那些空檔。接口里的主級(jí)是 1、2、4、6、8、10跳過(guò) 3、5、7、9對(duì)應(yīng) 300–399、500–599、700–799、900–999 四段。其中 700–799 被文檔的SYSTEM_L7填上了另外三段仍然空著。這不是浪費(fèi)是預(yù)留往這些區(qū)間插入新檔位不會(huì)擾動(dòng)任何已有排序。SYSTEM_L7的位置完全合理——它就在L6與L8之間那個(gè)天然的空位里問(wèn)題只在于接口沒給它常量。四、仲裁矩陣兩格與字面意思相反權(quán)重算出來(lái)之后誰(shuí)先播、誰(shuí)被打斷由《接口說(shuō)明.md》§2.2.1.2 的四格矩陣決定。文檔原文是這樣的權(quán)重對(duì)比is_interrupted: trueis_interrupted: false新任務(wù)權(quán)重 ≥ 當(dāng)前任務(wù)當(dāng)前播報(bào)被立即掐斷且不可恢復(fù)新語(yǔ)音開始播放仲裁優(yōu)先級(jí)相同時(shí)存入緩沖區(qū)仲裁優(yōu)先級(jí)大于當(dāng)前任務(wù)時(shí)強(qiáng)制打斷新任務(wù)權(quán)重 當(dāng)前任務(wù)請(qǐng)求丟棄is_success: false請(qǐng)求丟棄is_success: false這張表里藏著兩個(gè)與字段名字面意思相反的結(jié)論我在實(shí)測(cè)中逐一確認(rèn)過(guò)。圖 3 把四格矩陣與實(shí)測(cè)樣本畫在一起。格內(nèi)樣本編號(hào)對(duì)應(yīng)第七節(jié) 8 個(gè)場(chǎng)景的序號(hào)服務(wù)端為按該矩陣實(shí)現(xiàn)的 mock非真機(jī)行為。第一個(gè)反直覺點(diǎn)is_interrupted true不是強(qiáng)制插隊(duì)開關(guān)。按字面理解「打斷true」應(yīng)該意味著「我有話要說(shuō)現(xiàn)在就說(shuō)」。但矩陣寫得清楚這一列只在「新權(quán)重 ≥ 當(dāng)前」那一行才起作用權(quán)重不足時(shí)填true一樣被丟棄。實(shí)測(cè)中第 5 條請(qǐng)求L62 602當(dāng)前播報(bào)是 700即使is_interruptedtrue返回的仍是is_successfalseerror_message寫著「權(quán)重 602 當(dāng)前 700」。第二個(gè)反直覺點(diǎn)is_interrupted false不保證不被打斷。同樣按字面理解「不打斷」應(yīng)該意味著「別掐我」。但矩陣在false這一列寫的是「大于則強(qiáng)制打斷」。實(shí)測(cè)第 3 條請(qǐng)求L660 660當(dāng)前是 600is_interruptedfalse結(jié)果仍是PREEMPT_NOW——非搶占模式下權(quán)重更高照樣掐斷。兩點(diǎn)合起來(lái)這個(gè)字段的真實(shí)語(yǔ)義是「權(quán)重足夠時(shí)同檔要不要讓」。它管的是同級(jí)仲裁不是插隊(duì)權(quán)。而文檔對(duì)這個(gè)字段有三處描述只有一處與矩陣一致出處原文與矩陣是否一致PlayTtsRequest.msg注釋是否打斷同等優(yōu)先級(jí)播報(bào)true打斷false不打斷進(jìn)入隊(duì)列播報(bào)一致§2.2.1.2 字段表是否打斷現(xiàn)有任務(wù)true: 立即搶占false: 自動(dòng)排隊(duì)不一致§2.2.1.2 仲裁矩陣見上表—.msg注釋說(shuō)的是「同等優(yōu)先級(jí)」與矩陣吻合字段表說(shuō)的是「現(xiàn)有任務(wù)」把范圍放大了。差別就在這一行照字段表理解會(huì)寫出一個(gè)自己以為安全的調(diào)用——以為什么都不填就萬(wàn)事大吉實(shí)際只要權(quán)重夠高就會(huì)被掐。五、音頻一處未閉合的歧義AudioFile.msg那一行的原文是# 可選項(xiàng)(1~100) priority priority_weight% is final priority uint32 priority_weight它給了表達(dá)式?jīng)]給運(yùn)算次序。至少有兩種都能自圓其說(shuō)的讀法讀法 A加性final priority weight / 100讀法 B乘性final priority × (1 weight / 100)兩種讀法在權(quán)重較小時(shí)結(jié)果相近在權(quán)重接近上限時(shí)結(jié)論相反。輸入 1A 值輸入 2A 值A(chǔ) 判定B 值 1B 值 2B 判定是否分歧p6 50%6.50p7 0%7.00后者9.007.00前者分歧p6 100%7.00p7 0%7.00平手12.007.00前者分歧p6 100%7.00p10 0%10.00后者12.0010.00前者分歧p6 10%6.10p7 0%7.00后者6.607.00后者一致讀法 A 的跨檔上限是固定的增量恒 ≤ 1.0所以priority6用滿權(quán)重最多追平 7永遠(yuǎn)超不過(guò)相當(dāng)于「一檔之內(nèi)微調(diào)」。讀法 B 在weight100時(shí)直接翻倍priority6可以壓過(guò) 7 甚至 10相當(dāng)于「變相增加一到兩檔」。同一個(gè)字段兩種讀法跨檔能力差了兩檔。這不是筆誤級(jí)別的歧義是會(huì)影響排序結(jié)果的歧義。我沒有替它下結(jié)論因?yàn)檫@需要真機(jī)實(shí)測(cè)才能確定用兩個(gè)不同priority的音頻文件同時(shí)播放觀察實(shí)際輸出順序。在沒有真機(jī)的情況下斷言其中一種就是在編數(shù)據(jù)。這一處我留在第九節(jié)的「未決問(wèn)題」里。順帶一提AudioFile還有第三個(gè)維度media_role。# 可選項(xiàng)PulseAudio media.role不傳默認(rèn) Music # 可選值A(chǔ)lert(系統(tǒng)告警,優(yōu)先級(jí)100) | Notification(系統(tǒng)提示音,優(yōu)先級(jí)80) | Communication(對(duì)話語(yǔ)音,優(yōu)先級(jí)60) | Music(音樂/媒體,優(yōu)先級(jí)40,默認(rèn)) # 非 Music 角色播放時(shí)會(huì)自動(dòng)降低(duck)音樂音量 string media_role這是第四套編號(hào)40/60/80/100由 PulseAudio 的角色體系決定與priority完全并行。所以嚴(yán)格說(shuō)音頻這一路內(nèi)部同時(shí)跑著兩套排序一套是應(yīng)用層的priority 百分比一套是系統(tǒng)音頻服務(wù)層的media_role。前者決定誰(shuí)先播后者決定誰(shuí)壓低誰(shuí)。這兩套之間如何交互文檔沒有展開。六、驗(yàn)證一把規(guī)則寫成代碼三套機(jī)制的規(guī)則都是純算術(shù)可以脫離 ROS 完整復(fù)現(xiàn)。我把它們寫成了一個(gè)零依賴的模塊只用標(biāo)準(zhǔn)庫(kù)。下面節(jié)選自taxonomy/levels.py完整文件在倉(cāng)庫(kù)里。TTS_LEVEL_STRIDE 100 TTS_WEIGHT_MAX 99 def tts_final_weight(level_value: int, priority_weight: int) - int: 最終權(quán)重 主級(jí) * 100 子權(quán)。 return level_value * TTS_LEVEL_STRIDE priority_weight def sub_weight_can_cross_level() - bool: 子權(quán)能否跨越主級(jí)子權(quán)上界 99主級(jí)步長(zhǎng) 100。 return (TTS_WEIGHT_MAX 1) TTS_LEVEL_STRIDE這個(gè)函數(shù)不做范圍鉗制因?yàn)榻涌趯油瑯硬蛔觥猵riority_weight聲明為uint320–99 只是文檔約定類型系統(tǒng)擋不住 100 以上的輸入。這一點(diǎn)第七節(jié)的實(shí)測(cè)會(huì)確認(rèn)。跑一遍邊界場(chǎng)景命令與輸出都在圖 4 里。從這一處起凡是程序輸出一律給真實(shí)終端截圖不再手抄——寫稿時(shí)把輸出貼進(jìn)代碼塊最容易出的錯(cuò)不是抄錯(cuò)數(shù)字而是抄錯(cuò)一個(gè)自己沒注意到的對(duì)齊空格。python3 scenarios/run.py weight圖 4 是容器pgc/primebot-humble:1.0內(nèi)的真實(shí)終端畫面Xvfb 上起一個(gè) 80×32 的 xterm用偽終端把命令逐條敲進(jìn)交互式 bash等輸出定格后用 ImageMagick 抓窗口未做任何裁剪與修飾。畫面上半部分是七個(gè)檔位的取值區(qū)間下半部分是相鄰兩級(jí)的臨界值——L1滿子權(quán) 199 對(duì)上L2零子權(quán) 200只差 1其余各相鄰對(duì)都差 101。這個(gè)「差 1」正是子權(quán)跨不了級(jí)的算術(shù)來(lái)源。抓圖腳本在倉(cāng)庫(kù)tools/shot/下all_shots.sh一次跑完本文全部五張終端圖可以原樣復(fù)現(xiàn)。除了驗(yàn)證算術(shù)我還用窮舉確認(rèn)了一個(gè)文檔沒寫、但可以從矩陣推出來(lái)的結(jié)論。問(wèn)題是is_interruptedfalse時(shí)入隊(duì)的任務(wù)按什么順序出隊(duì)文檔只寫「存入緩沖區(qū)在當(dāng)前任務(wù)播放完成后再進(jìn)行處理」沒說(shuō)排序鍵。# 節(jié)選自 scenarios/exhaustive_queue.py 的 compute() def compute(): 返回 (入隊(duì)總數(shù), 差值-次數(shù), 主級(jí)-入隊(duì)數(shù))。純函數(shù)供 run.py 復(fù)用。 queued_diffs: dict {} per_level: dict {lv: 0 for lv in TTS_VALID_LEVEL_VALUES} total_queued 0 for level in TTS_VALID_LEVEL_VALUES: # 6 個(gè)合法主級(jí) for w in range(0, TTS_WEIGHT_MAX 1): # 子權(quán) 0-99 req TtsRequest(probe, level, w, False) for current in range(CURRENT_MIN, CURRENT_MAX 1): # 100-1099 if arbitrate(req, current) is Verdict.QUEUED: total_queued 1 per_level[level] 1 diff req.weight - current queued_diffs[diff] queued_diffs.get(diff, 0) 1 return total_queued, queued_diffs, per_level圖 5 與圖 4 出自同一個(gè)容器、同一次會(huì)話、同一套抓圖流程。畫面里先確認(rèn)解釋器版本為 Python 3.10.12再執(zhí)行scenarios/exhaustive_queue.py600 個(gè)合法請(qǐng)求 × 1000 個(gè)當(dāng)前權(quán)重共 600000 種組合判為 QUEUED 的只有 600 組「新權(quán)重 ? 當(dāng)前權(quán)重」的取值集合只有一個(gè)元素[0]。畫面下半部分按主級(jí)拆成六行每行 100 組正好等于該主級(jí)下合法的子權(quán)個(gè)數(shù)——每個(gè)請(qǐng)求只在「與自己權(quán)重相等」的那一個(gè)當(dāng)前權(quán)重上入隊(duì)。也就是說(shuō)能被入隊(duì)的任務(wù)權(quán)重必然與當(dāng)前播報(bào)權(quán)重嚴(yán)格相等——更高會(huì)被立即搶占更低會(huì)被丟棄只有相等才進(jìn)緩沖區(qū)。于是緩沖區(qū)里所有任務(wù)的權(quán)重全都相同F(xiàn)IFO 與「按權(quán)重排序」給出完全一樣的出隊(duì)順序。文檔沒寫排序鍵但在這個(gè)矩陣下寫不寫都不影響結(jié)果。這類推斷比「文檔沒寫所以不知道」有用得多。七、驗(yàn)證二用官方接口跑一次真實(shí)回環(huán)純算術(shù)只能驗(yàn)證規(guī)則驗(yàn)證不了契約。真正要確認(rèn)的是三件事接口里到底有哪些常量、越界值能不能發(fā)出去、矩陣的實(shí)際裁決是什么樣。先在容器里核對(duì)枚舉的可用性。這段代碼不需要真機(jī)、不需要啟動(dòng)節(jié)點(diǎn)只要 import 消息類型。# 節(jié)選自 ros2_ws/src/priority_lab/priority_lab/enum_probe.py # 為便于展示省略了「與文檔值是否相等」的比較分支 from aimdk_msgs.msg import TtsPriorityLevel # 依據(jù)《接口說(shuō)明.md》2.2.1.2「TtsPriorityLevel (推薦主級(jí)常量列表)」逐條核對(duì) DOC_TABLE [(BACKGROUND_L1, 1), (SERVICE_L2, 2), (MISSION_L4, 4), (INTERACTION_L6, 6), (SYSTEM_L7, 7), (WARNING_L8, 8), (SAFETY_L10, 10)] for name, doc_value in DOC_TABLE: try: actual int(getattr(TtsPriorityLevel, name)) print(f{name:16}{doc_value:8}0x{actual:02x}) except AttributeError: print(f{name:16}{doc_value:8}接口無(wú)此常量)圖 6 是ros2 run priority_lab enum_probe的原樣輸出。上半段逐條核對(duì)文檔 §2.2.1.2 的七個(gè)常量六個(gè)能取到SYSTEM_L7取不到分隔線以下的兩段是同一個(gè)腳本緊接著做的越界試驗(yàn)下面會(huì)用到。SYSTEM_L7在文檔 §2.2.1.2 的推薦常量表里帶著完整語(yǔ)義——「系統(tǒng)重要提示如電量低、網(wǎng)絡(luò)斷開」但它不在ros2 interface show里也不在aimdk_msgs/interaction/msg/、install/、build/三處.msg副本的任何一處。寫TtsPriorityLevel.SYSTEM_L7會(huì)直接拋AttributeError。那能不能硬填數(shù)字可以。類型層完全不校驗(yàn)——圖 6 下半段就是這件事value填 7、5、9、11 全部寫入成功并原樣讀回priority_weight填 100、250 也被接受按公式算出的最終權(quán)重分別是 700 與 850。weight 250這一條值得停一下850 直接落進(jìn)WARNING_L8的 800–899 區(qū)間——一個(gè)本該「微調(diào)」的參數(shù)越界之后能頂?shù)粽麢n。接口不攔只能靠調(diào)用方自覺。接下來(lái)是端到端。我按第四節(jié)那張矩陣實(shí)現(xiàn)了一個(gè)PlayTts服務(wù)端掛到官方aimdk_msgs/srv/PlayTts上然后依次發(fā) 8 個(gè)請(qǐng)求。# 節(jié)選自 ros2_ws/src/priority_lab/priority_lab/tts_client.py def build_request(level: int, weight: int, interrupt: bool, text: str) - PlayTts.Request: req PlayTts.Request() req.header.header.stamp.sec 0 req.tts_req.text text req.tts_req.priority_level.value level req.tts_req.priority_weight weight req.tts_req.domain priority_lab req.tts_req.trace_id flab-{level}-{weight}-{int(interrupt)} req.tts_req.is_interrupted interrupt return req客戶端看到的回執(zhí)圖 7 是ros2 run priority_lab tts_client的原樣輸出。code與state兩列取自aimdk_msgs通用響應(yīng)頭成功是 0/1失敗是 1/2時(shí)長(zhǎng)列對(duì)應(yīng)estimated_duration八條全是 0。第 5、6 條被丟棄時(shí)客戶端多打一行└─ error_message把服務(wù)端給的原因原樣帶回來(lái)。服務(wù)端側(cè)的裁決日志真實(shí)時(shí)序[#n]是請(qǐng)求序號(hào)圖 8 是同一個(gè)容器里cat /tmp/mock.log的結(jié)果客戶端剛跑完日志就是那一刻寫下的。默認(rèn)的日志前綴級(jí)別、納秒時(shí)間戳、節(jié)點(diǎn)名被RCUTILS_CONSOLE_OUTPUT_FORMAT{message}去掉——帶上它每行超過(guò) 100 列終端里必然折行消息體一個(gè)字沒改。這份日志確認(rèn)了四件事第 4 條把value7填進(jìn)去接口照收且按 700 參與了排序成功搶占了 660。文檔檔位在類型層可用在枚舉層不可見——兩種狀態(tài)同時(shí)成立。第 3 條is_interruptedfalse仍被掐斷與矩陣一致與字段名字面相反。第 5 條is_interruptedtrue仍被丟棄同上。排隊(duì)任務(wù)最終自行出隊(duì)mock 里把單次播報(bào)占用設(shè)為 3 秒這是我設(shè)定的占位時(shí)長(zhǎng)不是官方數(shù)值但客戶端全程收不到任何通知。這是個(gè)結(jié)構(gòu)性的缺口下面單獨(dú)說(shuō)。關(guān)于最后一點(diǎn)的成因文檔寫得很直白時(shí)長(zhǎng)字段局限由于 TTS 采用云端/本地流式合成當(dāng)前版本下estimated_duration固定返回0。任務(wù)閉環(huán)建議系統(tǒng)暫未開放播報(bào)結(jié)束的話題通知。若業(yè)務(wù)邏輯需在語(yǔ)音播報(bào)后執(zhí)行如先說(shuō)話后走動(dòng)建議通過(guò)字?jǐn)?shù)預(yù)估約 200ms/字進(jìn)行延時(shí)處理?;貓?zhí)里的estimated_duration字段實(shí)測(cè)確實(shí)是0圖 7 的「時(shí)長(zhǎng)」列八行全為 0。也就是說(shuō)TTS 是一條開環(huán)鏈路調(diào)用方知道「請(qǐng)求進(jìn)隊(duì)了」但永遠(yuǎn)不知道「說(shuō)完了沒有」只能拿字?jǐn)?shù)乘以 200 ms 去估。相比之下運(yùn)控的CommonTaskResponse帶task_id可以追蹤任務(wù)狀態(tài)。同一個(gè) SDK 里一個(gè)異步接口有任務(wù) ID另一個(gè)沒有——這屬于接口層的空白不是使用者的疏忽。需要說(shuō)明的是這個(gè)PlayTts服務(wù)端是我按文檔矩陣實(shí)現(xiàn)的不是啟元的實(shí)現(xiàn)。它的作用是讓請(qǐng)求走真實(shí)的 ROS 2 序列化通道驗(yàn)證契約能通、字段能填、回執(zhí)能解析。真機(jī)上「第 3 條請(qǐng)求到底會(huì)不會(huì)被掐斷」「value7會(huì)不會(huì)被接受」仍需真機(jī)確認(rèn)。凡是 mock 得出的結(jié)論我在上文都標(biāo)了來(lái)源。八、為什么會(huì)分成三套把三處定義的文件路徑擺出來(lái)原因就清楚了aimdk_msgs/interaction/msg/PlayTtsRequest.msg—— TTS屬于交互控制模塊aimdk_msgs/hal/audio/msg/AudioFile.msg—— 音頻文件屬于硬件抽象模塊的audio子包aimdk_msgs/mc/msg/McInputSource.msg—— 輸入源屬于運(yùn)動(dòng)控制模塊三套機(jī)制分屬三個(gè)包、三個(gè)模塊、三撥人。它們各自解決各自領(lǐng)域里的排序問(wèn)題各自設(shè)計(jì)了字段最終在字段名上撞了車。這不是誰(shuí)抄錯(cuò)了誰(shuí)而是分層架構(gòu)下同一概念在不同層各自演化的必然結(jié)果。從這個(gè)角度看三套設(shè)計(jì)其實(shí)各自都很合理運(yùn)控要的是安全兜底。控制權(quán)必須唯一否則兩路指令同時(shí)作用于關(guān)節(jié)后果是物理的。所以它用排他鎖還用 1000 ms 超時(shí)做看門狗——發(fā)流的一方一旦掛掉控制權(quán)必須自動(dòng)釋放不能讓機(jī)器人保持最后一條指令繼續(xù)動(dòng)。這里「優(yōu)先級(jí)」回答的是「誰(shuí)在控制」。TTS 要的是順序與可打斷。語(yǔ)音是流式的可以排隊(duì)、可以中途掐斷掐斷了也不會(huì)有物理后果。所以它用復(fù)合權(quán)重主級(jí)管檔、子權(quán)管同檔內(nèi)的先后還單獨(dú)給了is_interrupted控制同級(jí)是否讓位。這里「優(yōu)先級(jí)」回答的是「誰(shuí)先說(shuō)」。音頻要的是混音。提示音和背景音樂可以同時(shí)響不需要一方靜音。所以它用百分比微調(diào)加音量閃避——警報(bào)聲響起時(shí)把音樂壓低而不是掐掉音樂。這里「優(yōu)先級(jí)」回答的是「誰(shuí)蓋過(guò)誰(shuí)」。三種「優(yōu)先級(jí)」對(duì)應(yīng)三種完全不同的資源模型獨(dú)占資源、隊(duì)列資源、混音資源。資源模型不同仲裁方式自然不能通用。硬要統(tǒng)一成一套字段反而會(huì)把三處都做壞。真正的問(wèn)題不在設(shè)計(jì)在命名。三個(gè)模塊都用了priority和priority_weight這兩個(gè)詞而它們的量綱、算法、邊界各不相同。跨模塊開發(fā)時(shí)前一處的直覺會(huì)直接帶到后一處出問(wèn)題的地方往往連報(bào)錯(cuò)都沒有——運(yùn)控那邊靜默丟幀音頻那邊悄悄 duck只有 TTS 會(huì)給一個(gè)false。九、還沒解決的問(wèn)題按重要程度排有五處AudioFile.priority_weight的運(yùn)算次序未定。第五節(jié)那兩種讀法跨檔能力差兩檔需要真機(jī)同時(shí)播兩個(gè)不同priority的文件、觀察實(shí)際輸出順序才能確定。無(wú)真機(jī)時(shí)斷言任何一種都是編數(shù)據(jù)。SYSTEM_L7是預(yù)留還是遺漏無(wú)法判斷。它在文檔里有完整語(yǔ)義在接口里沒有常量在權(quán)重空間里有位置。三種可能都存在正在實(shí)現(xiàn)中、文檔先寫了、或者實(shí)現(xiàn)時(shí)被砍了但文檔沒同步。沒有官方說(shuō)明只能標(biāo)注現(xiàn)狀。緩沖區(qū)容量與溢出策略未定義。第六節(jié)能推出「緩沖區(qū)內(nèi)的任務(wù)權(quán)重全都相同」但推不出緩沖區(qū)能裝幾個(gè)、裝滿了丟新還是丟舊。TTS與音頻文件兩路之間如何交互文檔未展開。一個(gè) TTS 播報(bào)INTERACTION_L6權(quán)重 600與一個(gè)media_roleAlert的告警音角色優(yōu)先級(jí) 100同時(shí)觸發(fā)時(shí)誰(shuí)讓誰(shuí)兩者在不同模塊、不同層各自的排序鍵無(wú)法直接比較。media_role與priority的優(yōu)先級(jí)關(guān)系未說(shuō)明。文檔只說(shuō)「非 Music 角色播放時(shí)會(huì)自動(dòng)降低duck音樂音量」沒說(shuō)priority高的 Music 會(huì)不會(huì)拒絕被 duck。這五處我都留在原樣沒有替它補(bǔ)。補(bǔ)出來(lái)的東西看著完整實(shí)際是錯(cuò)的——尤其第 1 條和第 4 條隨便寫一個(gè)「應(yīng)該是這樣」讀的人照著做問(wèn)題會(huì)出現(xiàn)在幾個(gè)月后的現(xiàn)場(chǎng)調(diào)試?yán)铩J?、接手這套接口時(shí)先做四件事如果要在啟元 Q1 上寫播報(bào)相關(guān)的業(yè)務(wù)按這個(gè)順序過(guò)一遍能避開大部分坑第一先確定你要用的是哪一套。是讓機(jī)器人「說(shuō)一句話」PlayTts還是「放一個(gè)音頻文件」PlayAudioFile前者走交互模塊后者走硬件抽象模塊兩套的priority_weight含義不同。選錯(cuò)了接口后面調(diào)參數(shù)全是白調(diào)。第二priority_level只用接口里那 6 個(gè)常量。不要照著文檔寫SYSTEM_L7——編譯期就會(huì)失敗。如果確實(shí)需要「系統(tǒng)重要提示」這一檔用INTERACTION_L6或WARNING_L8或者硬填value7并接受它是一個(gè)接口不承認(rèn)的檔位。第三不要把is_interrupted當(dāng)成插隊(duì)開關(guān)。它只決定同級(jí)是否讓位。想讓一句話壓過(guò)正在播的內(nèi)容唯一可靠的手段是提高priority_level——但記住子權(quán)跨不了級(jí)L499仍然低于L60。第四給播報(bào)留出時(shí)間余量。PlayTts返回is_successtrue只代表進(jìn)隊(duì)了estimated_duration恒為 0沒有播報(bào)結(jié)束話題。要在播報(bào)后執(zhí)行動(dòng)作比如先說(shuō)話再走動(dòng)只能按字?jǐn)?shù)估——文檔給的經(jīng)驗(yàn)值是約 200 ms/字單次播報(bào)建議控制在 100 字以內(nèi)。這四條不需要真機(jī)就能驗(yàn)證前三條第四條在真機(jī)上用秒表對(duì)一次字?jǐn)?shù)與時(shí)長(zhǎng)就能把估算公式校準(zhǔn)成自己的系數(shù)。三套優(yōu)先級(jí)并存的局面短期不會(huì)改變——它們分屬三個(gè)模塊各自服務(wù)不同的資源模型統(tǒng)一命名的收益遠(yuǎn)小于改動(dòng)的風(fēng)險(xiǎn)。對(duì)開發(fā)者來(lái)說(shuō)能做的事只有一件把它們的差異記清楚別用一套的直覺去寫另一套的代碼。本文用到的規(guī)則復(fù)現(xiàn)、枚舉核對(duì)、矩陣驗(yàn)證腳本都放在 AtomGit 上無(wú)需真機(jī)即可復(fù)現(xiàn)https://atomgit.com/2301_76341691/primebot-priority-taxonomy-lab如果你也在啟元機(jī)器人上做二次開發(fā)歡迎到啟元機(jī)器人開發(fā)者社區(qū) https://dev.primebot.com/ 交流那里有官方文檔、SDK 倉(cāng)庫(kù)入口和開發(fā)者討論區(qū)。文中若有不準(zhǔn)確的地方也歡迎在倉(cāng)庫(kù)提 Issue 指出來(lái)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91九色偷拍| 91色性感五月婷婷丁香| 欧美色五月天| 十月丁香婷婷| 996er热| 五月丁香色色网| 天天操天天日天天爽| 99久久.www| 婷婷色色五月天| 五月天激情电影| 九九色中文| 激情综合网激情五月丁香五月俺也去| 色情五月综合婷婷| 97视频.干com| 亚洲va成人va成人va在线观看| 噜噜色天天开心| 久久这里只有精品16| 第1影院之五月婷婷| 亚洲天天| 日韩成人电影AV| 婷婷五月天电影在线| 婷婷激情肏屄网| 中文字幕性爱视频| 99caobi| 色五月婷婷九月| 日本色99网站| 99热一本久道| 综合五月激情| 国产一级婬片毛片| 色婷婷9| 欧美狠狠色| 丁香九月色| 五月婷婷天天色| 97碰碰碰| 久热婷婷在线视频| 国产亚洲色婷婷久久99精品9j| 99精品无码| rr天天操| 婷婷之玖玖| 免费观看的av| 99在线观看| 婷婷五月天福利| 色五月色综合| 五月天另类小说久久小说网| 九九色热视频| 一本色道久久综合狠狠躁小说| 色婷婷五月天小说网| 久久99最新| 久碰久操| 久久er这里只有精品| 九九久久五月天综合伊人| 超碰猛烈的性猛交| 国产9色在线/日韩| 久久草大香蕉| 五月婷婷视频| 五月天丁香看婷婷| 9 99免费视频| 国产色色在线| 操逼123网| 69堂午夜视频最新地址| 79色色免费| 第四色婷婷色五月| www.色9| 91日精品| 大香蕉啪啪网| 色丁香在线视频| 日本女天天爽| 夜夜爽天操| 婷婷五月天激情AV影院| 欧美成人日韩| 激情婷婷五月天| 六月婷婷综合| 大香蕉人人网| 玖玖资源站国产| 成人必爱视| 国产va在线视频| AV 3P| 五月婷婷激情综合拍| AV天堂婷婷五月天| 91人人网| 日本婷婷激情四射中文字幕在线观看| 亚洲无码成人网| 日韩日比视频| 五月激情综合五月| 欧洲不卡视频| 婷婷五月天99| 另类视频综合| 色综合99无码 | 色婷另类| 国产日产亚洲系列最新| 五月丁香色综合| 色情综合网| 天天干夜夜操A片| av网站中文| 日韩黄色电影| 青草视频在线播放| 玖玖色综合网| 5月丁香啪啪啪| pom538精品视频| 99操99| 美女被操一区二区| 天天肏屄夜夜爽| 操射国产日本| 亚洲情综合五月天| 色5月婷婷| 亚洲AV在线免费看| 五月丁婷香| 日撸夜撸日操| 五月婷婷性爱| 激情综合无码| 丁香五月天色婷婷| 色欲五月丁香| 五月激情久久综合| www激情| 久久黄色片| 熟女网站久久| 99热.com| 碰久久精品w| 色情综合| 久久久8| 99热综合在线观看| 九九免费在线视频| 日本一级黄色电影| 婷婷中文字幕| 99久久9| 操操操Av| 欧美日韩一区二区三区四区| 五月丁香婷婷国产精品综合| 免费视频99| 日日噜噜久久婷婷五月天| 婷婷五月天改成什么了| 天天色视频| 天堂久久大香蕉| 深爱激情小说五月婷婷| 亚洲综合五月天婷婷丁香| 99热加勒比| 开心五月深爱婷婷| 久久九九经典| 精品色| 被强行糟蹋的女人A片| 五月婷婷久久久| 色色色色热| 五月桃花网综合| 天天舔天天插天天爱| 操九色| 日韩野外 无套| 国庆精品久久| 国产精品色色色色| 果冻传媒A片一二三区| 操人妻90p| 欧美日韩91| 色欧美影院| 丁香六月成人| 久久精品综合色| 五月丁香啪啪| 五月激情婷婷综合| 国产性爱亚洲是图| 天堂爱爱| 国产精女同一区二区三区久| 99亚洲精品| 色婷婷四色| 久播影院免费观看电视剧大全最新网| 久久99精品久久久| 任你日视频| 久久亚洲无码| 九九热这里| 丁香五月婷婷六月婷婷| 日韩av一区二区在线/日产精品久久久| 99久久66| 99热伊人综合| 99九九热在线观看| www.狠狠色.com| 女人高潮内射99精品| 亚洲 在线 性爱| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 操骚货在线| 久9视频| 久久久噜噜噜久久人妻| 激情五月婷婷综合视频| 艹天天射| 99操逼| 激情的五月婷婷蜜桃| 91超级碰碰| 91丁香色| 大香蕉综合| 狠狠看狠狠| 96精品成人无码A片观看金桔| 五月丁香六月情婷婷久久| 色婷婷综合久久| 九九视频在线观看| 色爱综合视频| 亚洲AV无码成人精品电影| 婷婷 伊人 久久| 色播综合| 色婷婷影音| 精品久热| 99这里只有精| 五月色导航| 嘿嘿视频免费看9| 色婷婷狠| 丁香五月婷婷激情中文| 婷婷五月成人色综合| 激情五月婷婷综合网| 天天噜| 亚洲综合激情五月天婷婷| 国产精品第一国产精品| 91人人爽狠狠狠| 婷婷性爱无码视频| 99re6热在线精品视频播放速度| 国产全是老熟女太爽了| 丁香五月性| 26uuu激情五月天| 操九色| 色婷婷丁香A片区毛片区女人区| 五月婷婷在线观看| 久久久er热| 色射7856五月天激情四射| 色播五月网| 婷婷五月丁香久久| 五月亭亭六月激情| 婷婷激情小说网| 激情综合五月丁香六月婷婷| 风流少妇A片一区二区蜜桃| 99精品在线| 五月丁香婷色| 最新热中文字幕| 五月天丁香欧美激情| www.色99| 大香网伊人久久综合| 狠狠色综合精品视频在线| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 五月丁香激情综合啪啪| 亚洲国产网址| 67久久| 亚洲午夜av| 色激情五月| 五月婷婷无码专区| 夜夜噜夜夜奇| 激情五月天开心网丁香无码| 开心五月激情| 伊人五月天综合网| 丁香五月婷婷啪| 五月婷婷黄色毛片| 一本九九色| 国产精产国品一二三在观看| 欧美色图片88| 字幕网AV中文字幕| 我淫我色婷婷五月天激情四射| 无码任你操| 香蕉狠狠爱视频| 丁香色婷婷五月天| 五月婷婷五月色| 久久久久人妻精选| 六月婷婷激情| 中文字幕av在线| 看全色黄大色大片| www.婷婷六月天| 激情开心五月天| 亚洲六月色| 日本五月视频| 五月天激情视频| 99爱在线精品视频免费观看| 激情九九六月激情免费视频| 在线看片av| 色呦呦美女| 九九99香蕉在线视频播放| 五月天涩涩| 激情綜合W W W,激情五月天| 激情四射网| 色综合com| 久久免费操| 亚洲综合另类| 五月天com| 天天操夜夜操| 老司机视频lsj爱就色| 日韩三级高清无码| 五月婷六月| 在线观看中文字幕亚洲| 妻久久久久| 色婷婷色久综| 色婷婷亚洲婷婷在线观看| 欧美日韩aaa| 少妇性按摩无码中文A片| 播播网色播播| 日本婷婷| 丁香五月婷婷综合激情哟哟哟| 狠狠色噜噜狠狠狠狠狠色综合久久| 色综合99无码 | 99九色视频在线观看| www色色com| 九九色逼| 色综合av超碰| 天天爱天天日| 五月婷婷第四色| 婷婷情爱五月天6| 无码啪啪| 操草草草| 91婷婷丁香五月天免费视频网站| 久久婷婷一级片| 色五月激情婷婷| 中文字幕,综合,91| 中文字幕成人| 色天使久久综合| 久久伦乱| 思思精品久久艹| 网站免费一站二站| 中文幕无线码中文字蜜桃| Caoporn公开| 婷婷精品在线| 激情综合色播| 亚洲婷婷五月天| 亚洲另类AV| 69精品人人人人| 91人妻视频| 欧美久久网| 国产古装妇女野外A片| 久久思思99| 青青操avbb| 丁香狠狠色婷婷久久无码视频| 婷婷久久亚洲| 大香蕉懂9| 五月天激情综合在线| 操啊操av| 中字幕视频在线永久在线观看免费| 丁香五夜激情四射夜夜夜| 久久精品爱爱| 久久婷婷色| 91狼友视频在线观看| 九热视频| 九九99九九99| 五月婷婷亚洲色图| 五月丁香黄色| 亚洲第一成人无码A片| 人妻aV在线| 99色爱| 成人av免费观看| AV成人在线播放| 丁香五月在线视频黑人| 拍真实国产伦偷精品| 婷婷丁香五月天影院| 久热中文字幕在线线观看| 伊人五月天在线| 超热久碰.com| 综合五月网| 极品少妇XXXX精品少妇偷拍| 噜噜色五月| AV成人在线播放| 大香久久综合网| 青青热久精品视频在线观看| 天天综合网站| 亚洲激情无码久久| 激情婷婷| 97激情五月天| 激情性爱五月天网页| 色97综合婷婷天天色| 五月天色色色| 五月天综合网| 天天综合精品| 蜜桃人妻无码AV天堂三区| 91在线日| 九九热最新地址| 久大香蕉| 色情婷婷五月天| 婷婷爱爱蜜臀天天操| 婷婷五月天久久| 五月婷av| 影音先锋91| 色五月婷婷自拍| 九九视频在线| 91色九| 99热资源在线| 99这里只有精品|v| 五月天激日本色情在线| 丁香婷婷免费| 无码人妻AV久久久一区二区三区 | 色丁香六月| 青青久久五月天丁香婷婷| 丁香六月久久| 婷婷久久久久| 夜夜撸天天日| 中文字幕激情综合| 99自拍视频在线| 97操碰碰无码视频| 五月天全国最大成人网| 午夜天堂一区人妻| 精品成人无码A片观看香草视频| 免费观看全黄做爰的视频| 26uuuu精品一区二区| 婷婷五月在线观看| 九九aV| 欧美激情综合色综合| 97五月婷| 亚洲欧洲中文日韩久久AV乱码| 日韩人妻无码一区二区| 九色综合五月天婷五月| 站长推荐无码播放| 99久久国产宗和精品1上映| 粉嫩AV久久一区二区三区| 激情婷婷五月色| 99在线视频操999| 婷婷五月天堂| WWW,激情五月天,COM| 中文幕无线码中文字蜜桃| 天天日天天日天天搞| 日本黄色精品| 日本猛少妇色XXXXX猛叫| 久久久久久综合五月婷婷| 色婷婷丁香| 久久大香免费| 欧美韩国日本| 丁香狠狠色婷婷| 天天综合色丁香| 久在线综合69| 六月丁香久久| 亭亭五月丁香五月天激情| 日本久久精品| 免费看片在线观看| 九九无码| 97久久视频| 色五月激情基地| 日本久久人| 91精品久久久久久综合五月天| av中文网站| 天天看A片| 久月久在线视频| 免费婷婷| 婷婷午夜天| bbwcuckold精品熟妇| 97国产精品女人碰碰| 婷婷综合在线| 色丁香久久| 色射婷婷五月天| 亚洲婷婷视频| 大香蕉婷婷丁香| 日韩十国产极品久久| 另类激情四射| 日本99婷婷| 天天爽天天操| 99久久久| 日韩在线视频中文字幕| 五月亭亭性| 好吊丝aV| 久久五月天合网| 综合伊人久久| 91亚洲天堂| 97超级啪啪在线观看| 婷婷金品综合视频| 无码髙清| 久9视频免费播放| 精品人妻久久久久久久| AAA级久久久精品| 日本啪啪天堂| 91婷色| 五月婷婷丁香在线| 丁香五月在线观看完整版| 五月激情丁香久久综合网| 天天操加勒比| 激情久久肏屄视频| yellow视频在线观看91| 国产操B视频| 色婷成人狠干| 9精品视频在线| 久久久九九视频精品18| 超碰五月婷婷五月天| 久久久高清| 久久久久亚洲AV综合| 成人看片网站| 中国丰满熟女A片免费观| 婷婷五月天小说| 色婷婷99| 久久九色| 97大香蕉五月天| 日韩黄色影院| 国产色色小草视频| WWW·色色色·COM| ww久久| 色五月婷婷av| 开心丁五月| 5月婷婷综合| 久久五月丁香伊人青草| 天天婬色综合| 超级碰人人操人人干| 日韩成人影片在线观看| 另类精品视频在线观看| 久久婷婷五月综合97色一本| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 婷婷六月激情丁香| 欧州色色| 9久热在线视频精品| 99精品视频在线观看| 日本女人久久| www激情| 麻豆AV一区二区三区| 影音先锋 萱萱| 丁香五月玖玖| 原琪琪色影院| 狠狠色激情在线| 五月天伊人手机在线播放AV| 丁香婷婷色九月| 激情五月丁香五月| 秋霞少妇AV网站| 久久久五月天婷婷成人网| 五月天色色婷婷| 综合激情伊人影视在线| 天天爽天天摸| 久久99久久99精品免视看婷婷| 97人人射| 超碰精品国产首页| 婷婷在线五月天观看| 99热精地址| www.婷婷.com| 青青草伊人婷婷| 五月婷婷成人| 婷婷五月综合在线视频| 99色色| 青青青在线视频国产| 玖玖伊人网| 久久新地址| 亚洲中文乱字字幕线在永久| 爽极品色| 久久久五月天婷婷| 在线五月色播| 9色视频在线| 97日韩无套内| 久久狠狠欧美| 久久激情五月婷婷| 99国产精品久久久久久久久久久| 色婷婷AV在线| 久久 视频这里只有精总| 超碰免费大香蕉| 中文字幕丰满孑伦无码专区| 五月婷在线影院| 开心五月婷婷在线| 丁香五月天啪啪| 伊人五月综合网| 色视五月天婷婷| 亚洲中文字幕AV| 色吊丝99| 久久66精品| 狠狠爱综合网| jiujiujiuwuyuetian| 天天拍久久| 婷婷综合| 婷婷丁香97| 夜丁香综合| 无码少妇高潮喷水A片免费| 嫩草视频在线观看| 婷婷五月天激情网| 久久久九九视频精品18| 久狠日av| 激情图片亚洲| 先锋资源996| 婷婷午夜| 日韩成人AV在线| 婷婷色片| 色在线99| 婷婷人人操| 五月婷婷国产| 激情五月丁香亭亭| 蜜臀99久久精品久久久久| 色丁香久久久| 丁香六月在线综合| 就爱射中文字幕资源网| W色综合| 成人AV在线网站| www.zbzhongsen.com| 日韩成人免费电影| 狠狠色噜噜狠狠狠888| 9精品在线| 超碰a女人的天堂| 大天天伊人| www.色婷婷.com| 丁香视频| VA色婷婷| 婷婷五月丁香五月丁香| 亚洲无AV在线中文字幕| 五月综合六月丁| AA片在线观看视频在线播放| 五月欧美色色五月| 亚洲色图五月丁香五月婷婷| 五月丁香777| 婷婷久久五月天中文字幕在线观看| 五月天激情无码专区| 婷婷五月天国产性感美女演员久久久久| 色久五月| 91碰操| 操骚货在线| 婷婷六月综合基地| 欧美色婷婷| 激情综合播播| 91919191919久久成人视频| 婷婷色成人| 亚洲欧美国产A片免费观看| 终合激情网| 91精品久久久久久久久 | 五月 成人 婷婷| 日本三级黄色大片| 夜夜天天久久婷婷| 精品九九婷婷| 亚洲无码另类| 开心五月婷婷六月丁香| 麻豆123区| 日韩在线视频中文字幕| 99极品视频| 9九九久久精品无码专区| 五月久视频| 色五月色五天色情网| 9久久精品| 亚洲小视频| 色色色在线| 国产这里只有精品| 综合网亚洲| 亚洲综合在线伊人婷| 影音先锋美国A| 五月天亭亭俺也| 成人视频一区| 噢美99| 草一草avb| 婷婷一本和五月丁香| 色情五月天导航| 99久视频| 色五月天成人| 综合狠狠五月婷婷| 热五月婷婷| 一起草AV入口| 淫视馆aV二区一区| 色婷婷www| 一起草无码视频| 中文字幕成人版| 91精品久久久久久77777| 欧美丁香六月激情视频| 99热9999| 丁香花婷婷五月天| 婷婷成人基地| 婷婷伊人久久| 99久久玖玖| 激情文学天天| 日韩高清成人| 一区二区传媒视频| 专区无日本视频高清8| 婷婷97碰碰| 婷婷五月天欧美图片在线播放电驴| 超碰免费成人| 97精品综合久久内射| 久久精品A片777777| 日本三级黄色大片| 狠狠狠色激情综合适合| 久久66精品| 婷婷丁香五月av| 日本天堂免费99| 九九精品免费视频99| 五月天婷婷色| 伊人99热| 欧美大香蕉视频| 激情五月开心五月丁香五月| 色婷婷五月天综合网| 另类的婷婷| 91一起艹| 久久久久久9| 99热99| 天天色凹凸| 亚洲精品久久久久久久久久飞鱼| 99精品视频在线观看| 综激情网| 在线观看欧美| AV色婷婷| 五月婷婷激情性爱| 激情五月天啪啪| www.色婷婷.com| 吉澤明步Av一區二區| 天天色天天噜| 久久AV电影| 婷婷五月丁香伊人网| 五月丁六月香av| 久久亚洲网| 琪琪理论片| 婷婷色色狠狠| 这里只有精品热| 国产99热在线看| 99噜噜噜在线播放| ss五月天激情| 午夜美女人啪最红院| 国产五月丁香在线| 丁香婷婷久久激情| 热这里| 久久婷婷色五月| 深爱五月日韩| 色久丁香五| 九九大香蕉黄色影院| 久99久热| 99热这里只有精品在线观看| 色婷婷综合网站| 国产精品国产成人国产三级| 大地9中文在线观看免费高清| 欧美大片免费播放器| 五月J香蕉婷婷| av一区免费看| 在线天堂9| 97色婷婷| 亚洲久久婷婷丁香五月天| 天天日天天干天天插天天射| www.天天干| 小视频久久久aaa| 男女啪啪做爰高潮无遮挡| 色无婷婷| 99视频在线播放大全| www.色婷婷| 日韩成人精品一区久久久久| 婷婷五月激情六月| 丁香五月天婷婷激情| 亚洲V国产V欧美V久久久久久| 色婷大香蕉| 五月婷在线观看| 99视频在线观看视频| 99热a片免| 日日色综合| 五月丁香婷婷欧美色图视频五月丁香777电影| 99九九免费精品| 五月天色色色| 色五月综合激情| 婷婷五月天激情小说| 人妻丰满精品一区二区A片| 五月天激情黄色网址| 久久久精品视频79| 最新丁香六月婷婷| 五月丁香综合| 国产44页| 清色五月天| 26uuu丁香婷婷五月| 无码人妻丰满熟妇奶水区码| 五月丁香六月婷婷成人| 天天久久综合| 综合激情五月丁香| www.久久色.com| 五月丁香久久网| 天天干,夜夜爽| 九九视频在线观看视频6| 夜夜大香蕉婷婷丁香| 久久九九99亚洲国产久精综合| 日本色天堂| 丁香五月伊人| 开心五月丁香综合久久| 欧美婷婷丁香五月社区| 丁香五月婷婷影院| 巴基斯坦粉嫰无码视频| 99re思思热久久| 91亚洲天堂| 9999色色色色| 久久久激情| 综合久久97| 丁香婷婷视频在线| 天堂久久久久天堂网| av 一区三区四区| 日本三级中国三级99| 涩涩激情五月婷婷| 色小说五月婷婷| 婷婷丁香六月| 99色综合| 99久久综合网| 国产avapp 网| 大香蕉久久婷婷精品综合| 人人操人人妻| 这里只有精品久| 色五月天在线观看| 性爱网五月婷婷| 丝袜熟女一区二区三区| 影音先锋按摩| av色色国产| 天天插操| 性爱AV天堂| 九色91国产| 狠狠色噜噜狠| 天天舔天天| 亚洲综合成人网| 玖玖午夜视频| 亚洲国产va| 色婷丁香91| 亚洲婷婷在线播放十月| 国产激情AV| 91视频精品99| 99爱在线精品视频免费观看| 亚洲天堂玖玖| www.色窝| 国产精品99久久久久久久女警 | 91九色精品熟女内射| 国产乱子轮XXX农村| 9|在线观看视频| 天天爽日日爽夜夜爽| 五月丁香啪啪啪| 丁香九月综合| 五月色网| 激情深爱五月婷婷| av人人干| 一区二区三区四日本| 这里只有九九精品| 激情五月婷婷| 艹| 国产精产国品一二三在观看| 一个色的综合| A片试看120分钟做受视频红杏| 综合99在线| 伊人激情啪啪| 婷婷月五天在线在线看| 久久停停超碰| 26uuu四色| 99ri在线视频| 久久ER视频com| 九九这里只有精品| 综合狠狠干| 中文幕无线码中文字蜜桃| 夜夜夜叫天天天做| 色啦啦视频| 色 色 色综合com| 欧美婷婷色五月网| 乱码操操| 色五月天影视| 亚洲亚洲人成综合网络| 五月丁香成人| 99在线精品视频| 欧美色五月天| 色婷婷AⅤ| 国产亚洲在线观看| 思思99精品视频| 五月天色色色网| 天天操人人干| 五月婷婷激情刺激| 99精品在线观看| 久久九九蜜| 大香蕉人人人| 五月丁香六月婷综合成人综合| 天天爽成人综合网站| 久久婷婷免费| 99亚洲精品| 婷婷色五月综合丁香| 99这里只有精品视频| 九九人妻福利| 婷婷丁香五月天色色| 永久免费一区二区三区| 欧洲婷婷五月天| 国产成人综合亚洲| 玖玖爱伊人| 久久久久久天天日天天爱| 婷婷九月丁香中文| 丁香激情网| 色狠狠色噜噜噜a天堂一区| 久久99大| 九九热在线精品视频| 九九热只有精品| 99人人干| 激情婷| 激情视频综合| 五月天婷婷影院影院| 色色色色色色五月婷婷| 国产69久久久欧美黑人A片 | 日韩一级片| 大香蕉院线| 久99久视频免费观看| 精品人妻在线免费观看| 天天爽天天爽| 色情激情五月| 1024婷婷综合久久五月天| 色五月亚洲| www999日韩精品| 国产亚洲精品人人| 无码中文一区二区三区| www.色婷婷.com| 精品一二三区久久AAA片| 激情爱爱网站| 五月开心婷婷| 免费视频舔| 狠狠色噜噜色狠狠狠综合色 | 五月婷婷激情| 97久久精品| 五月花成人网| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网| www,setingting| 五月婷婷综合网| 色色网站| 99热国产在线| Www.婷婷五月| 丁香五月天天| 色色精品色| 婷婷刺激综合| www.无码com| 草草夜夜操| 噼里啪啦在线观看免费完整版视频| 色欲婷婷五月天| 久久五月天激情| www.热99热| 丁香午月AV中文字幕| 五月丁香婷婷色色| 中文在线视频久9| 婷婷黄色网| 无码AV免费精品一区二区三区| 天天肏夜夜肏| 开心五月激情网| 日本色色色| 色婷五月| 久9无码视频| 五月色丁香| 色色性爱视频| 日婷婷| 丁香五月天亚洲视频| 丁香五月婷在线| 亚洲 五月 婷婷 成人| 人人干天天舔| 爱草视频在线观看| 色五月天激情| 99re热精品视频国| 丁香久色| se色99| 天天插天天干天天舔| 五月丁香啪啪| 亚洲色婷婷99一9|| 六月丁香视频网站| 中文字幕簧片| 婷婷五月丁香网| 狠狠操在线视频| 另类综合婷婷五月天欧美视频| 五月婷婷免费在线观看| 97婷婷五月天| 色色色色色色色色色999| 99热这里只要精品免费| 五月丁香影院| 91精品综合久久婷婷九色| 五月婷婷影院| 久久伦乱| 五月丁香婷婷色| AV电影在线播放| 丁香五月天AV在线| 色婷婷久久视屏| 狠狠色噜噜狠狠| 色综合网上班开心婷婷久久| 天堂久久精品| 久色姿源| 日本99在线视频| 少妇丁香婷婷| 日操夜撸| 久色五月丁香视频| 久久九九色| 99国产在线| 91在线97视频| 九九热99视频| 激情丁香婷婷六月天| 思思久久青草热| 婷婷无码视频| 亚洲激情av| 中日韩美欧成人一区二区精品在线| 777精品久无码人妻蜜桃| 国产免费av网站| 久久99jiu9| 秋霞黄色一级久久| 天天干天天干天天干天天干天天干天天| 婷婷色正月| 97碰在线视频| 国产精品久久久久久久久久免费 | 大香蕉综合| 婷婷五月天99| WWW.婷婷五月天.COM| 婷婷五月天久久久| 亚洲99热| 九色91美女| 丁香五月婷婷天激情| 午夜成人网站在线观看| 色五月婷婷久久| 九九www| 玖玖视频福利| 极品人妻VideOssS人妻| 国产全是老熟女太爽了| 五月天丁香欧美激情| 色五月无码| 丁香五月五婷| 五月丁香综合| 国産精品| 天天橾日日橾夜夜橾17| 涩综合婷婷| 五月天堂六月丁香亚州中文字幕久久 | 亚洲精品一二三| 91一起操| 思思热在线精品视频网站| 99视频久久| 无码区婷婷五月花开| 亚洲蜜桃精久久久久久久久久久久| www.五月婷婷.com| 色狠狠色狠狠| 熟女人妻一区二区三区免费看 | 欧美成人AAA片一区国产精品| 99日本视频在线观看专区| 成人婷婷五月天| 可以看的AV| 久久综合五月天激情小说网站| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 人妻操逼视频| 五月婷婷 激情按摩| 久九九热| 亚洲亚洲永久无码777777| 国产毛片精品一区二区色欲黄A片| 九九九九九九毛片| 狠狠狠夜夜夜| 激情丁香五月婷婷| 伊九九三级区| 中文字幕在线不卡| 久久婷婷的综合色丁香五月| 五月天色婷婷图片| 91狠狠色| 五月婷婷综合久久| 碰97久久| 国产成人亚洲综合亚洲| 激情婷婷五月社区| 日韩成人电泉AV| 狠狠搞综合色| 国产精产国品一二三在观看| 激情综合区| 婷婷伊人久久| 国产精品大香蕉| 97超碰在线免费观看| 97婷婷在线视频| 欧美精品18| 97超级碰人人| 六月久久狠狠| 国产亚洲精品久久久久久久久动漫| 久久五月丁香六月婷| 情欲禁地| 99在线免费视| 强辱丰满人妻HD中文字幕| 欧美色色色色色色| 五月天婷婷在线AN| 激情伊人网| 五月婷婷六月丁香综合| 色 五月 天 婷婷 丁香 九月| 丁香五月天堂网| 丁香婷婷激情四射五月| 色婷五月天激情| 天天综合91入口| 婷婷五月花丁香| 日熟女| jiZZdr| 日韩精品999| 天天爽天天爽| 五月天激情国产综合婷婷婷就去爱| 五月婷婷激情综合| 99视频这里只有久久精品| 精国产品一区二区三区A片| 6080av| 综合久久综合综合| 欧美成人色婷婷| 色碰碰| 久9热| 天天做天天双| 亚州第一黄网| 99九九精品| 五月丁香好婷婷A片网| 丁香五月激情网| 国产色色网址网站| 国产av天天插天天操天天爽| 五月婷婷激情五月| 丁香色情五月综合激情| 狼友视频在线观看18| 亚洲综合视频在线| 成人免费120分钟啪啪| 丁香婷婷视频| 亚洲精品成人片在线播| 色播五月| 色综合射婷婷| 91窝窝| 中文av网| 99热这里只有精品18| 91精品国产色猫| 婷婷五月色天| 大陆肏屄视频| 在线观看欧美3区| 97人人干| 综合色色色色色色| 久久婷婷久久| 六月成人网| 天堂中文国产| 91热久久| 成人国产网| 激情五月丁香六月综合AVXXXX| 色久女| 久久久久久久91| 丁香狠狠色婷婷久久无码视频| 99热精品在线观看| 激情超碰网| 武则天精品久久| 五月婷婷激情四月| 六月99天天婷婷激情综合| 少妇高潮呻吟A片免费看软件| 美国十月色婷婷在线观看| 深爱婷婷色| 亚州成人综合在线| 99精品视频在线观看| 亚洲另类日本| 五月天婷婷xxx| 综合玖玖偷拍| 久久99最新地址| 日日夜夜爽| 五月香蕉婷婷| 九九99精品| 电影91久久久| 日韩无码专区| 亚洲无码播放| www开心激情网| 丁香六月色婷婷欧美| 久久久久8888| 国产精产国品一二三在观看| 亚洲最大在线| 久草热在线视频| 综合久色五月| 天天色综合天天| 五月天色色婷婷| 天天爱天天操| 欧美婷婷综合| 丁香九月婷| 五月久久丁香| www.思思99热| 五月丁香WWW| 97干97色| 青吴乐视频| 欧美黄色一级录像| 欧美S码亚洲码精品M码| 91人人网| 99riAV国产精品视频| 无码色色色| 思思综合热| 视频这里只有精品16| 五月天婷婷色播综合在线| www.色9| 9有码中文| 五夜丁香| 七七久久婷婷| 香蕉视频性爱BB做爱| 播丁香五月婷婷欧美| 五月丁香六月激情在线| 女高怪谈在线观看| 丁香五月综合AV在线| 丁香六月色婷婷| 立川无码av| 激情99。| 激情综合婷婷| 天天插天天插天天日| 天天搞夜夜六| 四色 爱 婷婷 精品 亚洲 五月天| 吊色AV男人的天堂| www.henhenl| 激情丁香社区| 九九99九九99| 五月婷婷免费在线| 丁香综合伊人| 67194线路二在线观看| 玖玖99婷婷| 丁J香六月首页| 五月色亚洲| 六月激情丁香一道本7777| 五月丁香激情综合啪啪| 色婷婷综合久久久久| www.97干视频| 91九色首页| 婷婷五月综合欧美在线播放| yw.av| 色综合久久综合| 91综合国免费久入| 五月丁香婷婷综合在线| 婷婷丁香77777| 五月婷婷精品视频| 思思热精品在线| 久机视频这只有精品| 国产操逼视频网站| 久久午夜丁香| 色激情综合| 亚洲色婷婷五月天| 丁香六月啪啪| 亚洲另类婷婷五月综合| 久青操| 久久精品爱爱| 六月色国内综合| 五月激情综合网| www.婷婷.com| 激情六月综合| 男女啪啪做爰高潮无遮挡| 少妇高潮呻吟A片免费看软件| 九一牛视频探花| av久热| 色五月天天| www.日日夜夜| 国产无人区大片| 九九久久99| 天天拍天天操| 亚洲第一av| 日本色噜| 5月婷婷6月六月丁香| www.日本91| 极品人妻XXXXOOOO| 激情五月婷婷啪啪| 日本久久激情| 大香蕉久艹| 亚洲色 视频| 六月激情婷婷| 少妇性BBB搡BBB爽爽爽视頻| 久久婷婷激情四射五月天| 五月婷婷在线视频免费观看| 91久久综合亚洲鲁鲁五月天| 这里只有精品99www| 丁香色综合| 男女啪啪视频久 9| 国洲夜色亚热在线久久| 五月天色播网| 久婷五月| 蜜乳av一级av| 久久玖玖综合| 五月丁综合在线观看| 久久92| 天天射网站| 久久人视频| 欧美天天干五月丁香| caop在线| 久久综合婷婷激情| 99,色| 婷婷激情综合| 色婷婷中文| 久久婷丁香五月| 国产精品日韩十五区| 五月天开心网| 啪啪综合| 成人五月天在线视频在线观看| 97操碰视频| 久久婷婷五月综合一| 婷婷综合网伊人| 亚洲精品国产精品乱码视99| 国产精品久久久久9999小说| 色综合久久综合中文综合网| 色婷婷综合五月| 思思热在线播放| 久艹大香蕉| 婷婷五月激情图片| 午夜丁香婷婷| 国产精品操| 六月婷婷色综合| 婷婷六月香| 久久五月天大美女| 9|无码久久久久久| 色色色97| 日本狠狠网| 99热最新| 久久五月天激情美女| 在线婷婷| 九色PORNY自拍成人精彩视频| 欧美va亚洲va在线播放| 中字幕视频在线永久在线观看免费| 婷婷五月天最新综合你懂的| 97碰超级人人看| 无遮羞AV| 热热久久久久久久久| 国产毛片精品一区二区色欲黄A片| 综合亚洲六月婷婷在线| 婷婷六月丁香五月| 自拍视频99| 色欲一区二区三区精品A片| 色都都狠狠色都都色综合色| 天天 青草 制服丝袜 在线| 99九九久久| 99er日韩| 色九区| 色操综合| 深爱五月激情| 日都一级A片|