網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,包括:服務(wù)器端提取并存儲互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息;服務(wù)器端利用視頻信息中的視頻源網(wǎng)頁地址,獲取視頻源網(wǎng)頁源數(shù)據(jù),從而提取視頻源真實(shí)地址并存儲;服務(wù)器端根據(jù)電視節(jié)目預(yù)告網(wǎng)站網(wǎng)頁數(shù)據(jù)編排,提取節(jié)目預(yù)告信息并進(jìn)行存儲;移動(dòng)終端作為客戶端通過網(wǎng)絡(luò)視頻提取信息進(jìn)行在線查詢獲得視頻信息,以進(jìn)行在線播放,通過節(jié)目預(yù)告信息進(jìn)行在線查詢并遙控電視機(jī)進(jìn)行電視節(jié)目播放。本發(fā)明還公開了一種在線查詢和播放控制系統(tǒng)。本發(fā)明通過對網(wǎng)絡(luò)上的各類視頻源信息或者廣播電視網(wǎng)提供的電視節(jié)目信息進(jìn)行提取,從而可以實(shí)現(xiàn)網(wǎng)絡(luò)視頻和電視節(jié)目的實(shí)時(shí)在線查詢,以及播放控制等問題。
【專利說明】網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)應(yīng)用【技術(shù)領(lǐng)域】,具體涉及一種網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放的控制方法及系統(tǒng),通過移動(dòng)終端實(shí)現(xiàn)互聯(lián)網(wǎng)視頻在線查詢和播放、電視節(jié)目信息的查詢并遙控電視播放。
【背景技術(shù)】
[0002]近年來,隨著多媒體和網(wǎng)絡(luò)技術(shù)的快速發(fā)展,互聯(lián)網(wǎng)已經(jīng)逐漸成為人們生活中不可或缺的一部分。而伴隨著三網(wǎng)融合進(jìn)程的推進(jìn),互聯(lián)網(wǎng)與電視資源的融合也是勢在必行?;ヂ?lián)網(wǎng)視頻數(shù)據(jù)的生成、處理和獲取變得越來越方便,視頻數(shù)據(jù)量呈現(xiàn)出爆炸性的增長。與視頻數(shù)據(jù)量的快速增長相反的,人們生活和工作的節(jié)奏越來越快,真正用于觀看電視節(jié)目和網(wǎng)絡(luò)視頻的時(shí)間越來越少,面對大量的電視頻道和海量的互聯(lián)網(wǎng)的視頻內(nèi)容,用戶往往無所適從。
[0003]隨著寬帶無線接入技術(shù)和移動(dòng)終端技術(shù)的飛速發(fā)展,人們迫切希望能夠隨時(shí)隨地乃至在移動(dòng)過程中都能方便地從互聯(lián)網(wǎng)獲取信息和服務(wù),然而現(xiàn)階段基于移動(dòng)終端的網(wǎng)絡(luò)視頻信息以及電視節(jié)目信息的獲取還不夠完善,不夠人性化。例如就移動(dòng)終端的互聯(lián)網(wǎng)視頻獲取而言,采取的往往還是通過視頻網(wǎng)站的網(wǎng)頁播放形式,由于各視頻網(wǎng)站為防止視頻下載,對視頻的真實(shí)地址均會進(jìn)行加密,視頻的真實(shí)地址解密規(guī)則內(nèi)嵌在網(wǎng)站的flash播放器中,因此播放不同視頻時(shí),需要調(diào)用不同網(wǎng)站的播放器,顯然用戶的體驗(yàn)不好。而且這種基于網(wǎng)頁的視頻播放形式,在用戶搜索視頻資源時(shí),會收到很多冗余的不必要的頁面信息,此時(shí)如何在移動(dòng)終端上有效、方便地獲取精確的網(wǎng)絡(luò)視頻則成為人們越來越關(guān)心的問題了。同樣在電視節(jié)目信息獲取方面,還有很多不足之處。雖然廣播電視網(wǎng)能提供電視節(jié)目的直播,但是對電視節(jié)目的信息卻提供的很少,用戶如果想查看各個(gè)電視臺播放的節(jié)目信息,則需要查看各個(gè)電視臺的網(wǎng)站,并且很多電視臺網(wǎng)站僅僅提供了電視節(jié)目名稱,對電視節(jié)目的內(nèi)容介紹的很少,這也給用戶在安排電視節(jié)目的觀看方面增加了困難。所以在電視節(jié)目信息獲取這個(gè)方面,缺少一個(gè)統(tǒng)一的搜索平臺,用于將各電視臺的節(jié)目信息進(jìn)行整合,為用戶提供節(jié)目信息的在線查詢,如節(jié)目關(guān)鍵字查詢,節(jié)目預(yù)告,當(dāng)前播放節(jié)目等等。
[0004]另一方面,隨著計(jì)算機(jī)、控制和通信技術(shù)的發(fā)展,家庭自動(dòng)化在過去的幾十年中獲得了巨大的發(fā)展。隨著生活水平的不斷提高,人們對家庭自動(dòng)化提出了更高的需求。在家庭自動(dòng)化系統(tǒng)中,遙控設(shè)備則扮演著至關(guān)重要的角色,越來越多的帶有紅外遙控功能的電氣設(shè)備進(jìn)入家庭及各種辦公、娛樂場所。遙控系統(tǒng)的使用為人們提供了方便的操控手段。然而面對著智能電視、三網(wǎng)融合等新興事務(wù)的出現(xiàn),遙控器還處在最初的發(fā)展階段,只提供單一的紅外遙控功能,顯然無法滿足人們的需求。
[0005]雖然目前市面上已出現(xiàn)了多功能遙控器,遙控器的功能以及控制方式都發(fā)生了很大的變化,方便了人們的日常生活,但是也存在著一些問題:
[0006]1.大部分遙控器按鍵布局固定。面對不同的使用場景,采用相同的按鍵布局會大大降低用戶體驗(yàn),不方便用戶使用操作;[0007]2.大部分遙控器功能單一。絕大部分遙控器只具有紅外遙控功能,這在科技日益發(fā)展的環(huán)境下已無法滿足人們的需求,人們迫切需要能提供多種功能的智能遙控器;
[0008]3.大部分遙控器系統(tǒng)無法升級,由于大部分遙控器采用的是簡單的固化程序控制,所以無法對系統(tǒng)進(jìn)行升級,遙控器提供的功能無法改變,當(dāng)廠商添加新功能時(shí),用戶只能選擇購買新的硬件,這對用戶是一大損失,所購買的硬件產(chǎn)品無法獲得持續(xù)的服務(wù)。
【發(fā)明內(nèi)容】
[0009]本發(fā)明提供一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法及系統(tǒng),其目的在于通過對網(wǎng)絡(luò)上的各類視頻源信息或者廣播電視網(wǎng)提供的電視節(jié)目信息進(jìn)行提取,并通過統(tǒng)一接口實(shí)現(xiàn)視頻或電視節(jié)目的在線查詢和播放,從而可以實(shí)現(xiàn)網(wǎng)絡(luò)視頻和電視節(jié)目的實(shí)時(shí)在線查詢,以及播放控制等問題。
[0010]為實(shí)現(xiàn)本發(fā)明的目的,按照本發(fā)明的另一方面,提供一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其通過對網(wǎng)絡(luò)上的各類視頻源和電視節(jié)目預(yù)告信息進(jìn)行提取,并通過移動(dòng)終端實(shí)現(xiàn)視頻的在線查詢、播放,和實(shí)現(xiàn)電視節(jié)目的查詢并控制電視機(jī)播放,該方法具體包括:
[0011]網(wǎng)絡(luò)視頻信息提取,具體為:服務(wù)器端制定提取規(guī)則采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)存儲互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息;
[0012]網(wǎng)絡(luò)視頻真實(shí)地址提取,具體為:服務(wù)器端利用視頻信息中的視頻源網(wǎng)頁地址,獲取經(jīng)過解壓縮以及統(tǒng)一編碼的視頻源網(wǎng)頁源數(shù)據(jù),再根據(jù)視頻信息中的視頻ID和視頻源網(wǎng)頁源數(shù)據(jù),提取視頻網(wǎng)站的視頻源真實(shí)地址,并采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)對視頻真實(shí)地址信息進(jìn)行存儲;
[0013]電視節(jié)目預(yù)告信息提取:服務(wù)器端根據(jù)電視節(jié)目預(yù)告網(wǎng)站網(wǎng)頁數(shù)據(jù)編排,制定提取規(guī)則,提取節(jié)目預(yù)告信息并對提取的信息進(jìn)行存儲;
[0014]所述移動(dòng)終端作為客戶端通過存儲的網(wǎng)絡(luò)視頻提取信息進(jìn)行在線查詢獲得視頻信息,通過所述視頻真實(shí)地址信息進(jìn)行在線播放,通過提取的節(jié)目預(yù)告信息進(jìn)行在線查詢并遙控電視機(jī)進(jìn)行電視節(jié)目播放。
[0015]作為本發(fā)明的進(jìn)一步優(yōu)選,所述的節(jié)目預(yù)告信息提取具體為:載入頻道信息表,每次讀取一行,對讀取的信息進(jìn)行處理,合成一個(gè)每天的預(yù)告信息頁面,下載后進(jìn)行解析,然后錄入數(shù)據(jù)庫,完成節(jié)目預(yù)告信息提取。
[0016]作為本發(fā)明的進(jìn)一步優(yōu)選,所述提取的網(wǎng)絡(luò)視頻信息包括視頻基本信息,視頻類別信息和視頻創(chuàng)建信息,其中,所述視頻基本信息包括視頻標(biāo)題、視頻描述以及視頻標(biāo)簽,所述視頻類別信息包括所屬頻道、視頻分類以及所屬專輯,所述視頻創(chuàng)建信息包括視頻上傳者信息以及視頻上傳時(shí)間。
[0017]作為本發(fā)明的進(jìn)一步優(yōu)選,所述節(jié)目預(yù)告信息的在線查詢包括:
[0018]提取查詢參數(shù),對查詢客戶端的請求進(jìn)行解析,獲取查詢關(guān)鍵詞和查詢方式關(guān)鍵詞;
[0019]判斷查詢關(guān)鍵詞是否為空,若為空則判斷查詢方式關(guān)鍵字是否為C,若是,則查詢當(dāng)前時(shí)間段播出的節(jié)目信息,按照時(shí)間順序,返還XML文件給客戶端;若查詢關(guān)鍵詞不為空,則判斷查詢方式,若為S,則查詢包含關(guān)鍵詞的節(jié)目信息,并按時(shí)間返回給客戶端;若為a,則判斷查詢關(guān)鍵詞是否為頻道名稱,若是則返回該頻道當(dāng)前星期的所有節(jié)目預(yù)告信息,并按時(shí)間順序返回給客戶端,若為否則結(jié)束。
[0020]作為本發(fā)明的進(jìn)一步優(yōu)選,所述網(wǎng)絡(luò)視頻信息的在線查詢包括:
[0021]關(guān)鍵詞預(yù)處理,即對查詢的關(guān)鍵詞中的無用字符進(jìn)行去除,以防止影響搜索結(jié)果;
[0022]關(guān)鍵詞分詞,即將長段句子分成單獨(dú)的詞,包括中文分詞以及英文分詞兩種;
[0023]查詢索引,當(dāng)網(wǎng)絡(luò)視頻信息從互聯(lián)網(wǎng)上抓取到本地時(shí),會對視頻信息進(jìn)行建索引操作,利用Lucene建立倒排索引,在查詢的過程時(shí),則利用Solr的檢索接口來對索引進(jìn)行查詢;
[0024]對結(jié)果進(jìn)行排序,即根據(jù)關(guān)鍵詞相關(guān)程度對檢索結(jié)果進(jìn)行排序;
[0025]信息返回,即根據(jù)檢索到的視頻為ID,查詢數(shù)據(jù)庫,獲得詳細(xì)的視頻信息,根據(jù)顯示內(nèi)容,生成XML文件,返回到客戶端。
[0026]作為本發(fā)明的進(jìn)一步優(yōu)選,所述方法還包括身份認(rèn)證(包括常規(guī)用戶名、密碼登錄和人臉識別登錄)的步驟,用于在線查詢和播放前對客戶端的身份進(jìn)行認(rèn)證。
[0027]作為本發(fā)明的進(jìn)一步優(yōu)選,用于所述移動(dòng)終端遙控電視機(jī)的遙控界面包括多個(gè)可相互切換的場景界面。
[0028]作為本發(fā)明的進(jìn)一步優(yōu)選,所述方法還包括電視節(jié)目鬧鐘提醒,用于提醒用戶節(jié)目播放。
[0029]按照本發(fā)明的另一方面,提供一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制系統(tǒng),其通過對網(wǎng)絡(luò)上的各類視頻源和電視節(jié)目預(yù)告信息進(jìn)行提取,并通過移動(dòng)終端實(shí)現(xiàn)視頻的在線查詢、播放,和實(shí)現(xiàn)電視節(jié)目的查詢并控制電視機(jī)播放,該系統(tǒng)具體包括:
[0030]網(wǎng)絡(luò)視頻信息提取模塊,包括:服務(wù)器端制定提取規(guī)則采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)存儲互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息;
[0031]網(wǎng)絡(luò)視頻真實(shí)地址提取模塊,包括:服務(wù)器端利用視頻信息中的視頻源網(wǎng)頁地址,獲取經(jīng)過解壓縮以及統(tǒng)一編碼的視頻源網(wǎng)頁源數(shù)據(jù),再根據(jù)視頻信息中的視頻ID和視頻源網(wǎng)頁源數(shù)據(jù),提取視頻網(wǎng)站的視頻源真實(shí)地址,并采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)對視頻真實(shí)地址信息進(jìn)行存儲;
[0032]電視節(jié)目預(yù)告信息提取模塊,包括:服務(wù)器端根據(jù)電視節(jié)目預(yù)告網(wǎng)站網(wǎng)頁數(shù)據(jù)編排,制定提取規(guī)則,提取節(jié)目預(yù)告信息并對提取的信息進(jìn)行存儲;
[0033]所述移動(dòng)終端作為客戶端通過存儲的網(wǎng)絡(luò)視頻提取信息進(jìn)行在線查詢獲得視頻信息,通過所述視頻真實(shí)地址信息進(jìn)行在線播放,通過提取的節(jié)目預(yù)告信息進(jìn)行在線查詢并遙控電視機(jī)進(jìn)行電視節(jié)目播放。
[0034]作為本發(fā)明的進(jìn)一步優(yōu)選,所述節(jié)目預(yù)告信息提取模塊用于載入頻道信息表,每次讀取一行,對讀取的信息進(jìn)行處理,合成一個(gè)每天的預(yù)告信息頁面,下載后進(jìn)行解析,然后錄入數(shù)據(jù)庫,完成節(jié)目預(yù)告信息提??;
[0035]所述網(wǎng)絡(luò)視頻信息提取模塊用于提取視頻基本信息,視頻類別信息和視頻創(chuàng)建信息,其中,所述視頻基本信息包括視頻標(biāo)題、視頻描述以及視頻標(biāo)簽,所述視頻類別信息包括所屬頻道、視頻分類以及所屬專輯,所述視頻創(chuàng)建信息包括視頻上傳者信息以及視頻上傳時(shí)間。
[0036]作為本發(fā)明的進(jìn)一步優(yōu)選,所述系統(tǒng)還包括身份認(rèn)證(包括常規(guī)用戶名、密碼登錄和人臉識別登錄)模塊,用于在線查詢和播放前對客戶端的身份進(jìn)行認(rèn)證。
[0037]作為本發(fā)明的進(jìn)一步優(yōu)選,用于所述移動(dòng)終端遙控電視機(jī)的遙控界面包括多個(gè)可相互切換的場景界面。
[0038]作為本發(fā)明的進(jìn)一步優(yōu)選,所述方法還包括電視節(jié)目鬧鐘提醒,用于提醒用戶節(jié)目播放。
[0039]本發(fā)明采用的是CS設(shè)計(jì)模式,分為遠(yuǎn)程服務(wù)器端與Android智能客戶端兩部分,服務(wù)器端實(shí)現(xiàn)視頻信息以及節(jié)目預(yù)告信息的抓取、數(shù)據(jù)庫支撐以及云端服務(wù)接口提供者,Android客戶端提供界面操作,調(diào)用遠(yuǎn)程接口實(shí)現(xiàn)智能遙控的功能。
[0040]本發(fā)明的網(wǎng)絡(luò)數(shù)據(jù)提取中,其中網(wǎng)頁信息提取包括節(jié)目預(yù)告信息提取以及互聯(lián)網(wǎng)視頻信息提取兩部分組成,采用的是基于HTML標(biāo)簽的提取方式。節(jié)目預(yù)告以及視頻網(wǎng)站網(wǎng)頁格式相對比較固定且很少變動(dòng),因此信息提取規(guī)則的制定采用人工的方式。節(jié)目預(yù)告信息由于節(jié)目量的限制以及固定,采用單一網(wǎng)站進(jìn)行提取。網(wǎng)絡(luò)視頻由于數(shù)量繁多,所以采用多網(wǎng)站形式提取。
[0041]本發(fā)明的云端服務(wù)接口實(shí)現(xiàn)中,云服務(wù)接口利用遠(yuǎn)程服務(wù)器為Android客戶端提供必要的資源。實(shí)現(xiàn)的云端接口有身份認(rèn)證模塊、視頻真實(shí)地址提取模塊、節(jié)目預(yù)告查詢模塊、網(wǎng)絡(luò)視頻搜索模塊、節(jié)目相關(guān)網(wǎng)絡(luò)視頻推薦模塊。云服務(wù)對外以接口的形式提供調(diào)用,提供相應(yīng)的API即可實(shí)現(xiàn)相應(yīng)的功能。
[0042]本發(fā)明中,可以采用Android客戶端來實(shí)現(xiàn)上述方法,Android客戶端作用是供用戶操作使用,數(shù)據(jù)來源大部分都是通過調(diào)用接口訪問遠(yuǎn)程服務(wù)器數(shù)據(jù)庫獲得,少部分來自本地的SQLite數(shù)據(jù)庫。因此客戶端總體可分為數(shù)據(jù)操作、文件操作、網(wǎng)絡(luò)訪問、設(shè)備訪問等幾部分構(gòu)成。而對于客戶端,最為重要的部分為客戶端UI,這是用戶直接面對的操作界面,因此設(shè)計(jì)必須簡潔美觀實(shí)用,對于多場景的遙控操作界面設(shè)計(jì),則需考慮人們的使用習(xí)慣等因素。
[0043]本發(fā)明由遠(yuǎn)程服務(wù)器端與Android客戶端相互協(xié)作完成,服務(wù)器端為客戶端提供數(shù)據(jù)支撐以及服務(wù)接口,客戶端為用戶提供操作界面,兩者一起構(gòu)成了基于安卓的電視智能遙控裝置系統(tǒng)。
[0044]總體而言,本發(fā)明采用如今流行的安卓系統(tǒng),結(jié)合安卓系統(tǒng)強(qiáng)大的功能以及三網(wǎng)融合的趨勢,包括網(wǎng)絡(luò)數(shù)據(jù)提取,服務(wù)接口設(shè)計(jì)以及智能客戶端實(shí)現(xiàn)幾個(gè)部分,通過了一個(gè)具有節(jié)目預(yù)告查詢、節(jié)目定時(shí)提醒、節(jié)目相關(guān)網(wǎng)絡(luò)視頻推薦、網(wǎng)絡(luò)視頻查詢、網(wǎng)絡(luò)視頻在線播放的智能多功能遙控器,讓用戶在單一設(shè)備下即可實(shí)現(xiàn)多種操作;讓用戶可以在更換設(shè)備的情況下,通過云端還原數(shù)據(jù),使得原來的操作習(xí)慣以及軟件設(shè)置可以快速應(yīng)用在新設(shè)備上。具體而言,本發(fā)明具有以下優(yōu)點(diǎn):
[0045](I)本發(fā)明對互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息和廣電節(jié)目預(yù)告信息,以及視頻真實(shí)播放地址進(jìn)行了統(tǒng)一采集和提取,從而為用戶在客戶端的統(tǒng)一操控提供了支撐;
[0046](2)本發(fā)明中針對提取的視頻信息和節(jié)目預(yù)告信息和真實(shí)播放地址進(jìn)行了統(tǒng)一的接口處理,方便用戶在客戶端的集中操控。
[0047](3)本發(fā)明中通過在客戶端的統(tǒng)一在線查詢和播放,為用戶提供對應(yīng)的遙控操作界面,簡化用戶操作的同時(shí)提高用戶體驗(yàn);
【專利附圖】
【附圖說明】
[0048]圖1為本發(fā)明實(shí)施例的方法實(shí)施時(shí)的結(jié)構(gòu)示意圖。
[0049]圖2為本發(fā)明實(shí)施例的方法實(shí)施時(shí)的層次示意圖。
[0050]圖3為本發(fā)明實(shí)施例的方法實(shí)施時(shí)的總體設(shè)計(jì)框圖。
[0051]圖4為本發(fā)明實(shí)施例的節(jié)目預(yù)告信息提取流程圖。
[0052]圖5為本發(fā)明實(shí)施例的網(wǎng)絡(luò)視頻信息提取流程圖。
[0053]圖6為本發(fā)明實(shí)施例應(yīng)用于Android客戶端的界面示意圖。
[0054]圖7為本發(fā)明實(shí)施例應(yīng)用于Android客戶端的功能模塊劃分示意圖。
【具體實(shí)施方式】
[0055]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。此處說明若涉及到具體實(shí)例時(shí)僅僅用以解釋本發(fā)明,并不限定本發(fā)明。
[0056]如圖1所示為本方法實(shí)施例實(shí)施時(shí)的構(gòu)成示意圖,由Android開發(fā)板和服務(wù)器構(gòu)成。開發(fā)板優(yōu)選是由友善之臂的Tiny210以及一個(gè)7寸的IXD觸屏顯示器構(gòu)成。外接的智能紅外遙控模塊優(yōu)選采用的是HXD1282多功能學(xué)習(xí)型藍(lán)牙轉(zhuǎn)紅外中繼器。
[0057]本方法實(shí)施例的網(wǎng)絡(luò)視頻的在線查詢和播放控制方法,通過對網(wǎng)絡(luò)上的各類視頻源信息進(jìn)行提取,并通過統(tǒng)一接口實(shí)現(xiàn)視頻的在線查詢和播放。
[0058]本實(shí)施例的方法具體包括:
[0059]網(wǎng)絡(luò)視頻信息與節(jié)目預(yù)告信息提取,具體為:制定提取規(guī)則采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)存儲互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息;根據(jù)節(jié)目預(yù)告網(wǎng)站網(wǎng)頁數(shù)據(jù)編排,制定提取規(guī)則,提取節(jié)目預(yù)告信息;對提取的信息進(jìn)行存儲;
[0060]網(wǎng)絡(luò)視頻真實(shí)地址提取,具體為:獲取經(jīng)過解壓縮以及統(tǒng)一編碼的視頻源網(wǎng)頁源數(shù)據(jù);分析視頻網(wǎng)站的視頻源真實(shí)地址提取算法,并據(jù)此采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)對視頻真實(shí)地址信息進(jìn)行存儲;
[0061]本地客戶端通過存儲的提取信息進(jìn)行在線查詢獲得視頻信息或節(jié)目預(yù)告信息,并根據(jù)視頻與節(jié)目預(yù)告信息利用相應(yīng)的視頻真實(shí)地址信息進(jìn)行在線播放。
[0062]系統(tǒng)包括服務(wù)端與客戶端兩部分組成,客戶端為用戶提供操作界面,服務(wù)器端提供必要數(shù)據(jù)支撐以及遠(yuǎn)程服務(wù)接口給客戶端。整個(gè)系統(tǒng)分為三層:顯式層、控制層和數(shù)據(jù)層,如圖2所示。
[0063]顯示層定義了一些面向用戶操作的接口,身份認(rèn)證接口,包括用戶注冊、登錄、找回密碼;節(jié)目預(yù)告接口,包括節(jié)目預(yù)告查詢、節(jié)目信息查看、節(jié)目預(yù)告、節(jié)目相關(guān)視頻推薦;網(wǎng)絡(luò)視頻接口,包括網(wǎng)絡(luò)視頻查詢以及本地播放;遙控操作接口,包括遙控以及場景選擇。
[0064]控制層是系統(tǒng)的邏輯實(shí)現(xiàn)部分,包括用戶身份認(rèn)證、節(jié)目查詢、網(wǎng)絡(luò)視頻查詢、視頻推薦、紅外遙控、數(shù)據(jù)備份還原、軟件設(shè)置以及升級等,是整個(gè)系統(tǒng)的核心部分。
[0065]數(shù)據(jù)層是系統(tǒng)數(shù)據(jù)的提供部分,包括節(jié)目預(yù)告、網(wǎng)絡(luò)視頻以及用戶信息庫,為整個(gè)系統(tǒng)的運(yùn)行提供數(shù)據(jù)支撐。
[0066]圖3為系統(tǒng)的總體設(shè)計(jì)框架圖,當(dāng)用戶通過客戶端輸入賬戶名密碼時(shí),客戶端將用戶信息通過互聯(lián)網(wǎng)發(fā)送到服務(wù)器進(jìn)行驗(yàn)證,并返回結(jié)果。用戶進(jìn)入后,可以對客戶端進(jìn)行一些操作,如進(jìn)行紅外遙控、節(jié)目查詢、網(wǎng)絡(luò)視頻觀看等。整個(gè)過程是服務(wù)器端與客戶端協(xié)作完成的結(jié)果。
[0067](I)網(wǎng)絡(luò)數(shù)據(jù)提取
[0068]網(wǎng)頁信息提取是從互聯(lián)網(wǎng)獲取數(shù)據(jù),將零散的信息收集起來,進(jìn)行統(tǒng)一管理,這個(gè)過程涉及到網(wǎng)頁源文件的獲取、提取規(guī)則的制定以及網(wǎng)頁信息存儲三大部分構(gòu)成。針對不同類型的信息,有的還需要對提取的信息進(jìn)行整合去重等操作。
[0069]對于不同的互聯(lián)網(wǎng)信息提取,不同的是網(wǎng)頁源的選取、提取規(guī)則的不同以及提取后的信息的處理方式不同。對于數(shù)據(jù)源比較單一的信息提取,通常只需要從一個(gè)或幾個(gè)站點(diǎn)提取,且提取的信息冗余度不高,大部分都無需去重處理即可存入數(shù)據(jù)庫,這種類型比較少?;ヂ?lián)網(wǎng)上大部分的信息都存在冗余,相同的信息可以出現(xiàn)在多個(gè)不同的站點(diǎn),且不同站點(diǎn)數(shù)據(jù)格式可能不同,因此提取信息處理的時(shí)候需要考慮去重,以及制定統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)來存儲。具體步驟如下:
[0070](1.1)網(wǎng)頁源文件獲取
[0071]網(wǎng)頁源文件的目標(biāo)頁面通常是利用網(wǎng)絡(luò)爬蟲獲取得到的,網(wǎng)頁源文件的獲取可近似看作HTML文件下載的過程,不同于普通的文件下載,這個(gè)過程需要考慮到信息的編碼方式以及是否有壓縮。
[0072]不同網(wǎng)站的頁面編碼方式不同,目前的有GBK、UTF_8、GBK2312等。由于信息提取環(huán)境編碼固定,一般是ASCII或UTF-8,如果提取頁面編碼方式不同,則提取的信息將會是亂碼顯示,這將不利于文件的提取,因此在提取的過程中需要對網(wǎng)頁進(jìn)行判斷,網(wǎng)頁的編碼方式一般通過頁面源文件的meta標(biāo)簽的charset字段來判斷。
[0073]—些網(wǎng)站采取壓縮的方式減小頁面大小,來提高頁面加載速度,對于這類頁面,下載程序獲取到的一般是壓縮文件,無法讀取內(nèi)部數(shù)據(jù)。目前常采用的壓縮方式是gz ip,對于這類網(wǎng)站,則利用第三方庫先對其進(jìn)行解壓,然后讀取數(shù)據(jù)供其他模塊調(diào)用。
[0074](1.2)節(jié)目預(yù)告提取
[0075]節(jié)目預(yù)告信息不同于一般的信息,每個(gè)星期的節(jié)目預(yù)告都是固定的,也就是信息總量是一定的,因此在提取的過程中選取一個(gè)好的站點(diǎn)就非常重要,而對于其信息的特殊性,沒有必要去多個(gè)站點(diǎn)采集,只需尋找一個(gè)信息比較齊全的網(wǎng)站采集即可。節(jié)目預(yù)告信息提取如圖4所示。開始時(shí),載入地方頻道信息表,每次讀取一行,對讀取的信息進(jìn)行處理,合成一個(gè)星期每天的預(yù)告信息頁面,下載后進(jìn)行解析,將提取的信息進(jìn)行預(yù)處理,主要是去掉一些空格等,然后錄入數(shù)據(jù)庫,若地方頻道信息表讀取完畢,則程序結(jié)束。
[0076](1.3)網(wǎng)絡(luò)視頻信息提取
[0077]網(wǎng)絡(luò)視頻信息提取大致流程如圖5所示。由于網(wǎng)絡(luò)視頻信息提取站點(diǎn)有多個(gè),而多個(gè)網(wǎng)站視頻信息的組成不盡相同,但是大致歸納起來包括三大部分,即視頻本身信息、視頻類別信息和視頻創(chuàng)建信息。視頻本身信息一般包括視頻標(biāo)題、視頻描述以及視頻標(biāo)簽三部分。視頻類別信息一般包括所屬頻道、視頻分類以及所屬專輯,不同網(wǎng)站此類信息略有不同。視頻創(chuàng)建信息包括視頻上傳者信息以及視頻上傳時(shí)間??紤]到提取數(shù)據(jù)盡可能的包含,因此提取信息包括三類信息:
[0078]a)視頻基本信息:包括視頻標(biāo)題、視頻描述信息以及視頻標(biāo)簽信息;[0079]b)視頻類別信息:包括視頻所屬頻道、視頻分類及視頻所屬專輯;
[0080]c)視頻創(chuàng)建信息:包括視頻上傳者信息以及視頻上傳時(shí)間。
[0081]不同視頻網(wǎng)站頁面數(shù)據(jù)組織形式不同,因此必須對每個(gè)網(wǎng)站制定提取規(guī)則,提取規(guī)則的制定一般是通過分析視頻播放頁面源文件得到的,根據(jù)不同類別信息標(biāo)簽及描述信息,來判斷此處信息是否為該類別信息。例如標(biāo)題的描述關(guān)鍵字一般有title,視頻信息描述關(guān)鍵字一般有description等。對于某個(gè)網(wǎng)站,不同時(shí)期頁面不同類別頁面還可能存在差異,這個(gè)須在提取的過程中去動(dòng)態(tài)的調(diào)整。因此,在制定提取規(guī)則過程中還需考慮某些特殊情況,以使得提取信息盡可能的準(zhǔn)確。
[0082](2)云端服務(wù)接口實(shí)現(xiàn)
[0083](2.1)視頻真實(shí)地址提取模塊
[0084]由于視頻網(wǎng)站的視頻真實(shí)地址都是經(jīng)過加密的,這樣是為了防止直接下載。視頻網(wǎng)站的視頻真實(shí)地址解密規(guī)則,一般都內(nèi)嵌在網(wǎng)站flash播放器中,如果播放不同網(wǎng)站視頻去調(diào)用不同的播放器,這樣用戶體驗(yàn)會不好。所以必須分析獲得網(wǎng)絡(luò)視頻真實(shí)地址,以實(shí)現(xiàn)網(wǎng)絡(luò)視頻客戶端的統(tǒng)一在線播放。
[0085]各大視頻網(wǎng)站都對視頻真實(shí)地址進(jìn)行了加密,且加密規(guī)則各不相同,因此必須對各個(gè)視頻網(wǎng)站制定不同的獲取方式。目前常用的視頻真實(shí)地址提取方式有兩種,第一種是分析視頻網(wǎng)頁的源碼和加密算法,得出視頻的真實(shí)地址,這種方式的優(yōu)點(diǎn)是解析速度快,能夠獲得視頻詳細(xì)信息,但是不具通用性,并且分析過程復(fù)雜。
[0086](2.2)節(jié)目預(yù)告查詢模塊
[0087]節(jié)目預(yù)告信息不同于網(wǎng)絡(luò)視頻信息,它具有實(shí)時(shí)性以及總量小等因素,又由于系統(tǒng)中調(diào)用的方式有多種,因此沒.有采取傳統(tǒng)搜索引擎的檢索方式,而是直接利用數(shù)據(jù)庫來構(gòu)建查詢接口。在查詢的過程中,安卓客戶端會發(fā)送附帶參數(shù)的查詢請求到服務(wù)器,目前查詢參數(shù)包括兩部分,即查詢關(guān)鍵詞和查詢方式。查詢關(guān)鍵詞是節(jié)目檢索的關(guān)鍵詞,查詢方式則是以何種方式查詢,系統(tǒng)中有三種查詢方式,一種是根據(jù)關(guān)鍵詞查詢,第二種是查詢當(dāng)前時(shí)間播放節(jié)目預(yù)告,第三種是查詢一個(gè)節(jié)目頻道當(dāng)前星期的節(jié)目預(yù)告。節(jié)目預(yù)告查詢大致步驟如下:
[0088]1.提取查詢參數(shù)。對安卓客戶端的請求進(jìn)行解析,獲取查詢關(guān)鍵詞和查詢方式兩個(gè)關(guān)鍵詞,并對查詢關(guān)鍵詞進(jìn)行預(yù)處理;
[0089]2.判斷查詢關(guān)鍵詞是否為空,若為空則判斷查詢方式關(guān)鍵字是否為C,若是,則查詢當(dāng)前時(shí)間段播出的節(jié)目信息,按照時(shí)間順序,返還XML文件給Android客戶端,否則程序結(jié)束。
[0090]3.若查詢關(guān)鍵詞不為空,則判斷查詢方式,若為S,則查詢包含關(guān)鍵詞的節(jié)目信息,并按時(shí)間返回給客戶端?’若為a,則判斷查詢關(guān)鍵詞是否為頻道名稱,若是則返回該頻道當(dāng)前星期的所有節(jié)目預(yù)告信息,并按時(shí)間順序返回給Android客戶端,若為否則程序結(jié)束。
[0091](2.3)網(wǎng)絡(luò)視頻查詢模塊
[0092]網(wǎng)絡(luò)視頻的查詢包括網(wǎng)絡(luò)視頻查詢以及節(jié)目預(yù)告相關(guān)視頻推薦,由于節(jié)目推薦采用基于內(nèi)容的推薦方式,因此節(jié)目推薦可看作一個(gè)關(guān)鍵字為節(jié)目信息的網(wǎng)絡(luò)視頻查詢。網(wǎng)絡(luò)視頻查詢的步驟包括對關(guān)鍵詞進(jìn)行預(yù)處理、對關(guān)鍵詞分詞、查詢索引、對結(jié)果進(jìn)行排序、返回視頻信息XML文件幾個(gè)部分。
[0093]1.關(guān)鍵詞預(yù)處理。這個(gè)過程是對關(guān)鍵詞中的無用字符進(jìn)行去除,例如空格等字符,防止影響搜索結(jié)果。
[0094]2.關(guān)鍵詞分詞。分詞就是將一長段句子分成單獨(dú)的詞,包括中文分詞以及英文分詞兩種。英文分詞是以空格為基準(zhǔn),比較簡單。中文分詞則是將一個(gè)漢字序列切分成一個(gè)個(gè)單獨(dú)的詞匯,系統(tǒng)中采用基于詞典的正向?qū)Υ蚱ヅ渌惴▉磉M(jìn)行分詞。
[0095]3.查詢索引。這個(gè)過程實(shí)際上包括兩個(gè)過程。當(dāng)網(wǎng)絡(luò)視頻信息從互聯(lián)網(wǎng)上抓取到本地時(shí),會對視頻信息進(jìn)行建索引操作,利用Lucene建立倒排索引。在查詢的過程時(shí),則利用Solr的檢索接口來對索引進(jìn)行查詢。
[0096]4.對結(jié)果進(jìn)行排序。這個(gè)過程利用到Solr的結(jié)果排序,一般是根據(jù)關(guān)鍵詞相關(guān)程度進(jìn)行排序。
[0097]5.信息返回。由于檢索到的視頻為視頻ID,因此需查詢數(shù)據(jù)庫,獲得詳細(xì)的視頻信息,根據(jù)顯示內(nèi)容,生成XML文件。
[0098](2.4)身份認(rèn)證模塊
[0099]身份認(rèn)證即用戶身份驗(yàn)證相關(guān)部分,包括用戶注冊、用戶登錄、密碼找回等??紤]到目前網(wǎng)絡(luò)安全等因素,還有密碼加密以及解密部分。
[0100]1.密碼加密解密
[0101]由于現(xiàn)在互聯(lián)網(wǎng)行業(yè)較發(fā)達(dá),因?yàn)槔娴纫蛩兀霈F(xiàn)了很多盜取用戶信息的不法分子,而網(wǎng)站的賬戶信息一般都存儲在服務(wù)器數(shù)據(jù)庫上,若用戶信息數(shù)據(jù)庫被不法分子獲取,將對網(wǎng)站以及用戶造成巨大的損失。因此為了避免此類事情的發(fā)生,系統(tǒng)中采取對密碼進(jìn)行加密措施,因此即使數(shù)據(jù)庫被不法分子破解,也無法獲取用戶密碼。
[0102]密碼加密過程首先需對密碼串進(jìn)行預(yù)處理,去除首尾空格后進(jìn)行判斷,若不為空,則調(diào)用相關(guān)函數(shù)庫對密碼串進(jìn)行MD5加密,將加密后得到的串返回。解密就是一個(gè)逆過程,調(diào)用解密函數(shù)進(jìn)行MD5解密,將得到的密碼串返回。
[0103]2.用戶注冊
[0104]用戶注冊實(shí)際上是一個(gè)數(shù)據(jù)庫的操作過程,即將用戶信息存儲到數(shù)據(jù)庫中,不過在存儲之前,需對相關(guān)數(shù)據(jù)進(jìn)行預(yù)處理,包括信息預(yù)處理、判斷用戶名是否存在、對密碼進(jìn)行加密存儲等。其中信息預(yù)處理包括去掉一些無用信息,例如去掉首位空格。判斷用戶名是否存在則需要查詢數(shù)據(jù)庫操作。其對外有兩個(gè)接口,一個(gè)為用戶名是否存在,一個(gè)為用戶注冊接口。
[0105]3.用戶登錄
[0106]用戶登錄信息實(shí)際上可看作一個(gè)查詢數(shù)據(jù)操作,對用戶名與密碼進(jìn)行驗(yàn)證,若與數(shù)據(jù)庫中用戶信息庫中信息匹配則返回相關(guān)信息。這個(gè)過程包括對信息的預(yù)處理以及密碼的MD5加密兩部分。對密碼進(jìn)行MD5加密則是為了減少數(shù)據(jù)庫查詢次數(shù)。
[0107]4.密碼找回
[0108]密碼找回跟用戶登錄類似,是一個(gè)查詢數(shù)據(jù)庫的操作,對用戶名、密保問題以及密保答案的驗(yàn)證,若與用戶信息庫中信息相匹配,則返回給用戶密碼。
[0109](3)智能客戶端實(shí)現(xiàn)
[0110]作為用戶操作終端部分,Android客戶端提供面向用戶操作的各種接口,例如登錄、注冊、遙控、查詢等??蛻舳私缑娴脑O(shè)計(jì)好壞直接影響用戶體驗(yàn),因此設(shè)計(jì)必須合理??蛻舳诉壿嫻δ苣K一部分依賴遠(yuǎn)程服務(wù)器實(shí)現(xiàn),一部分通過自身模塊提供來實(shí)現(xiàn),系統(tǒng)各模塊之間相互協(xié)作,客戶端與服務(wù)器共同作業(yè),構(gòu)成整個(gè)智能遙控系統(tǒng)。
[0111]整個(gè)客戶端界面設(shè)計(jì)如圖6所示,一個(gè)設(shè)計(jì)良好的操作界面會給用戶帶來不一樣的體驗(yàn),Android客戶端界面包括五大部分,即初始化界面、身份認(rèn)證相關(guān)界面、客戶端主體界面、節(jié)目預(yù)告相關(guān)界面以及網(wǎng)絡(luò)視頻相關(guān)界面。各個(gè)部分以功能聚集,各自為一整體,五大部分聯(lián)合起來組成整個(gè)智能遙控客戶端。多場景紅外遙控操作界面可供用戶選擇的遙控場景有預(yù)設(shè)、影視、音樂以及標(biāo)準(zhǔn)四種模式,(a)為預(yù)設(shè)遙控界面,(b)為影視場景遙控界面,(c)為音樂場景遙控界面,(d)為標(biāo)準(zhǔn)遙控界面。
[0112]客戶端的內(nèi)部實(shí)現(xiàn)依賴于各功能模塊的協(xié)作完成的,功能模塊作為Android客戶端的邏輯實(shí)現(xiàn)部分,可以分為五大部分,包括設(shè)備檢測模塊、身份認(rèn)證模塊、紅外遙控功能模塊、網(wǎng)絡(luò)傳輸模塊以及數(shù)據(jù)操作模塊。各個(gè)模塊又包含了很多細(xì)分的功能單元,如圖7所
/Jn ο
[0113](3.1)設(shè)備檢測模塊
[0114]設(shè)備檢測模塊應(yīng)用在設(shè)備的初始化階段,由于客戶端運(yùn)行需要網(wǎng)絡(luò)、外置存儲卡等一些設(shè)備的支撐,因此在設(shè)備啟動(dòng)時(shí),該模塊會檢測系統(tǒng)相關(guān)硬件是否存在、設(shè)備狀態(tài)是否達(dá)到需求等。
[0115]1.SD 卡檢測
[0116]客戶端運(yùn)行產(chǎn)生信息以及備份還原操作等都需要地方存放,程序中默認(rèn)存放在外置SD卡上,程序運(yùn)行時(shí)會檢測設(shè)備是否有外置存儲卡,如果沒有,則會提醒用戶備份等操作可能會失敗。
[0117]2.網(wǎng)絡(luò)檢測
[0118]網(wǎng)絡(luò)檢測包括多方面,設(shè)備是否有相關(guān)設(shè)備,以及是否能聯(lián)網(wǎng),聯(lián)網(wǎng)的類型等。檢測聯(lián)網(wǎng)的類型作用是提醒用戶,某些操作可能會很耗費(fèi)流量,若使用SM卡上網(wǎng)的話,需要注意操作。
[0119](3.2)身份認(rèn)證模塊
[0120]身份認(rèn)證是一個(gè)協(xié)作的模塊,需要用到網(wǎng)絡(luò)傳輸模塊,用戶登錄、用戶注冊以及密碼找回在客戶端上可看作一個(gè)信息收集的過程。通過采集相關(guān)信息發(fā)送到服務(wù)器端,對服務(wù)器返回的結(jié)果進(jìn)行判斷,做下一步操作。其中用戶登錄模塊也會需要數(shù)據(jù)操作模塊的協(xié)作,對已登錄過的賬戶,客戶端會有記錄,用戶再次操作時(shí)會給出提示,幫助用戶快速輸入帳號,節(jié)省用戶時(shí)間。
[0121](3.3)紅外遙控功能模塊
[0122]紅外遙控功能模塊涉及到藍(lán)牙收發(fā)數(shù)據(jù)以及JNI接口實(shí)現(xiàn)兩部分。藍(lán)牙收發(fā)數(shù)據(jù)是Android系統(tǒng)支持的無線射頻功能,此處主要是與藍(lán)牙轉(zhuǎn)紅外中繼器進(jìn)行交互。JNI接口的編寫,則是對藍(lán)牙接收的數(shù)據(jù)進(jìn)行處理。
[0123]1.藍(lán)牙收發(fā)數(shù)據(jù)
[0124]由于Android系統(tǒng)默認(rèn)未燒錄紅外驅(qū)動(dòng),所以基于Android的移動(dòng)終端是無法收發(fā)紅外數(shù)據(jù)的,因此也無法直接遙控紅外家居設(shè)備??紤]到基于Android的移動(dòng)終端都支持藍(lán)牙功能,所以對于遙控電視播放功能的實(shí)現(xiàn),采取移動(dòng)終端向藍(lán)牙轉(zhuǎn)紅外中繼器發(fā)送藍(lán)牙命令,藍(lán)牙轉(zhuǎn)紅外中繼器對接收到的藍(lán)牙數(shù)據(jù)進(jìn)行處理,然后發(fā)送紅外命令遙控電視播放的方法。
[0125]2.JNI 接 口實(shí)現(xiàn)
[0126]JNI即Java Native Interface的縮寫,它能夠讓Java代碼跟其他語言的代碼進(jìn)行交互。它設(shè)計(jì)的目的是讓其他代碼能夠編寫成動(dòng)態(tài)庫的形式,供Java調(diào)用,由于Android程序開發(fā)使用的是Java語言,因此要調(diào)用C語言寫的數(shù)據(jù)處理模塊是不行的,必須利用JNI將數(shù)據(jù)處理模塊封裝成動(dòng)態(tài)庫,在Android程序中引用。此處的數(shù)據(jù)處理模塊是在移動(dòng)終端對紅外遙控命令學(xué)習(xí)階段調(diào)用的,具體過程為:移動(dòng)終端先利用藍(lán)牙功能向藍(lán)牙轉(zhuǎn)紅外中繼器發(fā)送學(xué)習(xí)命令,引導(dǎo)中繼器采集紅外家居設(shè)備的紅外控制命令,然后中繼器將采集到的數(shù)據(jù)利用藍(lán)牙功能發(fā)送回移動(dòng)終端,移動(dòng)終端接收到中繼器發(fā)回的數(shù)據(jù)后調(diào)用JNI封裝好的動(dòng)態(tài)庫對數(shù)據(jù)進(jìn)行處理并保存。保存的數(shù)據(jù)即移動(dòng)終端用于遙控紅外家居設(shè)備時(shí)向藍(lán)牙轉(zhuǎn)紅外中繼器發(fā)送的命令。
[0127](3.4)數(shù)據(jù)操作模塊
[0128]數(shù)據(jù)操作是客戶端的核心模塊之一,其他模塊部分也都調(diào)用了數(shù)據(jù)操作模塊。系統(tǒng)中數(shù)據(jù)操作模塊包括四部分,即本地?cái)?shù)據(jù)庫操作、普通文件操作、XML解析操作以及SharePreferences 文件操作。
[0129]1.本地SQLite數(shù)據(jù)庫操作
[0130]在客戶端的運(yùn)行過程,會產(chǎn)生很多比較有規(guī)則的數(shù)據(jù),比方說用戶登錄信息,用戶查詢信息等。如果采用普通文本形式,讀取以及條件查詢都會比較麻煩,若存儲到遠(yuǎn)程服務(wù)器數(shù)據(jù)庫上,網(wǎng)絡(luò)開銷會增大,而且這些數(shù)據(jù)又不是必須的。因此采用SQLite這種輕量級的數(shù)據(jù)庫,它是為嵌入式環(huán)境設(shè)計(jì)的,能夠運(yùn)行在開發(fā)板上,且占用資源非常小,支持常用的SQL語句等。存儲的信息是一些操作過程中產(chǎn)生的數(shù)據(jù),包括用戶的登錄信息、用戶節(jié)目查詢、網(wǎng)絡(luò)視頻搜索關(guān)鍵詞信息等。涉及的操作主要是數(shù)據(jù)讀寫。
[0131]2.XML 解析
[0132]XML解析在各種應(yīng)用中都非常常見,在Android中也不例外。Android平臺常用的XML解析器有SAX解析器、DOM解析器以及TOLL解析器三種。SAX解析器是一種基于事件的解析器,它的優(yōu)點(diǎn)是解析速度快、占用資源較少。DOM解析器是基于樹形結(jié)構(gòu)結(jié)點(diǎn)或信息片段的集合的解析器,由于DOM在內(nèi)存中以樹形結(jié)構(gòu)存儲,因此檢索和更新的效率會較高。但是對于較大的文件,加載和解析會比較耗資源。PULL解析器的運(yùn)行方式和SAX類似,是基于事件的模式,它的優(yōu)點(diǎn)是小巧輕便、解析速度快、簡單易用。在系統(tǒng)中采用SAX解析器來完成XML文檔的解析,通過解析將規(guī)則化的數(shù)據(jù)存放到內(nèi)存中,供其他模塊來調(diào)用。
[0133]3.普通文件操作
[0134]普通文件操作包括文件讀寫、壓縮、解壓縮以及拷貝。這些操作主要是用于系統(tǒng)備份還原。系統(tǒng)備份操作會將手機(jī)內(nèi)的程序運(yùn)行信息保存到外置SD卡上,并將這些文件進(jìn)行打包,上傳到服務(wù)器上。系統(tǒng)還原操作則是將服務(wù)器上的壓縮文件下載下來,解壓縮,然后復(fù)制到手機(jī)內(nèi)。
[0135]4.SharePreferences 文件操作
[0136]SharePreferences是Android提供的一種存儲方式,是基于XML文件存儲鍵值數(shù)據(jù)的,特別適用于軟件配置參數(shù)的保存。在系統(tǒng)中是用來存儲一些個(gè)性化設(shè)置信息。?efis^-KSsuajfJJaJJaJmiS 歸銀來銶 SSSJfJJaJJPaJmls 篳戩琚條 PISPUV罔 --/-- < gsoogcoOT Z o
【權(quán)利要求】
1.一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其通過對網(wǎng)絡(luò)上的各類視頻源和電視節(jié)目預(yù)告信息進(jìn)行提取,并通過移動(dòng)終端實(shí)現(xiàn)視頻信息的服務(wù)器端查詢與視頻的在線播放,以及實(shí)現(xiàn)電視節(jié)目的查詢并控制電視機(jī)播放,該方法具體包括: 網(wǎng)絡(luò)視頻信息提取,具體為:服務(wù)器端制定提取規(guī)則采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)提取并存儲互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息; 網(wǎng)絡(luò)視頻真實(shí)地址提取,具體為:服務(wù)器端利用視頻信息中的視頻源網(wǎng)頁地址,獲取經(jīng)過解壓縮以及統(tǒng)一編碼的視頻源網(wǎng)頁源數(shù)據(jù),再根據(jù)視頻信息中的視頻ID和視頻源網(wǎng)頁源數(shù)據(jù),提取視頻網(wǎng)站的視頻源真實(shí)地址,并采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)對視頻真實(shí)地址信息進(jìn)行存儲; 電視節(jié)目預(yù)告信息提取:服務(wù)器端根據(jù)電視節(jié)目預(yù)告網(wǎng)站網(wǎng)頁數(shù)據(jù)編排,制定提取規(guī)貝U,提取節(jié)目預(yù)告信息并對提取的信息進(jìn)行存儲; 所述移動(dòng)終端作為客戶端通過服務(wù)器端存儲的網(wǎng)絡(luò)視頻提取信息進(jìn)行在線查詢獲得視頻信息,通過所述視頻真實(shí)地址信息進(jìn)行在線播放,通過提取的節(jié)目預(yù)告信息進(jìn)行在線查詢并遙控電視機(jī)進(jìn)行 電視節(jié)目播放。
2.根據(jù)權(quán)利要求1所述的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其特征在于,所述的節(jié)目預(yù)告信息提取具體為:載入頻道信息表,每次讀取一行,即一個(gè)頻道的鏈接信息,對讀取的信息進(jìn)行處理,合成一個(gè)每天的預(yù)告信息頁面,下載后進(jìn)行解析,然后錄入數(shù)據(jù)庫,完成節(jié)目預(yù)告信息提取。
3.根據(jù)權(quán)利要求1或2所述的基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其特征在于,所述提取的網(wǎng)絡(luò)視頻信息包括視頻基本信息,視頻類別信息和視頻創(chuàng)建信息,其中,所述視頻基本信息包括視頻標(biāo)題、視頻描述以及視頻標(biāo)簽,所述視頻類別信息包括所屬頻道、視頻分類以及所屬專輯,所述視頻創(chuàng)建信息包括視頻上傳者信息以及視頻上傳時(shí)間。
4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其特征在于,所述節(jié)目預(yù)告信息的在線查詢包括: 提取查詢參數(shù),對查詢客戶端的請求進(jìn)行解析,獲取查詢關(guān)鍵詞和查詢方式關(guān)鍵詞;判斷查詢關(guān)鍵詞是否為空,若為空則判斷查詢方式關(guān)鍵詞,并相應(yīng)所述查詢方式關(guān)鍵詞將對應(yīng)的節(jié)目信息返還給客戶端;若查詢關(guān)鍵詞不為空,則進(jìn)一步判斷查詢方式,并根據(jù)查詢方式進(jìn)行處理,包括將查詢包含關(guān)鍵詞的節(jié)目信息按時(shí)間返回給客戶端,或者返回查詢頻道當(dāng)前星期的所有節(jié)目預(yù)告信息并按時(shí)間順序返回給客戶端。
5.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其特征在于,所述網(wǎng)絡(luò)視頻信息的在線查詢包括: 關(guān)鍵詞預(yù)處理,即對查詢的關(guān)鍵詞中的無用字符進(jìn)行去除,以防止影響搜索結(jié)果; 關(guān)鍵詞分詞,即將長段句子分成單獨(dú)的詞,包括中文分詞以及英文分詞兩種; 查詢索引,當(dāng)網(wǎng)絡(luò)視頻信息從互聯(lián)網(wǎng)上抓取到本地時(shí),會對視頻信息進(jìn)行建索引操作,利用Lucene建立倒排索引,在查詢的過程時(shí),則利用Solr的檢索接口來對索引進(jìn)行查詢;對結(jié)果進(jìn)行排序,即根據(jù)關(guān)鍵詞相關(guān)程度對檢索結(jié)果進(jìn)行排序; 信息返回,即根據(jù)檢索到的視頻ID,查詢數(shù)據(jù)庫,獲得詳細(xì)的視頻信息,根據(jù)顯示內(nèi)容,生成XML文件,返回到客戶端。
6.根據(jù)權(quán)利要求1-5中任一項(xiàng)所述的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其特征在于,所述方法還包括身份認(rèn)證的步驟,用于在線查詢和播放前對客戶端的身份進(jìn)行認(rèn)證。
7.根據(jù)權(quán)利要求1-6中任一項(xiàng)所述的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制方法,其特征在于,用于所述移動(dòng)終端遙控電視機(jī)的遙控界面包括多個(gè)可相互切換的場景界面。
8.一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制系統(tǒng),其通過對網(wǎng)絡(luò)上的各類視頻源和電視節(jié)目預(yù)告信息進(jìn)行提取,并通過移動(dòng)終端實(shí)現(xiàn)視頻信息的服務(wù)器端查詢與視頻的在線播放,和實(shí)現(xiàn)電視節(jié)目的查詢并控制電視機(jī)播放,該系統(tǒng)具體包括: 網(wǎng)絡(luò)視頻信息提取模塊,包括:服務(wù)器端制定提取規(guī)則采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)存儲互聯(lián)網(wǎng)視頻網(wǎng)站上的視頻信息; 網(wǎng)絡(luò)視頻真實(shí)地址提取模塊,包括:服務(wù)器端利用視頻信息中的視頻源網(wǎng)頁地址,獲取經(jīng)過解壓縮以及統(tǒng)一編碼的視頻源網(wǎng)頁源數(shù)據(jù),再根據(jù)視頻信息中的視頻ID和視頻源網(wǎng)頁源數(shù)據(jù),提取視頻網(wǎng)站的視頻源真實(shí)地址,并采取統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)對視頻真實(shí)地址信息進(jìn)行存儲; 電視節(jié)目預(yù)告信息提取模塊,包括:服務(wù)器端根據(jù)電視節(jié)目預(yù)告網(wǎng)站網(wǎng)頁數(shù)據(jù)編排,制定提取規(guī)則,提取節(jié)目預(yù)告信息并對提取的信息進(jìn)行存儲; 所述移動(dòng)終端作為客戶端通過服務(wù)器端存儲的網(wǎng)絡(luò)視頻提取信息進(jìn)行在線查詢獲得視頻信息,通過所述視頻真實(shí)地址信息進(jìn)行在線播放,通過提取的節(jié)目預(yù)告信息進(jìn)行在線查詢并遙控電視機(jī)進(jìn)行電視節(jié)目播放。
9.根據(jù)權(quán)利要求8所 述 的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制系統(tǒng),其特征在于,所述節(jié)目預(yù)告信息提取模塊用于載入頻道信息表,每次讀取一行,對讀取的信息進(jìn)行處理,合成一個(gè)每天的預(yù)告信息頁面,下載后進(jìn)行解析,然后錄入數(shù)據(jù)庫,完成節(jié)目預(yù)告信息提取; 所述網(wǎng)絡(luò)視頻信息提取模塊用于提取視頻基本信息,視頻類別信息和視頻創(chuàng)建信息,其中,所述視頻基本信息包括視頻標(biāo)題、視頻描述以及視頻標(biāo)簽,所述視頻類別信息包括所屬頻道、視頻分類以及所屬專輯,所述視頻創(chuàng)建信息包括視頻上傳者信息以及視頻上傳時(shí)間。
10.根據(jù)權(quán)利要求8或9所述的一種基于移動(dòng)終端的網(wǎng)絡(luò)視頻和電視節(jié)目的在線查詢和播放控制系統(tǒng),其特征在于,所述系統(tǒng)還包括節(jié)目鬧鐘提醒模塊,用于對查詢的欲觀看節(jié)目設(shè)置鬧鐘提醒。
【文檔編號】H04N21/438GK103428525SQ201310308593
【公開日】2013年12月4日 申請日期:2013年7月22日 優(yōu)先權(quán)日:2013年7月22日
【發(fā)明者】于俊清, 汪洋, 黃賢強(qiáng), 唐九飛, 何云峰, 管濤 申請人:華中科技大學(xué)