專利名稱:一種節(jié)目排序方法和數(shù)字電視接收終端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電視技術(shù),尤其涉及一種節(jié)目排序方法和數(shù)字電視接收終端。
背景技術(shù):
隨著數(shù)字電視技術(shù)的發(fā)展,機(jī)頂盒所能接收的節(jié)目越來越多,通??蛇_(dá)幾百套,甚至上千套;因此,如何對這眾多的數(shù)字電視節(jié)目進(jìn)行排序,使其滿足用戶的實際需求就顯得
至關(guān)重要。在目前的數(shù)字電視技術(shù)中,機(jī)頂盒對節(jié)目的排序方式通常有兩種,其一是采用默認(rèn)的方式,即機(jī)頂盒在搜索節(jié)目結(jié)束后,根據(jù)搜索到的節(jié)目的先后順序?qū)?jié)目進(jìn)行排序,比如中央一套最先被搜索到,則將中央一套排第1位;另一是采用默認(rèn)加手動調(diào)節(jié)方式,即先將搜索到的節(jié)目按照默認(rèn)的方式進(jìn)行排序,然后用戶手動調(diào)節(jié)節(jié)目的排列位置,比如在默認(rèn)的排序時,中央一套排在第1位,中央五套排在第35位,用戶如果希望中央五套排在第1 位,則可以手動地將中央一套和中央五套的位置交換,使中央五套排在第1位。由上可知,基于目前的節(jié)目排序方式不能夠很好地滿足用戶的實際需求,因為對用戶而言,其收看的節(jié)目通常會固定在8至15套之間,用戶會希望這8至15套的節(jié)目的排列位置相對靠前,且比較集中;如果采用默認(rèn)排序方式,顯然不能夠?qū)@8至15套的節(jié)目排列位置按照用戶的要求進(jìn)行控制;如果采用默認(rèn)加手動調(diào)節(jié)的方式,用戶需要在默認(rèn)排序的基礎(chǔ)上,依次對這8至15套節(jié)目的排列位置進(jìn)行調(diào)整,使其相對靠前和集中,但這將增加用戶的操作量,尤其是在節(jié)目數(shù)量較多時(上百套),用戶需要依次尋找這8至15套節(jié)目,并分別將它們調(diào)整到期望的位置上,同時此種方式的節(jié)目排列速度也很慢。因此,如何對現(xiàn)有中的節(jié)目排序方式進(jìn)行改進(jìn),使其能夠快速地實現(xiàn)節(jié)目排序,滿足不同用戶靈活多變的要求,一直是困擾本領(lǐng)域技術(shù)人員的技術(shù)難題。
發(fā)明內(nèi)容
本發(fā)明實施例所要解決的技術(shù)問題在于,提供一種節(jié)目排序方法和數(shù)字電視接收終端,可以在滿足用戶對節(jié)目排序要求的基礎(chǔ)上,自動地、快速地實現(xiàn)節(jié)目的排序。為了解決上述技術(shù)問題,本發(fā)明實施例提供了一種節(jié)目排序方法,包括 獲取節(jié)目信息;
判斷所述獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄; 如果判斷結(jié)果為是,則獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。其中,還包括
如果判斷結(jié)果為否,則將所述節(jié)目信息對應(yīng)的節(jié)目排在所述判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后。其中,所述判斷所述獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄,包括提取所述預(yù)存的排序文件中記錄的節(jié)目信息;
將所述獲取的節(jié)目信息與所述提取的預(yù)存的排序文件中記錄的節(jié)目信息進(jìn)行比對; 根據(jù)比對結(jié)果,判斷所述獲取的節(jié)目信息是否在所述排序文件中有相應(yīng)的記錄。其中,在提取所述預(yù)存的排序文件中記錄的節(jié)目信息同時,還對提取的節(jié)目信息進(jìn)行校驗;在校驗通過后,才執(zhí)行將所述獲取的節(jié)目信息與所述提取的預(yù)存的排序文件中記錄的節(jié)目信息進(jìn)行比對的步驟。其中,所述獲取節(jié)目信息之前,還包括更新預(yù)存的排序文件。其中,所述更新預(yù)存的排序文件,包括
判斷連接的外部存儲設(shè)備中的更新文件是否滿足更新條件; 如果滿足,則采用所述更新文件對所述排序文件進(jìn)行更新。相應(yīng)地,本發(fā)明實施例還提供了一種數(shù)字電視接收終端,包括 獲取模塊,用于獲取節(jié)目信息;
判斷模塊,用于判斷所述獲取模塊獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄;
第一排序模塊,用于當(dāng)判斷模塊的判斷結(jié)果為是時,獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。其中,還包括
第二排序模塊,用于當(dāng)判斷模塊的判斷結(jié)果為否時,將所述節(jié)目信息對應(yīng)的節(jié)目排在判斷模塊的判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后。其中,所述判斷模塊,包括
提取單元,用于提取所述預(yù)存的排序文件中記錄的節(jié)目信息; 比對單元,用于將獲取模塊獲取的節(jié)目信息與所述提取單元提取的排序文件中記錄的節(jié)目信息進(jìn)行比對;
第一判斷單元,用于根據(jù)所述比對單元的比對結(jié)果,判斷獲取模塊獲取的節(jié)目信息是否在所述排序文件中有相應(yīng)的記錄。其中,所述提取單元,還用于在提取所述預(yù)存的排序文件中記錄的節(jié)目信息同時, 對提取的節(jié)目信息進(jìn)行校驗;
所述比對單元,用于在所述提取單元對提取出來的節(jié)目信息校驗通過后,將獲取模塊獲取的節(jié)目信息與所述提取單元提取的排序文件中記錄的節(jié)目信息進(jìn)行比對。其中還包括更新模塊,用于更新預(yù)存的排序文件。其中,所述更新模塊包括
第二判斷單元,用于判斷連接的外部存儲設(shè)備中的更新文件是否滿足更新條件; 更新單元,用于在所述判斷單元的判斷結(jié)果為是時,采用所述更新文件對所述排序文件進(jìn)行更新。實施本發(fā)明實施例,具有如下有益效果
本發(fā)明實施例判斷獲取的節(jié)目信息是否在排序文件中有相應(yīng)記錄;如果有,則獲取所述節(jié)目信息在排序文件中對應(yīng)的節(jié)目序號,并根據(jù)節(jié)目序號對節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。由于本發(fā)明實施例根據(jù)排序文件記錄的節(jié)目序號,對在排序文件中有記錄的節(jié)目信息進(jìn)行排序;所以可以根據(jù)排序文件,自動地、快速地實現(xiàn)節(jié)目的排序,同時排序文件可以提供給用戶編輯,使排序文件中記錄的節(jié)目序號滿足不同用戶之間靈活多變的節(jié)目排序要求。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明的節(jié)目排序方法的第一實施例的流程示意圖; 圖2是圖1中的步驟S12的實施例的流程示意圖3是本發(fā)明的節(jié)目排序方法的第二實施例的流程示意圖4是本發(fā)明的節(jié)目排序方法的第三實施例的流程示意圖5是圖4中步驟SlO的實施例的流程示意圖6是本發(fā)明的數(shù)字電視接收終端的第一實施例的結(jié)構(gòu)示意圖7是本發(fā)明的數(shù)字電視接收終端中的判斷模塊的實施例的結(jié)構(gòu)示意圖8是本發(fā)明的數(shù)字電視接收終端的第二實施例的結(jié)構(gòu)示圖9是本發(fā)明的數(shù)字電視接收終端的第三實施例的結(jié)構(gòu)示意圖10是本發(fā)明的數(shù)字電視接收終端中的更新模塊的實施例的結(jié)構(gòu)示意圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。請參考圖1,是本發(fā)明的節(jié)目排序方法的第一實施例的流程示意圖,所述排序方法包括
步驟S11,獲取節(jié)目信息。其中,節(jié)目信息與節(jié)目一一對應(yīng),通常一個節(jié)目信息包括網(wǎng)絡(luò)標(biāo)識net_id、傳輸流標(biāo)識ts_id、節(jié)目號service _id和節(jié)目類型servicejype (電視或廣播)。節(jié)目信息的獲取可以在搜索節(jié)目的過程中獲取,在搜索節(jié)目的過程中,每搜索到一個節(jié)目,即將該節(jié)目對應(yīng)的節(jié)目信息存儲到本地數(shù)據(jù)庫中;當(dāng)需要播放節(jié)目時,從本地數(shù)據(jù)庫中獲取相應(yīng)的節(jié)目信息,進(jìn)行鎖頻播放。步驟S12,判斷步驟Sll獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄。其中,排序文件由廠商或用戶預(yù)先存儲在FLASH (閃存)中,其記錄了 節(jié)目信息和節(jié)目序號,節(jié)目信息與節(jié)目序號一一對應(yīng);此處,節(jié)目序號可以為每個節(jié)目信息對應(yīng)節(jié)目的頻道號,比如將中央一套的節(jié)目序號設(shè)置為5,則中央一套將會排在第5頻道;或者,排序文件中記錄了 節(jié)目信息、節(jié)目排序起始位置和序號,節(jié)目信息與序號一一對應(yīng),節(jié)目排序起始位置加上節(jié)目信息對應(yīng)的序號為節(jié)目最終排序的序號,比如節(jié)目起始位置為10,中央一套的序號為5,則中央一套的節(jié)目序號為15,其將被排在第15頻道??梢岳斫獾氖?,排序文件在FLASH中的存儲空間可以由廠商在出廠前,預(yù)先規(guī)劃固定大小的存儲空間;排序文件可以具有更新機(jī)制,通過更新使用戶可以隨時調(diào)整節(jié)目的排序關(guān)系。步驟S13,如果判斷結(jié)果為是,則獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。本實施例由于通過排序文件對節(jié)目進(jìn)行排序,所以能夠自動、快速地實現(xiàn)節(jié)目的排序;又由于排序文件中的節(jié)目序號可以根據(jù)用戶的需求設(shè)定,所以能夠滿足不同用戶對節(jié)目排序的要求。請參考圖2,是圖1中的步驟S12的實施例的流程示意圖,所述步驟S12包括 步驟S21,提取所述預(yù)存的排序文件中記錄的節(jié)目信息。進(jìn)一步地,在提取預(yù)存的排序文件中的節(jié)目信息時,還對提取的節(jié)目信息進(jìn)行校驗,比如采用CRC (Cyclic Redundancy Check,循環(huán)冗余校驗碼)校驗,并在校驗通過后,執(zhí)行步驟S22 ;否則,結(jié)束處理流程。對節(jié)目信息進(jìn)行校驗,可以保證提取的節(jié)目信息正確。步驟S22,將步驟Sll獲取的節(jié)目信息與步驟S21提取的排序文件中記錄的節(jié)目信息進(jìn)行比對。其中,步驟S22可以將步驟Sll獲取的每個節(jié)目信息依次與步驟S21提取的排序文件中記錄的所有節(jié)目信息進(jìn)行比對,以此查找出在排序文件中有記錄的節(jié)目信息。步驟S23,根據(jù)步驟S22的比對結(jié)果,判斷所述獲取的節(jié)目信息是否在所述排序文件中有相應(yīng)的記錄。本實施例,通過步驟S21-步驟S23能夠準(zhǔn)確地判斷出步驟Sll獲取的節(jié)目信息中,哪些在排序文件中有記錄,哪些在排序文件中沒有記錄,從而為后續(xù)的節(jié)目排序流程, 提供依據(jù)。請參考圖3,是本發(fā)明的節(jié)目排序方法的第二實施例的流程示意圖,本實施例的節(jié)目排序方法,與圖1中所示的排序方法相比,其區(qū)別點在于,還包括
步驟S14,如果判斷結(jié)果為否,則將所述節(jié)目信息對應(yīng)的節(jié)目排在所述判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后。其中,步驟S14的實現(xiàn)方式可以是當(dāng)判斷結(jié)果為否時,即節(jié)目信息在排序文件中沒有記錄,則向節(jié)目信息對應(yīng)的節(jié)目分配比任何一個判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目序號均大的節(jié)目序號;或者,對判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序后,形成排序隊列,將判斷結(jié)果為否的節(jié)目信息對應(yīng)的節(jié)目添加到所述排序隊列的隊尾。本實施例,對于那些在排序文件中沒有相應(yīng)記錄的節(jié)目信息對應(yīng)的節(jié)目的排序提供了一種可行的方案。將判斷結(jié)果為否的節(jié)目信息對應(yīng)的節(jié)目排列在判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后,方便用戶了解哪些節(jié)目信息沒有在排序文件中記錄(通常沒有記錄的節(jié)目信息對應(yīng)的節(jié)目是新增的節(jié)目),并根據(jù)實際需要,確定是否有必要將其添加到排序文件中。請參考圖4,是本發(fā)明的節(jié)目排序方法的第三實施例的流程示意圖,所述節(jié)目排序方法與圖1所示實施例相比,其區(qū)別點在于,在步驟Sll之前還包括
步驟S10,更新預(yù)存的排序文件。具體地,請參考圖5,是圖4中步驟SlO的實施例的流程示意圖,所述步驟SlO包括步驟S51,判斷連接的外部存儲設(shè)備中的更新文件是否滿足更新條件。更新條件包括更新文件的數(shù)據(jù)量不超過本地為排序文件規(guī)劃的最大存儲容量、 更新文件的版本比排序文件的版本高和更新文件中的節(jié)目排序起始位置加上現(xiàn)存的節(jié)目總數(shù)不超過允許接收的節(jié)目個數(shù)中的任一項或多項。在判斷更新文件是否滿足更新條件前,需要對更新文件進(jìn)行解析,以獲得判斷所需的信息。其中,解析包括查找更新文件的數(shù)據(jù)頭,數(shù)據(jù)頭是更新文件開始的標(biāo)志,其中包括了判斷更新文件是否滿足更新條件所需的信息;在查找數(shù)據(jù)頭時,對更新文件從頭至尾進(jìn)行查找,以保證不會遺漏;查找到數(shù)據(jù)頭后,從數(shù)據(jù)頭中獲取數(shù)據(jù)頭中記錄的更新文件的大小(即更新文件數(shù)據(jù)量)、節(jié)目排序的起始位置,以及更新文件的版本信息(以版本號或日期表示),等等。從數(shù)據(jù)頭中獲取到判斷是否滿足更新條件的信息后,進(jìn)行具體的判斷。在一種實施方式,具體的判斷方式包括首先判斷更新文件的大小是否超過了為排序文件規(guī)劃的最大存儲容量,如果超過,則拒絕進(jìn)行更新,防止FLASH溢出;如果沒有,則執(zhí)行判斷更新文件的版本是否高于排序文件的版本,判斷版本的高低可以通過版本號或版本日期等方式實現(xiàn),只有比排序文件的版本高的更新文件才能夠用于更新排序文件;當(dāng)更新文件版本高于排序文件的版本時,還判斷更新文件中的排序起始位置加上現(xiàn)存的節(jié)目總數(shù)不超過允許接收的節(jié)目個數(shù)。需要說明的是,在判斷是否滿足更新條件前,還需要對預(yù)存的排序文件中的數(shù)據(jù)進(jìn)行校驗,如果校驗失敗,則說明預(yù)存的排序文件中數(shù)據(jù)有錯誤,將排序文件中的版本號或日期置為0。還需要說明的是,對于更新文件不滿足更新文件中的節(jié)目排序起始位置加上現(xiàn)存的節(jié)目總數(shù)不超過允許接收的節(jié)目個數(shù)這一條件時,可以將更新文件中的節(jié)目排序起始位置設(shè)置為默認(rèn)值0或1或其它滿足條件的數(shù)值,以達(dá)到該更新條件。步驟S52,如果滿足,則采用所述更新文件對所述排序文件進(jìn)行更新。具體地,當(dāng)步驟S51的判斷結(jié)果為是滿足更新條件時,則采用更新文件覆蓋所述排序文件,同時寫入校驗值,方便后續(xù)對新的排序文件的校驗。進(jìn)一步地,本發(fā)明實施例對步驟S51-S52的執(zhí)行可以包括兩種觸發(fā)機(jī)制其一是處于開機(jī)狀態(tài)時,自動檢測是否連接外部存儲設(shè)備,或者接收到用戶的更新命令時,檢測是否有連接外部存儲設(shè)備;如果有,則查找外部存儲設(shè)備中是否存在更新文件,如果存在,則執(zhí)行本實施例的步驟;并且在更新成功后,提示用戶更新成功;另一是處于待機(jī)狀態(tài)時,自動檢測是否連接外部存儲設(shè)備,如果有,則查找外部存儲設(shè)備中是否存在更新文件,如果存在,則執(zhí)行本實施例的步驟;同時,執(zhí)行本實施成功后,設(shè)置更新標(biāo)志設(shè)置為1,當(dāng)由待機(jī)狀態(tài)變?yōu)殚_機(jī)狀態(tài)時,如果檢測到更新標(biāo)志為1,則提示用戶是否重新對節(jié)目進(jìn)行排序,如果檢測到用戶選擇是,則根據(jù)更新后的排序文件中對節(jié)目進(jìn)行重新排序,并將更新標(biāo)志位置為0 ;如果檢測到用戶選擇否,則按照現(xiàn)有的排序顯示節(jié)目,并在下次處于開機(jī)狀態(tài)時,提示用戶是否重新對節(jié)目進(jìn)行排序,直至更新標(biāo)志位置為0。需要說明的是,當(dāng)處于待機(jī)狀態(tài)時,對排序文件更新成功后,還要設(shè)置待機(jī)更新標(biāo)志置為1,當(dāng)檢測到待機(jī)更新標(biāo)志為1時, 即不會重復(fù)地對排序文件進(jìn)行更新。本實施例可以與外部存儲設(shè)備(比如移動硬盤)通過USB、無線保真、藍(lán)牙等技術(shù)相連接,實現(xiàn)通過簡單的方式,快速地對排序文件的更新。以上結(jié)合附圖1至5對本發(fā)明實施例的節(jié)目排序方法進(jìn)行了詳細(xì)闡述,下面繼續(xù)結(jié)合附圖6至10對本發(fā)明實施例的數(shù)字電視接收終端進(jìn)行說明,其中,所述數(shù)字電視接收終端可以包括機(jī)頂盒、數(shù)字電視一體機(jī)和手機(jī)電視,等等,且所述數(shù)字電視接收終端可以用于執(zhí)行上述的節(jié)目排序方法。請參考圖6,是本發(fā)明的數(shù)字電視接收終端的第一實施例的流程示意圖,所述數(shù)字電視接收終端6包括
獲取模塊61,用于獲取節(jié)目信息。其中,節(jié)目信息與節(jié)目一一對應(yīng),通常一個節(jié)目信息包括網(wǎng)絡(luò)標(biāo)識net_id、傳輸流標(biāo)識ts_id、節(jié)目號service _id和節(jié)目類型servicejype (電視或廣播)。節(jié)目信息的獲取可以在搜索節(jié)目的過程中獲取,在搜索節(jié)目的過程中,每搜索到一個節(jié)目,即將該節(jié)目對應(yīng)的節(jié)目信息存儲到本地數(shù)據(jù)庫中;當(dāng)需要播放節(jié)目時,從本地數(shù)據(jù)庫中獲取相應(yīng)的節(jié)目信息,進(jìn)行鎖頻播放。判斷模塊62,用于判斷獲取模塊61獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄。其中,排序文件由廠商或用戶預(yù)先存儲在FLASH (閃存)中,其記錄了 節(jié)目信息和節(jié)目序號,節(jié)目信息與節(jié)目序號一一對應(yīng);此處,節(jié)目序號可以為每個節(jié)目信息對應(yīng)節(jié)目的頻道號,比如將中央一套的節(jié)目序號設(shè)置為5,則中央一套將會排在第5頻道;或者,排序文件中記錄了 節(jié)目信息、節(jié)目排序起始位置和序號,節(jié)目信息與序號一一對應(yīng),節(jié)目排序起始位置加上節(jié)目信息對應(yīng)的序號為節(jié)目是終排序的序號,比如節(jié)目起始位置為10,中央一套的序號為5,則中央一套的節(jié)目序號為15,其將被排在第15頻道??梢岳斫獾氖?,排序文件在FLASH中的存儲空間可以由廠商在出廠前,預(yù)先規(guī)劃;排序文件可以具有更新機(jī)制,通過更新使用戶隨時調(diào)整節(jié)目的排序關(guān)系。第一排序模塊63,用于當(dāng)判斷模塊62的判斷結(jié)果為是時,獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序??梢岳斫獾氖?,根據(jù)節(jié)目序號對節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序可以在節(jié)目搜索結(jié)束時。本實施例由于通過排序文件對節(jié)目進(jìn)行排序,所以能夠自動、快速地實現(xiàn)節(jié)目的排序;又由于排序文件中的節(jié)目序號可以根據(jù)用戶的需求設(shè)定,所以能夠滿足不同用戶對節(jié)目排序的要求。請參考圖7,是圖6中的判斷模塊的實施例的結(jié)構(gòu)示意圖,所述判斷模塊62包括 提取單元622,用于提取所述排序文件中記錄的節(jié)目信息。進(jìn)一步地,提取單元622在解析排序文件的同時,還對提取的數(shù)據(jù)進(jìn)行校驗,比如采用CRC (Cyclic Redundancy Check,循環(huán)冗余校驗碼)校驗,并在校驗通過后,執(zhí)行比對單元623 ;否則,不執(zhí)行;通過校驗的方式可以保證提取單元622獲取的節(jié)目信息的正確性。比對單元623,用于將獲取模塊61獲取的節(jié)目信息與提取單元622提取的排序文件中記錄的節(jié)目信息進(jìn)行比對。其中,比對單元623可以將獲取模塊61獲取的每個節(jié)目信息依次與排序文件中記錄的節(jié)目信息進(jìn)行比對,以此查找出在排序文件中有記錄的節(jié)目信息。第一判斷單元624,用于根據(jù)比對單元623的比對結(jié)果,判斷所述獲取的節(jié)目信息是否在所述排序文件中有相應(yīng)的記錄。本實施例,能夠準(zhǔn)確地判斷出獲取模塊61獲取的節(jié)目信息中,哪些在排序文件中有記錄,哪些在排序文件中沒有記錄,從而為后續(xù)的節(jié)目排序流程,提供依據(jù)。請參考圖8,是本發(fā)明的數(shù)字電視接收終端的第二實施例的結(jié)構(gòu)示意圖,本實施例的數(shù)字電視接收終端6,與圖6中所示的數(shù)字電視接收終端6相比,其區(qū)別點在于,還包括
第二排序模塊64,用于當(dāng)判斷模塊62的判斷結(jié)果為否時,將所述節(jié)目信息對應(yīng)的節(jié)目排在所述判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后。其中,第二排序模塊64的工作過程可以包括當(dāng)判斷模塊62的判斷結(jié)果為否時, 向節(jié)目信息對應(yīng)的節(jié)目分配比任何一個判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目序號均大的節(jié)目序號;或者,第一排序模塊63對判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序后,形成排序隊列,第二排序模塊64將判斷結(jié)果為否的節(jié)目信息對應(yīng)的節(jié)目添加到所述排序隊列的隊尾。本實施例,對于那些在排序文件中沒有相應(yīng)記錄的節(jié)目信息對應(yīng)的節(jié)目的排序提供了一種可行的方案。將判斷結(jié)果為否的節(jié)目信息對應(yīng)的節(jié)目排列在判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后,方便用戶了解哪些節(jié)目信息沒有在排序文件中記錄(通常沒有記錄的節(jié)目信息對應(yīng)的節(jié)目是新增的節(jié)目),并根據(jù)實際需要,確定是否有必要將其添加到排序文件中。請參考圖9,是本發(fā)明的數(shù)字電視接收終端的第三實施例的結(jié)構(gòu)示意圖,所述數(shù)字電視接收終端6與圖1所示的數(shù)字電視接收終端6相比,其區(qū)別點在于,還包括
更新模塊60,用于更新預(yù)存的排序文件。具體地,請參考圖10,是圖9中更新模塊的實施例的結(jié)構(gòu)示意圖,所述更新模塊60 包括
第二判斷單元601,用于判斷連接的外部存儲設(shè)備中的更新文件是否滿足更新條件。其中,更新條件包括更新文件的數(shù)據(jù)量不超過本地為排序文件規(guī)劃的最大存儲容量、更新文件的版本比排序文件的版本高和更新文件中的節(jié)目排序起始位置加上現(xiàn)存的節(jié)目總數(shù)不超過允許接收的節(jié)目個數(shù)中的任一項或多項。在判斷更新文件是否滿足更新條件前,需要對更新文件進(jìn)行解析,以獲得判斷所需的信息。其中,解析包括查找更新文件的數(shù)據(jù)頭,數(shù)據(jù)頭是更新文件開始的標(biāo)志,其中包括了判斷更新文件是否滿足更新條件所需的信息;在查找數(shù)據(jù)頭時,對更新文件從頭至尾進(jìn)行查找,以保證不會遺漏;查找到數(shù)據(jù)頭后,從數(shù)據(jù)頭中獲取數(shù)據(jù)頭中記錄的更新文件的大小(即更新文件數(shù)據(jù)量)、節(jié)目排序的起始位置,以及更新文件的版本信息(以版本號或日期表示),等等。從數(shù)據(jù)頭中獲取到判斷是否滿足更新條件的信息后,進(jìn)行具體的判斷。在一種實施方式,具體的判斷方式包括首先判斷更新文件的大小是否超過了為排序文件規(guī)劃的最大存儲容量,如果超過,則拒絕進(jìn)行更新,防止FLASH溢出;如果沒有,則執(zhí)行判斷更新文件的版本是否高于排序文件的版本,判斷版本的高低可以通過版本號或版本日期等方式實現(xiàn),只有比排序文件的版本高的更新文件才能夠用于更新排序文件;當(dāng)更新文件版本高于排序文件的版本時,還判斷更新文件中的排序起始位置加上現(xiàn)存的節(jié)目總數(shù)不超過允許接收的節(jié)目個數(shù)。需要說明的是,在判斷是否滿足更新條件前,還需要對預(yù)存的排序文件中的數(shù)據(jù)進(jìn)行校驗,如果校驗失敗,則說明預(yù)存的排序文件中數(shù)據(jù)有錯誤,將排序文件中的版本號或日期置為0。還需要說明的是,對于更新文件不滿足更新文件中的節(jié)目排序起始位置加上現(xiàn)存的節(jié)目總數(shù)不超過允許接收的節(jié)目個數(shù)這一條件時,可以將更新文件中的節(jié)目排序起始位置設(shè)置為默認(rèn)值0或1或其它滿足條件的數(shù)值,以達(dá)到該更新條件。更新單元602,用于當(dāng)判斷單元601的判斷結(jié)果為是時,采用所述更新文件對所述排序文件進(jìn)行更新。其中,更新單元602采用更新文件對所述排序文件進(jìn)行更新包括采用更新文件覆蓋所述排序文件,并同時寫入校驗值,方便后續(xù)對新的排序文件的校驗。進(jìn)一步地,本實施例對排序文件的更新的執(zhí)行可以包括兩種觸發(fā)機(jī)制其一是處于開機(jī)狀態(tài)時,自動檢測是否連接外部存儲設(shè)備,或者接收到用戶的更新命令時,檢測是否有連接外部存儲設(shè)備;如果有,則查找外部存儲設(shè)備中是否存在更新文件,如果存在,則執(zhí)行本實施例的步驟;并且在更新成功后,提示用戶更新成功;另一是處于待機(jī)狀態(tài)時,自動檢測是否連接外部存儲設(shè)備,如果有,則查找外部存儲設(shè)備中是否存在更新文件,如果存在,則執(zhí)行本實施例的步驟;同時,執(zhí)行本實施成功后,設(shè)置更新標(biāo)志設(shè)置為1,當(dāng)由待機(jī)狀態(tài)變?yōu)殚_機(jī)狀態(tài)時,如果檢測到更新標(biāo)志為1,則提示用戶是否重新對節(jié)目進(jìn)行排序,如果檢測到用戶選擇是,則根據(jù)更新后的排序文件中對節(jié)目進(jìn)行重新排序,并將更新標(biāo)志位置為0 ;如果檢測到用戶選擇否,則按照現(xiàn)有的排序顯示節(jié)目,并在下次處于開機(jī)狀態(tài)時,提示用戶是否重新對節(jié)目進(jìn)行排序,直至更新標(biāo)志位置為0。需要說明的是,當(dāng)處于待機(jī)狀態(tài)時,對排序文件更新成功后,還要設(shè)置待機(jī)更新標(biāo)志置為1,當(dāng)檢測到待機(jī)更新標(biāo)志為1時, 即不會重復(fù)地對排序文件進(jìn)行更新。本實施例可以與外部存儲設(shè)備(比如移動硬盤)通過USB、無線保真、藍(lán)牙等技術(shù)相連接,實現(xiàn)通過簡單的方式,快速地對排序文件的更新。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機(jī)可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機(jī)存儲記憶體(Random Access Memory, RAM)等。以上所揭露的僅為本發(fā)明一種較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分流程,并依本發(fā)明權(quán)利要求所作的等同變化,仍屬于發(fā)明所涵蓋的范圍。
權(quán)利要求
1.一種節(jié)目排序方法,其特征在于,包括獲取節(jié)目信息;判斷所述獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄;如果判斷結(jié)果為是,則獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。
2.如權(quán)利要求1所述的方法,其特征在于,還包括如果判斷結(jié)果為否,則將所述節(jié)目信息對應(yīng)的節(jié)目排在所述判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后。
3.如權(quán)利要求1所述的方法,其特征在于,所述判斷所述獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄,包括提取所述預(yù)存的排序文件中記錄的節(jié)目信息;將所述獲取的節(jié)目信息與所述提取的預(yù)存的排序文件中記錄的節(jié)目信息進(jìn)行比對;根據(jù)比對結(jié)果,判斷所述獲取的節(jié)目信息是否在所述排序文件中有相應(yīng)的記錄。
4.如權(quán)利要求3所述的方法,其特征在于,在提取所述預(yù)存的排序文件中記錄的節(jié)目信息同時,還對提取的節(jié)目信息進(jìn)行校驗;在校驗通過后,才執(zhí)行將所述獲取的節(jié)目信息與所述提取的預(yù)存的排序文件中記錄的節(jié)目信息進(jìn)行比對的步驟。
5.如權(quán)利要求1至4中任一項所述的方法,其特征在于,所述獲取節(jié)目信息之前,還包括更新預(yù)存的排序文件。
6.如權(quán)利要求5所述的方法,其特征在于,所述更新預(yù)存的排序文件,包括判斷連接的外部存儲設(shè)備中的更新文件是否滿足更新條件;如果滿足,則采用所述更新文件對所述排序文件進(jìn)行更新。
7.一種數(shù)字電視接收終端,其特征在于,包括獲取模塊,用于獲取節(jié)目信息;判斷模塊,用于判斷所述獲取模塊獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄;第一排序模塊,用于當(dāng)判斷模塊的判斷結(jié)果為是時,獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。
8.如權(quán)利要求7所述的數(shù)字電視接收終端,其特征在于,還包括第二排序模塊,用于當(dāng)判斷模塊的判斷結(jié)果為否時,將所述節(jié)目信息對應(yīng)的節(jié)目排在判斷模塊的判斷結(jié)果為是的節(jié)目信息對應(yīng)的節(jié)目之后。
9.如權(quán)利要求7所述的數(shù)字電視接收終端,其特征在于,所述判斷模塊,包括提取單元,用于提取所述預(yù)存的排序文件中記錄的節(jié)目信息;比對單元,用于將獲取模塊獲取的節(jié)目信息與所述提取單元提取的排序文件中記錄的節(jié)目信息進(jìn)行比對;第一判斷單元,用于根據(jù)所述比對單元的比對結(jié)果,判斷獲取模塊獲取的節(jié)目信息是否在所述排序文件中有相應(yīng)的記錄。
10.如權(quán)利要求9所述的數(shù)字電視接收終端,其特征在于,所述提取單元,還用于在提取所述預(yù)存的排序文件中記錄的節(jié)目信息同時,對提取的節(jié)目信息進(jìn)行校驗;所述比對單元,用于在所述提取單元對提取出來的節(jié)目信息校驗通過后,將獲取模塊獲取的節(jié)目信息與所述提取單元提取的排序文件中記錄的節(jié)目信息進(jìn)行比對。
11.如權(quán)利要求7至10中任一項所述的數(shù)字電視接收終端,其特征在于,還包括更新模塊,用于更新預(yù)存的排序文件。
12.如權(quán)利要求11所述的數(shù)字電視接收終端,其特征在于,所述更新模塊包括 第二判斷單元,用于判斷連接的外部存儲設(shè)備中的更新文件是否滿足更新條件;更新單元,用于在所述判斷單元的判斷結(jié)果為是時,采用所述更新文件對所述排序文件進(jìn)行更新。
全文摘要
本發(fā)明實施例公開了一種節(jié)目排序方法,包括獲取節(jié)目信息;判斷所述獲取的節(jié)目信息是否在預(yù)存的排序文件中有相應(yīng)的記錄;如果判斷結(jié)果為是,則獲取所述節(jié)目信息在所述排序文件中對應(yīng)的節(jié)目序號,并根據(jù)所述節(jié)目序號對所述節(jié)目信息對應(yīng)的節(jié)目進(jìn)行排序。本發(fā)明實施例還公開了一種數(shù)字電視接收終端。采用本發(fā)明,可以實現(xiàn)自動地、快速地對節(jié)目進(jìn)行排序,并滿足用戶的實際需求。
文檔編號H04N21/431GK102378052SQ20111029582
公開日2012年3月14日 申請日期2011年10月8日 優(yōu)先權(quán)日2011年10月8日
發(fā)明者耿宜國 申請人:深圳創(chuàng)維數(shù)字技術(shù)股份有限公司