專利名稱:一種節(jié)目切換方法及裝置的制作方法
技術領域:
本發(fā)明涉及移動多媒體廣播,尤其涉及一種節(jié)目切換方法及裝置。
技術背景CMMB ( China Mobile Multimedia Broadcasting,移動多々某體廣播)是近 來在普遍推廣的 一種多媒體廣播技術,這種技術可以使移動終端在移動狀態(tài) 下接收廣播信號,經(jīng)過處理后播放電視節(jié)目。并且,移動終端可以接收節(jié)目 收視指南,顯示出節(jié)目列表,讓用戶有選擇地觀看電視節(jié)目。此外,這種技 術還支持其他多媒體數(shù)據(jù)的廣播,如,實時的股票信息以及其他資訊等。在移動多媒體廣播中,每路電視節(jié)目都要占用 一個廣播通道,在物理層, 廣播通道對應著預先規(guī)劃好的頻點和若干時隙。用戶觀看某一節(jié)目時,移動 終端使用該節(jié)目對應的廣播通道接收該路節(jié)目的復用子幀,對接收到的復用 子幀進行解復用,提取其中的音、視頻數(shù)據(jù),送給音、視頻解碼器解碼,播 放。當用戶從一個節(jié)目切換到另外一個節(jié)目時,移動終端需要從當前節(jié)目的 廣播通道切換至新節(jié)目的廣播通道,并且視頻解碼器必須等到接收到一個I 幀(關4建幀)后,才能構建出一幀完整的畫面。I幀(Intra picture,內(nèi)部畫 面)是每個GOP (Group Of Pictures,畫面組,MEPG使用的一種視頻壓縮 技術)的第一個幀。由于I幀的時間間隔較長,所以構建新節(jié)目的第一幀畫 面時需要用戶等待較長的時間,這樣就會使用戶感覺節(jié)目切換速度很慢,換 臺不夠平滑,影響用戶的體^r。為避免換臺時較長的等待時間,給用戶帶來不舒適的感受,目前通常的 做法是,在新節(jié)目的畫面還未出現(xiàn)的時候,在播放器界面上顯示一張靜態(tài)圖 片,或者播放一段短小的本地視頻文件來占據(jù)這段等待時間,使界面比較友 好。然而,這種解決辦法沒有從根本上減少用戶的等待時間,并未從本質(zhì)上解決換臺等待時間長的問題。 發(fā)明內(nèi)容本發(fā)明要解決的技術問題是提供一種節(jié)目切換方法及裝置,縮短換臺等 待時間,提高用戶進行節(jié)目切換時的速度。為解決上述技術問題,本發(fā)明的一種節(jié)目切換方法,包括如下步驟a: 接收一個或多個待切換節(jié)目的復用子幀,對其中包含的關鍵幀進行預先緩 存;b:當切換到待切換節(jié)目時,使用緩存的該節(jié)目的關鍵幀構建圖像并播 放。進一步地,待切換節(jié)目為當前播放節(jié)目的相鄰節(jié)目。進一步地,在步驟a中對關鍵幀進行緩存時,根據(jù)復用子幀的視頻段的 "圖像幀類型"字段,將該字段標識為關鍵幀的視頻單元作為關鍵幀緩存。進一步地,完成一個節(jié)目的關鍵幀的緩存后,在接收到該節(jié)目的下一個 關鍵幀時,使用后一關鍵幀覆蓋前一個保存的關鍵幀。進一步地,當用戶進行節(jié)目切換時,使用要切換節(jié)目的業(yè)務號與相鄰節(jié) 目的業(yè)務號進行比較,當要切換節(jié)目的業(yè)務號與相鄰節(jié)目的業(yè)務號相同時, 則表示用戶切換到當前播放節(jié)目的相鄰節(jié)目,則使用緩存的相鄰節(jié)目的關鍵 幀構建圖像并播放。進一步地,相鄰節(jié)目包含左鄰節(jié)目和右鄰節(jié)目,當用戶切換到右鄰節(jié)目 時,關閉原左鄰節(jié)目的廣播通道,將原播放節(jié)目作為左鄰節(jié)目,接收其復用 子幀,緩存關鍵幀,從節(jié)目指南中查找新的右鄰節(jié)目,打開其廣播通道,接 收其復用子幀,緩沖關鍵幀;當用戶切換到左鄰節(jié)目時,關閉原右鄰節(jié)目的 廣播通道,將原播放節(jié)目作為右鄰節(jié)目,接收其復用子幀,緩存關鍵幀,從 節(jié)目指南中查找新的左鄰節(jié)目,打開其廣播通道,接收復用子幀,緩存關鍵 幀。進一步地, 一種節(jié)目切換裝置,包括,解碼播放單元,其特征在于,該 裝置還包括,接收單元、緩存單元和切換單元,其中接收單元用于接收一 個或多個待切換節(jié)目的復用子幀,將其中包含的關^T建幀發(fā)送給緩存單元進行緩存;緩存單元用于對接收到的接收單元發(fā)送的關鍵幀進行緩存;切換單元 用于接收用戶的切換指令,從緩存單元中提取關鍵幀,發(fā)送給解碼播放單元; 解碼播放單元用于使用接收到的切換單元發(fā)送的關鍵幀構建圖像并播放。進一步地,還包括業(yè)務號獲取單元,業(yè)務號獲取單元用于獲取播放節(jié)目 的業(yè)務號,從節(jié)目指南中查找播放節(jié)目的相鄰節(jié)目的業(yè)務號,將相鄰節(jié)目的 業(yè)務號發(fā)送給接收單元。進一步地,還包括比較單元,比較單元從切換單元獲取要切換節(jié)目的業(yè) 務號,從業(yè)務號獲取單元獲取播放節(jié)目的相鄰節(jié)目的業(yè)務號,將業(yè)務號進行 比較,相同時,則通知切換單元從緩存單元中提取關鍵幀,發(fā)送給解碼播放 單元。進一步地,比較單元還用于通知業(yè)務號獲取單元獲取要切換節(jié)目的相鄰 節(jié)目的業(yè)務號,接收單元還用于在接收到業(yè)務號獲取單元發(fā)送的要切換節(jié)目 的相鄰節(jié)目的業(yè)務號后,關閉當前所接收的其業(yè)務號未包含在新接收到的業(yè)務號中的節(jié)目的廣播通道,打開新接收到的業(yè)務號標識的節(jié)目的廣播通道, 接收其復用子幀,并將其關鍵幀發(fā)送給緩存單元進行緩存。綜上所述,本發(fā)明通過預先緩存待切換節(jié)目的I幀,在切換到該節(jié)目時, 解碼器迅速定位到該節(jié)目的I幀,構建出一幅完整的節(jié)目畫面并送給播放器 進行播放,從而減少了用戶換臺時的等待時間,實現(xiàn)了平滑換臺,并且可以 只預先緩存當前播放節(jié)目的相鄰節(jié)目的一個最新的I幀,不對復用子幀中的 音頻段和數(shù)據(jù)段進行處理,所以進行處理的系統(tǒng)開銷不大,內(nèi)存消耗也不大。
圖1是本發(fā)明的當用戶播放節(jié)目并進行換臺時的處理流程圖;圖2是本發(fā)明的順序切換節(jié)目時的示意圖;圖3是本發(fā)明的用戶切換至右鄰節(jié)目時的處理流程圖;圖4是本發(fā)明裝置的組成示意圖。
具體實施方式
本發(fā)明通過預先緩存待切換節(jié)目的視頻I幀,在切換到該節(jié)目時能迅速 找到該節(jié)目的I幀,構建節(jié)目圖像。以下結合附圖對本發(fā)明的具體實施方式
進行說明如圖l所示,本發(fā)明的方法包括前臺處理和后臺處理兩個線程,當用戶 首次選擇播放某節(jié)目時,在前臺處理中接收播放節(jié)目的復用子幀,解析出音、 視頻數(shù)據(jù),發(fā)送給播放器進行播放。在后臺處理中,可以將節(jié)目指南中的全部非當前播放節(jié)目作為待切換節(jié) 目接收其復用子幀,對接收到的復用子幀的I幀進行預先緩存,這樣就可以 保證用戶切換到節(jié)目指南中的任一節(jié)目時,均可以快速地將緩存的待切換節(jié)目的I幀發(fā)送給解碼器進行解碼并播;故,不會存在較長的換臺等待時間,然 而這種做法將會產(chǎn)生巨大的系統(tǒng)開銷和內(nèi)存消耗,為降低系統(tǒng)開銷和內(nèi)存消 耗,本實施例中僅從節(jié)目指南中獲取當前播放節(jié)目的左鄰節(jié)目和右鄰節(jié)目的 業(yè)務號,根據(jù)相鄰節(jié)目的業(yè)務號打開兩相鄰節(jié)目的廣播通道,接收復用子幀, 為進一步降低系統(tǒng)開銷和內(nèi)存消耗,可根據(jù)復用子幀的"圖像幀類型"字段 的標識,僅選擇I幀進行保存不處理音頻段和數(shù)據(jù)段,具體包括如下步驟101:在用戶選擇播放的節(jié)目后,根據(jù)播放節(jié)目的業(yè)務號,從節(jié)目指南 中查找播放節(jié)目的相鄰節(jié)目的業(yè)務號;由于用戶在換臺時,習慣于順序向當前播放節(jié)目的相鄰節(jié)目切換,因此, 切換到播放節(jié)目的相鄰節(jié)目的概率就很高,查找相鄰節(jié)目的業(yè)務號并預先緩 存其視頻I幀,對于提高用戶的換臺速度將是十分有效的。上述播放節(jié)目的相鄰節(jié)目是指在節(jié)目指南中與播放節(jié)目相鄰的節(jié)目。如 圖2所示,在節(jié)目指南中,所有節(jié)目在順序切換時構成一個首尾相連的環(huán), 與當前播放節(jié)目相鄰的節(jié)目數(shù)目總是兩個,分別稱為左鄰節(jié)目和右鄰節(jié)目, 在當前播放節(jié)目下采取回退操作時,則切換到當前播放節(jié)目的左鄰節(jié)目;采 取前進操作時,則切換到當前播放節(jié)目的右鄰節(jié)目。從節(jié)目指南中查找播放節(jié)目的相鄰節(jié)目的業(yè)務號時,由于節(jié)目指南采用 列表形式,因此,可以在節(jié)目指南中定位到當前播放節(jié)目的業(yè)務號,再從列表中獲取與當前播放節(jié)目相鄰的左鄰節(jié)目和右鄰節(jié)目的業(yè)務號。102:獲取到相鄰節(jié)目的業(yè)務號后,根據(jù)相鄰節(jié)目的業(yè)務號,打開其廣 播通道,接收節(jié)目的復用子幀,并對復用子幀的I幀進行緩存;由于移動終端需要至少同時打開三路節(jié)目的廣播通道接收復用子幀,因 此,對于移動終端的電視芯片要求能夠支持同時接收多路節(jié)目,至少為三路。上述I幀是指,根據(jù)CMMB復用協(xié)議,復用子幀中的視頻段的"圖像 幀類型"字段標識為I幀的視頻單元。當接收到下一個復用子幀時,仍然對該復用子幀的"圖像幀類型"字段 標識為I幀的視頻單元進行緩存,且覆蓋前一個保存的視頻I幀。對于左鄰 節(jié)目和右鄰節(jié)目則要分別在內(nèi)存中開辟出左鄰節(jié)目緩沖區(qū)和右鄰節(jié)目緩沖 區(qū),并分別進行I幀的緩存。采用覆蓋操作能夠保證在內(nèi)存中總是為左鄰節(jié) 目和右鄰節(jié)目分別預先緩存一個最新的視頻I幀,節(jié)約內(nèi)存開銷。103:當用戶進行節(jié)目切換時,使用要切換節(jié)目的業(yè)務號與相鄰節(jié)目的 業(yè)務號進行比較,當要切換節(jié)目的業(yè)務號與相鄰節(jié)目的業(yè)務號相同時,使用 預先緩存的該相鄰節(jié)目的I幀構建圖像并播放;在構建圖像時,將預先緩存的相鄰節(jié)目的I幀發(fā)送給解碼器,解碼器解 碼出視頻數(shù)據(jù),即完成圖像的構建,并發(fā)送給播放器進行播放。此時,可使用要切換節(jié)目的業(yè)務號與左鄰節(jié)目的業(yè)務號和右鄰節(jié)目的業(yè)務號進行比較,當與左鄰節(jié)目的業(yè)務號相同時,則表示切換到左鄰節(jié)目,從左鄰節(jié)目緩沖區(qū)中取出I幀發(fā)送給解碼器解碼并播放;當與右鄰節(jié)目的業(yè)務號相同時,則表示切換到右鄰節(jié)目,從右鄰節(jié)目緩沖區(qū)中取出I幀發(fā)送給解 碼器解碼并播放。104:在播放由預先緩存的I幀構建的圖像的之后,繼續(xù)從相鄰節(jié)目的 廣播通道接收復用子幀,并送往解碼器進行解碼,完成解碼后發(fā)送給播放器 進行播放;在節(jié)目切換完成后,將對切換到的相鄰節(jié)目的后臺操作轉為前臺操作。105:同時,當前臺切換節(jié)目至相鄰節(jié)目后,查找節(jié)目切換后的播放節(jié) 目的相鄰節(jié)目,接收相鄰節(jié)目的復用子幀,對I幀進行緩存,已備下次的節(jié)目切換;在此,查找當前播放節(jié)目的相鄰節(jié)目的過程與步驟101中的查找過程相 同,對視頻I幀進行緩存的過程與步驟102中的緩存過程相同。例如,當用戶切換到右鄰節(jié)目時,關閉原來左鄰節(jié)目的廣播通道,將原 播放節(jié)目作為左鄰節(jié)目,其廣播通道已打開,則直接接收復用子幀,緩存I 幀;由于原來的右鄰節(jié)目變成了當前播放節(jié)目,因此,從節(jié)目指南中查找新 的右鄰節(jié)目,打開其廣播通道,在后臺緩沖其I幀。同樣,當用戶切換到左鄰節(jié)目時,關閉原右鄰節(jié)目的廣播通道,將原播 放節(jié)目作為右鄰節(jié)目,因其廣播通道已打開,則在后臺直接接收復用子幀, 緩存I幀;由于原來的左鄰節(jié)目變成了當前播放節(jié)目,因此,從節(jié)目指南中 查找新的左鄰節(jié)目,打開其廣播通道,在后臺緩沖其I幀。106:當用戶退出電視播放器時,關閉當前播放的節(jié)目及其相鄰節(jié)目的 廣播通道,并釋放為預先緩存相鄰節(jié)目的I幀而開辟的內(nèi)存緩沖區(qū)。下面再通過一個應用示例對上述實施例進行說明。請參照圖3。當用戶 從當前的播放節(jié)目切換到右鄰節(jié)目時,包括如下步驟301:在播放當前節(jié)目的同時,在后臺預先緩存當前播放節(jié)目的右鄰節(jié) 目和左鄰節(jié)目的I幀;302:當用戶從當前播放節(jié)目切換到右鄰節(jié)目時,從右鄰節(jié)目緩沖區(qū)中 取出其I幀,發(fā)送給解碼器進行解碼,快速構建出第一幀畫面并進行播放;303:然后,繼續(xù)接收該節(jié)目的復用子幀,并播放后續(xù)收到的音、視頻 數(shù)據(jù);304:將原播放節(jié)目作為左鄰節(jié)目,由于其廣播通道已打開,所以繼續(xù) 接收其復用子幀,緩沖其I幀;305:在節(jié)目指南中尋找當前播放節(jié)目的右鄰節(jié)目的業(yè)務號,根據(jù)業(yè)務 號打開其廣播通道,接收其復用子幀,緩沖I幀。如圖4所示,本發(fā)明的一種節(jié)目切換裝置包括業(yè)務號獲取單元、接收 單元、切換單元、緩存單元、解碼播放單元和比較單元,其中,業(yè)務號獲取單元用于在播放某一節(jié)目時,根據(jù)播放節(jié)目的業(yè)務號,從節(jié) 目指南中查找播放節(jié)目的相鄰節(jié)目的業(yè)務號,并將相鄰節(jié)目的業(yè)務號發(fā)送給 接收單元;接收單元用于根據(jù)相鄰節(jié)目的業(yè)務號打開其廣播通道,通過廣播通道接 收該節(jié)目的復用子幀,并將復用子幀的I幀發(fā)送給緩存單元進行緩存;還用 于在接收到業(yè)務號獲取單元發(fā)送的播放節(jié)目的相鄰節(jié)目的業(yè)務號后,根據(jù)播 放節(jié)目的相鄰節(jié)目的業(yè)務號關閉當前接收的,而其業(yè)務號未包含在新接收到 的業(yè)務號中的節(jié)目的廣^^通道,停止接收其復用子幀,打開新接收到的業(yè)務 號標識的節(jié)目的廣播通道,接收其復用子幀并將其I幀發(fā)送給緩存單元進行 緩存;緩存單元用于對接收到的接收單元發(fā)送的關^:幀進行緩存;切換單元用于接收用戶的切換指令,從緩存單元中提取相鄰節(jié)目的I幀, 發(fā)送給解碼播放單元進行解碼播放;比較單元用于當切換單元接收到用戶的切換命令后,從切換單元獲取要 切換節(jié)目的業(yè)務號,從業(yè)務號獲取單元獲取播放節(jié)目的相鄰節(jié)目的業(yè)務號, 使用要切換節(jié)目的業(yè)務號與相鄰節(jié)目的業(yè)務號進行比較,當要切換節(jié)目的業(yè) 務號與相鄰節(jié)目的業(yè)務號相同時,則向切換單元發(fā)送控制信息,通知切換單 元從緩存單元中提取關鍵幀,發(fā)送給解碼播放單元;同時向業(yè)務號獲取單元 發(fā)送控制信息通知業(yè)務號獲取單元獲取要切換節(jié)目的相鄰節(jié)目的業(yè)務號;解碼播放單元用于使用接收到的切換單元發(fā)送的關鍵幀構建圖像并播放。當然,本發(fā)明還可有其它實施例,在不背離本發(fā)明精神及其實質(zhì)的情況 下,熟悉本領域的普通技術人員當可根據(jù)本發(fā)明做出各種相應的改變和變 形,但這些相應的改變和變形都應屬于本發(fā)明所附的權利要求的保護范圍。
權利要求
1. 一種節(jié)目切換方法,其特征在于,包括如下步驟a接收一個或多個待切換節(jié)目的復用子幀,對其中包含的關鍵幀進行緩存;b當切換到所述待切換節(jié)目時,使用緩存的該節(jié)目的關鍵幀構建圖像并播放。
2、 如權利要求1所述的方法,其特征在于,所述待切換節(jié)目為當前播 放節(jié)目的相鄰節(jié)目。
3、 如權利要求2所述的方法,其特征在于,在步驟a中對所述關鍵幀 進行緩存時,根據(jù)復用子幀的視頻段的"圖像幀類型"字段,將該字段標識 為關鍵幀的視頻單元作為關鍵幀緩存。
4、 如權利要求3所述的方法,其特征在于,完成一個節(jié)目的關鍵幀的 緩存后,在接收到該節(jié)目的下一個關鍵幀時,使用后一關鍵幀覆蓋前一個保 存的關鍵幀。
5、 如權利要求4所述的方法,其特征在于,當用戶進行節(jié)目切換時, 使用要切換節(jié)目的業(yè)務號與相鄰節(jié)目的業(yè)務號進行比較,當要切換節(jié)目的業(yè) 務號與相鄰節(jié)目的業(yè)務號相同時,則表示用戶切換到當前播放節(jié)目的相鄰節(jié) 目,則使用緩存的相鄰節(jié)目的關鍵幀構建圖像并播放。
6、 如權利要求5所述的方法,其特征在于,所述相鄰節(jié)目包含左鄰節(jié) 目和右鄰節(jié)目,當用戶切換到右鄰節(jié)目時,關閉原左鄰節(jié)目的廣播通道,將 原播放節(jié)目作為左鄰節(jié)目,接收其復用子幀,緩存關鍵幀,從節(jié)目指南中查 找新的右鄰節(jié)目,打開其廣播通道,接收其復用子幀,緩沖關鍵幀;當用戶 切換到左鄰節(jié)目時,關閉原右鄰節(jié)目的廣播通道,將原播放節(jié)目作為右鄰節(jié) 目,接收其復用子幀,緩存關鍵幀,從節(jié)目指南中查找新的左鄰節(jié)目,打開 其廣播通道,接收其復用子幀,緩存關鍵幀。
7、 一種節(jié)目切換裝置,包括,解碼播;坎單元,其特征在于,該裝置還 包括,接收單元、緩存單元和切換單元,其中接收單元用于接收一個或多個待切換節(jié)目的復用子幀,將其中包含的關一建幀發(fā)送給緩存單元進行緩存;緩存單元用于對接收到的接收單元發(fā)送的關鍵幀進行緩存;切換單元用于接收用戶的切換指令,從緩存單元中提取關鍵幀,發(fā)送給 解碼播放單元;解碼播放單元用于使用接收到的切換單元發(fā)送的關鍵幀構建圖像并播放。
8、 如權利要求7所述的裝置,其特征在于,還包括業(yè)務號獲取單元, 所述業(yè)務號獲取單元用于獲取播放節(jié)目的業(yè)務號,從節(jié)目指南中查找播放節(jié) 目的相鄰節(jié)目的業(yè)務號,將相鄰節(jié)目的業(yè)務號發(fā)送給"t妄收單元。
9、 如權利要求8所述的裝置,其特征在于,還包括比較單元,所述比 較單元從切換單元獲取要切換節(jié)目的業(yè)務號,從業(yè)務號獲取單元獲取播放節(jié) 目的相鄰節(jié)目的業(yè)務號,將業(yè)務號進行比較,相同時,則通知切換單元從緩 存單元中提取關鍵幀,發(fā)送給解碼播放單元。
10、 如權利要求9所述的裝置,其特征在于,所述比較單元還用于通知 業(yè)務號獲取單元獲取要切換節(jié)目的相鄰節(jié)目的業(yè)務號,接收單元還用于在接 收到業(yè)務號獲取單元發(fā)送的要切換節(jié)目的相鄰節(jié)目的業(yè)務號后,關閉當前所 接收的其業(yè)務號未包含在新接收到的業(yè)務號中的節(jié)目的廣播通道,打開新接 收到的業(yè)務號標識的節(jié)目的廣播通道,接收其復用子幀,并將其關鍵幀發(fā)送 給緩存單元進行緩存。
全文摘要
本發(fā)明公開了一種節(jié)目切換方法,包括如下步驟a預先接收一個或多個待切換節(jié)目的復用子幀,對其中包含的關鍵幀進行緩存;b當切換到待切換節(jié)目時,使用緩存的該節(jié)目的關鍵幀構建圖像并播放。本發(fā)明通過預先緩存待切換節(jié)目的I幀,在切換到該節(jié)目時,解碼器迅速定位到該節(jié)目的I幀,構建出一幅完整的節(jié)目畫面并進行播放,從而減少了用戶換臺時的等待時間,實現(xiàn)了平滑換臺,并且可以只預先緩存當前播放節(jié)目的相鄰節(jié)目的一個最新的I幀,不對復用子幀中的音頻段和數(shù)據(jù)段進行處理,所以進行處理的系統(tǒng)開銷不大,內(nèi)存消耗也不大。
文檔編號H04H60/09GK101277450SQ20081009384
公開日2008年10月1日 申請日期2008年4月30日 優(yōu)先權日2008年4月30日
發(fā)明者輝 劉 申請人:中興通訊股份有限公司