基于觸摸控制的視頻定位裝置和方法
【專利摘要】提供了一種基于觸摸控制的視頻定位裝置和方法,所述視頻定位裝置包括:觸摸感知模塊,接收用戶的觸摸輸入并產(chǎn)生觸摸信號(hào);索引器,存儲(chǔ)視頻數(shù)據(jù)的視頻幀的時(shí)間信息和偏移量信息的索引列表;控制器,根據(jù)觸摸操作的觸摸速度、觸摸長度和觸摸方向確定視頻定位的模式,計(jì)算要顯示的視頻幀的時(shí)間信息和幀率;推送器,根據(jù)偏移量信息讀取視頻幀數(shù)據(jù),并將讀取的視頻幀數(shù)據(jù)推送到解碼器;解碼器,維護(hù)待解碼的視頻幀數(shù)據(jù)的緩沖隊(duì)列,對(duì)緩沖隊(duì)列中的視頻幀數(shù)據(jù)進(jìn)行解碼,并將解碼的視頻幀數(shù)據(jù)推送到幀緩存控制器;幀緩存控制器,根據(jù)當(dāng)前視頻幀的時(shí)間信息和幀率確定顯示當(dāng)前視頻幀的時(shí)間。
【專利說明】基于觸摸控制的視頻定位裝置和方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及觸摸控制領(lǐng)域,更具體地,涉及一種基于觸摸控制的視頻定位裝置和該裝置的視頻定位方法。
【背景技術(shù)】
[0002]在現(xiàn)有的視頻播放技術(shù)中,通常通過提供帶有按鈕的遙控器來實(shí)現(xiàn)視頻播放的控制?,F(xiàn)有的DVD播放器或電視的遙控器可包括各種按鈕,例如,播放、停止、暫停、快進(jìn)、快退、慢進(jìn)、慢退等選項(xiàng),基本上可以滿足用戶需求。而隨著觸摸屏遙控器和各種觸摸屏設(shè)備的大量出現(xiàn),存在開發(fā)基于觸摸控制的視頻幀快速定位的需求。對(duì)于一般的手持觸摸屏多媒體設(shè)備,通常提供了兩種幀搜索方式:1、在視頻播放的界面中將拖動(dòng)滑塊到特定的時(shí)間點(diǎn),然后視頻定位到特定的時(shí)間點(diǎn)的視頻幀;2、首先產(chǎn)生全局范圍的等時(shí)間間隔的縮略圖,用戶通過手指觸摸定位到特定的縮略圖,然后以該縮略圖為中心展開成粒度更細(xì)的視頻幀序列縮略圖,最后再定位到其中一個(gè)縮略圖,這樣主視頻就可以跳到與此縮略圖相對(duì)應(yīng)的視頻幀。
[0003]然而,現(xiàn)有的觸摸控制視頻定位的技術(shù)方案沒有充分利用觸摸屏特點(diǎn):S卩,能夠感知到手指在觸摸屏上的觸摸速度與長度。如何解決將觸摸信號(hào)轉(zhuǎn)換成控制信號(hào),是用戶界面(UI)開發(fā)與視頻開發(fā)中的關(guān)鍵問題。目前最普遍的方案是,在圖形用戶界面(GUI)中顯示出各種控制按鈕、進(jìn)度條等,用戶點(diǎn)擊或者拖動(dòng)相應(yīng)Π控件的方式來實(shí)現(xiàn)視頻控制。這種方案并沒有用到觸摸的速度信號(hào),而且觸摸點(diǎn)固定,大大降低了用戶界面的友好性。
【發(fā)明內(nèi)容】
[0004]本發(fā)明克服了現(xiàn)有技術(shù)中的缺點(diǎn),提供一種靈活的基于觸摸控制的視頻定位方法。本發(fā)明通過觸摸屏采集用戶的觸摸操作的方向和觸摸操作的長度和速度,結(jié)合當(dāng)前視頻播放狀態(tài)并考慮用戶在觸摸控制操作中表現(xiàn)的情緒因素,動(dòng)態(tài)改變視頻的播放方式以達(dá)到快速定位到感興趣區(qū)域的目的。為了實(shí)現(xiàn)該功能,本發(fā)明在接收到觸摸信號(hào)后計(jì)算出需要顯示輸出的視頻幀序列,并通過查詢視頻幀索引列表中的信息獲取相關(guān)幀的文件偏移量,然后將視頻幀數(shù)據(jù)傳送到解碼器,在解碼器中解碼之后的視頻幀數(shù)據(jù)由幀緩存控制器接管并按照設(shè)定的幀速率被顯示。
[0005]根據(jù)本發(fā)明的一方面,提供了 一種基于觸摸控制的視頻定位裝置,包括:觸摸感知模塊,接收用戶的觸摸輸入并產(chǎn)生觸摸信號(hào);索引器,存儲(chǔ)視頻數(shù)據(jù)的視頻幀的時(shí)間信息和偏移量信息的索引列表;控制器,根據(jù)觸摸操作的觸摸速度、觸摸長度和觸摸方向確定視頻定位的模式,計(jì)算要顯示的視頻幀的時(shí)間信息和幀率,并輸出數(shù)據(jù)推送器、解碼器和幀緩存控制器的控制信號(hào);數(shù)據(jù)推送器,基于索引列表獲得視頻幀的偏移量信息,根據(jù)偏移量信息讀取視頻幀數(shù)據(jù),并將讀取的視頻幀數(shù)據(jù)推送到解碼器;解碼器,維護(hù)待解碼的視頻幀數(shù)據(jù)的緩沖隊(duì)列,對(duì)緩沖隊(duì)列中的視頻幀數(shù)據(jù)進(jìn)行解碼,并將解碼的視頻幀數(shù)據(jù)推送到幀緩存控制器;幀緩存控制器,保存解碼的視頻幀數(shù)據(jù),根據(jù)當(dāng)前視頻幀的時(shí)間信息和幀率確定顯示當(dāng)前視頻幀的時(shí)間。
[0006]根據(jù)本發(fā)明的一方面,對(duì)視頻幀的定位模式包括:阻尼效果的快進(jìn)模式、阻尼效果的快退模式和逐幀搜索模式。
[0007]根據(jù)本發(fā)明的一方面,推送器為每個(gè)觸摸操作創(chuàng)建一個(gè)視頻幀數(shù)據(jù)的推送線程,根據(jù)視頻過渡平滑原則選擇性地將視頻幀數(shù)據(jù)推送到解碼器。
[0008]根據(jù)本發(fā)明的一方面,解碼器根據(jù)視頻過渡平滑原則對(duì)推送器所推送的視頻幀數(shù)據(jù)進(jìn)行選擇性的解碼。
[0009]根據(jù)本發(fā)明的一方面,幀緩存控制器過濾時(shí)間上過渡不平滑的視頻幀數(shù)據(jù)。
[0010]根據(jù)本發(fā)明的一方面,在快進(jìn)模式下,控制器將視頻定位裝置的工作模式設(shè)置為僅對(duì)GOP中的關(guān)鍵幀進(jìn)行解碼的只解關(guān)鍵幀模式,在只解關(guān)鍵幀模式下,控制器將幀率設(shè)置為固定值,并根據(jù)以下的公式來計(jì)算將要顯示在屏幕上的關(guān)鍵幀的時(shí)間點(diǎn):
[0011]N = nTouchLength/nTouchVe1city,
[0012]Xn = L..N = Xn-1+ (N~n) XnTouchVelocityXnTouchffeight
[0013]其中,nTouchvelocity表示觸摸速度,nTouchLength表示觸摸長度,nTouchffeight表示調(diào)整觸摸控制的權(quán)值,Xn = L.n表示將要顯示在屏幕上的關(guān)鍵幀時(shí)間點(diǎn),X0表示開始快進(jìn)之前的時(shí) 間點(diǎn)。
[0014]根據(jù)本發(fā)明的一方面,在快進(jìn)模式中,控制器將視頻定位裝置的工作模式設(shè)置為對(duì)GOP中的所有幀進(jìn)行解碼的全解模式,并根據(jù)以下等式設(shè)置幀率:
[0015]StartRateFulln — FR X (I + 專),
[0016]EndRalcFuil^ = FR X (2 - -^),
[0017]其中,StartRateFull1^P EndRateFulln分別表示開始與結(jié)束觸摸動(dòng)作時(shí)的幀率,F(xiàn)R表示正常播放幀率,N為全解模式下帶阻尼效果的幀數(shù)。
[0018]根據(jù)本發(fā)明的一方面,在逐幀搜索模式下,如果是逐幀前進(jìn),則控制器控制幀緩存控制器中增加的幀數(shù)是固定步長,如果是逐幀后退,則控制器控制幀緩存控制器中增加的幀數(shù)是一個(gè)GOP的所有幀數(shù)。
[0019]根據(jù)本發(fā)明的一方面,在快退模式下,如果控制器確定不滿足(Icount+Pcount+D^Iresoiution < FrameBuf ferSize,則控制解碼器按照盡量解碼的原則對(duì)GOP中的視頻幀進(jìn)行解碼,其中,Icount表示GOP中的I幀的個(gè)數(shù),Pcount表示GOP中P幀的個(gè)數(shù),其中“I”表示B幀的個(gè)數(shù),Iresolution表示I幀的分辨率,F(xiàn)rameBufferSize表示幀緩存控制器的存儲(chǔ)空間大小。
[0020]根據(jù)本發(fā)明的一方面,還提供了一種基于觸摸控制的視頻定位方法,包括:(a)接收用戶的觸摸輸入并產(chǎn)生觸摸信號(hào);(b)根據(jù)觸摸操作的觸摸速度、觸摸長度和觸摸方向來計(jì)算要顯示的視頻幀的時(shí)間信息和幀率;(C)基于索引列表獲得視頻幀的偏移量信息,根據(jù)偏移量信息讀取視頻幀數(shù)據(jù),并推送讀取的視頻幀數(shù)據(jù)以進(jìn)行解碼;(d)維護(hù)待解碼的視頻幀數(shù)據(jù)的緩沖隊(duì)列,對(duì)緩沖隊(duì)列中的視頻幀數(shù)據(jù)進(jìn)行解碼;(e)緩存解碼的視頻幀數(shù)據(jù),根據(jù)當(dāng)前視頻幀的時(shí)間信息和幀率確定顯示當(dāng)前視頻幀的時(shí)間。
[0021]根據(jù)本發(fā)明的另一方面,在所述基于觸摸控制的視頻定位方法中,在步驟(C),為每個(gè)觸摸操作創(chuàng)建一個(gè)視頻幀數(shù)據(jù)的推送線程,并根據(jù)視頻過渡平滑原則選擇性地將視頻幀數(shù)據(jù)推送到解碼器。
[0022]根據(jù)本發(fā)明的另一方面,在所述基于觸摸控制的視頻定位方法中,在步驟(d)中,根據(jù)視頻過渡平滑原則對(duì)步驟(C)推送的視頻幀數(shù)據(jù)進(jìn)行選擇性的解碼。
[0023]根據(jù)本發(fā)明的另一方面,在所述基于觸摸控制的視頻定位方法中,在步驟(e)中,過濾時(shí)間上過渡不平滑的視頻幀數(shù)據(jù)。
[0024]根據(jù)本發(fā)明的另一方面,在所述基于觸摸控制的視頻定位方法中,如果在步驟(b)確定是快進(jìn)模式,則將幀率設(shè)置為固定值并在步驟(d)僅對(duì)GOP中的關(guān)鍵幀進(jìn)行解碼,并根據(jù)以下的公式來計(jì)算將要顯示在屏幕上的關(guān)鍵幀的時(shí)間點(diǎn):
[0025]N = nTouchLength/nTouchVe1city,
[0026]Xn = L..N = Xn-1+ (N~n) XnTouchVelocityXnTouchWeight
[0027]其中,nTouchvelocity表示觸摸速度,nTouchLength表示觸摸長度,nTouchWeight表示用于調(diào)整觸摸控制的權(quán)值,Xn = 1...n表示將要顯示在屏幕上的關(guān)鍵幀時(shí)間點(diǎn),X0表示開始快進(jìn)之前的時(shí)間點(diǎn)。
[0028]根據(jù)本發(fā)明的另一方面,在所述基于觸摸控制的視頻定位方法中,在步驟(b)將幀率設(shè)置為變化值,并在步驟(d)對(duì)GOP中的所有視頻幀進(jìn)行解碼,其中,根據(jù)以下等式設(shè)
置中貞率:
【權(quán)利要求】
1.一種基于觸摸控制的視頻定位裝置,包括: 觸摸感知模塊,接收用戶的觸摸輸入并產(chǎn)生觸摸信號(hào); 索引器,存儲(chǔ)視頻數(shù)據(jù)的視頻幀的時(shí)間信息和偏移量信息的索引列表; 控制器,根據(jù)觸摸操作的觸摸速度、觸摸長度和觸摸方向確定視頻定位的模式,計(jì)算要顯示的視頻幀的時(shí)間信息和幀率,并輸出數(shù)據(jù)推送器、解碼器和幀緩存控制器的控制信號(hào); 推送器,基于索引列表獲得視頻幀的偏移量信息,根據(jù)偏移量信息讀取視頻幀數(shù)據(jù),并將讀取的視頻幀數(shù)據(jù)推送到解碼器; 解碼器,維護(hù)待解碼的視頻幀數(shù)據(jù)的緩沖隊(duì)列,對(duì)緩沖隊(duì)列中的視頻幀數(shù)據(jù)進(jìn)行解碼,并將解碼的視頻幀數(shù)據(jù)推送到幀緩存控制器; 幀緩存控制器,保存解碼的視頻幀數(shù)據(jù),根據(jù)當(dāng)前視頻幀的時(shí)間信息和幀率確定顯示當(dāng)前視頻幀的時(shí)間。
2.如權(quán)利要求1所述的視頻幀定位裝置,其中,對(duì)視頻幀的定位模式包括:阻尼效果的快進(jìn)模式、阻尼效果的快退模式和逐幀搜索模式。
3.如權(quán)利要求1所述的視頻幀定位裝置,其中,推送器為每個(gè)觸摸操作創(chuàng)建一個(gè)視頻幀數(shù)據(jù)的推送線程,根據(jù)視頻過渡平滑原則選擇性地將視頻幀數(shù)據(jù)推送到解碼器。
4.如權(quán)利要求1所述的視頻幀定位裝置,其中,解碼器根據(jù)視頻過渡平滑原則對(duì)推送器所推送的視頻幀數(shù)據(jù)進(jìn)行選擇性的解碼。
5.如權(quán)利要求1所述·的視頻幀定位裝置,其中,幀緩存控制器過濾時(shí)間上過渡不平滑的視頻幀數(shù)據(jù)。
6.如權(quán)利要求1所述的視頻幀定位裝置,其中,在快進(jìn)模式下,控制器將視頻定位裝置的工作模式設(shè)置為僅對(duì)GOP中的關(guān)鍵幀進(jìn)行解碼的只解關(guān)鍵幀模式,在只解關(guān)鍵幀模式下,控制器將幀率設(shè)置為固定值,并根據(jù)以下的公式來計(jì)算將要顯示在屏幕上的關(guān)鍵幀的時(shí)間點(diǎn):
N = nTouchLength/nTouchVe1city,
Xn = 1..N = Xn-1+ (N-n) XnTouchVelocityXnTouchWeight 其中,nTouchvelocity表示觸摸速度,nTouchLength表示觸摸長度,nTouchffeight表示調(diào)整觸摸控制的權(quán)值,Xn = 1...n表示將要顯示在屏幕上的關(guān)鍵幀時(shí)間點(diǎn),X0表示開始快進(jìn)之前的時(shí)間點(diǎn)。
7.如權(quán)利要求1所述的視頻幀定位裝置,其中,在快進(jìn)模式中,控制器將視頻定位裝置的工作模式設(shè)置為對(duì)GOP中的所有幀進(jìn)行解碼的全解模式,并根據(jù)以下等式設(shè)置幀率:
8.如權(quán)利要求1所述的視頻幀定位裝置,其中,在逐幀搜索模式下,如果是逐幀前進(jìn),則控制器控制幀緩存控制器中增加的幀數(shù)是固定步長,如果是逐幀后退,則控制器控制幀緩存控制器中增加的幀數(shù)是一個(gè)GOP的所有幀數(shù)。
9.如權(quán)利要求1所述的視頻幀定位裝置,其中,在快退模式下,如果控制器確定不滿足(Icount+Pcount+D^Iresoiution < FrameBuf f erSize,則控制解碼器按照盡量解碼的原則對(duì)GOP中的視頻幀進(jìn)行解碼, 其中,I_nt表示GOP中的I幀的個(gè)數(shù),Praunt表示GOP中P幀的個(gè)數(shù),其中“I”表示B幀的個(gè)數(shù),Irest5lutitm表示I幀的分辨率,F(xiàn)rameBufferSize表示幀緩存控制器的存儲(chǔ)空間大小。
10.一種基于觸摸控制的視頻定位方法,包括: (a)接收用戶的觸摸輸入并產(chǎn)生觸摸信號(hào); (b)根據(jù)觸摸操作的觸摸速度、觸摸長度和觸摸方向來計(jì)算要顯示的視頻幀的時(shí)間信息和幀率; (C)基于索引列表獲得視頻幀的偏移量信息,根據(jù)偏移量信息讀取視頻幀數(shù)據(jù),并推送讀取的視頻幀數(shù)據(jù)以進(jìn)行解碼; (d)維護(hù)待解碼的視頻幀數(shù)據(jù)的緩沖隊(duì)列,對(duì)緩沖隊(duì)列中的視頻幀數(shù)據(jù)進(jìn)行解碼; (e)緩存解碼的視頻幀數(shù)據(jù),根據(jù)當(dāng)前視頻幀的時(shí)間信息和幀率確定顯示當(dāng)前視頻幀的時(shí)間。
11.如權(quán)利要求10所述的視頻定位方法,其中,對(duì)視頻幀的定位模式包括:阻尼效果的快進(jìn)模式、阻尼效果的快退 模式和逐幀搜索模式。
12.如權(quán)利要求10所述的視頻幀定位方法,其中,在步驟(C),為每個(gè)觸摸操作創(chuàng)建一個(gè)視頻幀數(shù)據(jù)的推送線程,并根據(jù)視頻過渡平滑原則選擇性地將視頻幀數(shù)據(jù)推送到解碼器。
13.如權(quán)利要求10所述的視頻幀定位方法,其中,在步驟(d)中,根據(jù)視頻過渡平滑原則對(duì)步驟(C)推送的視頻幀數(shù)據(jù)進(jìn)行選擇性的解碼。
14.如權(quán)利要求10所述的視頻幀定位方法,其中,在步驟(e)中,過濾時(shí)間上過渡不平滑的視頻幀數(shù)據(jù)。
15.如權(quán)利要求10所述的視頻幀定位方法,其中,如果在步驟(b)確定是快進(jìn)模式,則將幀率設(shè)置為固定值并在步驟(d)僅對(duì)GOP中的關(guān)鍵幀進(jìn)行解碼,并根據(jù)以下的公式來計(jì)算將要顯示在屏幕上的關(guān)鍵幀的時(shí)間點(diǎn):
N = nTouchLength/nTouchVe1city,
Xn = 1...N = Xn-1+ (N-n) XnTouchVelocityXnTouchWeight 其中,nTouchvelocity表示觸摸速度,nTouchLength表示觸摸長度,nTouchffeight表示用于調(diào)整觸摸控制的權(quán)值,Xn = 1...n表示將要顯示在屏幕上的關(guān)鍵幀時(shí)間點(diǎn),X0表示開始快進(jìn)之前的時(shí)間點(diǎn)。
16.如權(quán)利要求10所述的視頻幀定位方法,其中,在步驟(b)將幀率設(shè)置為變化值,并在步驟(d)對(duì)GOP中的所有視頻幀進(jìn)行解碼,其中,在步驟(b)根據(jù)以下等式來變化地設(shè)置幀率:
17.如權(quán)利要求10所述的視頻幀定位方法,其中,在步驟(b)確定是逐幀搜索模式的情況下,如果是逐幀前進(jìn),則在步驟(e)以固定步長的幀數(shù)增加緩存的視頻幀,如果是逐幀后退,則在步驟(e)將緩存的視頻幀的幀數(shù)增加一個(gè)GOP的所有幀數(shù)。
18.如權(quán)利要求10所述的視頻幀定位方法,其中,在步驟(b)確定是快退模式的情況下,如果不滿足(Ie_t+Pe_t+l)*IMsaLutim < FrameBufferSize,則在步驟(d)按照盡量解碼的原則對(duì)GOP中的視頻幀進(jìn)行解碼, 其中,I_nt表示GOP中的I幀的個(gè)數(shù),Praunt表示GOP中P幀的個(gè)數(shù),其中“I”表示B幀的個(gè)數(shù),Irest5lutitm表示I幀的分辨率,F(xiàn)rameBufferSize表示幀緩存控制器的存儲(chǔ)空間大小。
【文檔編號(hào)】G11B19/02GK103544977SQ201210246563
【公開日】2014年1月29日 申請(qǐng)日期:2012年7月16日 優(yōu)先權(quán)日:2012年7月16日
【發(fā)明者】俞貴濤, 季兵, 朱春波 申請(qǐng)人:三星電子(中國)研發(fā)中心, 三星電子株式會(huì)社