(57)【要約】  ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法であって、ユーザー端末又はサーバに適用され、当該方法は、現フレームのターゲットビットレートと符号化済みビットレートを取得し、前記ターゲットビットレートと、前記符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定し、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定する、ことを含む。上記ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法によれば、実際のコストにより近い現在の符号化ユニット予測コストと、フレーム未符号化ユニット予測コストとの比、及びフレーム未符号化レートによって、現在の符号化待ちユニットのターゲットビットレートを確定することは、より正確であり、それにより、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上させる。
2019536356.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ符号化の符号化ユニットビットレート割り当て方法であって、ユーザー端末又はサーバに適用され、
現フレームのターゲットビットレートと、符号化済みビットレートとを取得し、前記符号化済みビットレートは、前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定され、
前記現フレームのターゲットビットレートと、符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定し、
事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記現在の符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定され、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定する、ことを含むことを特徴とするビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項２】
前記した事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得するステップは、
ダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定し、
前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する最終ブロック予測コストを確定し、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定する、ことを含むことを特徴とする請求項１に記載のビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項３】
前記したダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定するステップは、
予め設定されたフレーム内選択ポリシーを採用してダウンサンプリング後の前記現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、前記最適なフレーム内予測モードを確定し、
前記符号化ブロックの画素値を取得し、前記符号化ブロックに対応する前記最適なフレーム内予測モードに応じて、前記符号化ブロックのフレーム内予測値を確定し、
前記符号化ブロックの画素値、及び前記フレーム内予測値に応じて、前記符号化ブロックのフレーム内予測コストであるフレーム内ブロック予測コストを確定する、ことを含むことを特徴とする請求項２に記載のビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項４】
前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記現フレームのフレームタイプを取得し、
前記フレームタイプがフレーム内予測フレームであると、前記フレーム内ブロック予測コストを、前記符号化ブロックに対応する前記最終ブロック予測コストとすることを特徴とする請求項２に記載のビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項５】
前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム間予測コストを確定し、
前記符号化ブロックの前記フレーム間予測コストと、前記フレーム内予測コストとのうち小さい一方を、前記符号化ブロックに対応する前記最終ブロック予測コストとして確定する、ことをさらに含むことを特徴とする請求項４に記載のビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項６】
前記した各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定するステップは、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、各前記未符号化の符号化ユニットのユニット予測コストを確定し、
前記現在の符号化待ちの符号化ユニットのユニット予測コストを、前記現在の符号化ユニット予測コストとし、前記現フレームの各前記未符号化の符号化ユニットのユニット予測コストに応じて、前記フレーム未符号化ユニット予測コストを確定する、ことを含むことを特徴とする請求項２に記載のビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項７】
前記符号化ユニットは、基本ビットレート制御ユニットであり、前記基本ビットレート制御ユニットは、量子化パラメータが一致する最小ビットレート制御ユニットであることを特徴とする請求項１〜６のいずれか一項に記載のビデオ符号化の符号化ユニットビットレート割り当て方法。
【請求項８】
ビデオ符号化のビットレート割り当て方法であって、ユーザー端末又はサーバに適用され、
現フレームのフレームタイプ、及び一つの前のフレームのフレームタイプを取得し、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと異なる場合に、ビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことを含み、
前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、
現フレームのターゲットビットレート、及び符号化済みビットレートを取得し、前記符号化済みビットレートは前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定され、
前記現フレームのターゲットビットレートと、符号化済みビットレートとに応じて、フレーム未符号化ビットレートを確定し、
事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記現在の符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定され、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定することを含むことを特徴とするビデオ符号化のビットレート割り当て方法。
【請求項９】
前記した事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得するステップは、
ダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定し、
前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する最終ブロック予測コストを確定し、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定する、ことを含むことを特徴とする請求項８に記載のビデオ符号化のビットレート割り当て方法。
【請求項１０】
前記したダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定するステップは、
予め設定されたフレーム内選択ポリシーを採用して、ダウンサンプリング後の前記現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、前記最適なフレーム内予測モードを確定し、
前記符号化ブロックの画素値を取得し、前記符号化ブロックに対応する前記最適なフレーム内予測モードに応じて、前記符号化ブロックのフレーム内予測値を確定し、
前記符号化ブロックの画素値、及び前記フレーム内予測値に応じて、前記符号化ブロックのフレーム内予測コストであるフレーム内ブロック予測コストを確定する、ことを含むことを特徴とする請求項９に記載のビデオ符号化のビットレート割り当て方法。
【請求項１１】
前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記現フレームのフレームタイプを取得し、
前記フレームタイプがフレーム内予測フレームであると、前記フレーム内ブロック予測コストを、前記符号化ブロックに対応する前記最終ブロック予測コストとする、ことを含むことを特徴とする請求項９に記載のビデオ符号化のビットレート割り当て方法。
【請求項１２】
前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム間予測コストを確定し、
前記符号化ブロックの前記フレーム間予測コストと、前記フレーム内予測コストとのうち小さい一方を、前記符号化ブロックに対応する前記最終ブロック予測コストとして確定する、ことをさらに含むことを特徴とする請求項１１に記載のビデオ符号化のビットレート割り当て方法。
【請求項１３】
前記した各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定するステップは、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、各前記未符号化の符号化ユニットのユニット予測コストを確定し、
前記現在の符号化待ちの符号化ユニットのユニット予測コストを前記現在の符号化ユニット予測コストとし、前記現フレームの各前記未符号化の符号化ユニットのユニット予測コストに応じて、前記フレーム未符号化ユニット予測コストを確定する、ことを含むことを特徴とする請求項９に記載のビデオ符号化のビットレート割り当て方法。
【請求項１４】
前記符号化ユニットは、基本ビットレート制御ユニットであり、前記基本ビットレート制御ユニットは、量子化パラメータ一が一致する最小ビットレート制御ユニットであることを特徴とする請求項８〜１３のいずれか一項に記載のビデオ符号化のビットレート割り当て方法。
【請求項１５】
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと同じである場合に、現フレームと、一つの前のフレームのフレーム予測コストを分析し、
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、前記したビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことをさらに含むことを特徴とする請求項８に記載のビデオ符号化のビットレート割り当て方法。
【請求項１６】
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと同じである場合に、現フレームと、一つの前のフレームのフレーム予測コストを分析し、
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことをさらに含むことを特徴とする請求項８に記載のビデオ符号化のビットレート割り当て方法。
【請求項１７】
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと同じである場合に、現フレームと、一つの前のフレームのフレーム予測コストを分析し、
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、前記したビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレート割り当てを行い、
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことをさらに含むことを特徴とする請求項８に記載のビデオ符号化のビットレート割り当て方法。
【請求項１８】
コンピューター読み取り可能な命令を記憶しているメモリと、プロセッサーを含むコンピューター機器であって、
前記コンピューター読み取り可能な命令が前記プロセッサーに実行される場合に、前記プロセッサーに請求項１〜１７のいずれか一項に記載の方法を実行させることを特徴とするコンピューター機器。
【請求項１９】
コンピューター読み取り可能な命令を記憶している一つ又は複数の不揮発性記憶媒体であって、前記コンピューター読み取り可能な命令が一つ又は複数のプロセッサーに実行される場合に、一つ又は複数のプロセッサーに請求項１〜１７のいずれか一項に記載の方法を実行させることを特徴とする不揮発性記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願の実施例は、２０１７年０３月７日に中国国家知識産権局に提出した、出願番号２０１７１０１３２２０４.４、発明の名称「ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法、及び装置」の中国特許出願の優先権を主張し、その全ての内容を本願で援用した。
【０００２】
本願は、ビデオ符号化の技術分野に関し、特に、ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法、コンピューター機器、及び記憶媒体に関する。
【背景技術】
【０００３】
ネットワーク関連技術が益々成熟するにつれて、ビデオチャット、ビデオをオンラインで視聴するようなビデオサービスが広く利用されてきて、ビデオサービスの広い利用は、ビデオ符号化技術のサポートを必要とする。
【０００４】
ビデオ符号化技術では、各フレームの符号化ユニットに対してビットレートの割り当てを行う必要がある。ビデオ符号化(圧縮) における従来のビットレート割り当てアルゴリズムは、まず、現フレームのうちの全ての未符号化の符号化ユニットの予測コストを予測し、次に、現フレームにおける符号化済みの符号化ユニットのコストを参照して、現在の符号化待ちの符号化ユニットにターゲットビットレートを割り当てて、続いて、現在の符号化待ちの符号化ユニットのターゲットビットレートに応じて、現在の符号化待ちの符号化ユニットの量子化パラメータを設置する。
【０００５】
現在の符号化待ちの符号化ユニットは未符号化である場合に、正確な予測コストを得ることができないので、ビデオ画像の内容が急に変化すると、現フレームと一つの前のフレームとに対応する符号化ユニットのコストは類似性が悪く、予測の正確性が低く、極端な場合には、予測コストが０未満になる可能性がある。この場合、現在の符号化待ちの符号化ユニットビットレート割り当ては極大の誤差が現れる可能性があり、最終的に、ビデオ品質が低下してしまう。
【発明の概要】
【課題を解決するための手段】
【０００６】
それに基づいて、ビデオ品質が悪い問題について、ビデオ品質を向上するビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法、コンピューター機器、及び記憶媒体を提供する必要がある。
【０００７】
ビデオ符号化の符号化ユニットビットレート割り当て方法であって、ユーザー端末又はサーバに適用され、
現フレームのターゲットビットレートと、符号化済みビットレートとを取得し、前記符号化済みビットレートは、前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定され、
前記現フレームのターゲットビットレートと、前記符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定し、
事前符号化に基づいて確定される、前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストである現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定され、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定する、ことを含む。
【０００８】
コンピューター読み取り可能な命令を記憶しているメモリと、プロセッサーを含むコンピューター機器であって、前記コンピューター読み取り可能な命令が前記プロセッサーに実行される場合に、
現フレームのターゲットビットレートと、符号化済みビットレートとを取得し、前記符号化済みビットレートは、前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定されるステップと、
前記現フレームのターゲットビットレートと、符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定するステップと、
事前符号化に基づいて確定される、前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストである現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定されるステップと、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定するステップとを、前記プロセッサーに以下のステップを実行させる。
【０００９】
上記ビデオ符号化の符号化ユニットビットレート割り当て方法、及びコンピューター機器によれば、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得するので、その取得した現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストは実際のコストにより近くなる。従って、実際のコストにより近い現在の符号化ユニット予測コストとフレーム未符号化ユニット予測コストとの比、及びフレーム未符号化レートによって現在の符号化待ちユニットのターゲットビットレートを確定することはより正確であり、それにより、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上させることができる。
【００１０】
ビデオ符号化のビットレート割り当て方法であって、ユーザー端末又はサーバに適用され、
現フレームのフレームタイプ、及び一つの前のフレームのフレームタイプを取得し、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと異なる場合に、上記したビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことを含む。
【００１１】
コンピューター読み取り可能な命令を記憶しているメモリと、プロセッサーを含むコンピューター機器であって、前記コンピューター読み取り可能な命令が前記プロセッサーに実行される場合に、前記プロセッサーに、
現フレームのフレームタイプ、及び一つの前のフレームのフレームタイプを取得するステップと、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと異なる場合に、請求項１〜７のいずれか一項に記載のビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行うステップとを実行させる。
【００１２】
上記ビデオ符号化の割り当て方法、及びコンピューター機器によれば、現フレームのフレームタイプが一つの前のフレームのフレームタイプと異なる場合に、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上することができるビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行うので、ビデオの品質を向上させることができる。
【００１３】
本願の１つ又は複数の実施例の詳細は、以下の添付の図面及び説明において提供される。本出願の他の特徴、目的、及び利点は、明細書、添付の図面、及び特許請求の範囲からより明らかになる。
【図面の簡単な説明】
【００１４】
本願の実施例における技術案をより明確に説明するために、以下実施例の記述において使用する必要がある図面を簡単に紹介し、もちろん、以下に記述の図面が本願の幾つかの実施例に過ぎず、当業者にとって、創造的な労力をしない前提で、これらの図面に応じて他の図面を得ることもできる。
【００１５】
【図１】一実施例にかかるビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法、及び装置の応用環境概略図である。
【図２】図１のユーザー端末の内部構成の概略図である。
【図３】一実施例にかかるビデオ符号化の符号化ユニットビットレート割り当て方法のフローチャートである。
【図４】図３のビデオ符号化の符号化ユニットビットレート割り当て方法の一つのステップの具体的なフローチャートである。
【図５】一実施例にかかるビデオ符号化の符号化ユニットビットレート割り当て装置の構成ブロック図である。
【図６】図５のビデオ符号化の符号化ユニットビットレート割り当て装置の一つのモジュールの具体的な構成ブロック図である。
【図７】一実施例にかかるビデオ符号化のビットレート割り当て方法のフローチャートである。
【図８】他の実施例にかかるビデオ符号化のビットレート割り当て方法のフローチャートである。
【図９】一実施例にかかるビデオ符号化のビットレート割り当て装置の構成ブロック図。
【図１０】他の実施例にかかるビデオ符号化のビットレート割り当て装置の構成ブロック図である。
【発明を実施するための形態】
【００１６】
本発明における目的、技術案、及び利点をより明確にするために、以下では添付の図面を参照しながら本発明の実施例をさらに詳細に記述する。本明細書に記載の具体的実施態様は、単に本出願を説明するために使用されており、本出願の保護範囲を限定することを意図していないことを理解されたい。
【００１７】
図１は、一実施例で提供されるビデオの品質を向上するビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法の応用環境概略図である。図１に示すように、当該応用環境は、第１のユーザー端末１１０、第２のユーザー端末１２０及びサーバ１３０を含み、第１のユーザー端末１１０及び第２のユーザー端末１２０はそれぞれサーバ１３０にネットワーク接続される。第１のユーザー端末１１０及び第２のユーザー端末１２０はそれぞれビデオ通信のアプリケーションプログラムを実行しており、第１のユーザーは第１のユーザー端末１１０によりビデオデータを採集し、サーバ１３０により第２のユーザー端末１２０に送信し、第２のユーザーは第２のユーザー端末１２０を介して閲覧する。同様に、第１のユーザーは、第１のユーザー端末１１０を介して第２のユーザー端末１２０によって採集されたビデオ情報を閲覧し、これにより、第１のユーザーと第２のユーザーとのビデオ通信を実現する。本実施例において、ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法は、第１のユーザー端末１１０又は第２のユーザー端末１２０において実行される。
【００１８】
他の応用シナリオにおいて、第１のユーザー端末１１０及びサーバ１３０のみを含んでもよく、第１のユーザー端末１１０はサーバ１３０とネットワーク接続される。第１のユーザー端末１１０は、採集したビデオデータをサーバ１３０に送信する。ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法は、第１のユーザー端末１１０において実行される。
【００１９】
他の実施例において、第１のユーザーは、第１のユーザー端末１１０を介して第２のユーザー端末にストリーミングメディアファイルを送信することもできる。この本実施例において、ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法は、サーバ１３０において実行される。サーバ１３０は、第１のユーザー端末１１０によって送信されたビデオストリームを復号化した後に再符号化し、再符号化後のビデオストリームを第２のユーザー端末１２０に送信して、異なる端末プラットフォームの再生要求を満たす。
【００２０】
他の応用シナリオにおいて、第１のユーザー端末１１０及びサーバ１３０のみを含んでもよく、第１のユーザー端末１１０はサーバ１３０にネットワーク接続される。第１のユーザー端末１１０は、ストリーミングメディアファイルをサーバ１３０に送信する。ビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法はサーバ１３０において実行される。
【００２１】
図２は、一実施例にかかるユーザー端末の内部構成概略図である。図２に示すように、ユーザー端末は、システムバスで接続されるプロセッサー、記憶媒体、内部メモリ、ネットワークインタフェース、ディスプレイ、カメラ及び入力装置を含んでいる。なお、端末の記憶媒体には、オペレーティングシステム、及びビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法を実現するためのビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て装置が記憶されている。当該プロセッサーは、ユーザー端末全体の運行をサポートするために、計算及び制御能力を提供するためのものである。ユーザー端末の内部メモリは、記憶媒体内のビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て装置の運行のために環境を提供し、当該内部メモリにはコンピューター読み取り可能な命令が記憶されており、当該コンピューター読み取り可能な命令は、プロセッサーに実行される場合に、プロセッサーにビデオ符号化のビットレート割り当て、符号化ユニットビットレート割り当て方法を実行させる。ユーザー端末のネットワークインタフェースは、サーバとネットワーク通信を行うためのものであり、例えば、ビデオファイルをサーバに送信し、サーバから送信される他のユーザー端末からのビデオファイル等を受信する。ユーザー端末のディスプレイは、液晶ディスプレイ又は電子インクディスプレイであってもよく、入力装置は、ディスプレイ上を覆うタッチ層であってもよく、ユーザー端末のハウジングに設置されたボタン、トラックボール、又はタッチパッドであってもよいし、外部のキーボード、タッチパッド、マウスなどであってもよい。当該ユーザー端末は、携帯電話、タブレット、ＰＤＡ (Ｐｅｒｓｏｎａｌ Ｄｉｇｉｔａｌ Ａｓｓｉｓｔａｎｔ)、ウェアラブルデバイスなどであってもよい。当業者であれば、図２に示される構造は本願の技術案に関連する構成の一部のブロック図にすぎず、本願の技術案を適用するユーザー端末に制限をかけず、具体的ユーザー端末は図に示されるものよりも多いか又は少ない部品を含み得るか、又はいくつかの構成要素を組み合わすか、又は異なる構成要素配置を有する。
【００２２】
図３を参照して、一実施例において、ビデオ符号化の符号化ユニットビットレート割り当て方法を提供し、当該方法は、図１に示す各ユーザー端末又は各サーバ１３０において実行され、当該方法は以下のステップを含んでいる。
【００２３】
Ｓ３１０において、現フレームのターゲットビットレート及び符号化済みビットレートを取得する。当該符号化済みビットレートは、現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定される。
【００２４】
現フレームは、符号化されていない、符号化待ちのフレームである。ターゲットビットレートは、割り当てようとするビットレートであり、符号化済みレートは、既に符号化されたビットレートである。ビデオのターゲットビットレート、ビデオにおける符号化済みビットレートに応じて、現フレームのターゲットビットレートを確定してもよい。
【００２５】
Ｓ３２０において、現フレームのターゲットビットレートと符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定する。
【００２６】
現フレームのターゲットビットレートから現フレームの符号化済みレートを減算することで、現フレームの未符号化ビットレート、即ち、フレーム未符号化ビットレートを得ることができる。
【００２７】
Ｓ３３０において、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得する。
【００２８】
現フレームは事前符号化され、事前符号化を基に現在の符号化ユニット予測コスト、及びフレーム未符号化予測コストを確定し、つまり、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得する。このようにすれば、現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストは実際のコストにより近くなる。
【００２９】
現在の符号化ユニット予測コストは、現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、フレーム未符号化ユニット予測コストは、現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定されてもよい。
【００３０】
Ｓ３４０において、フレーム未符号化ビットレートとコスト比とに応じて、現在の符号化待ちユニットのターゲットビットレートを確定する。コスト比は、現在の符号化ユニット予測コストと、フレーム未符号化ユニット予測コストとの比である。
【００３１】
フレーム未符号化ビットレートとコスト比とによって、現在の符号化待ちユニットのターゲットビットレートを確定できる。例えば、現在の符号化待ちユニットのターゲットビットレートは、フレーム未符号化ビットレートとコスト比との積であってもよく、現在の符号化待ちユニットのターゲットビットレートは、フレーム未符号化ビットレートとコスト比との積に重み係数を乗じたものであってもよい。
【００３２】
理解を容易にするために、現フレームがn個の符号化ユニットを有し、現在の符号化待ちユニットが現フレームのi番目の符号化ユニットであり、現フレームの1〜(i-1)番目の符号化ユニットが既に符号化され、i〜n番目の符号化ユニットはまだ符号化されていなく、全ての未符号化の符号化ユニットのターゲットビットレート、即ち、フレーム未符号化ビットレートを
【数１】
2019536356.tif 000003
と記す。フレーム未符号化ユニット予測コストに対する現在の符号化待ちユニット予測コストの比はCiと記す。
【数２】
2019536356.tif 000004
【００３３】
現在の符号化待ちユニットのターゲットビットレート、即ち、現在の符号化待ちユニットのビットレートは、
【数３】
2019536356.tif 000005
と記す。
【数４】
2019536356.tif 000006
【００３４】
上記ビデオ符号化の符号化ユニットビットレート割り当て方法によれば、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得するので、取得した現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストは実際のコストにより近くなる。従って、実際のコストにより近い現在の符号化ユニット予測コストとフレーム未符号化ユニット予測コストとの比、及びフレーム未符号化レートによって、現在の符号化待ちユニットのターゲットビットレートを確定することはより正確であり、それにより、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上させる。
【００３５】
その中の一実施例において、上記ビデオ符号化の符号化ユニットビットレート割り当て方法は、ステップＳ３４０の後、
現在の符号化待ちユニットのターゲットビットレートに応じて、現在の符号化待ちユニットの量子化パラメータを確定することをさらに含む。このようにすれば、現在の符号化ユニットの実際のビットレートは現在の符号化ユニットのターゲットビットレートにできるだけ近いようにする。
【００３６】
図４を参照して、その中の一実施例において、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得する方式、即ち、ステップＳ３３０は、以下のステップを含む。
【００３７】
Ｓ３３１において、ダウンサンプリング後の未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて、符号化ブロックのフレーム内予測コストを確定する。
【００３８】
この本実施例において、ダウンサンプリングの方式により現フレームを事前符号化する。具体的に、現フレームに対して２:１ダウンサンプリングを行うことができ、即ち、原画像の長さ及び幅がそれぞれａ及びｂであると、ダウンサンプリング画像の長さ及び幅はそれぞれａ/２、ｂ/２となる。ダウンサンプリング後の長さ及び幅がＮの整数倍ではないと、ダウンサンプリング後の画像をエッジ拡大し、Ｎの整数倍になるようにする。なお、Ｎ×Ｎは事前符号化のうち最も小さい符号化ブロックであり、４×４、８×８、１６×１６などであってもよく、且つ、一つの符号化ユニットに対応するダウンサンプリング画像がＮ×Ｎの符号化ブロックを含むという条件を満たす。ダウンサンプリングの比は２：１に限定されず、３：１、４：１などであってもよいことが理解される。
【００３９】
予め設定された最適なフレーム内予測モードは、予め設定された一つのフレーム内予測モードであってもよく、予め設定されたポリシーによって確定される最適なフレーム内予測モードであってもよい。
【００４０】
予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて、符号化ブロックのフレーム内予測コストを確定する方式については、符号化ブロックの各画素の画素値から、予め設定された最適なフレーム内予測モードによって確定される予測値を減算して予測残差を得て、各画素の予測残差の絶対値を合計し、得られた絶対値の和を符号化ブロックのフレーム内予測コストとしてもよく、符号化ブロックの各画素予測残差の２乗和を符号化ブロックのフレーム内予測コストとしてもよく、各予測残差を変換し、変換後の係り数の絶対値の和を符号化ブロックのフレーム内予測コストとしてもよい。
【００４１】
Ｓ３３２において、現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて、符号化ブロックに対応する最終ブロック予測コストを確定する。
【００４２】
フレームタイプは、フレーム内予測フレーム(Ｉフレーム)とフレーム間予測フレーム(Ｐフレーム)を含む。フレーム内予測フレームは、フレーム内予測コストを採用して最終予測コストを確定する必要があり、フレーム間予測フレームは、フレーム内予測コストまたはフレーム間予測コストを採用して最終予測コストを確定してもよい。
【００４３】
Ｓ３３３において、各符号化ブロックに対応する最終ブロック予測コストに応じて、未符号化の符号化ユニットのユニット予測コスト、現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを確定する。
【００４４】
未符号化の符号化ユニットの各符号化ブロックに対応する最終ブロック予測コストに応じて、未符号化の符号化ユニットのユニット予測コストを確定することができる。例えば、各符号化ブロックに対応する最終ブロック予測コストの和を、当該符号化ユニットのユニット予測コストとしてもよく、各符号化ブロックに対応する最終ブロック予測コストに重みを乗算して合計した結果を、当該符号化ユニットのユニット予測コストとしてもよく、各符号化ブロックに対応する最終ブロック予測コストの和に重み係り数を乗算して、当該符号化ユニットのユニット予測コストとしてもよい。これにより、さらに、未符号化の符号化ユニットの各符号化ブロックに対応する最終ブロック予測コストに応じて、現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを確定することができる。
【００４５】
その中の一実施例において、ダウンサンプリング後の未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて、符号化ブロックのフレーム内予測コストを確定するステップ、即ち、ステップＳ３３１は、以下のことを含む。
【００４６】
(ａ)、予め設定されたフレーム内選択ポリシーを採用して、ダウンサンプリング後の現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、最適なフレーム内予測モードを確定する。
【００４７】
予め設定されたフレーム内選択ポリシーは、予測残差のサイズに応じて、予測残差が小さいモードを選択することであってもよく、予測残差を変換し、変換後小さいモードを選択することであってもよい。フレーム内予測モードは、選択した符号化規格に関係する。例えば、ＨＥＶＣ(Ｈｉｇｈ Ｅｆｆｉｃｉｅｎｃｙ Ｖｉｄｅｏ Ｃｏｄｉｎｇ)規格は３３種類の角度予測モード、１種類のＰｌａｎａｒモード(平面モード)、１種類のＤＣモード(直流モード)を有する。
【００４８】
(ｂ)、符号化ブロックの画素値を取得し、符号化ブロックに対応する最適なフレーム内予測モードに応じて、符号化ブロックのフレーム内予測値を確定する。
【００４９】
ダウンサンプリング後の現フレームの未符号化の符号化ユニットの符号化ブロックの画素値を取得する。そして、当該符号化ブロックに対応する最適なフレーム内予測モードに応じて、当該符号化ブロックの予測値、即ち、当該符号化ブロックのフレーム内予測値を確定する。
【００５０】
(ｃ)、符号化ブロックの画素値、及びフレーム内予測値に応じて、フレーム内ブロック予測コストを確定し、フレーム内ブロック予測コストは符号化ブロックのフレーム内予測コストである。
【００５１】
符号化ブロックの画素値及びフレーム内予測値の差に応じて、フレーム内ブロック予測コストを確定してもよい。例えば、符号化ブロックの各画素の画素値からフレーム内予測値を減算することで予測残差を得て、各画素の予測残差の絶対値を合計して得られた絶対値の和を、符号化ブロックのフレーム内予測コストとしてもよく、符号化ブロックの各画素予測残差の２乗和を、符号化ブロックのフレーム内予測コストとしてもよく、各予測残差を変換し、変換後の係り数の絶対値の和を、符号化ブロックのフレーム内予測コストとしてもよい。
【００５２】
その中の一実施例において、現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて、符号化ブロックに対応する最終ブロック予測コストを確定するステップ、即ち、ステップＳ３３２は、以下のことを含む。
【００５３】
(Ｉ)現フレームのフレームタイプを取得する。
【００５４】
(ＩＩ)フレームタイプがフレーム内予測フレームであると、フレーム内ブロック予測コストを、符号化ブロックに対応する最終ブロック予測コストとする。
【００５５】
フレームタイプがフレーム内予測フレームである場合に、フレーム内ブロック予測コストを、符号化ブロックに対応する最終ブロック予測コストとする。このようにすれば、フレームタイプがフレーム内予測フレームであるフレームの未符号化の符号化ユニットの符号化ブロックに対応する最終ブロック予測コストを確定する。
【００５６】
さらに、現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて、符号化ブロックに対応する最終ブロック予測コストを確定するステップ、即ち、ステップＳ３３２は、以下のことをさらに含む。
【００５７】
(ＩＩＩ)フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び符号化ブロックの画素値に応じて、符号化ブロックのフレーム間予測コストを確定する。
【００５８】
(ＩＶ)、符号化ブロックのフレーム間予測コストとフレーム内予測コストとのうち小さい一方を、符号化ブロックに対応する最終ブロック予測コストとして確定する。
【００５９】
フレームタイプがフレーム間予測フレームである場合に、符号化ブロックのフレーム間予測コストと、フレーム内予測コストとのうち小さい一方を、符号化ブロックに対応する最終ブロック予測コストとして確定する。このようにすれば、フレームタイプがフレーム間予測フレームであるフレームにおける未符号化の符号化ユニットの符号化ブロックに対応する最終ブロック予測コストを確定する。
【００６０】
なお、予め設定された最適なフレーム間予測モードは予め設定された最適なフレーム内予測モードと類似する。予め設定された一つのフレーム間予測モードであってもよく、予め設定されたフレーム間ポリシーによって確定される最適なフレーム間予測モードであってもよい。予め設定されたフレーム間選択ポリシーは、予測残差のサイズに応じて、予測残差が小さいモードを選択してもよく、予測残差を変換し、変換後小さいモードを選択してもよい。フレーム間予測モードは、選択した符号化規格に関係する。例えば、ＨＥＶＣ規格は、ｓｋｉｐモード (スキップモード)、ｍｅｒｇｅモード(合併モード)、ｉｎｔｅｒモード(フレーム間モード)を採用してもよい。
【００６１】
その中の一実施例において、各符号化ブロックに対応する最終ブロック予測コストに応じて、未符号化の符号化ユニットのユニット予測コスト、現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを確定するステップ、即ち、ステップＳ３３３は、
各符号化ブロックに対応する最終ブロック予測コストに応じて、各未符号化の符号化ユニットのユニット予測コストを確定し、
現在の符号化待ちの符号化ユニットのユニット予測コストを、現在の符号化ユニット予測コストとし、現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて、フレーム未符号化ユニット予測コストを確定する、ことを含む。
【００６２】
このようにすれば、現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを確定する。具体的に、フレーム未符号化ユニット予測コストは、現フレームの各未符号化の符号化ユニットのユニット予測コストの和であってもよく、フレーム未符号化ユニット予測コストは、現フレームの各未符号化の符号化ユニットのユニット予測コストの和に重み係り数を乗算したものであってもよく、フレーム未符号化ユニット予測コストは、現フレームの各未符号化の符号化ユニットのユニット予測コストに重みを乗算して合計することで得られた結果であってもよい。
【００６３】
管理を容易にするために、その中の一実施例において、符号化ユニットは基本ビットレート制御ユニット、即ち、ＢＵ(Ｂａｓｉｃ Ｕｎｉｔ)である。基本ビットレート制御ユニットは、量子化パラメータ一が一致する最小ビットレート制御ユニットである。
【００６４】
本願は、さらに、一実施例にかかるビデオ符号化の符号化ユニットビットレート割り当て装置を提供する。当該装置はコンピューター機器に設置され、当該装置における各モジュールはコンピューター機器によって実行可能であり、図５を参照して、一実施例にかかるビデオ符号化の符号化ユニットビットレート割り当て装置は、
現フレームのターゲットビットレートと、符号化済みビットレートを取得し、符号化済みビットレートは現フレームにおける符号化済みの各符号化ユニットの実際のビットレートに応じて確定されるビットレート取得モジュール５１０と、
現フレームのターゲットビットレートと符号化済みビットレートとに応じて、フレーム未符号化ビットレートを確定するための未符号化レート確定モジュール５２０と、
事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、現在の符号化ユニット予測コストは現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、フレーム未符号化ユニット予測コストは、現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定されるコスト取得モジュール５３０と、
フレーム未符号化ビットレートとコスト比とに応じて現在の符号化待ちユニットのターゲットビットレートを確定し、コスト比は、現在の符号化ユニット予測コストと、フレーム未符号化ユニット予測コストとの比であるターゲットビットレート確定モジュール５４０とを含む。
【００６５】
上記ビデオ符号化の符号化ユニットビットレート割り当て装置によれば、事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得するので、取得した現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストは実際のコストにより近くなる。従って、実際のコストにより近い現在の符号化ユニット予測コストとフレーム未符号化ユニット予測コストとの比、及びフレーム未符号化レートにより、現在の符号化待ちユニットのターゲットビットレートを確定することはより正確であり、それにより、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上させる。
【００６６】
図６を参照して、その中の一実施例において、コスト取得モジュール５３０は、
ダウンサンプリング後の未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて符号化ブロックのフレーム内予測コストを確定するためのフレーム内コスト予測ユニット５３１と、
現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて、符号化ブロックに対応する最終ブロック予測コストを確定するためのブロックコスト確定ユニット５３２と、
各符号化ブロックに対応する最終ブロック予測コストに応じて、未符号化の符号化ユニットのユニット予測コスト、現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを確定するためのユニットコスト確定ユニット５３３とを含む。
【００６７】
その中の一実施例において、フレーム内コスト予測ユニット５３１は、
予め設定されたフレーム内選択ポリシーを採用してダウンサンプリング後の現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、最適なフレーム内予測モードを確定するためのフレーム内モード確定サブユニットと、
符号化ブロックの画素値を取得し、符号化ブロックに対応する最適なフレーム内予測モードに応じて、符号化ブロックのフレーム内予測値を確定するためのフレーム内予測値確定サブユニットと、
符号化ブロックの画素値、及びフレーム内予測値に応じて、符号化ブロックのフレーム内予測コストであるフレーム内ブロック予測コストを確定するためのフレーム内ブロックコスト予測サブユニットとを含む。
【００６８】
その中の一実施例において、ブロックコスト確定ユニット５３２は、
現フレームのフレームタイプを取得するためのタイプ取得サブユニットと、
フレームタイプがフレーム内予測フレームであると、フレーム内ブロック予測コストを、符号化ブロックに対応する最終ブロック予測コストとするためのフレーム内ブロックコスト確定サブユニットとを含む。
【００６９】
その中の一実施例において、ブロックコスト確定ユニット５３２は、
フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び符号化ブロックの画素値に応じて、符号化ブロックのフレーム間予測コストを確定するフレーム間予測値確定サブユニットと、
符号化ブロックのフレーム間予測コストと、フレーム内予測コストとのうち小さい一方を、符号化ブロックに対応する最終ブロック予測コストとして確定するフレーム間ブロックコスト確定サブユニットとを、さらに含む。
【００７０】
その中の一実施例において、ユニットコスト確定ユニット５３３は、
各符号化ブロックに対応する最終ブロック予測コストに応じて、各未符号化の符号化ユニットのユニット予測コストを確定するための第１のユニットコスト確定ユニットと、
現在の符号化待ちの符号化ユニットのユニット予測コストを、現在の符号化ユニット予測コストとし、現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて、フレーム未符号化ユニット予測コストを確定するための第２のユニットコスト確定ユニットと、を含む。
【００７１】
その中の一実施例において、符号化ユニットは、基本ビットレート制御ユニットであり、基本ビットレート制御ユニットは量子化パラメータ一が一致する最小ビットレート制御ユニットである。
【００７２】
上記ビデオ符号化の符号化ユニットビットレート割り当て装置と、上記ビデオ符号化の符号化ユニットビットレートの割り当て方法とは互いに対応するので、装置における上記方法に対応する具体的な技術的特徴については、ここで再び説明しない。
【００７３】
本願は、さらに、ビデオ符号化のビットレート割り当て方法を提供する。図７を参照し、一実施例にかかるビデオ符号化のビットレート割り当て方法であり、当該方法は、図１に示す各ユーザー端末又は各サーバ１３０において実行される。
【００７４】
Ｓ７１０において、現フレームのフレームタイプ、及び一つの前のフレームのフレームタイプを取得する。
【００７５】
フレームタイプは、フレーム内予測フレームと、フレーム間予測フレームとを含む。フレーム内予測フレームは、フレーム内予測コストを採用して最終予測コストを確定する必要があり、フレーム間予測フレームは、フレーム内予測コスト又はフレーム間予測コストを採用して最終予測コストを確定することができる。
【００７６】
Ｓ７２０において、現フレームのフレームタイプが一つの前のフレームのフレームタイプと異なる場合に、上記実施例におけるビデオ符号化の符号化ユニットビットレート割り当て方法を採用して現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【００７７】
なお、上記実施例におけるビデオ符号化の符号化ユニットビットレート割り当て方法は、
現フレームのターゲットビットレート及び符号化済みビットレートを取得し、前記符号化済みビットレートは、前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定され、
前記現フレームのターゲットビットレートと符号化済みビットレートフレームとに応じて、未符号化ビットレートを確定し、
事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記現在の符号化ユニット予測コストは前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定され、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定する、ことを含む。
【００７８】
一実施例において、前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、
前記した事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及フレーム未符号化ユニット予測コストを取得する方式は、ダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定し、
前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する最終ブロック予測コスト確定し、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コスト確定する、ことを含むことをさらに含む。
【００７９】
一実施例において、前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、
前記したダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて前記符号化ブロックのフレーム内予測コストを確定するステップは、
予め設定されたフレーム内選択ポリシーを採用してダウンサンプリング後の前記現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、前記最適なフレーム内予測モードを確定し、
前記符号化ブロックの画素値を取得し、前記符号化ブロックに対応する前記最適なフレーム内予測モードに応じて、前記符号化ブロックのフレーム内予測値を確定し、
前記符号化ブロックの画素値、及び前記フレーム内予測値に応じて、前記符号化ブロックのフレーム内予測コストであるフレーム内ブロック予測コストを確定する、ことを含むことをさらに含む。
【００８０】
一実施例において、前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、
前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記現フレームのフレームタイプを取得し、
前記フレームタイプがフレーム内予測フレームであると、前記フレーム内ブロック予測コストを前記符号化ブロックに対応する前記最終ブロック予測コストとすることを含むことをさらに含む。
【００８１】
一実施例において、前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、
前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び前記符号化ブロックの画素値に応じて前記符号化ブロックのフレーム間予測コストを確定し、
前記符号化ブロックの前記フレーム間予測コストと、前記フレーム内予測コストとのうち小さい一方を、前記符号化ブロックに対応する前記最終ブロック予測コストとして確定する、ことを含むことをさらに含む。
【００８２】
一実施例において、前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、
前記した各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定するステップは、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、各前記未符号化の符号化ユニットのユニット予測コストを確定し、
前記現在の符号化待ちの符号化ユニットのユニット予測コストを、前記現在の符号化ユニット予測コストとし、前記現フレームの各前記未符号化の符号化ユニットのユニット予測コストに応じて前記フレーム未符号化ユニット予測コストを確定する、ことを含むさらに含む。
【００８３】
一実施例において、前記ビデオ符号化の符号化ユニットビットレート割り当て方法は、前記符号化ユニットは基本ビットレート制御ユニットであり、前記基本ビットレート制御ユニットは量子化パラメータ一が一致する最小ビットレート制御ユニットであることをさらに含む。
【００８４】
上記ビデオ符号化の割り当て方法によれば、現フレームのフレームタイプが一つの前のフレームのフレームタイプと異なる場合に、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上することができるビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行うので、ビデオの品質を向上させることができる。
【００８５】
図８を参照して、一つの具体例において、上記実施例における方法は、さらに、Ｓ７３０、Ｓ７４０を含むことができる。
【００８６】
Ｓ７３０において、現フレームのフレームタイプが一つの前のフレームのフレームタイプと同じである場合に、現フレームと一つの前のフレームのフレーム予測コストを分析する。
【００８７】
なお、現フレームのフレーム予測コストを分析する方式は、ダウンサンプリング後の現フレームの各符号化ユニットの各符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて、各符号化ブロックのフレーム内予測コストを確定し、現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて、各符号化ブロックに対応する最終ブロック予測コストを確定し、さらに、各符号化ユニットのユニット予測コストを確定することにより、現フレームのフレーム予測コストを確定するステップを含む。一つの前のフレームのフレーム予測コストを分析する方式は、現フレームのフレーム予測コスト方式と類似するので、ここで再び説明しない。一つの符号化ユニットの各符号化ブロックに対応する最終ブロック予測コストの和、又は、重み和などに応じて、当該符号化ユニットのユニット予測コストを確定することができることが理解される。現フレームの各符号化ブロックに対応するユニット予測コストの和、又は、重み和に応じて、現フレームのフレーム予測コストを確定することができる。
【００８８】
Ｓ７４０において、現フレームのフレーム予測コストと一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、上記実施例におけるビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【００８９】
図８を参照して、一つの具体例において、上記実施例における方法はＳ７３０、Ｓ７５０をさらに含むことができる。
【００９０】
Ｓ７３０において、現フレームのフレームタイプが一つの前のフレームのフレームタイプと同じである場合に、現フレームと一つの前のフレームのフレーム予測コストを分析する。
【００９１】
なお、現フレームのフレーム予測コストを分析する方式は、ダウンサンプリング後の現フレームの各符号化ユニットの各符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて各符号化ブロックのフレーム内予測コストを確定し、現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて各符号化ブロックに対応する最終ブロック予測コストを確定し、さらに、各符号化ユニットのユニット予測コストを確定することにより、現フレームのフレーム予測コストを確定するステップを含む。一つの前のフレームのフレーム予測コストを分析する方式は現フレームのフレーム予測コスト方式と類似するので、ここで再び説明しない。一つの符号化ユニットの各符号化ブロックに対応する最終ブロック予測コストの和、又は、重み和などに応じて、当該符号化ユニットのユニット予測コストを確定することができる。現フレームの各符号化ブロックに対応するユニット予測コストの和、又は、重み和に応じて、現フレームのフレーム予測コストを確定することができる。
【００９２】
Ｓ７５０において、現フレームのフレーム予測コストと一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【００９３】
レート歪みに基づくビットレート制御アルゴリズムは、まず、現フレームの全ての未符号化の符号化ユニットのＭＡＤ(Ｍｅａｎ Ａｂｓｏｌｕｔｅ Ｄｉｆｆｅｒｅｎｃｅ)を予測し、次に、現フレームの符号化済みの符号化ユニットのＭＡＤを参照し、各符号化ユニットにビットレートを割り当てる。
【００９４】
図８を参照して、一つの具体例において、上記実施例における方法は、Ｓ７３０、Ｓ７４０、Ｓ７５０をさらに含むことができる。
【００９５】
Ｓ７３０において、現フレームのフレームタイプが一つの前のフレームのフレームタイプと同じである場合に、現フレームと、一つの前のフレームのフレーム予測コストを分析する。
【００９６】
なお、現フレームのフレーム予測コストを分析する方式は、ダウンサンプリング後の現フレームの各符号化ユニットの各符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び符号化ブロックの画素値に応じて各符号化ブロックのフレーム内予測コストを確定し、現フレームのフレームタイプを取得し、フレーム内予測コスト、及びフレームタイプに応じて、各符号化ブロックに対応する最終ブロック予測コストを確定し、さらに、各符号化ユニットのユニット予測コストを確定することにより、現フレームのフレーム予測コストを確定するステップを含む。一つの前のフレームのフレーム予測コストを分析する方式は現フレームのフレーム予測コスト方式と類似するので、ここで再び説明しない。一つの符号化ユニットの各符号化ブロックに対応する最終ブロック予測コストの和、又は、重み和などに応じて、当該符号化ユニットのユニット予測コストを確定することができることは理解される。現フレームの各符号化ブロックに対応するユニット予測コストの和又は重み和に応じて現フレームのフレーム予測コストを確定することができる。
【００９７】
Ｓ７４０において、現フレームのフレーム予測コストと一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、上記実施例におけるビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【００９８】
Ｓ７５０において、当現フレームのフレーム予測コストと一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【００９９】
レート歪みに基づくビットレート制御アルゴリズムについては、まず、現フレームの全ての未符号化の符号化ユニットのＭＡＤ(Ｍｅａｎ Ａｂｓｏｌｕｔｅ Ｄｉｆｆｅｒｅｎｃｅ)を予測し、次に、現フレームの符号化済みの符号化ユニットのＭＡＤを参照し、各符号化ユニットにビットレートを割り当てる。
【０１００】
本願は、ビデオ符号化のビットレート割り当て装置を提供する。当該装置は、コンピューター機器に設置され、当該装置における各モジュールは、コンピューター機器によって実行可能であり、図９を参照し、一実施例にかかるビデオ符号化のビットレート割り当て装置は、
現フレームのフレームタイプ、及び一つの前のフレームのフレームタイプを取得するためのフレームタイプ取得モジュール９１０と、
現フレームのフレームタイプが一つの前のフレームのフレームタイプと異なる場合に、上記したビデオ符号化の符号化ユニットビットレート割り当て装置を採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行うためのユニットビットレート割り当てモジュール９２０とを含む。
【０１０１】
上記ビデオ符号化の割り当て装置によれば、現フレームのフレームタイプが一つの前のフレームのフレームタイプと異なる場合に、現在の符号化待ちユニットビットレート割り当ての誤差を減らすとともに、ビデオの品質を向上することができるビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行うので、ビデオの品質を向上させることができる。
【０１０２】
図１０を参照し、その中の一実施例において、
現フレームのフレームタイプが一つの前のフレームのフレームタイプと同じである場合に、現フレームと一つの前のフレームのフレーム予測コストを分析するためのフレーム予測コスト分析モジュール９３０をさらに含む。
【０１０３】
この場合、ユニットビットレート割り当てモジュール９２０は、さらに、現フレームのフレーム予測コストと一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、上記したビデオ符号化の符号化ユニットビットレート割り当て装置を採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【０１０４】
また、ユニットビットレート割り当てモジュール９２０、さらに、現フレームのフレーム予測コストと一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、現フレームの各符号化ユニットに対してビットレートの割り当てを行う。
【０１０５】
上記ビデオ符号化のビットレート割り当て装置と上記ビデオ符号化のビットレート割り当て方法とは互いに対応するので、装置における上記方法に対応する具体的な技術特徴については、ここで再び説明しない。
【０１０６】
一実施例において、さらに、コンピューター読み取り可能な命令を記憶しているメモリと、プロセッサーを含むコンピューター機器を提供し、前記コンピューター読み取り可能な命令が前記プロセッサーに実行される場合に、
現フレームのターゲットビットレート、及び符号化済みビットレートを取得し、前記符号化済みビットレートは前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定されるステップと、
前記現フレームのターゲットビットレートと、符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定するステップと、
事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記現在の符号化ユニット予測コストは前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定されるステップと、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定するステップとを、前記プロセッサーに実行させる。
【０１０７】
その中の一実施例において、前記した事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得する方式は、
ダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定し、
前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する最終ブロック予測コストを確定し、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定する、ことを含む。
【０１０８】
その中の一実施例において、前記したダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定するステップは、
予め設定されたフレーム内選択ポリシーを採用してダウンサンプリング後の前記現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、前記最適なフレーム内予測モードを確定し、
前記符号化ブロックの画素値を取得し、前記符号化ブロックに対応する前記最適なフレーム内予測モードに応じて、前記符号化ブロックのフレーム内予測値を確定し、
前記符号化ブロックの画素値、及び前記フレーム内予測値に応じて、前記符号化ブロックのフレーム内予測コストであるフレーム内ブロック予測コストを確定する、ことを含む。
【０１０９】
その中の一実施例において、前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記現フレームのフレームタイプを取得し、
前記フレームタイプがフレーム内予測フレームであると、前記フレーム内ブロック予測コストを、前記符号化ブロックに対応する前記最終ブロック予測コストとする、ことを含む。
【０１１０】
その中の一実施例において、前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム間予測コストを確定し、
前記符号化ブロックの前記フレーム間予測コストと、前記フレーム内予測コストとのうち小さい一方を、前記符号化ブロックに対応する前記最終ブロック予測コストとして確定する、ことをさらに含む。
【０１１１】
その中の一実施例において、前記した各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定するステップは、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、各前記未符号化の符号化ユニットのユニット予測コストを確定し、
前記現在の符号化待ちの符号化ユニットのユニット予測コストを前記現在の符号化ユニット予測コストとし、前記現フレームの各前記未符号化の符号化ユニットのユニット予測コストに応じて、前記フレーム未符号化ユニット予測コストを確定する、ことを含む。
【０１１２】
その中の一実施例において、前記符号化ユニットは基本ビットレート制御ユニットであり、前記基本ビットレート制御ユニットは、量子化パラメータ一が一致する最小ビットレート制御ユニットである。
【０１１３】
その中の一実施例において、さらに、コンピューター読み取り可能な命令を記憶しているメモリと、プロセッサーを含むコンピューター機器を提供し、前記コンピューター読み取り可能な命令が前記プロセッサーに実行される場合に、
現フレームのフレームタイプ、及び一つの前のフレームのフレームタイプを取得するステップと、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと異なる場合に、上記いずれか一項に記載のビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行うステップとを、プロセッサーに実行させる。
【０１１４】
その中の一実施例において、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと同じである場合に、現フレームと、一つの前のフレームのフレーム予測コストを分析し、
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、上記いずれか一項に記載の前記したビデオ符号化の符号化ユニットビットレート割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行い、
又は/及び
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことをさらに含む。
【０１１５】
その中の一実施例において、さらに、コンピューター読み取り可能な命令を記憶している一つ又は複数の不揮発性記憶媒体を提供し、前記コンピューター読み取り可能な命令が一つ又は複数のプロセッサーに実行される場合に、
現フレームのターゲットビットレートと、符号化済みビットレートとを取得し、前記符号化済みビットレートは、前記現フレームにおける各符号化済みの符号化ユニットの実際のビットレートに応じて確定されるステップと、
前記現フレームのターゲットビットレートと、符号化済みビットレートとに応じてフレーム未符号化ビットレートを確定するステップと、
事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得し、前記現在の符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットにおける現在の符号化待ちの符号化ユニットのユニット予測コストであり、前記フレーム未符号化ユニット予測コストは、前記現フレームの各未符号化の符号化ユニットのユニット予測コストに応じて確定されるステップと、
前記フレーム未符号化ビットレートと、前記現在の符号化ユニット予測コストと前記フレーム未符号化ユニット予測コストとの比であるコスト比とに応じて、前記現在の符号化待ちユニットのターゲットビットレートを確定するステップとを、一つ又は複数のプロセッサーに実行させる。
【０１１６】
その中の一実施例において、前記した事前符号化に基づいて確定される現在の符号化ユニット予測コスト、及びフレーム未符号化ユニット予測コストを取得する方式は、
ダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定し、
前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する最終ブロック予測コストを確定し、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定する、ことを含む。
【０１１７】
その中の一実施例において、前記したダウンサンプリング後の前記未符号化の符号化ユニットの符号化ブロックの画素値を取得し、予め設定された最適なフレーム内予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム内予測コストを確定するステップは、
予め設定されたフレーム内選択ポリシーを採用してダウンサンプリング後の前記現フレームの未符号化の符号化ユニットの符号化ブロックに対してフレーム内予測モード選択を行うことで、前記最適なフレーム内予測モードを確定し、
前記符号化ブロックの画素値を取得し、前記符号化ブロックに対応する前記最適なフレーム内予測モードに応じて、前記符号化ブロックのフレーム内予測値を確定し、
前記符号化ブロックの画素値、及び前記フレーム内予測値に応じて、前記符号化ブロックのフレーム内予測コストであるフレーム内ブロック予測コストを確定する、ことを含む。
【０１１８】
その中の一実施例において、前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記現フレームのフレームタイプを取得し、
前記フレームタイプがフレーム内予測フレームであると、前記フレーム内ブロック予測コストを、前記符号化ブロックに対応する前記最終ブロック予測コストとする、ことを含む。
【０１１９】
その中の一実施例において、前記した前記現フレームのフレームタイプを取得し、前記フレーム内予測コスト、及び前記フレームタイプに応じて、前記符号化ブロックに対応する前記最終ブロック予測コストを確定するステップは、
前記フレームタイプがフレーム間予測フレームであると、予め設定された最適なフレーム間予測モード、及び前記符号化ブロックの画素値に応じて、前記符号化ブロックのフレーム間予測コストを確定し、
前記符号化ブロックの前記フレーム間予測コストと、前記フレーム内予測コストとのうち小さい一方を、前記符号化ブロックに対応する前記最終ブロック予測コストとして確定する、ことをさらに含む。
【０１２０】
その中の一実施例において、前記した各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて前記未符号化の符号化ユニットのユニット予測コスト、前記現在の符号化ユニット予測コスト、及び前記フレーム未符号化ユニット予測コストを確定するステップは、
各前記符号化ブロックに対応する前記最終ブロック予測コストに応じて、各前記未符号化の符号化ユニットのユニット予測コストを確定し、
前記現在の符号化待ちの符号化ユニットのユニット予測コストを前記現在の符号化ユニット予測コストとし、前記現フレームの各前記未符号化の符号化ユニットのユニット予測コストに応じて、前記フレーム未符号化ユニット予測コストを確定する、ことを含む。
【０１２１】
その中の一実施例において、前記符号化ユニットは基本ビットレート制御ユニットであり、前記基本ビットレート制御ユニットは、量子化パラメータ一が一致する最小ビットレート制御ユニットである。
【０１２２】
その中の一実施例において、コンピューター読み取り可能な命令を記憶している一つ又は複数の不揮発性記憶媒体であって、前記コンピューター読み取り可能な命令が一つ又は複数のプロセッサーに実行される場合に、
現フレームのフレームタイプ及一つの前のフレームのフレームタイプを取得するステップと、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと異なる場合に、上記いずれか一項に記載の前記したビデオ符号化の符号化ユニットビットレートの割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレート割り当てを行うステップとを、一つ又は複数のプロセッサーに実行させる。
【０１２３】
その中の一実施例において、
前記現フレームのフレームタイプが前記一つの前のフレームのフレームタイプと同じである場合に、現フレームと一つの前のフレームのフレーム予測コストを分析し、
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きい場合に、前記したビデオ符号化の符号化ユニットビットレートの割り当て方法を採用して、前記現フレームの各符号化ユニットに対してビットレート割り当てを行い、
及び/又は
前記現フレームのフレーム予測コストと前記一つの前のフレームのフレーム予測コストとの差がプリセット値よりも大きくない場合に、レート歪みに基づくビットレート制御アルゴリズムを採用して、前記現フレームの各符号化ユニットに対してビットレートの割り当てを行う、ことをさらに含む。
【０１２４】
当業者であれば、前述の実施例の方法における全部又は一部の流れを実現することは、コンピュータプログラムにより関連するハードウェアに命令することによって実施され得ることが理解され、前記プログラムは、不揮発性のコンピューター読み取り可能な記憶媒体に格納することができる。プログラムが実行される場合に、前述の方法の実施例の流れが含まれ得る。なお、 本出願で提供される各実施例において使用される、メモリ、ストレージ、データベース、又は他の媒体に関する任意の参照は、不揮発性メモリ及び／又は揮発性メモリを含み得る。不揮発性メモリは、読出し専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）又はフラッシュメモリに含まれ得る。揮発性メモリは、ランダムアクセスメモリ（ＲＡＭ）又は外部キャッシュメモリを含み得る。例示として、限定ではなく、ＲＡＭは、スタティックＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、ｅｎｈａｎｃｅｄＳＤＲＡＭ（ＥＳＤＲＡＭ）、ＳｙｎｃｈｌｉｎｋＤＲＡＭ（ＳＬＤＲＡＭ）、Ｒａｍｂｕｓ直接ＲＡＭ(ＲＤＲＡＭ)、直接ＲａｍｂｕｓＲＡＭ（ＤＲＲＡＭ）、ＲａｍｂｕｓダイナミックＲＡＭ(ＲＤＲＡＭ)など複数の形態で得られる。
【０１２５】
前述の実施例の各技術的特徴を任意に組み合わせることができ、説明を簡潔にするために、前述の実施例の各技術的特徴の全ての可能な組み合わせが説明されていないが、技術的特徴が矛盾しない限り、本明細書に記載の範囲に入るとみなすべきである。
【０１２６】
前述の実施例は、単に本願のいくつかの実施態様を表すものである。 その説明は比較的具体的かつ詳細であるが、本出願の範囲に対する限定として理解されるべきではない。 当業者であれば、本願の思想から逸脱することなく、変換及び改良を行うことができることに留意されたい。これらの変換と改良はこの出願の保護範囲に属する。 従って、この出願の保護範囲は添付の特許請求の範囲に従うべきである。
【符号の説明】
【０１２７】
１１０  第１のユーザー端末
１２０  第２のユーザー端末
１３０  サーバ
５１０  ビットレート取得モジュール
５２０  未符号化レート確定モジュール
５３０  コスト取得モジュール
５３１  フレーム内コスト予測ユニット
５３２  ブロックコスト確定ユニット
５３３  ユニットコスト確定ユニット
５４０  ターゲットビットレート確定モジュール
９１０  フレームタイプ取得モジュール
９２０  モジュール
９３０  フレーム予測コスト分析モジュール
【図１】
2019536356.tif 000007
【図２】
2019536356.tif 000008
【図３】
2019536356.tif 000009
【図４】
2019536356.tif 000010
【図５】
2019536356.tif 000011
【図６】
2019536356.tif 000012
【図７】
2019536356.tif 000013
【図８】
2019536356.tif 000014
【図９】
2019536356.tif 000015
【図１０】
2019536356.tif 000016
【国際調査報告】
2019536356.tif 000017
2019536356.tif 000018
2019536356.tif 000019
2019536356.tif 000020