0079] 若是,則執(zhí)行步驟S208 ;若否,則執(zhí)行步驟S204。
[0080] 步驟S208,通過硬件解碼器執(zhí)行硬件解碼初始化操作,判斷該硬件解碼初始化操 作是否發(fā)生錯誤;
[0081] 具體地,如圖5所示,本步驟具體可包括:
[0082] 步驟S2081,通過該硬件解碼器對該視頻中一組指定的視頻特征參數(shù)進行分析,以 確定該硬件解碼器是否支持該視頻特征參數(shù);
[0083] 該組指定的視頻特征參數(shù)可以但不限于包括:視頻的配置參數(shù)、級別參數(shù)以及寬 高參數(shù)。其中,視頻的配置參數(shù)用于說明視頻編碼的復(fù)雜度,視頻的級別參數(shù)指視頻的分辨 率的范圍,寬高參數(shù)指視頻的寬度與高度的值。
[0084] 具體地,移動終端200通過硬件解碼器(如,多媒體、視頻、音頻解碼芯片)從該視 頻的文件中得到上述視頻特征參數(shù),讀取并分析該視頻特征參數(shù),以確定該硬件解碼器是 否支持該視頻特征參數(shù)。
[0085] 步驟S2082,若不支持,則確定該硬件解碼初始化操作發(fā)生錯誤;
[0086] 步驟S2083,若支持,則判斷渲染器支持顯示的顏色的格式與該硬件解碼器支持的 視頻解壓縮格式是否匹配;
[0087] 當(dāng)使用硬件方式渲染視頻時,因為渲染器顯示時的顏色通常為RGB565格式,而硬 件解碼器支持的視頻解壓縮的格式一般為YUV格式,根據(jù)不同的芯片YUV格式會有許多種 版本,系統(tǒng)通常會對解壓縮格式有匹配性要求,例如,有的版本的YUV格式的視頻能直接轉(zhuǎn) 為RGB565格式,而有的版本的YUV格式的視頻則不能直接轉(zhuǎn)為RGB565格式,而當(dāng)不能直接 轉(zhuǎn)換時,也即格式不符合要求(不匹配)時,系統(tǒng)會返回錯誤信息。
[0088] 步驟S2084,若不匹配,則確定該硬件解碼初始化操作發(fā)生錯誤。
[0089] 當(dāng)系統(tǒng)返回錯誤信息時,確定渲染器支持顯示的顏色的格式與該硬件解碼器支持 的視頻解壓縮格式不匹配,該硬件解碼初始化操作發(fā)生錯誤。
[0090] 若該硬件解碼初始化操作發(fā)生錯誤,則執(zhí)行步驟S204 ;若該硬件解碼初始化操作 未發(fā)生錯誤,則執(zhí)行步驟S209。
[0091] 步驟S209,通過該硬件解碼器正式解碼該視頻,判斷該正式解碼是否發(fā)生錯誤;
[0092] 具體地,如圖6所示,本步驟可包括:
[0093] 步驟S2091,通過該硬件解碼器解碼該視頻的首幀,若解碼前后該視頻特征參數(shù)的 信息不一致,則重新確認(rèn)解碼后獲得的該視頻特征參數(shù),并當(dāng)確認(rèn)過程中發(fā)生錯誤時,確定 該正式解碼發(fā)生錯誤;
[0094] 有時候在初始化時獲取的該視頻特征參數(shù)的信息與解碼后獲取的該視頻特征參 數(shù)的信息會不一致,例如視頻的寬高參數(shù),初始化時獲得的該寬高參數(shù)的值與解碼該視頻 的首幀后獲得的值很可能是不一致的,此時硬件解碼器會重新確認(rèn)解碼后獲取的該視頻特 征參數(shù)的信息,以便于后續(xù)正確解碼。若在重新確認(rèn)過程中發(fā)生錯誤,則確定正式解碼發(fā)生 錯誤。
[0095] 步驟S2092,若解碼前后該視頻特征參數(shù)的信息一致,或確認(rèn)過程中未發(fā)生錯誤, 則繼續(xù)解碼該視頻的其他幀,并當(dāng)解碼過程中發(fā)生錯誤時,確定該正式解碼發(fā)生錯誤。
[0096] 若初始化時獲取的該視頻特征參數(shù)的信息與解碼后獲取的該視頻特征參數(shù)的信 息一致,或在重新確認(rèn)解碼后獲取的該視頻特征參數(shù)的信息的過程中未發(fā)生錯誤,則繼續(xù) 解碼該視頻的其他幀,并當(dāng)解碼過程中接收到系統(tǒng)返回的錯誤碼時,確定正式解碼發(fā)生錯 誤。
[0097] 若該正式解碼發(fā)生錯誤,則執(zhí)行步驟S204。
[0098] 本發(fā)明實施例提供的視頻解碼方法,通過在視頻解碼前根據(jù)移動終端的型號信息 與白名單中的信息的匹配情況,以及待解碼的視頻的格式是否為預(yù)置視頻編碼標(biāo)準(zhǔn)格式, 選擇對應(yīng)的解碼方式,可為該視頻確定出最合適的解碼方式,提高視頻解碼的靈活性及成 功率。此外,通過在按照選定的解碼方式解碼視頻的過程中,根據(jù)解碼過程中出現(xiàn)的錯誤及 時切換其他解碼方式,可進一步減少視頻解碼的錯誤率,提高解碼效率。
[0099] 第三實施例
[0100] 圖7為本發(fā)明第三實施例提供的視頻解碼裝置的結(jié)構(gòu)示意圖。本實施例提供的視 頻解碼裝置30可以運行于圖1所示的移動終端200中,用于實現(xiàn)上述實施例中的視頻解碼 方法。如圖7所示,視頻解碼裝置30包括:
[0101] 獲取模塊301,用于獲取移動終端的型號信息;
[0102] 判斷模塊302,用于判斷獲取模塊301獲取的該移動終端的型號信息是否與白名 單中的信息相匹配,該白名單中記錄有支持硬件解碼的移動終端的型號信息;
[0103] 解碼模塊303,用于若判斷模塊302的判斷結(jié)果為不匹配,則通過軟件解碼器解碼 視頻;
[0104] 獲取模塊301,還用于若判斷模塊302的判斷結(jié)果為相匹配,則根據(jù)該移動終端的 處理器的版本信息獲取對應(yīng)的視頻解碼庫;
[0105] 判斷模塊302,還用于根據(jù)獲取模塊301獲取的該視頻解碼庫判斷該視頻的格式 是否為預(yù)置視頻編碼標(biāo)準(zhǔn)格式;
[0106] 解碼模塊303,還用于若判斷模塊302的判斷結(jié)果為是,則通過硬件解碼器解碼該 視頻,若否,則執(zhí)行該通過軟件解碼器解碼視頻的步驟。
[0107] 本實施例對視頻解碼裝置40的各功能模塊實現(xiàn)各自功能的具體過程,請參見上 述圖1至圖6所示實施例中描述的具體內(nèi)容,此處不再贅述。
[0108] 本發(fā)明實施例提供的視頻解碼裝置,通過在視頻解碼前根據(jù)移動終端的型號信息 與白名單中的信息的匹配情況,以及待解碼的視頻的格式是否為預(yù)置視頻編碼標(biāo)準(zhǔn)格式, 選擇對應(yīng)的解碼方式,可為該視頻確定出最合適的解碼方式,提高視頻解碼的靈活性及成 功率。
[0109] 第四實施例
[0110] 圖8為本發(fā)明第四實施例提供的視頻解碼裝置的結(jié)構(gòu)示意圖。本實施例提供的視 頻解碼裝置40可以運行于圖1所示的移動終端200中,用于實現(xiàn)上述實施例中的視頻解碼 方法。如圖8所示,與圖7所示的視頻解碼裝置30不同的是:
[0111] 進一步地,解碼模塊303包括:
[0112] 判斷單元3031,用于通過該硬件解碼器執(zhí)行硬件解碼初始化操作,判斷該硬件解 碼初始化操作是否發(fā)生錯誤;
[0113] 解碼單元3032,用于若該硬件解碼初始化操作發(fā)生錯誤,則執(zhí)行該通過軟件解碼 器解碼視頻的步驟;
[0114] 判斷單元3031,還用于若該硬件解碼初始化操作未發(fā)生錯誤,則通過該硬件解碼 器正式解碼該視頻,判斷該正式解碼是否發(fā)生錯誤;
[0115] 解碼單元3032,還用于若該正式解碼發(fā)生錯誤,則執(zhí)行該通過軟件解碼器解碼視 頻的步驟。
[0116] 進一步地,判斷單元3031,還用于通過該硬件解碼器對該視頻中一組指定的視頻 特征參數(shù)進行分析,以確定該硬件解碼器是否支持該視頻特征參數(shù),若不支持,則確定該硬 件解碼初始化操作發(fā)生錯誤,若支持,則判斷渲染器支持顯示的顏色的格式與該硬件解碼 器支持的視頻解壓縮格式是否匹配,若不匹配,則確定該硬件解碼初始化操作發(fā)生錯誤。
[0117] 進一步地,判斷單元3031,還用于通過該硬件解碼器解碼該視頻的首幀,若解碼前 后該視頻特征參數(shù)的信息不一致,則重新確認(rèn)解碼后獲得的該視頻特征參數(shù),并當(dāng)確認(rèn)過 程中發(fā)生錯誤時,確定該正式解碼發(fā)生錯誤,還用于若解碼前后該視頻特征參數(shù)的信息一 致,或確認(rèn)過程中未發(fā)生錯誤,則繼續(xù)解碼該視頻的其他幀,并當(dāng)解碼過程中發(fā)生錯誤時, 確定該正式解碼發(fā)生錯誤。
[0118] 進一步地,判斷模塊302包括:
[0119] 發(fā)送單元3021,用于將該移動終端的型號信息發(fā)送給服務(wù)器,使得該服務(wù)器將該 移動終端的型號信息與該白名單中的信息進行匹配;
[0120] 信息匹配判斷單元3022,用于根據(jù)該服務(wù)器返回的匹配結(jié)果判斷該移動終端的型 號信息是否與白名單中的信息相匹配。
[0121] 進一步地,解碼模塊303,還用于通過該軟件解碼器解碼該視頻,若解碼過程中發(fā) 生解碼錯誤,則切換系統(tǒng)播放器解碼該視頻。
[0122] 進一步地,視頻解碼裝置40還包括:
[0123] 發(fā)送模塊404,用于將該移動終端的型號信息發(fā)送給該服務(wù)器,使得該服務(wù)器根據(jù) 該移動終端的型號信息更新該白名單。
[0124] 本實施例對視頻解碼裝置40的各功能模塊實現(xiàn)各自功能的具體過程,請參見上 述圖1至圖6所示實施例中描述的具體內(nèi)容,此處不再贅述。
[0125] 本發(fā)明實施例提供的視頻解碼裝置,通過在視頻解碼前根據(jù)移動終端的型號信息 與白名單中的信息的匹配情況,以及待解碼的視頻的格式是否為預(yù)置視頻編碼標(biāo)準(zhǔn)格式, 選擇對應(yīng)的解碼方式,可為該視頻確定出最合適的解碼方式,提高視頻解碼的靈活性及成 功率。此外,通過在按照選定的解碼