專利名稱:一種多媒體播放終端及其文件拖動(dòng)播放方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于多媒體技術(shù)領(lǐng)域,具體涉及一種多媒體播放終端及其文件拖動(dòng)播放方 法和裝置。
背景技術(shù):
隨著多媒體技術(shù)的不斷發(fā)展,用戶對多媒體播放質(zhì)量的要求也越來越高。以MKV為例,MKV為Matroska的一種媒體文件,也稱多媒體容器(Multimedia Container),是一種新型多媒體封裝格式,可將多種不同編碼的視頻及16條以上不同格式 的音頻和不同語言的字幕流封裝到一個(gè)MatroskaMedia文件當(dāng)中。MKV不同于DivX、XviD等視頻編碼格式,也不同于MP3、0gg等音頻編碼格式。MKV 只是為上述的這些音、視頻提供外殼的“組合”和“封裝”格式。MKV可以理解為一種容器格 式,把只有視頻的XviD和只有音頻的MP3組合起來,然后以一種多媒體介質(zhì)的形式出現(xiàn)。MKV 可以用 Media player Classic、BSplayer、ZoomPlayer 播放器等,甚至包括 Windows Media player。由于MKV能容納多種不同類型編碼的視頻、音頻及字幕流,即便是非常封閉的 RealMedia及QuickTime等流媒體文件也被MKV囊括進(jìn)去,因此MKV幾乎變成了一個(gè)萬能的 媒體容器,應(yīng)用不斷的普及。由于MKV封裝文件能夠提供用戶播放拖動(dòng)的功能,也就是在播放過程中,用戶可 以將文件拖動(dòng)到自己需要的時(shí)間位置開始播放,而不需要總是從文件開始進(jìn)行播放,所以 這個(gè)功能給用戶提供極大的方便。但是由于拖動(dòng)的信息定位索引,一般會(huì)封裝在文件的尾部,當(dāng)MKV文件拷貝不完 整或互聯(lián)網(wǎng)下載不完整時(shí),會(huì)使這些定位索引丟失,導(dǎo)致文件無法拖動(dòng)文件的情況。因此,如何避免由于信息定位索引丟失造成的無法正常拖動(dòng)文件的問題,是多媒 體技術(shù)領(lǐng)域研究的方向之一。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種多媒體文件拖動(dòng)播放方法,旨在解決由于信息定位索 引丟失造成的無法正常拖動(dòng)文件的問題,提高播放質(zhì)量。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種多媒體文件拖動(dòng)播放方法,所述方法包括以下 步驟接收多媒體文件拖動(dòng)指令;判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常;若不正常,計(jì)算出所述拖動(dòng)指令對應(yīng)文件段的大致定位位置;從所述大致定位位置開始按照多媒體文件幀頭的特征值搜索多媒體文件視頻關(guān) 鍵幀;將搜索到的視頻關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻關(guān)鍵幀進(jìn)行時(shí)間戳比較,
當(dāng)搜索到的視頻關(guān)鍵幀與所述音頻關(guān)鍵幀滿足系統(tǒng)設(shè)置的閥值時(shí),從所述視頻關(guān) 鍵幀開始播放多媒體文件。本發(fā)明實(shí)施例的還一目的在于提供一種多媒體文件拖動(dòng)播放裝置,所述裝置包 括拖動(dòng)指令接收模塊,用于接收多媒體文件拖動(dòng)指令;索引判斷模塊,用于判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常;大致定位位置計(jì)算模塊,用于獲取所述拖動(dòng)指令對應(yīng)文件段的大致定位位置;視頻關(guān)鍵幀獲取模塊,用于從所述大致定位位置開始按照多媒體文件幀頭的特征 值搜索多媒體文件視頻關(guān)鍵幀;視頻關(guān)鍵幀判斷模塊,用于將搜索到的視頻關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻 關(guān)鍵幀進(jìn)行時(shí)間戳比較,以及播放模塊,用于從所述視頻關(guān)鍵幀開始播放多媒體文件。本發(fā)明實(shí)施例還提供一種播放終端,所述終端包括本發(fā)明實(shí)施例提供的多媒體文 件拖動(dòng)播放裝置。本發(fā)明實(shí)施例通過判斷用戶拖動(dòng)指令對應(yīng)的文件段的索引是否正常,若不正常, 在用戶拖動(dòng)的大致位置搜索視頻關(guān)鍵幀,當(dāng)搜索到的視頻關(guān)鍵幀符合條件時(shí),從該視頻關(guān) 鍵幀開始播放多媒體文件,解決由于信息定位索引丟失造成的無法正常拖動(dòng)文件的問題, 提高了播放質(zhì)量,利于多媒體播放終端的推廣。
圖1為本發(fā)明實(shí)施例提供的多媒體文件拖動(dòng)播放方法的流程圖;圖2為本發(fā)明實(shí)施例提供的多媒體文件拖動(dòng)播放裝置的結(jié)構(gòu)圖;圖3為本發(fā)明實(shí)施例提供的多媒體文件拖動(dòng)播放裝置中大致定位位置計(jì)算模塊 的內(nèi)部結(jié)構(gòu)圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不 用于限定本發(fā)明。本發(fā)明實(shí)施例通過判斷用戶拖動(dòng)指令對應(yīng)的文件段的索引是否正常,若不正常, 在用戶拖動(dòng)的大致位置搜索視頻關(guān)鍵幀,當(dāng)搜索到的視頻關(guān)鍵幀符合條件時(shí),從該視頻關(guān) 鍵幀開始播放多媒體文件。圖1示出了本發(fā)明實(shí)施例提供的多媒體文件拖動(dòng)播放方法的流程。在步驟SlOl中,在用戶通過拖動(dòng)條拖動(dòng)文件播放時(shí),接收多媒體文件拖動(dòng)指令。在步驟S102中,判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常,若是,則正常播 放文件;否則進(jìn)行步驟S103。在具體實(shí)施過程中,首先從多媒體文件數(shù)據(jù)頭中,解析出所述拖動(dòng)指令對應(yīng)文件 段開始的位置,然后從所述文件段開始位置,按照所述多媒體文件標(biāo)準(zhǔn)協(xié)議,檢查所述文件 段數(shù)據(jù)結(jié)構(gòu)是否完整,同時(shí)檢查所述文件段結(jié)構(gòu)類型中的數(shù)據(jù)值是否符合所述多媒體文件標(biāo)準(zhǔn)協(xié)議的定義范圍。如果文件段數(shù)據(jù)結(jié)構(gòu)不完整,或者,文件段結(jié)構(gòu)類型中的數(shù)據(jù)值不符合所述多媒 體文件標(biāo)準(zhǔn)協(xié)議的定義范圍,則判定文件段的索引不能正常工作。在步驟S103中,計(jì)算出所述拖動(dòng)指令對應(yīng)文件段的大致定位位置。在具體實(shí)施過程中,首先從所述多媒體文件數(shù)據(jù)頭中,解析出該多媒體文件的總 時(shí)間,然后獲取用戶的拖動(dòng)時(shí)間,根據(jù)用戶的拖動(dòng)時(shí)間以及多媒體文件的總時(shí)間獲取所述 拖動(dòng)時(shí)間與所述總時(shí)間的比值。之后,通過文件操作函數(shù)獲取所述多媒體文件的大小值,并根據(jù)拖動(dòng)時(shí)間與所述 總時(shí)間的比值以及所述多媒體文件的大小值計(jì)算出所述大致定位位置。在步驟S104中,從所述大致定位位置開始按照多媒體文件幀頭的特征值搜索多 媒體文件視頻關(guān)鍵幀。在步驟S105中,將搜索到的視頻關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻關(guān)鍵幀進(jìn) 行時(shí)間戳比較,判斷搜索到的視頻關(guān)鍵幀與距其最近音頻關(guān)鍵幀之間的時(shí)間間隔是否小于 系統(tǒng)設(shè)置的閥值;若是,則進(jìn)行步驟S106,否則繼續(xù)進(jìn)行步驟S104。在步驟S106中,當(dāng)搜索到的視頻關(guān)鍵幀與所述音頻關(guān)鍵幀滿足系統(tǒng)設(shè)置的閥值 時(shí),從所述視頻關(guān)鍵幀開始播放多媒體文件。通過對拖動(dòng)指令對應(yīng)文件段區(qū)域進(jìn)行視頻關(guān)鍵幀的搜索,即使拖動(dòng)指令對應(yīng)位置 的視頻關(guān)鍵幀不能正常工作,也保證了多媒體文件播放的連續(xù)性,不會(huì)出現(xiàn)停滯或者卡住 的現(xiàn)象。圖2示出了本發(fā)明實(shí)施例提供的多媒體文件拖動(dòng)播放裝置的結(jié)構(gòu)。所述裝置包括拖動(dòng)指令接收模塊21、索引判斷模塊22、大致定位位置計(jì)算模塊 23、視頻關(guān)鍵幀獲取模塊M、視頻關(guān)鍵幀判斷模塊25以及播放模塊26。其中,拖動(dòng)指令接收模塊21接收多媒體文件拖動(dòng)指令;索引判斷模塊22判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常;在具體實(shí)施過程中,所述索引判斷模塊22具體包括開始位置解析模塊221以及索 引檢查模塊222:開始位置解析模塊221從多媒體文件數(shù)據(jù)頭中,解析出所述拖動(dòng)指令對應(yīng)文件段 的開始位置;索引檢查模塊222從所述文件段的開始位置,按照所述多媒體文件標(biāo)準(zhǔn)協(xié)議,檢 查所述文件段數(shù)據(jù)結(jié)構(gòu)是否完整,以及所述文件段結(jié)構(gòu)類型中的數(shù)據(jù)值是否符合所述多媒 體文件標(biāo)準(zhǔn)協(xié)議的定義范圍。大致定位位置計(jì)算模塊23獲取所述拖動(dòng)指令對應(yīng)文件段的大致定位位置;具體的大致定位位置計(jì)算模塊23的結(jié)構(gòu)請參閱圖3,以及對圖3的詳細(xì)描述。視頻關(guān)鍵幀獲取模塊M從所述大致定位位置開始按照多媒體文件幀頭的特征值 搜索多媒體文件視頻關(guān)鍵幀;視頻關(guān)鍵幀判斷模塊25將所述視頻關(guān)鍵幀獲取模塊M搜索到的視頻關(guān)鍵幀與離 該視頻關(guān)鍵幀最近的音頻關(guān)鍵幀進(jìn)行時(shí)間戳比較;優(yōu)選的,視頻關(guān)鍵幀判斷模塊25判斷搜索到的視頻關(guān)鍵幀與距其最近音頻關(guān)鍵 幀之間的時(shí)間間隔是否小于系統(tǒng)設(shè)置的閥值,若是,則判定搜索到的視頻關(guān)鍵幀與所述音頻關(guān)鍵幀滿足系統(tǒng)設(shè)置的閥值。播放模塊沈從所述視頻關(guān)鍵幀開始播放多媒體文件。圖3示出了大致定位位置計(jì)算模塊23的具體結(jié)構(gòu)。所述大致定位位置計(jì)算模塊23具體包括總時(shí)間解析模塊231、拖動(dòng)時(shí)間獲取模塊 232、時(shí)間比值計(jì)算模塊233、文件大小獲取模塊234以及大致定位位置計(jì)算模塊235 其中,總時(shí)間解析模塊231從所述多媒體文件數(shù)據(jù)頭中,解析出該多媒體文件的 總時(shí)間;拖動(dòng)時(shí)間獲取模塊232獲取用戶的拖動(dòng)時(shí)間;時(shí)間比值計(jì)算模塊233獲取所述拖動(dòng)時(shí)間與所述總時(shí)間的比值;文件大小獲取模塊234通過文件操作函數(shù)獲取所述多媒體文件的大小值;大致定位位置計(jì)算模塊235根據(jù)所述比例值以及所述多媒體文件的大小值獲取 所述大致定位位置。本發(fā)明實(shí)施例還提供一種多媒體播放終端,所述終端包括本發(fā)明實(shí)施例提供的多 媒體文件拖動(dòng)播放裝置,鑒于該裝置在上文已有詳細(xì)的描述,此處不再贅述。本發(fā)明實(shí)施例通過判斷用戶拖動(dòng)指令對應(yīng)的文件段的索引是否正常,若不正常, 在用戶拖動(dòng)的大致位置搜索視頻關(guān)鍵幀,當(dāng)搜索到的視頻關(guān)鍵幀符合條件時(shí),從該視頻關(guān) 鍵幀開始播放多媒體文件,解決由于信息定位索引丟失造成的無法正常拖動(dòng)文件的問題, 提高了播放質(zhì)量,利于多媒體播放終端的推廣。應(yīng)當(dāng)理解的是,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以改進(jìn)或變換, 而這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種多媒體文件拖動(dòng)播放方法,其特征在于,所述方法包括以下步驟 接收多媒體文件拖動(dòng)指令,判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常; 若不正常,計(jì)算出所述拖動(dòng)指令對應(yīng)文件段的大致定位位置;從所述大致定位位置開始按照多媒體文件幀頭的特征值搜索多媒體文件視頻關(guān)鍵幀;將搜索到的視頻關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻關(guān)鍵幀進(jìn)行時(shí)間戳比較,當(dāng)搜索 到的視頻關(guān)鍵幀與所述音頻關(guān)鍵幀滿足系統(tǒng)設(shè)置的閥值時(shí),從所述視頻關(guān)鍵幀開始播放多 媒體文件。
2.如權(quán)利要求1所述的多媒體文件拖動(dòng)播放方法,其特征在于,所述判斷所述拖動(dòng)指 令對應(yīng)文件的索引是否正常的步驟具體包括從多媒體文件數(shù)據(jù)頭中,解析出所述拖動(dòng)指令對應(yīng)文件段的開始位置; 從所述文件段的開始位置,按照所述多媒體文件標(biāo)準(zhǔn)協(xié)議,檢查所述文件段數(shù)據(jù)結(jié)構(gòu) 是否完整,以及所述文件段結(jié)構(gòu)類型中的數(shù)據(jù)值是否符合所述多媒體文件標(biāo)準(zhǔn)協(xié)議的定義 范圍。
3.如權(quán)利要求1所述的多媒體文件拖動(dòng)播放方法,其特征在于,所述獲取所述拖動(dòng)指 令對應(yīng)多媒體文件的大致定位位置的步驟具體包括從所述多媒體文件數(shù)據(jù)頭中,解析出該多媒體文件的總時(shí)間;獲取用戶的拖動(dòng)時(shí)間;計(jì)算出所述拖動(dòng)時(shí)間與所述總時(shí)間的比值;通過文件操作函數(shù)獲取所述多媒體文件的大小值;根據(jù)所述比例值以及所述多媒體文件的大小值獲取所述大致定位位置。
4.如權(quán)利要求1所述的多媒體文件拖動(dòng)播放方法,其特征在于,所述將搜索到的視頻 關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻關(guān)鍵幀進(jìn)行時(shí)間戳比較的步驟具體包括判斷搜索到的視頻關(guān)鍵幀與距其最近音頻關(guān)鍵幀之間的時(shí)間間隔是否小于系統(tǒng)設(shè)置 的閥值,若是,則判定搜索到的視頻關(guān)鍵幀與所述音頻關(guān)鍵幀滿足系統(tǒng)設(shè)置的閥值。
5.一種多媒體文件拖動(dòng)播放裝置,其特征在于,所述裝置包括 拖動(dòng)指令接收模塊,用于接收多媒體文件拖動(dòng)指令;索引判斷模塊,用于判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常; 大致定位位置計(jì)算模塊,用于計(jì)算出所述拖動(dòng)指令對應(yīng)文件段的大致定位位置; 視頻關(guān)鍵幀獲取模塊,用于從所述大致定位位置開始按照多媒體文件幀頭的特征值搜 索多媒體文件視頻關(guān)鍵幀;視頻關(guān)鍵幀判斷模塊,用于將搜索到的視頻關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻關(guān)鍵 幀進(jìn)行時(shí)間戳比較,以及播放模塊,用于從所述視頻關(guān)鍵幀開始播放多媒體文件。
6.如權(quán)利要求5所述的多媒體文件拖動(dòng)播放裝置,其特征在于,所述索引判斷模塊具 體包括開始位置解析模塊,用于從多媒體文件數(shù)據(jù)頭中,解析出所述拖動(dòng)指令對應(yīng)文件段的 開始的位置;以及索引檢查模塊,用于從所述文件段的開始位置,按照所述多媒體文件標(biāo)準(zhǔn)協(xié)議,檢查所述文件段數(shù)據(jù)結(jié)構(gòu)是否完整,以及所述文件段結(jié)構(gòu)類型中的數(shù)據(jù)值是否符合所述多媒體文 件標(biāo)準(zhǔn)協(xié)議的定義范圍。
7.如權(quán)利要求5所述的多媒體文件拖動(dòng)播放裝置,其特征在于,所述大致定位位置計(jì) 算模塊具體包括總時(shí)間解析模塊,用于從所述多媒體文件數(shù)據(jù)頭中,解析出該多媒體文件的總時(shí)間;拖動(dòng)時(shí)間獲取模塊,用于獲取用戶的拖動(dòng)時(shí)間;時(shí)間比值計(jì)算模塊,用于計(jì)算出所述拖動(dòng)時(shí)間與所述總時(shí)間的比值;文件大小獲取模塊,用于通過文件操作函數(shù)獲取所述多媒體文件的大小值;大致定位位置計(jì)算模塊,用于根據(jù)所述比例值以及所述多媒體文件的大小值獲取所述 大致定位位置。
8.如權(quán)利要求5所述的多媒體文件拖動(dòng)播放裝置,其特征在于,所述視頻關(guān)鍵幀判斷模塊,還用于判斷搜索到的視頻關(guān)鍵幀與距其最近音頻關(guān)鍵幀之 間的時(shí)間間隔是否小于系統(tǒng)設(shè)置的閥值,若是,則判定搜索到的視頻關(guān)鍵幀與所述音頻關(guān) 鍵幀滿足系統(tǒng)設(shè)置的閥值。
9.一種多媒體播放終端,其特征在于,所述終端包括權(quán)利要求5至8任一項(xiàng)所述的多媒 體文件拖動(dòng)播放裝置。
全文摘要
本發(fā)明屬于多媒體技術(shù)領(lǐng)域,公開了一種多媒體播放終端及其文件拖動(dòng)播放方法和裝置,所述方法包括接收多媒體文件拖動(dòng)指令;判斷所述拖動(dòng)指令對應(yīng)文件段的索引是否正常;若不正常,獲取所述拖動(dòng)指令對應(yīng)文件段的大致定位位置;從所述大致定位位置開始按照多媒體文件幀頭的特征值搜索多媒體文件視頻關(guān)鍵幀;將搜索到的視頻關(guān)鍵幀與離該視頻關(guān)鍵幀最近的音頻關(guān)鍵幀進(jìn)行時(shí)間戳比較,當(dāng)搜索到的視頻關(guān)鍵幀與所述音頻關(guān)鍵幀滿足系統(tǒng)設(shè)置的閥值時(shí),從所述視頻關(guān)鍵幀開始播放多媒體文件。本發(fā)明解決由于多媒體文件的信息定位索引丟失造成的無法正常拖動(dòng)文件的問題,提高了多媒體播放質(zhì)量。
文檔編號H04N5/00GK102118539SQ200910238929
公開日2011年7月6日 申請日期2009年12月30日 優(yōu)先權(quán)日2009年12月30日
發(fā)明者劉紋高 申請人:Tcl集團(tuán)股份有限公司