Re: [ACN]關於AdaptivePlayout
同學您好
在講話的時候,通常會講一串話、一串話,兩串話之間會有間隔
而課本提到的方法,就是利用兩個封包的時間間隔,來判斷是不是在同一個發話期間
先說明名詞
sequence number (序號):每產生一個封包,會把序號加1,可看成流水號
timestamp (時戳):data的產生時間,可看成製造日期
假定現在封包沒有loss
則可以把封包看成 1,2,3,...,i-1,i,...這樣的序列
那麼如果 i 和 i-1 的timestamp差距
t_i - t_(i-1) > 20毫秒 (課本選定的值,就是一段時間就是了)
這樣相當於講話停下來一段時間後再送封包
於是就能把第i個封包看成,跟第i-1個封包式不同的發話期間
也就是在第i-1個封包結束後,下一個發話期間,的第一個封包,就是第i個封包
假定現在封包是有可能掉的
那麼也許以我們收到1,2,3,...,i-1,i,...這樣的序列
實際上是1,2,3,...,i-1,k1,k2,k3,...,kn,i,...這樣的序列
k1,k2,k3,...,kn 是掉了的封包
那麼就算 ...,i-2,i-1,k1,k2,k3,...,kn,i,i+1,... 是在同一個發話期間
但是也可能發生 t_i - t_(i-1) > 20毫秒 的情形
所以就必須靠sequence number來判斷是不是在同一個發話期間
也就是第i個封包是否為下一個發話期間的第一個封包了
不知道這樣有沒有回答你的問題?
如果還不清楚,可以把問題再提出討論:)
Sincerely,
彥德
※ 引述《anakindon (god)》之銘言:
: 助教不好意思,老師上課時有解釋在adaptive playout時
: 要怎麼去看packet is first in a talkspurt??
: 我忘記老師那時是怎麼解釋了...
: 只記得老師說如果沒有loss就看timestamp
: 沒有loss時就要一起看seq number
: 但我不是很懂是什麼意思??
: 想再問一下timestamp與seq num的差異是??
: 可以請問一下嗎?? 謝謝您~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.218.97
※ 編輯: soweak 來自: 140.112.218.97 (11/06 17:07)
推
11/06 18:55, , 1F
11/06 18:55, 1F
→
11/06 18:57, , 2F
11/06 18:57, 2F
→
11/06 18:58, , 3F
11/06 18:58, 3F
推
11/08 01:00, , 4F
11/08 01:00, 4F
→
11/10 08:44, , 5F
11/10 08:44, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):