本申請涉及編碼碼率控制,特別涉及一種編碼碼率控制方法、裝置、設備及介質。
背景技術:
1、編碼碼率即比特率,指在單位時間內用于表示經過編碼的媒體數(shù)據(jù)的比特數(shù)量。編碼碼率通常由評估出來的帶寬值指導,由于網絡環(huán)境或設備性能存在波動,評估帶寬可能波動頻繁,進而引起編碼碼率的頻繁波動。視頻編碼碼率的波動,會帶來畫面質量不穩(wěn)定、卡頓、不流暢等問題,音頻編碼碼率的波動,會帶來聲音質量起伏等問題,導致用戶體驗變差。
技術實現(xiàn)思路
1、有鑒于此,本申請的目的在于提供一種編碼碼率控制方法、裝置、設備及介質,能夠避免編碼碼率頻率波動,從而提升用戶體驗。其具體方案如下:
2、第一方面,本申請公開了一種編碼碼率控制方法,包括:
3、獲取目標網絡鏈路的評估帶寬和目標帶寬,其中,所述目標帶寬為控制當前編碼碼率的帶寬;
4、基于所述評估帶寬以及目標帶寬判斷帶寬波動幅度是否滿足第一預設帶寬波動條件;
5、當滿足所述第一預設帶寬波動條件,則判斷所述目標帶寬的持續(xù)時長是否超過預設時長;
6、如果所述持續(xù)時長未超過所述預設時長,則保持所述目標帶寬不變;
7、如果所述持續(xù)時長超過所述預設時長,則基于所述評估帶寬更新所述目標帶寬,根據(jù)更新后的所述目標帶寬更新編碼碼率。
8、可選的,所述基于所述評估帶寬以及目標帶寬判斷帶寬波動幅度是否滿足第一預設帶寬波動條件,包括:
9、判斷所述評估帶寬是否超出第一帶寬閾值,若所述評估帶寬超出所述第一帶寬閾值,則判定帶寬波動幅度滿足第一預設帶寬波動條件;
10、其中,所述第一帶寬閾值為基于所述目標帶寬確定的閾值。
11、可選的,所述第一帶寬閾值包括第一閾值和第二閾值,所述第一閾值大于第二閾值,所述判斷所述評估帶寬是超出第一帶寬閾值,包括:
12、若所述評估帶寬高于所述第一閾值,或低于所述第二閾值,則判定所述評估帶寬超出所述第一帶寬閾值。
13、可選的,所述預設時長包括第一預設時長和第二預設時長;
14、當所述評估帶寬高于所述第一閾值,則判斷所述持續(xù)時長是否超過所述第一預設時長,如果所述持續(xù)時長未超過所述第一預設時長,則保持所述目標帶寬不變,如果所述持續(xù)時長超過所述第一預設時長,則平滑所述目標帶寬,并將平滑后的評估帶寬確定為新的目標帶寬;
15、當所述評估帶寬低于所述第二閾值,則判斷所述持續(xù)時長是否超過所述第二預設時長,如果所述持續(xù)時長未超過所述第二預設時長,則保持所述目標帶寬不變,如果所述持續(xù)時長超過所述第二預設時長,則平滑所述目標帶寬,并將平滑后的評估帶寬確定為新的目標帶寬。
16、可選的,所述基于所述評估帶寬更新所述目標帶寬,包括:
17、當所述評估帶寬高于所述第一閾值,則基于第一預設系數(shù)增長所述目標帶寬;
18、當所述評估帶寬低于所述第二閾值,則基于第二預設系數(shù)減小所述目標帶寬。
19、可選的,還包括:
20、若所述評估帶寬未超出所述第一帶寬閾值,則判定帶寬波動幅度不滿足第一預設帶寬波動條件,保持所述目標帶寬不變。
21、可選的,還包括:
22、基于所述評估帶寬以及目標帶寬判斷帶寬波動幅度是否滿足第二預設帶寬波動條件,其中,滿足所述第二預設帶寬波動條件的帶寬波動幅度高于滿足所述第一預設帶寬波動條件的帶寬波動幅度;
23、若滿足所述第二預設帶寬波動條件,則將所述目標帶寬更新為所述評估帶寬。
24、第二方面,本申請公開了一種編碼碼率控制裝置,包括:
25、帶寬獲取模塊,用于獲取目標網絡鏈路的評估帶寬和目標帶寬,其中,所述目標帶寬為控制當前編碼碼率的帶寬;
26、條件判斷模塊,用于基于所述評估帶寬以及目標帶寬判斷帶寬波動幅度是否滿足第一預設帶寬波動條件;
27、時長判斷模塊,用于當所述條件判斷模塊判定滿足所述第一預設帶寬波動條件,則判斷所述目標帶寬的持續(xù)時長是否超過預設時長;
28、帶寬更新模塊,用于如果時長判斷模塊判定所述持續(xù)時長未超過所述預設時長,則保持所述目標帶寬不變,如果所述持續(xù)時長超過所述預設時長,則基于所述評估帶寬更新所述目標帶寬,根據(jù)更新后的所述目標帶寬更新編碼碼率。
29、第三方面,本申請公開了一種電子設備,包括存儲器和處理器,其中:
30、所述存儲器,用于保存計算機程序;
31、所述處理器,用于執(zhí)行所述計算機程序,以實現(xiàn)前述的編碼碼率控制方法。
32、第四方面,本申請公開了一種計算機可讀存儲介質,用于保存計算機程序,其中,所述計算機程序被處理器執(zhí)行時實現(xiàn)前述的編碼碼率控制方法。
33、通過以上方案可知,本申請?zhí)峁┝艘环N編碼碼率控制方法,包括:獲取目標網絡鏈路的評估帶寬和目標帶寬,其中,所述目標帶寬為控制當前編碼碼率的帶寬;基于所述評估帶寬以及目標帶寬判斷帶寬波動幅度是否滿足第一預設帶寬波動條件;當滿足所述第一預設帶寬波動條件,則判斷所述目標帶寬的持續(xù)時長是否超過預設時長;如果所述持續(xù)時長未超過所述預設時長,則保持所述目標帶寬不變;如果所述持續(xù)時長超過所述預設時長,則基于所述評估帶寬更新所述目標帶寬,根據(jù)更新后的所述目標帶寬更新編碼碼率。
34、可見,本申請的有益效果為:獲取目標網絡鏈路的評估帶寬和控制當前編碼碼率的目標帶寬,在帶寬波動幅度滿足第一預設帶寬波動條件時,如果目標帶寬的持續(xù)時長未超過預設時長,則保持目標帶寬不變,如果超過預設時長,則基于評估帶寬更新目標帶寬,進而更新編碼碼率。這樣,可以根據(jù)帶寬波動情況,通過設置帶寬波動條件,當帶寬發(fā)生一定程度的波動時,間隔相應時長再更新目標帶寬,進而更新編碼碼率,能夠避免編碼碼率頻率波動,從而提升用戶體驗。
35、相應地,本發(fā)明提供的一種編碼碼率控制裝置、設備及可讀存儲介質,也同樣具有上述技術效果。
1.一種編碼碼率控制方法,其特征在于,包括:
2.根據(jù)權利要求1所述的編碼碼率控制方法,其特征在于,所述基于所述評估帶寬以及目標帶寬判斷帶寬波動幅度是否滿足第一預設帶寬波動條件,包括:
3.根據(jù)權利要求2所述的編碼碼率控制方法,其特征在于,所述第一帶寬閾值包括第一閾值和第二閾值,所述第一閾值大于第二閾值,所述判斷所述評估帶寬是超出第一帶寬閾值,包括:
4.根據(jù)權利要求3所述的編碼碼率控制方法,其特征在于,所述預設時長包括第一預設時長和第二預設時長;
5.根據(jù)權利要求3所述的編碼碼率控制方法,其特征在于,所述基于所述評估帶寬更新所述目標帶寬,包括:
6.根據(jù)權利要求2所述的編碼碼率控制方法,其特征在于,還包括:
7.根據(jù)權利要求1至6任一項所述的編碼碼率控制方法,其特征在于,還包括:
8.一種編碼碼率控制裝置,其特征在于,包括:
9.一種電子設備,其特征在于,包括存儲器和處理器,其中:
10.一種計算機可讀存儲介質,其特征在于,用于保存計算機程序,其中,所述計算機程序被處理器執(zhí)行時實現(xiàn)如權利要求1至7任一項所述的編碼碼率控制方法。