89] 因此,根據(jù)圖9中所示出的技術(shù)(900),針對根據(jù)容器格式定義的按層級組織的語 法元素中的至少一些,容器格式處理工具利用其他值(例如,隨機值)替代有效值。然而同 時,該工具保留按照容器格式的媒體文件的文件格式結(jié)構(gòu)。當容器格式源在底層解析操作 期間遇到不同類型的錯誤時,對該容器格式源的性能進行評估可以導致在檢測錯誤、保護 免受錯誤、隱藏錯誤和從錯誤恢復上的改進。
[0090] 圖10示出了性質(zhì)資源管理器的屏幕(1000),其示出了已經(jīng)利用隨機值將其替代 以便模仿對于媒體文件的破壞的在媒體文件中的所選MP4語法元素的值。媒體文件的文件 格式結(jié)構(gòu)被保持得完整無缺,但是"(composition) time to sample (采樣的(構(gòu)成時間))" 盒子中的若干sample_offset (樣本_偏移量)語法元素的值已被改動。
[0091] 媒體文件可能以其他方式被破壞。在一些情況下,按照容器格式的媒體文件由于 音頻記錄失效而被破壞。例如,智能電話中或其他地方的記錄系統(tǒng)可以被初始化來記錄音 頻和視頻二者,但是出于某種原因沒有接收到音頻數(shù)據(jù)。得到的媒體文件具有空的音頻軌 道,從而具有沒有意義的結(jié)構(gòu)。容器格式處理工具可以通過從按照容器格式的媒體文件的 音頻軌道移除音頻數(shù)據(jù)來模仿這樣的音頻記錄失效。在再一些情況下,按照容器格式的媒 體文件由于不正確的記錄終止而被破壞。例如,智能電話中或其他地方的記錄系統(tǒng)可能在 記錄的結(jié)尾處將無效數(shù)據(jù)傳播到媒體文件的盒子中。容器格式處理工具可以通過將根據(jù)容 器格式定義的額外語法元素添加到按照容器格式的媒體文件的對象中來模仿這樣的不正 確的記錄終止。
[0092] 當其解析并消費媒體文件時,容器格式源可以以不同方式對媒體文件中的錯誤作 出反應。對于某些類型的錯誤,容器格式源例如在解析失效時終止重放。對于其他類型的 錯誤,容器格式源可能能夠繼續(xù),忽略錯誤或嘗試校正或隱藏錯誤。
[0093] -般而言,容器格式源檢測媒體文件中的錯誤并且有能力隱藏至少一些類型的錯 誤或從其恢復,以便在其遇到已破壞的媒體文件時提供更好的用戶體驗。例如,容器格式處 理工具可以檢測容器格式語法元素中的特定類型的錯誤并且基于根據(jù)其他值的推斷來校 正錯誤。以下是某些具體示例: ?持續(xù)時間值(duration value)可以被校正成在內(nèi)部與其他持續(xù)時間值相一致。 ?對于樣本的重放在其樣本尺寸(sample size)超過尺寸閾值(該尺寸閾值基于針對 其他樣本的樣本尺寸的值而被設置或其被設置成預定義閾值)的情況下可以被跳過。 ?如果影片片段隨機訪問偏移量(movie fragment random access offset,mfro)盒 子中的尺寸域是不正確的(例如,因為其與針對父親影片片段隨機訪問(movie fragment random access,mfra)盒子規(guī)定的尺寸值不匹配),則媒體文件的隨機訪問能力可以被禁 用,使得僅僅順序重放被啟用。 ?如果軌道運行中的樣本的樣本尺寸的總和(如軌道片段運行(track fragment run, trim )盒子中所指示的那樣)大于媒體數(shù)據(jù)(mdat)盒子的尺寸,則針對其的偏移量指向mdat 盒子之外的樣本可以被跳過。 ?類似地,具有大于文件尺寸的偏移量的組塊(chunk)可以被跳過。
[0094] 替換地,容器格式處理工具檢測并且校正容器格式語法元素中的其他和/或附加 類型的錯誤。
[0095] C.其他編輯 容器格式處理工具可以以其他方式編輯按照容器格式的媒體文件。這樣的編輯在若干 場景中可能是有用的。
[0096] -些視頻文件例如由于版權(quán)問題而在訪問和分發(fā)上具有限定。如果特定容器格式 語法元素或容器格式語法元素的感興趣組合僅僅存在于具有受到版權(quán)保護的內(nèi)容的媒體 文件中,則對于該媒體文件的散發(fā)可能被限制,從而潛在地妨礙可以通過測試容器格式源 而實現(xiàn)的改進。為了解決這種情形,容器格式處理工具可以在制作含有不同的已編碼媒體 內(nèi)容的另外的媒體文件時插入新的容器格式語法元素。也就是說,對于具有可自由分發(fā)的 媒體內(nèi)容的給定媒體文件,容器格式處理工具可以生成媒體文件的容器格式語法元素的不 同組合,而不需要可能由于版權(quán)問題而具有潛在訪問限定的特定視頻文件。所生成的容器 格式語法元素的組合可以對按照容器格式的另一媒體文件的問題(例如,不能被自由分發(fā) 的媒體文件的問題)進行效仿或者對用于測試目的的場景進行效仿。
[0097] 或者,作為另一個示例,容器格式處理工具可以檢測并且校正媒體文件中的錯誤, 以便在進一步將媒體文件分送到容器格式源之前解決問題。例如,在解析按照容器格式的 媒體文件期間,容器格式處理工具檢測根據(jù)容器格式定義的按層級組織的語法元素中的一 個或多個已破壞的值。然后容器格式處理工具校正一個或多個已破壞的值,例如,如以上參 照示例容器格式源所描述的那樣。
[0098] 鑒于所公開的發(fā)明的原理可以被應用的許多可能的實施例,應該認識到,所圖示 的實施例僅僅是本發(fā)明的優(yōu)選示例,并且不應該當作對于本發(fā)明的范圍的限制。相反,本發(fā) 明的范圍由所附權(quán)利要求來限定。因此,就我們的發(fā)明而言,我們要求保護進入這些權(quán)利要 求的范圍和精神的全部。
【主權(quán)項】
1. 一種在計算系統(tǒng)中的方法,包括: 接收用于呈現(xiàn)的按照容器格式的媒體文件,該媒體文件包括音頻內(nèi)容、圖像內(nèi)容和視 頻內(nèi)容中的一個或多個,其中容器格式是樹結(jié)構(gòu)的,使得媒體文件包括根據(jù)容器格式定義 的按層級組織的語法元素;以及 對于媒體文件中根據(jù)容器格式定義的按層級組織的語法元素中的至少一些實施知曉 語法的操縱。2. 如權(quán)利要求1的方法,其中實施知曉語法的操縱包括,驗證媒體文件對于容器格式 的遵循。3. 如權(quán)利要求2的方法,其中驗證遵循包括: 對于根據(jù)容器格式定義的按層級組織的語法元素中的所述至少一些實施單一元素的 驗證; 對于根據(jù)容器格式定義的按層級組織的語法元素中的所述至少一些實施交叉驗證; 檢查在呈現(xiàn)中的音頻樣本和視頻樣本之間的同步;以及 檢查根據(jù)容器格式定義的按層級組織的語法元素中的任何強制性語法元素的存在性。4. 如權(quán)利要求1的方法,其中實施知曉語法的操縱包括,模仿對于按照容器格式的媒 體文件的破壞。5. 如權(quán)利要求4的方法,其中模仿破壞包括以下項中的一個或多個: 針對根據(jù)容器格式定義的按層級組織的語法元素中的所述至少一些中的一個或多個, 利用其他值替代有效值,同時保留按照容器格式的媒體文件的文件格式結(jié)構(gòu); 對于根據(jù)容器格式定義的按層級組織的語法元素中的給定語法元素,通過改動該給定 語法元素的值來模仿隨機比特反轉(zhuǎn); 通過從按照容器格式的媒體文件的音頻軌道移除音頻數(shù)據(jù)來模仿音頻記錄失效; 通過將根據(jù)容器格式定義的額外語法元素添加到按照容器格式的媒體文件的對象中 來模仿不正確的記錄終止。6. 如權(quán)利要求1的方法,其中實施知曉語法的操縱包括: 檢測根據(jù)容器格式定義的按層級組織的語法元素中的一個或多個已破壞的值;以及 校正所述一個或多個已破壞的值。7. 如權(quán)利要求1的方法,其中實施知曉語法的操縱包括:將根據(jù)容器格式定義的按層 級組織的新的語法元素插入到按照容器格式的媒體文件中,以便對按照容器格式的另一個 媒體文件的問題進行效仿。8. 如權(quán)利要求1的方法,其中根據(jù)容器格式定義的按層級組織的語法元素是根據(jù)容器 格式嵌套在層級結(jié)構(gòu)中的對象和對象屬性。9. 一種計算系統(tǒng),包括: 用于存儲用于呈現(xiàn)的按照容器格式的媒體文件的緩存器,該媒體文件包括音頻內(nèi)容、 圖像內(nèi)容和視頻內(nèi)容中的一個或多個,其中容器格式是樹結(jié)構(gòu)的,使得媒體文件包括根據(jù) 容器格式定義的按層級組織的語法元素;以及 語法操縱工具,其適合于對于媒體文件中根據(jù)容器格式定義的按層級組織的語法元素 中的至少一些實施知曉語法的操縱。10. -種或多種計算機可讀介質(zhì),其存儲了計算機可執(zhí)行指令,所述計算機可執(zhí)行指 令使得計算系統(tǒng)被編程從而實施一種方法,該方法包括: 接收用于呈現(xiàn)的按照容器格式的媒體文件,該媒體文件包括音頻內(nèi)容、圖像內(nèi)容和視 頻內(nèi)容中的一個或多個,其中容器格式是樹結(jié)構(gòu)的,使得媒體文件包括根據(jù)容器格式定義 的按層級組織的語法元素;以及 對于媒體文件中根據(jù)容器格式定義的按層級組織的語法元素中的至少一些實施知曉 語法的操作,其中所述知曉語法的操縱包括,通過以下操作來驗證媒體文件對于容器格式 的遵循: 檢查根據(jù)容器格式定義的按層級組織的語法元素中的任何強制性語法元素的存在 性; 對于根據(jù)容器格式定義的按層級組織的語法元素中的所述至少一些中的每一個實施 單一元素的驗證;以及 對于根據(jù)容器格式定義的按層級組織的語法元素中的所述至少一些中的一些實施交 叉驗證。
【專利摘要】容器格式處理工具對于媒體文件中根據(jù)容器格式定義的按層級組織的語法元素實施知曉語法的操縱。例如,容器格式驗證器檢查媒體文件對于容器格式的遵循,這可以有助于確保媒體內(nèi)容的各種各樣的源與重放裝備之間的互操作性。遵循驗證可以包括,單獨的語法元素的驗證、交叉驗證、對于任何強制性語法元素都是存在的驗證和/或同步的驗證?;蛘?,容器格式“模糊器”模仿對于媒體文件的破壞,這可以有助于測試重放裝備對于媒體文件中的錯誤的恢復力。容器格式模糊器可以模仿隨機比特反轉(zhuǎn)錯誤、音頻記錄失效或不正確的記錄終止。或者,容器格式編輯器可以以其他方式編輯按照容器格式的媒體文件。
【IPC分類】H04N21/85, G06F17/30, G11B27/36
【公開號】CN105122370
【申請?zhí)枴緾N201380075289
【發(fā)明人】F.達拉爾, 吳勇軍
【申請人】微軟技術(shù)許可有限責任公司
【公開日】2015年12月2日
【申請日】2013年9月13日
【公告號】US20140304303, WO2014163663A1