媒體數(shù)據(jù)的下載方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別是涉及媒體數(shù)據(jù)的下載方法和裝置。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)視頻以其豐富多彩的展現(xiàn)內(nèi)容,極大的便利了人們的生活,并逐漸成為人們學(xué)習(xí)、社交以及休閑娛樂(lè)而不可替代的重要方式。尤其是隨著智能移動(dòng)終端的廣泛普及,使人們可以方便的通過(guò)手機(jī)、PDA、平板電腦等各種終端設(shè)備上的瀏覽器訪問(wèn)各大視頻網(wǎng)站,觀看喜愛(ài)的視頻資源。目前各大視頻網(wǎng)站提供的視頻多為基于HLS (HTTP Live Streaming)流媒體播放協(xié)議的m3u8格式。
[0003]HLS協(xié)議最大的特點(diǎn)是使用了流切割技術(shù),將視頻、音頻等流媒體文件切割成多個(gè)TS片段(或稱為TS碎片文件)分別進(jìn)行存儲(chǔ),然后建立一個(gè)與所述多個(gè)TS片段相對(duì)應(yīng)的m3u8描述文件,在該m3u8文件中對(duì)各TS片段的存儲(chǔ)地址、片段時(shí)長(zhǎng)、播放順序等信息進(jìn)行描述??蛻舳烁鶕?jù)m3u8中描述的TS片段的存儲(chǔ)地址進(jìn)行串行或批量的并行漸進(jìn)式下載,并根據(jù)所述片段時(shí)長(zhǎng)及播放順序進(jìn)行播放。該設(shè)計(jì)使流媒體可以實(shí)現(xiàn)碎片化傳輸,有利于充分利用網(wǎng)絡(luò)性能。
[0004]各大視頻網(wǎng)站出于對(duì)視頻版權(quán)或其他方面的考慮,經(jīng)常會(huì)變更流媒體中的若干TS片段的存儲(chǔ)地址,或者對(duì)流媒體重新切割、存儲(chǔ),這可能會(huì)使流媒體中的某些TS片段由于原下載地址失效而下載失敗,導(dǎo)致流媒體無(wú)法正常播放。在下載失敗時(shí),客戶端一般會(huì)重新嘗試下載該流媒體。有時(shí)甚至需要重復(fù)下載多次才能將一個(gè)流媒體的全部的TS片段下載下來(lái),下載成功率低,也降低了用戶的觀賞體驗(yàn)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例提供了一種媒體數(shù)據(jù)的下載方法和裝置,用于下載m3u8格式的流媒體數(shù)據(jù),以解決現(xiàn)有技術(shù)中下載m3u8格式的流媒體時(shí)下載成功率低,影響用戶觀賞體驗(yàn)的問(wèn)題。
[0006]為了解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例公開(kāi)了如下技術(shù)方案:
[0007]—方面,本發(fā)明提供了媒體數(shù)據(jù)的下載方法,所述方法用于下載m3u8格式的流媒體數(shù)據(jù),所述方法包括:
[0008]如果流媒體包含的第一數(shù)目的TS片段下載失敗,則獲取所述第一數(shù)目的TS片段的新下載地址信息,并根據(jù)所述新下載地址信息繼續(xù)下載所述第一數(shù)目的TS片段;
[0009]在繼續(xù)下載后,如果所述第一數(shù)目的TS片段中仍然有第二數(shù)目的TS片段下載失敗,且所述第二數(shù)目的TS片段滿足預(yù)設(shè)的放棄下載條件,則放棄下載所述第二數(shù)目的TS片段。
[0010]優(yōu)選的,所述判斷所述第二數(shù)目的TS片段是否滿足預(yù)設(shè)的放棄下載條件包括:
[0011]如果所述第二數(shù)目的TS片段的片段數(shù)目小于第一預(yù)設(shè)數(shù)目,并且所述第二數(shù)目的TS片段的總時(shí)長(zhǎng)小于第一預(yù)設(shè)時(shí)長(zhǎng)。
[0012]優(yōu)選的,所述方法還包括:
[0013]根據(jù)下載成功的TS片段的片段數(shù)目、對(duì)應(yīng)時(shí)長(zhǎng)及索引順序建立所述流媒體的播放端m3u8描述文件;
[0014]根據(jù)所述播放端m3u8描述文件播放所述流媒體。
[0015]優(yōu)選的,所述獲取所述第一數(shù)目的TS片段的新下載地址信息包括:
[0016]獲取所述流媒體的新下載地址信息;
[0017]根據(jù)所述新下載地址信息獲取所述流媒體的新m3u8描述文件;
[0018]根據(jù)所述新m3u8描述文件獲取所述第一數(shù)目的TS片段的新下載地址信息,根據(jù)所述第一數(shù)目的TS片段的新下載地址信息更換所述第一數(shù)目的TS片段的原下載地址信息。
[0019]優(yōu)選的,所述獲取所述流媒體的新下載地址信息包括:
[0020]在預(yù)設(shè)流媒體網(wǎng)站上獲取與所述流媒體的有效信息相匹配的同一流媒體的地址信息,即為所述流媒體的新下載地址信息,所述有效信息包括所述流媒體的時(shí)長(zhǎng)信息,和/或所述流媒體所在的網(wǎng)頁(yè)地址信息,和/或所述流媒體的地址信息,和/或所述流媒體的名稱。
[0021]優(yōu)選的,所述根據(jù)所述新m3u8描述文件獲取所述第一數(shù)目的TS片段的新下載地址信息包括:
[0022]如果所述新m3u8描述文件中包含的TS片段信息與所述流媒體的原m3u8描述文件中包含的對(duì)應(yīng)TS片段信息屬于同一 TS片段,則在所述新m3u8描述文件中獲取第一數(shù)目的TS片段的新下載地址信息。
[0023]優(yōu)選的,所述新m3u8描述文件中包含的TS片段信息與所述流媒體的原m3u8描述文件中包含的對(duì)應(yīng)TS片段信息屬于同一 TS片段包括:
[0024]所述新m3u8描述文件中包含的TS片段的片段數(shù)目與所述流媒體的原m3u8描述文件中包含的TS片段的片段數(shù)目相等,并且
[0025]所述新m3u8描述文件中包含的TS片段的時(shí)長(zhǎng)與所述流媒體的原m3u8描述文件中包含的對(duì)應(yīng)TS片段的時(shí)長(zhǎng)相等。
[0026]另一方面,本發(fā)明提供了媒體數(shù)據(jù)的下載裝置,所述裝置用于下載m3u8格式的流媒體數(shù)據(jù),所述裝置包括:
[0027]獲取單元,用于如果流媒體包含的第一數(shù)目的TS片段下載失敗,則獲取所述第一數(shù)目的TS片段的下載地址信息,并根據(jù)所述新下載地址信息繼續(xù)下載所述第一數(shù)目的TS片段;
[0028]執(zhí)行單元,用于在繼續(xù)下載后,如果所述第一數(shù)目的TS片段中仍然有第二數(shù)目的TS片段下載失敗,并且所述第二數(shù)目的TS片段滿足預(yù)設(shè)的放棄下載條件,則放棄下載所述第二數(shù)目的TS片段。
[0029]優(yōu)選的,所述執(zhí)行單元包括:
[0030]第一確認(rèn)子單元,用于如果所述第二數(shù)目的TS片段的片段數(shù)目小于第一預(yù)設(shè)數(shù)目,并且所述第二數(shù)目的TS片段的總時(shí)長(zhǎng)小于第一預(yù)設(shè)時(shí)長(zhǎng),則確定所述第二數(shù)目的TS片段滿足預(yù)設(shè)的放棄下載條件。
[0031]優(yōu)選的,所述裝置還包括:
[0032]建立單元,用于根據(jù)下載成功的TS片段的片段數(shù)目、對(duì)應(yīng)時(shí)長(zhǎng)及索引順序建立所述流媒體的播放端m3u8描述文件;
[0033]播放單元,用于根據(jù)所述播放端m3u8描述文件播放所述流媒體。
[0034]優(yōu)選的,所述獲取單元包括:
[0035]第一獲取子單元,用于獲取所述流媒體的新下載地址信息;
[0036]第二獲取子單元,用于根據(jù)所述新下載地址信息獲取所述流媒體的新m3u8描述文件;
[0037]第三獲取子單元,用于根據(jù)所述新m3u8描述文件獲取所述第一數(shù)目的TS片段的新下載地址信息;
[0038]更換子單元,用于根據(jù)所述第一數(shù)目的TS片段的新下載地址信息更換所述第一數(shù)目的TS片段的原下載地址信息。
[0039]優(yōu)選的,所述獲取所述流媒體的新下載地址信息包括:
[0040]在預(yù)設(shè)流媒體網(wǎng)站上獲取與所述流媒體的有效信息相匹配的同一流媒體的地址信息,即為所述流媒體的新下載地址信息,所述有效信息包括所述流媒體的時(shí)長(zhǎng)信息,和/或所述流媒體所在的網(wǎng)頁(yè)地址信息,和/或所述流媒體的地址信息,和/或所述流媒體的名稱。
[0041]優(yōu)選的,所述第三獲取子單元包括:第二確認(rèn)子單元,用于:
[0042]如果所述新m3u8描述文件中包含的TS片段的片段數(shù)目與所述流媒體的原m3u8描述文件中包含的TS片段的片段數(shù)目相等,并且
[0043]所述新m3u8描述文件中包含的TS片段的時(shí)長(zhǎng)與所述流媒體的原m3u8描述文件中包含的對(duì)應(yīng)TS片段的時(shí)長(zhǎng)相等,則確認(rèn)所述新m3u8描述文件中包含的TS片段信息與所述流媒體的原m3u8描述文件中包含的對(duì)應(yīng)TS片段信息屬于同一 TS片段。
[0044]上述媒體數(shù)據(jù)的下載方法及裝置的技術(shù)方案,如果流媒體包含的第一數(shù)目的TS片段下載失敗,則獲取所述第一數(shù)目的TS片段的下載地址信息,并根據(jù)所述新下載地址信息繼續(xù)下載所述第一數(shù)目的TS片段;如果所述