(57)【特許請求の範囲】
【請求項１】
第１のストリームを第２のストリームに変換するトランスコーダであって、
第２のストリーム全体の目標ビットレートを設定する手段と、
第２のストリーム全体の目標ビットレートと、第Ｎ期間以前の変換済みの第２のストリームのビットレートと、第Ｎ期間の第２のストリームの目標ビットレートに基づいて第Ｎ＋１期間の第２のストリームの目標ビットレートを決定する目標ビットレート決定手段と、
第Ｎ期間以前の第１のストリームのビットレートを取得する手段と、
決定された第Ｎ＋１期間の第２のストリームの目標ビットレートと第Ｎ期間以前の第１のストリームのビットレートとの比に基づいて第Ｎ＋１期間の期間変換係数を算出する期間変換係数算出手段と、
第Ｎ＋１期間の第１のストリームの量子化ステップ値に前記期間変換係数を乗算することで、第Ｎ＋１期間の第２のストリームの量子化ステップ値を算出する手段と、
を備えることを特徴とするトランスコーダ。
【請求項２】
請求項１に記載のトランスコーダにおいて、
前記期間変換係数算出手段は、第Ｎ期間以前の第１のストリームのビットレートとして、第Ｎ期間の第１のストリームのビットレートを用いることを特徴とするトランスコーダ。
【請求項３】
請求項１に記載のトランスコーダにおいて、
前記期間変換係数算出手段は、第Ｎ期間以前の第１のストリームのビットレートとして、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートを用いることを特徴とするトランスコーダ。
【請求項４】
請求項１ないし請求項３のいずれかに記載のトランスコーダにおいて、
第Ｎ期間の第２のストリームの目標ビットレートと第Ｎ期間以前の変換済みの第２のストリームのビットレートとの差に基づいて算出される値を目標差とすると、前記目標ビットレート決定手段は、第２のストリームの全体の目標ビットレートに前記目標差を加算することで、第Ｎ＋１期間の第２のストリームの目標ビットレートを算出することを特徴とするトランスコーダ。
【請求項５】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項６】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項７】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項８】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項９】
請求項４ないし請求項８のいずれかに記載のトランスコーダにおいて、
第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間の第２のストリームのビットレートが用いられることを特徴とするトランスコーダ。
【請求項１０】
請求項４ないし請求項８のいずれかに記載のトランスコーダにおいて、
第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間を含む過去複数期間の第２のストリームの平均ビットレートが用いられることを特徴とするトランスコーダ。
【請求項１１】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１２】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１３】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１４】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１５】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１６】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１７】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１８】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項１９】
請求項１１ないし請求項１８のいずれかに記載のトランスコーダにおいて、
第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間の第２のストリームのビットレートが用いられることを特徴とするトランスコーダ。
【請求項２０】
請求項１１ないし請求項１８のいずれかに記載のトランスコーダにおいて、
第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間を含む過去複数期間の第２のストリームの平均ビットレートが用いられることを特徴とするトランスコーダ。
【請求項２１】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２２】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２３】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２４】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２５】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２６】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２７】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２８】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項２９】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項３０】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項３１】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項３２】
請求項４に記載のトランスコーダにおいて、
第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記期間変換係数算出手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項３３】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第２のストリームの目標ビットレートと第Ｎ期間以前の変換済みの第２のストリームのビットレートとの差が０である領域を境界として、算出される目標差の変化率が非対称であることを特徴とするトランスコーダ。
【請求項３４】
請求項４に記載のトランスコーダにおいて、さらに、
算出された第Ｎ＋１期間の第２のストリームの目標ビットレートの上限値あるいは下限値を設定する手段、
を備えることを特徴とするトランスコーダ。
【請求項３５】
請求項１に記載のトランスコーダにおいて、さらに、
前記期間変換係数の上限値あるいは下限値を設定する手段、
を備えることを特徴とするトランスコーダ。
【請求項３６】
請求項１に記載のトランスコーダにおいて、
第１のストリームのビットレートが変動した場合、前記期間変換係数を再計算することを特徴とするトランスコーダ。
【請求項３７】
請求項１に記載のトランスコーダにおいて、
第２のストリーム全体の目標ビットレートが適応的に変化し、それに応じて前記期間変換係数が再計算されることを特徴とするトランスコーダ。
【請求項３８】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの比を第１期間比、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの比を第２期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間比のいずれかを選択して乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項３９】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を第１期間比、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を第２期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間比のいずれかを選択して乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項４０】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項４１】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項４２】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して乗算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項４３】
請求項４に記載のトランスコーダにおいて、
第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して加算し、前記目標差を調整することを特徴とするトランスコーダ。
【請求項４４】
請求項３３に記載のトランスコーダにおいて、
前記変化率として複数のパターンが用意されており、画像の複雑さに応じて前記変化率が選択されることを特徴とするトランスコーダ。
【請求項４５】
請求項１に記載のトランスコーダにおいて、
決定された第Ｎ＋１期間の目標設定ビットレートを外部パラメータにより調整することを特徴とするトランスコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力ストリームをデコードして異なる出力ストリームに変換するトランスコーダに関し、詳しくは、出力ストリームの発生符号量を目標ビットレートに向けて適正に制御する技術に関する。
【背景技術】
【０００２】
デジタル放送で配信される画像や、ＤＶＤ、ハードディスクなどに格納される画像などは、各種の符号化方式に従って圧縮される。これは、伝送帯域を圧迫しないため、伝送速度を上げるため、あるいは、記憶サイズを小さくするなどの目的のためである。
【０００３】
画像の符号化方式には、ＭＰＥＧ２やＨ．２６４など様々な規格が存在する。そして、入力した符号化画像の符号量を削減するなどの目的で符号化方式の変換が行われる場合がある。トランスコーダは、入力した符号化画像を一旦デコードする。そして、トランスコーダは、デコードした画像を、再び異なる符号化方式（あるいは同じ符号化方式）で符号化する。このようにして、トランスコーダは、出力ストリームのビットレートを制御するのである。
【０００４】
下記特許文献１は、第１の圧縮符号化方式で圧縮された画像を第２の圧縮符号化方式で圧縮された画像に変換するトランスコーダに関するものである。このトランスコーダは、第１の圧縮符号化方式で圧縮された画像を復号する際に発生する中間情報を用いて、第２の圧縮符号化方式で画像を圧縮するようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−７４６３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従前から行なわれているレート制御技術では、既知のフォーマット(フレームレート／画像サイズ)の画像データを入力としている。また、目標ビットレートやＧＯＰピクチャ構成(ＩＢＢＰ・・・)といった符号化のためのパラメータは、ユーザにより意図的に決定され、これらパラメータが決定された上で、符号化が開始される。
【０００７】
つまり、あるシーケンスの符号化を行なう前に、これらの情報が既知のパラメータとして与えられるものであり、かつ、そのシーケンスの符号化中にこれらのパラメータが変わることはない。よって、レートを制御するためのビット割り当てを、ある程度、事前に計画的に行なうことが可能である。
【０００８】
一方、トランスコーダにおけるレート制御においては、出力ストリーム全体の目標ビットレートがユーザにより設定されるが、入力ストリームの諸元、つまり画像サイズ(フォーマット) ／フレームレート／ＧＯＰピクチャ構成/ビットレートなどは、入力ストリームのあるまとまった単位(例えばシーケンスヘッダ、ピクチャヘッダ、１つのＧＯＰ全体)をデコードするまで知ることができない。また、入力ストリームは複数の異なるストリームをカット＆ペースト編集したものである場合もある。この場合は途中で上記の入力ストリームの諸元が変化する場合がある。これに対しては、入力ストリームをある程度先読みして（バッファリングして）、入力ストリームのデコード過程で得られる情報を獲得してから再エンコード処理を行うことで解決可能であるが、先読みしなければならないストリームの分だけ出力に遅延が生じてしまう。そのため１パスで実時間でトランスコードを行なう場合は、出力ストリームのビットレートを平均化するには、従来の技術とは異なった仕組みが必要となる。
【０００９】
そこで、本発明は前記問題点に鑑み、ストリームの出力に遅延を生じさせることなく、出力ストリームの発生符号量を目標ビットレートに向けて適正に制御することを目的とする。
【課題を解決するための手段】
【００１０】
請求項１記載の発明は、第１のストリームを第２のストリームに変換するトランスコーダであって、第２のストリーム全体の目標ビットレートを設定する手段と、第２のストリーム全体の目標ビットレートと、第Ｎ期間以前の変換済みの第２のストリームのビットレートと、第Ｎ期間の第２のストリームの目標ビットレートに基づいて第Ｎ＋１期間の第２のストリームの目標ビットレートを決定する目標ビットレート決定手段と、第Ｎ期間以前の第１のストリームのビットレートを取得する手段と、決定された第Ｎ＋１期間の第２のストリームの目標ビットレートと第Ｎ期間以前の第１のストリームのビットレートとの比に基づいて第Ｎ＋１期間の期間変換係数を算出する期間変換係数算出手段と、第Ｎ＋１期間の第１のストリームの量子化ステップ値に前記期間変換係数を乗算することで、第Ｎ＋１期間の第２のストリームの量子化ステップ値を算出する手段と、を備えることを特徴とする。
【００１２】
請求項２記載の発明は、請求項１に記載のトランスコーダにおいて、前記期間変換係数算出手段は、第Ｎ期間以前の第１のストリームのビットレートとして、第Ｎ期間の第１のストリームのビットレートを用いることを特徴とする。
【００１３】
請求項３記載の発明は、請求項１に記載のトランスコーダにおいて、前記期間変換係数算出手段は、第Ｎ期間以前の第１のストリームのビットレートとして、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートを用いることを特徴とする。
【００２２】
請求項４記載の発明は、請求項１ないし請求項３のいずれかに記載のトランスコーダにおいて、第Ｎ期間の第２のストリームの目標ビットレートと第Ｎ期間以前の変換済みの第２のストリームのビットレートとの差に基づいて算出される値を目標差とすると、前記目標ビットレート決定手段は、第２のストリームの全体の目標ビットレートに前記目標差を加算することで、第Ｎ＋１期間の第２のストリームの目標ビットレートを算出することを特徴とする。
【００２３】
請求項５記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００２４】
請求項６記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００２５】
請求項７記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００２６】
請求項８記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００２７】
請求項９記載の発明は、請求項４ないし請求項８のいずれかに記載のトランスコーダにおいて、第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間の第２のストリームのビットレートが用いられることを特徴とする。
【００２８】
請求項１０記載の発明は、請求項４ないし請求項８のいずれかに記載のトランスコーダにおいて、第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間を含む過去複数期間の第２のストリームの平均ビットレートが用いられることを特徴とする。
【００２９】
請求項１１記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００３０】
請求項１２記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００３１】
請求項１３記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００３２】
請求項１４記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００３３】
請求項１５記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００３４】
請求項１６記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００３５】
請求項１７記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００３６】
請求項１８記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００３７】
請求項１９記載の発明は、請求項１１ないし請求項１８のいずれかに記載のトランスコーダにおいて、第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間の第２のストリームのビットレートが用いられることを特徴とする。
【００３８】
請求項２０記載の発明は、請求項１１ないし請求項１８のいずれかに記載のトランスコーダにおいて、第Ｎ期間以前の変換済みの第２のストリームのビットレートとして、第Ｎ期間を含む過去複数期間の第２のストリームの平均ビットレートが用いられることを特徴とする。
【００３９】
請求項２１記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００４０】
請求項２２記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００４１】
請求項２３記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００４２】
請求項２４記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記期間比を乗算し、前記目標差を調整することを特徴とする。
【００４３】
請求項２５記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００４４】
請求項２６記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００４５】
請求項２７記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００４６】
請求項２８記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００４７】
請求項２９記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００４８】
請求項３０記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００４９】
請求項３１記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記期間差を乗算し、前記目標差を調整することを特徴とする。
【００５０】
請求項３２記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を期間差とすると、前記期間変換係数算出手段は、前記目標差に前記期間差を加算し、前記目標差を調整することを特徴とする。
【００５２】
請求項３３記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第２のストリームの目標ビットレートと第Ｎ期間以前の変換済みの第２のストリームのビットレートとの差が０である領域を境界として、算出される目標差の変化率が非対称であることを特徴とする。
【００５３】
請求項３４記載の発明は、請求項４に記載のトランスコーダにおいて、さらに、算出された第Ｎ＋１期間の第２のストリームの目標ビットレートの上限値あるいは下限値を設定する手段、を備えることを特徴とする。
【００５４】
請求項３５記載の発明は、請求項１に記載のトランスコーダにおいて、さらに、前記期間変換係数の上限値あるいは下限値を設定する手段、を備えることを特徴とする。
【００５５】
請求項３６記載の発明は、請求項１に記載のトランスコーダにおいて、第１のストリームのビットレートが変動した場合、前記期間変換係数を再計算することを特徴とする。
【００５６】
請求項３７記載の発明は、請求項１に記載のトランスコーダにおいて、第２のストリーム全体の目標ビットレートが適応的に変化し、それに応じて前記期間変換係数が再計算されることを特徴とする。
【００５９】
請求項３８記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの比を第１期間比、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの比を第２期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間比のいずれかを選択して乗算し、前記目標差を調整することを特徴とする。
【００６０】
請求項３９記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの比を第１期間比、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの比を第２期間比とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間比のいずれかを選択して乗算し、前記目標差を調整することを特徴とする。
【００６１】
請求項４０記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して乗算し、前記目標差を調整することを特徴とする。
【００６２】
請求項４１記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間の第１のストリームのビットレートと第Ｎ−１期間の第１のストリームのビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間の第１のストリームのビットレートと第Ｎ期間の第１のストリームのビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して加算し、前記目標差を調整することを特徴とする。
【００６３】
請求項４２記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して乗算し、前記目標差を調整することを特徴とする。
【００６４】
請求項４３記載の発明は、請求項４に記載のトランスコーダにおいて、第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ−１期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第１期間差、第Ｎ＋１期間を含む過去複数期間の第１のストリームの平均ビットレートと第Ｎ期間を含む過去複数期間の第１のストリームの平均ビットレートの差に基づいて算出される値を第２期間差とすると、前記目標ビットレート決定手段は、前記目標差に前記第１あるいは第２期間差のいずれかを選択して加算し、前記目標差を調整することを特徴とする。
【００６５】
請求項４４記載の発明は、請求項３３に記載のトランスコーダにおいて、前記変化率として複数のパターンが用意されており、画像の複雑さに応じて前記変化率が選択されることを特徴とする。
【００６６】
請求項４５記載の発明は、請求項１に記載のトランスコーダにおいて、決定された第Ｎ＋１期間の目標設定ビットレートを外部パラメータにより調整することを特徴とする。
【発明の効果】
【００６７】
請求項１記載のトランスコーダは、第２のストリーム全体の目標ビットレートと、変換済みの第Ｎ期間の第２のストリームのビットレートと、第Ｎ期間の第２のストリームの目標ビットレートに基づいて第Ｎ＋１期間の第２のストリームの目標ビットレートを決定する。制御単位期間ごとに目標設定ビットレートを決定することで、第２のストリームを目標ビットレートに向けて適正に制御することが可能である。そして、決定された第Ｎ＋１期間の第２のストリームの目標ビットレートと第Ｎ期間以前の第１のストリームのヒットレートとの比に基づいて、量子化ステップ値を算出する。目標ビットレートに応じた量子化ステップ値が算出される。
【００６９】
また、請求項４記載のトランスコーダは、第Ｎ期間の第２のストリームの目標ビットレートと第Ｎ期間以前の変換済みの第２のストリームのビットレートとの差に基づいて算出される値を目標差とし、この目標差を加味して、次の期間の目標設定ビットレートを算出する。これにより、目標設定ビットレートが目標に追従するように適正に制御される。
【図面の簡単な説明】
【００７０】
【図１】トランスコーダのブロック図である。
【図２】入力ストリーム（第１ストリーム）と出力ストリーム（第２ストリーム）の情報を制御単位期間ごとに示した図である。
【図３】関数θの特性を表す図である。
【図４】関数ψの特性を表す図である。
【発明を実施するための最良の形態】
【００７１】
以下、図面を参照しつつ本発明の実施の形態について説明する。図１は、本実施の形態に係るトランスコーダ１のブロック図である。このトランスコーダ１は、デコーダ２とエンコーダ３とを備えている。
【００７２】
デコーダ２は、第１ストリームを入力する。第１ストリームは、符号化画像のストリームである。デコーダ２は、第１ストリームをデコードし、非圧縮の画像データをエンコーダ３に出力する。エンコーダ３は、デコーダ２においてデコードされた非圧縮の画像データを再び符号化し、第２ストリームを出力するのである。
【００７３】
たとえば、トランスコーダ１は、ＭＰＥＧ２で符号化された第１ストリームを入力し、Ｈ．２６４で符号化された第２ストリームを出力するなど、ストリームの符号化方式を変換する処理を行う。そして、変換処理を行う際、出力する第２ストリームのレート制御を最適に行えるよう本発明は工夫されている。あるいは、トランスコーダ１は、ＭＰＥＧ２で符号化された第１ストリームを入力し、再びＭＰＥＧ２で符号化された第２ストリームを出力するなど、同じ符号化方式のストリームを出力する。このときにも、出力する第２ストリームのレート制御を最適に行えるよう本発明は工夫されている。
【００７４】
なお、この後説明する第１〜第５の実施の形態における各演算処理は、デコーダ２およびエンコーダ３において実行される演算処理であるが、デコーダ２およびエンコーダ３における各演算処理は、ハードウェアにより実現されてもよいし、ソフトウェア処理により実現されていてもよい。つまり、デコーダ２およびエンコーダ３は、ハードウェア回路として構成されていてもよいし、ＣＰＵとメモリに格納されたプログラムとで構成されていてもよい。あるいは、一部の処理がハードウェアで処理され、一部の処理がソフトウェアで処理される形態であってもよい。
【００７５】
図２は、トランスコーダ１が入出力するストリームの制御単位期間ごとの情報を表した図である。トランスコーダ１は、処理時間軸を制御単位期間Ｌｎ（ｎ＝１，２・・・）に区分し、この制御単位期間Ｌｎを処理単位としてレート制御を行う。以下の説明において、適宜、制御単位期間Ｌｎを第ｎ期間と呼ぶことにする。制御単位期間Ｌｎとしては、１フレーム、連続する複数フレーム、１ＧＯＰ、連続する複数ＧＯＰなどを１単位期間として設定することが可能である。
【００７６】
第１ストリームの入力全体ビットレートＳは、シーケンスヘッダなどから取得される。入力平均ビットレートＳｎは、第ｎ期間における第１ストリームの平均ビットレートである。トランスコーダ１は、バッファを備えており、Ｍ期間分の入力平均ビットレートＳｎに関する情報を格納可能としている。つまり、バッファは、第（ｎ−Ｍ＋１）期間から第ｎ期間までの入力平均ビットレートＳｎに関する情報を格納可能としている。そして、期間平均ビットレートＡＳｎは、第（ｎ−Ｍ＋１）期間から第ｎ期間における入力平均ビットレートＳｎを平均した値である。期間平均ビットレートＡＳｎは、数１式で表される。
【００７７】
【数１】
0005412588.tif 000002
【００７８】
デコーダ２は、入力した第１ストリームから、入力全体ビットレートＳ、入力平均ビットレートＳｎ、期間平均ビットレートＡＳｎ、第ｎ期間における量子化ステップ値Ｐなどの情報を取得し、これらの情報をエンコーダ３に与える。エンコーダ３は、これらの情報を利用して、画像の再符号化を行う。
【００７９】
第２ストリームの全体目標ビットレートＴは、ユーザにより設定される。たとえば、ユ
ーザが、トランスコーダ１に設けられた図示せぬ操作部を用いて全体目標ビットレートＴを設定する。目標設定ビットレートＴｎは、第ｎ期間における第２ストリームの目標ビットレートである。出力平均ビットレートＣｎは、第ｎ期間における変換済みの第２ストリームの平均ビットレートである。トランスコーダ１は、バッファを備えており、Ｍ期間分の出力平均ビットレートＣｎに関する情報を格納可能としている。つまり、バッファは、第（ｎ−Ｍ＋１）期間から第ｎ期間までの出力平均ビットレートＣｎに関する情報を格納可能としている。そして、期間平均ビットレートＡＣｎは、第（ｎ−Ｍ＋１）から第ｎ期間における出力平均ビットレートＣｎを平均した値である。期間平均ビットレートＡＣｎは、数２式で表される。なお、この実施の形態では、期間平均ビットレートＡＳｎ、ＡＣｎを計算する場合に利用するバッファ期間を、制御単位期間Ｌｎと連動させたが、バッファ期間の設定方法は、これに限るものではない。たとえば、符号化が終わった時点の過去１フレーム、連続する過去複数フレーム、過去１ＧＯＰ、連続する過去複数ＧＯＰなどをバッファ期間として設定することが可能である。
【００８０】
【数２】
0005412588.tif 000003
【００８１】
また、量子化ステップ変換係数αｎは、第（ｎ−１）期間の終了時に算出される係数である。第１ストリームの量子化ステップ値そのもの、あるいは第１ストリームの量子化ステップ値から計算される値Ｐに、量子化ステップ変換係数αｎを乗算することで、第２ストリームの量子化ステップ値Ｑが決定される。この関係を数３式に示す。
【００８２】
【数３】
0005412588.tif 000004
【００８３】
ここで、量子化ステップ変換係数αｎの初期値α１は、数４式で与えられる。つまり、第２ストリームの全体目標ビットレートＴを第１ストリームの入力全体ビットレートＳで除算した値、つまりビットレート比を関数ｆに入力することによって、量子化ステップ変換係数の初期値α１を求めている。
【００８４】
【数４】
0005412588.tif 000005
【００８５】
ここで、関数ｆは、ビットレートの比から量子化ステップ値の比を求める関数であり、ビットレートの比をＲＢ、量子化ステップ値の比をＲＱとすると、一般的に、数５式で表される。
【００８６】
【数５】
0005412588.tif 000006
【００８７】
関数ｆの具体例を説明する。本実施の形態では、数６式に示すように、ピクチャあるいはマクロブロックのタイプＩ、Ｐ、Ｂ（Ｉピクチャ、Ｐピクチャ、Ｂピクチャ）それぞれに異なる特性で量子化ステップ値の比を制御できる関数を利用している。数６式中、ｆＩ（ｘ）、ｆＰ（ｘ）、ｆＢ（ｘ）は、それぞれＩ、Ｐ、Ｂピクチャに対応して適応される関数を示している。
【００８８】
【数６】
0005412588.tif 000007
【００８９】
数６式においては、ＭＰＥＧ２からＨ．２６４へストリーム変換する場合のεＩ、εＰ、εＢ、δＩ、δＰ、δＢの値として、実験等に基づいて算出された具体的数値を例示した。つまり、実験の結果、εＩ＝２．１、εＰ＝２．１、εＢ＝１．３、δＩ＝１．１、δＰ＝０．８、δＢ＝０．９とすることで、良好な特性が得られた。これ以外に、入力ストリームをデコードする際に得られる画像の特徴量を利用して、ε、δの値を決定するようにしてもよい。たとえば、数７式に示すように、入力ストリームのＡｃｔｉｖｉｔｙ値（ａｃｔ値）や、動き評価値（ｓａｄ値）に基づいてε、δの値を決定するようにしてもよい。
【００９０】
【数７】
0005412588.tif 000008
【００９１】
数７式中、ａは、ａｃｔ値、ｓはｓａｄ値を示しており、εＩ（ａ，ｓ）、εＰ（ａ，ｓ）、εＢ（ａ，ｓ）、−δＩ（ａ，ｓ）、−δＰ（ａ，ｓ）、−δＢ（ａ，ｓ）は、ａｃｔ値およびｓａｄ値をパラメータとして、εおよびδの値が算出されることを示している。
【００９２】
Ａｃｔｉｖｉｔｙ値は、マクロブロック内の画素平均値とマクロブロック内の各画素の画素値との差分絶対値和をマクロブロックごとに計算したものである。つまり、Ａｃｔｉｖｉｔｙ値は、マクロブロック内の画素のばらつき度合い示す評価値である。ＭＰＥＧ２の符号量制御モデルＴＭ５などで用いられるＡｃｔｉｖｉｔｙ値と同様である。動き評価値（ｓａｄ値）は、マクロブロックごとに参照画像マクロブロック内の画素とフレーム間差分絶対値和を計算したものである。つまり、マクロブロックの各画素と、参照画像マクロブロックの各画素とを比較し、同じ座標位置にある画素同士の画素値差分の絶対値和を算出したものである。
【００９３】
より一般的には、第ｎ期間における画像の特徴量をＩＬｎとすると、ｆＩ（ｘ）、ｆＰ（ｘ）、ｆＢ（ｘ）は、それぞれ数８式で表される。
【００９４】
【数８】
0005412588.tif 000009
【００９５】
数８式中、εＩ（ＩＬｎ）、εＰ（ＩＬｎ）、εＢ（ＩＬｎ）、−δＩ（ＩＬｎ）、−δＰ（ＩＬｎ）、−δＢ（ＩＬｎ）は、それぞれ、画像の特徴量ＩＬｎをパラメータとして、係数ε、δが決定されることを示している。
【００９６】
｛第１の実施の形態｝
次に、第２ストリームの量子化ステップ値Ｑを算出するための量子化ステップ変換係数αｎの算出方法について、本発明に係る第１の実施の形態を説明する。トランスコーダ１は、第ｎ期間経過時において、量子化ステップ変換係数αｎ＋１を算出する。
【００９７】
数９式は、量子化ステップ変換係数αｎ＋１を算出するための数式を示している。数９式中、（Ｔ−Ｃｎ）は、第２ストリームの全体目標ビットレートＴから変換済みの第ｎ期間における出力平均ビットレートＣｎを減算したものである。この値を変動係数と呼ぶことにする。ｋは、変動係数を調整する調整係数であり、正の値が用いられる。
【００９８】
【数９】
0005412588.tif 000010
【００９９】
このように、数４式で求められたα１に対して、変動係数を加算することで、量子化ステップ値の比が目標へと近づくように調整するのである。この意味で、量子化ステップ変換係数の初期値α１は、基準変換係数と呼ぶことができる。
【０１００】
数９式を用いて、量子化ステップ変換係数αｎ＋１が算出されると、数３式により、第２ストリームの第（ｎ＋１）期間における量子化ステップ値Ｑが求められるのである。
【０１０１】
このように、第１の実施の形態では、基準変換係数である初期値α１に、変動係数を加算することで、第（ｎ＋１）期間における量子化ステップ変換係数αｎ＋１を求めた。そして、数９式では、変動係数として、第２ストリームの全体目標ビットレートＴから変換済みの第ｎ期間における出力平均ビットレートＣｎを減算したものを利用した。これ以外の方法として、数１０式に示すように、第２ストリームの全体目標ビットレートＴの対数値から変換済みの第ｎ期間における出力平均ビットレートＣｎの対数値を減算したものを変動係数として用いても良い。数１０式中、ｋは、変動係数を調整する調整係数であり、正の値が用いられる。
【０１０２】
【数１０】
0005412588.tif 000011
【０１０３】
数１０式を用いて変動係数を算出するメリットは、目標ビットレートと変換済みのビットレートとの差が局所的に大きくなった場合でも、量子化ステップ変換係数が、大きく変動しないよう制御できることである。
【０１０４】
量子化ステップ変換係数を、より精度よく制御するためには、ルックアップテーブルを用いるようにすればよい。数１１式におけるωは、第２ストリームの全体目標ビットレートＴおよび変換済みの第ｎ期間における出力平均ビットレートＣｎを入力として、変動係数を出力するルックアップテーブルを表している。これにより、実験等を通じて、より最適な変動係数を割り当てるようにすることができる。
【０１０５】
【数１１】
0005412588.tif 000012
【０１０６】
上記数９式において変動係数を算出する際、第ｎ期間における出力平均ビットレートＣｎを用いた。ここで、数１２式で示すように、出力平均ビットレートＣｎに代えて、第（ｎ−Ｍ＋１）期間から第ｎ期間における期間平均ビットレートＡＣｎを用いても良い。
【０１０７】
【数１２】
0005412588.tif 000013
【０１０８】
これにより、局所的なＣｎの変化に大きく左右されることなく、変動係数を緩やかに制御することができる。同様に、数１０式、数１１式においても、出力平均ビットレートＣｎに代えて、期間平均ビットレートＡＣｎを用いても良い。
【０１０９】
また、上記数９式において変動係数を算出する際、第２ストリームの全体目標ビットレートＴから変換済みの第ｎ期間における出力平均ビットレートＣｎを減算したものを採用した。ここで、数１３式に示すように、減算値をさらに第１のストリームの第ｎ期間における入力平均ビットレートＳｎで除算するようにしてもよい。
【０１１０】
【数１３】
0005412588.tif 000014
【０１１１】
これにより、第１ストリームのビットレートが局所的に大きく変化した場合などに、変動係数が大きく影響を受けることを回避できるのである。同様に、数１０式、数１１式においても、対数の減算値あるいはルックアップテーブルの出力をさらに入力平均ビットレートＳｎで除算するようにしてもよい。
【０１１２】
さらに、数１２式と数１３式を用いて説明した変動係数の算出方法の両方の考え方を取り入れるようにしてもよい。つまり、数１４式に示すように、出力平均ビットレートＣｎに代えて、期間平均ビットレートＡＣｎを用い、さらに、減算値を入力平均ビットレートＳｎで除算するのである。これにより、変動係数をより緩やかに制御することができる。同様に、数１０式、数１１式においても、出力平均ビットレートＣｎに代えて、期間平均ビットレートＡＣｎを用い、さらに、対数の減算値あるいはルックアップテーブルの出力を入力平均ビットレートＳｎで除算するようにしてもよい。
【０１１３】
【数１４】
0005412588.tif 000015
【０１１４】
また、数１３式では、全体目標ビットレートＴから出力平均ビットレートＣｎを減算し、その減算値をビットレートＳｎで除算するようにした。これに代えて、数１５式に示すように、減算値を、第（ｎ−Ｍ＋１）期間から第ｎ期間における第１ストリームの期間平均ビットレートＡＳｎで除算するようにしてもよい。これにより、第１ストリームのビットレートの局所的変換に影響されることなく、より緩やかに変動係数を制御することができる。同様に、数１０式、数１１式においても、対数の減算値あるいはルックアップテーブルの出力を期間平均ビットレートＡＳｎで除算するようにしてもよい。
【０１１５】
【数１５】
0005412588.tif 000016
【０１１６】
また、数１６式で示したように、出力平均ビットレートＣｎに代えて、期間平均ビットレートＡＣｎを用い、入力平均ビットレートＳｎに代えて、期間平均ビットレートＡＳｎを用いても良い。これにより、さらに緩やかに変動係数を制御することが可能である。同様に、数１０式、数１１式においても、出力平均ビットレートＣｎに代えて、期間平均ビットレートＡＣｎを用い、さらに、対数の減算値あるいはルックアップテーブルの出力を期間平均ビットレートＡＳｎで除算するようにしてもよい。
【０１１７】
【数１６】
0005412588.tif 000017
【０１１８】
｛第２の実施の形態｝
次に、本発明の第２の実施の形態について説明する。第２の実施の形態においても、量子化ステップ変換係数を算出し、数３式を用いて、第２ストリームの量子化ステップ値Ｑを算出する。ただし、量子化ステップ変換係数の算出方法が第１の実施の形態とは異なる。第１の実施の形態では、量子化ステップ変換係数の初期値α１を求め、これを基準変換係数として、基準変換係数からの変動を順次求めていくこととした。これに対して、第２の実施の形態においては、第ｎ期間が終了した時点で、第（ｎ＋１）期間における第２ストリームの目標設定ビットレートＴｎ＋１を決定し、決定された目標設定ビットレートＴｎ＋１を用いて、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するのである。
【０１１９】
第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１が決定すると、数５式を用いて説明した場合と同様の方法で、量子化ステップ変換係数αｎ＋１が算出される。つまり、数６式〜数８式で例示したような関数ｆを利用して、量子化ステップ変換係数αｎ＋１が算出される。具体的には、数１７式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と第ｎ期間の入力平均ビットレートＳｎの比を関数ｆに入力することで、量子化ステップ変換係数αｎ＋１を算出する。
【０１２０】
【数１７】
0005412588.tif 000018
【０１２１】
あるいは、数１８式で示すように、第ｎ期間における入力平均ビットレートＳｎに代えて、第（ｎ−Ｍ＋１）期間から第ｎ期間までの期間平均ビットレートＡＳｎを用いて量子化ステップ変換係数αｎ＋１を算出してもよい。
【０１２２】
【数１８】
0005412588.tif 000019
【０１２３】
数１９式は、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を算出する式である。つまり、トランスコーダ１が、第ｎ期間終了後に算出する第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を示している。具体的には、第ｎ期間の変換済みの第２ストリームの出力平均ビットレートＣｎを第ｎ期間の目標設定ビットレートＴｎで除算した値を目標比と考えると、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１は、第２ストリームの全体目標ビットレートＴを目標比で除算することで算出されるのである。
【０１２４】
【数１９】
0005412588.tif 000020
【０１２５】
数１９式中、ｋは正の係数であり、目標設定ビットレートＴｎ＋１を調整するための係数である。このように、Ｃｎ／Ｔｎにより第ｎ期間における目標との比を算出し、全体目標ビットレートＴを目標比で除算することで第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を調整し、全体として目標ビットレートに近づくよう制御するのである。
【０１２６】
数１９式では、Ｃｎ／Ｔｎを目標比としてそのまま利用しているが（係数ｋは乗算しているが）、数２０式で示すように、Ｃｎ／Ｔｎを関数θに入力することで、目標比を求めるようにしてもよい。
【０１２７】
【数２０】
0005412588.tif 000021
【０１２８】
数２０式で示すように、関数θにＣｎ／Ｔｎを入力し、全体目標ビットレートＴ、関数θの出力を用いて目標設定ビットレートＴｎ＋１を算出するのである。数２０式中、ｋは、目標設定ビットレートＴｎ＋１を調整するための正の係数である。数２１式は、関数θの具体例を示す式である。
【０１２９】
【数２１】
0005412588.tif 000022
【０１３０】
数２１式中の、ａ０、ａ１、ｂ０、ｂ１、ｃ０、ｃ１の関係を、数２２式に示す。また、このような条件で表される関数θの特性を図３に示す。
【０１３１】
【数２２】
0005412588.tif 000023
【０１３２】
このように関数θは、入力値が１の近傍では、その出力も“１”から大きく変動しないような特性を持っている。そして、入力値がある閾値よりも大きくなったところから（あるいはある閾値よりも小さくなったところから）、線形的にその出力値も変動するような特性を持っている。数２１式、数２２式で示した具体例であれば、入力値が（１＋ｃ０）より大きくなるか、（１−ｃ１）より小さくなったところから出力値の変動も大きくなる。
【０１３３】
このような関数θを用いることで、（Ｃｎ／Ｔｎ）が、少し“１”からずれている場合に、目標設定ビットレートＴｎ＋１が全体目標ビットレートＴから大きく変動してしまうことを回避できる。目標比が比較的大きくずれた場合に、目標設定ビットレートＴｎ＋１を変動させることで、目標に対する最適な追従が行えるように制御するのである。
【０１３４】
図３で示した例では、関数θは左右対称（（１，１）点について点対称）の特性をもっている。つまり、（Ｃｎ／Ｔｎ）の値が１である領域を境界にして、変化率が対称となっている。より具体的には、（Ｃｎ／Ｔｎ）の値が１より大きいときの目標比の上昇率と、１より小さいときの目標比の減少率が同じである。ここで、（Ｃｎ／Ｔｎ）の値が１である領域を境界にして、変化率を非対称としてもよい。より具体的には、（Ｃｎ／Ｔｎ）の値が１より大きいときの目標比の上昇率と、１より小さいときの目標比の減少率が異なるようにしてもよい。つまり、ａ０やａ１の値を調整して左右非対称な特性を持たせてもよい。たとえば、ａ０を大きく、ａ１を小さくすることにより、ビットレートが目標値よりも大きくなったときは、目標値に早く戻るように制御し、目標値より小さくなったときは、緩やかに目標値に戻るように制御することができる。
【０１３５】
数１９式では、第ｎ期間の第２ストリームの出力平均ビットレートＣｎを目標設定ビットレートＴｎで除算した値を目標比として利用しているが、この目標比をさらに調整するようにしたのが、数２３式である。
【０１３６】
【数２３】
0005412588.tif 000024
【０１３７】
数２３式において、目標比にＳｎ−１／Ｓｎが乗算されている。Ｓｎ−１／Ｓｎは、第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１を、第ｎ期間の第１ストリームの入力平均ビットレートＳｎで除算した値であり、入力平均ビットレートの期間比と呼ぶことができる。つまり、目標比に期間比を乗算することで、目標比を調整しているのである。
【０１３８】
このように目標比に期間比を乗算することで、局所的な目標比の変化を補正することができる。たとえば、入力平均ビットレートＳｎが局所的に小さく変化した場合には、それに伴い、目標比Ｃｎ／Ｔｎも小さく変動する場合がある。このような場合にも、期間比Ｓｎ−１／Ｓｎ（この場合、期間比が１より大きな値となる。）を乗算することで、目標比を調整し、目標設定ビットレートＴｎ＋１が大きく変動することを回避できるのである。逆に、入力平均ビットレートＳｎが局所的に大きく変化した場合には、期間比Ｓｎ−１／Ｓｎが１より小さい値となり、目標比が急激に大きくなることを抑制することができる。
【０１３９】
数２０式で示した関数θを用いて目標設定ビットレートＴｎ＋１を算出する方法についても、同様に、期間比を乗算し、目標比を設定するようにしてもよい。この方法により求められる目標設定ビットレートＴｎ＋１を数２４式に示す。この場合にも、入力平均ビットレートの変動に伴い目標比を調整し、目標設定ビットレートＴｎ＋１が大きく変動することを回避できるのである。
【０１４０】
【数２４】
0005412588.tif 000025
【０１４１】
数２３式では、第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１を、第ｎ期間の第１ストリームの入力平均ビットレートＳｎで除算した値を期間比とした。これに対して、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、入力平均ビットレートＳｎ＋１を利用してもよい。入力平均ビットレートＳｎ＋１を先読みできる場合とは、入力平均ビットレートＳｎ＋１に関する情報をバッファリングした上で、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を算出できる時間的余裕がある場合である。つまり、ある程度の処理遅延が許されるような場合である。数２５式に、入力平均ビットレートＳｎ＋１を用いて目標設定ビットレートＴｎ＋１を算出する式を示す。
【０１４２】
【数２５】
0005412588.tif 000026
【０１４３】
数２５式に示すように、期間比として、Ｓｎ／Ｓｎ＋１、つまり、第ｎ期間の第１ストリームの入力平均ビットレートＳｎを、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１で除算した値を用いている。このように、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用することで、目標設定ビットレートＴｎ＋１をより高い精度で制御することが可能となる。つまり、より最新の入力情報を用いることで、目標ビットレートに対する最適制御を行うことができるのである。
【０１４４】
数２４式では、関数θを用いて求めた目標比に期間比を乗算した。この場合についても、同様に、期間比Ｓｎ−１／Ｓｎに代えて、期間比Ｓｎ／Ｓｎ＋１を用いてもよい。期間比Ｓｎ／Ｓｎ＋１を用いる場合の演算式を数２６式に示す。この場合にも、目標設定ビットレートＴｎ＋１をより精度高く制御することが可能である。
【０１４５】
【数２６】
0005412588.tif 000027
【０１４６】
期間比として、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用した場合には、数１７式に代えて、数２７式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１の比を関数ｆに入力することで、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するようにすればよい。
【０１４７】
【数２７】
0005412588.tif 000028
【０１４８】
また、数２３式、数２４式では、期間比としてＳｎ−１／Ｓｎを利用した。これに代えて、第（ｎ−１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ−１と、第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎの比を期間比として用いてもよい。つまり、数２３式、数２４式において、期間比として、Ｓｎ−１／Ｓｎに代えて、ＡＳｎ−１／ＡＳｎを用いてもよい。これにより、局所的な変動の影響を小さくし、目標設定ビットレートＴｎ＋１を最適制御することが可能である。
【０１４９】
あるいは、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎと、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１の比を期間比として用いてもよい。つまり、数２３式、数２４式において、期間比として、Ｓｎ−１／Ｓｎに代えて、ＡＳｎ／ＡＳｎ＋１を用いてもよい。これにより、局所的な変動の影響を小さくするとともに、最新の入力ビットレートを利用することで、より精度高く目標設定ビットレートＴｎ＋１を制御することが可能である。
【０１５０】
期間比として、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１を利用した場合には、数１８式に代えて、数２８式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１の比を関数ｆに入力することで、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するようにすればよい。
【０１５１】
【数２８】
0005412588.tif 000029
【０１５２】
また、第２の実施の形態における目標設定ビットレートＴｎ＋１の計算方法を、数１９式、数２０式、数２３式〜数２６式などを用いて説明したが、これら数式を用いて説明した場合を含め上記各実施の形態における全ての場合において、第ｎ期間の出力平均ビットレートＣｎに代えて、第（ｎ−Ｍ＋１）期間から第ｎ期間までの期間平均ビットレートＡＣｎを用いても良い。たとえば、数１９式、数２０式、数２３式〜数２６式などにおいて、Ｃｎに代えてＡＣｎを用いるのである。これにより、目標設定ビットレートＴｎ＋１を、より緩やかに制御することが可能である。
【０１５３】
｛第３の実施の形態｝
次に、本発明の第３の実施の形態について説明する。第３の実施の形態においても、量子化ステップ変換係数を算出し、数３式を用いて、第２ストリームの量子化ステップ値Ｑを算出する。また、第３の実施の形態においても、第２の実施の形態と同様、第ｎ期間が終了した時点で、第（ｎ＋１）期間における第２ストリームの目標設定ビットレートＴｎ＋１を決定し、決定された目標設定ビットレートＴｎ＋１を用いて、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出する。
【０１５４】
第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１が決定すると、数５式を用いて説明した場合と同様の方法で、量子化ステップ変換係数αｎ＋１が算出される。つまり、数６式〜数８式で例示したような関数ｆを利用して、量子化ステップ変換係数αｎ＋１が算出される。具体的には、数１７式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と第ｎ期間の入力平均ビットレートＳｎの比を関数ｆに入力することで、量子化ステップ変換係数αｎ＋１を算出する。あるいは、数１８式で示すように、入力平均ビットレートＳｎの比に代えて、第（ｎ−Ｍ＋１）期間から第ｎ期間までの期間平均ビットレートＡＳｎを用いて量子化ステップ変換係数αｎ＋１を算出してもよい。
【０１５５】
数２９式は、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を算出する式である。つまり、トランスコーダ１が、第ｎ期間終了後に算出する第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を表している。具体的には、第ｎ期間の目標設定ビットレートＴｎから第ｎ期間の変換済みの第２ストリームの出力平均ビットレートＣｎを減算した値を目標差と考えると、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１は、第２ストリームの全体目標ビットレートＴに目標差を加算することで算出されるのである。
【０１５６】
【数２９】
0005412588.tif 000030
【０１５７】
数２９式中、ｋは正の係数であり、目標設定ビットレートＴｎ＋１を調整するための係数である。このように、（Ｔｎ−Ｃｎ）により、第ｎ期間における目標との差を算出し、全体目標ビットレートＴに目標差を加算することで、出力ストリームが目標ビットレートに近づくような制御を行うのである。
【０１５８】
数２９式では、（Ｔｎ−Ｃｎ）をそのまま目標差として利用しているが（係数ｋは乗算しているが）、数３０式で示すように、（Ｔｎ−Ｃｎ）を関数ψに入力することで、目標差を求めるようにしてもよい。
【０１５９】
【数３０】
0005412588.tif 000031
【０１６０】
数３０式で示すように、関数ψに（Ｔｎ−Ｃｎ）を入力し、全体目標ビットレートＴ、関数ψの出力を用いて目標設定ビットレートＴｎ＋１を算出するのである。数３１式は、関数ψの具体例を示す式である。
【０１６１】
【数３１】
0005412588.tif 000032
【０１６２】
数３１式中の、ａ０、ａ１、ｂ０、ｂ１、ｃ０、ｃ１の関係を、数３２式に示す。また、このような条件で表される関数ψの特性を図４に示す。
【０１６３】
【数３２】
0005412588.tif 000033
【０１６４】
このように関数ψは、入力値が０の近傍では、その出力も“０”から大きく変動しないような特性を持っている。そして、入力値がある閾値よりも大きくなったところから（あるいは小さくなったところから）、線形的にその出力値も変動するような特性を持っている。数３１式、数３２式で示した例であれば、入力値がｃ０より大きくなるか、−ｃ１より小さくなるところから出力値も大きく変動するような特性となっている。
【０１６５】
このような関数ψを用いることで、（Ｔｎ−Ｃｎ）が、少し“０”からずれている場合に、目標設定ビットレートＴｎ＋１が全体目標ビットレートＴから大きく変動してしまうことを回避できる。目標差が比較的大きくずれた場合に、目標設定ビットレートＴｎ＋１を変動させることで、目標に対する最適な追従が行えるように制御するのである。
【０１６６】
図４で示した例では、関数ψは左右対称（（０，０）点について点対称）の特性をもっている。つまり、（Ｔｎ−Ｃｎ）の値が０である領域を境界にして、変化率が対称となっている。より具体的には、（Ｔｎ−Ｃｎ）の値が０より大きいときの目標差の上昇率と、０より小さいときの目標差の減少率が同じである。ここで、（Ｔｎ−Ｃｎ）の値が０である領域を境界にして、変化率を非対称としてもよい。より具体的には、（Ｔｎ−Ｃｎ）の値が０より大きいときの目標差の上昇率と、０より小さいときの目標差の減少率が異なるようにしてもよい。つまり、ａ０やａ１の値を調整して左右非対称な特性を持たせてもよい。たとえば、ａ１を大きく、ａ０を小さくすることにより、ビットレートが目標値よりも大きくなったときは、目標値に早く戻るように制御し、目標値より小さくなったときは、緩やかに目標値に戻るように制御することができる。
【０１６７】
数２９式では、第ｎ期間の目標設定ビットレートＴｎから第ｎ期間の第２ストリームの出力平均ビットレートＣｎを減算した目標差を利用しているが、この目標差をさらに調整するようにしたのが、数３３式である。
【０１６８】
【数３３】
0005412588.tif 000034
【０１６９】
数３３式において、目標差にＳｎ／Ｓｎ−１が乗算されている。Ｓｎ／Ｓｎ−１は、第ｎ期間の第１ストリームの入力平均ビットレートＳｎを、第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１で除算した期間比である。つまり、目標差に期間比を乗算することで、目標差を調整しているのである。
【０１７０】
このように目標差に期間比を乗算することで、局所的な目標差の変化を補正することができる。たとえば、第ｎ期間の入力平均ビットレートＳｎが局所的に第（ｎ−１）期間と比べて小さく変化した場合には、それに伴い、目標差（Ｔｎ−Ｃｎ）が大きく変動する場合がある。このような場合にも、期間比Ｓｎ／Ｓｎ−１（この場合、期間比が１より小さな値となる。）を乗算することで、目標差を調整し、目標設定ビットレートＴｎ＋１が大きく変動することを回避できるのである。
【０１７１】
数３０式で示した関数ψを用いて目標設定ビットレートＴｎ＋１を算出する方法についても、同様に、期間比を乗算し、目標差を設定するようにしてもよい。この方法により求められる目標設定ビットレートＴｎ＋１を数３４式に示す。この場合にも、入力平均ビットレートの変動に伴い目標差を調整し、目標設定ビットレートＴｎ＋１が大きく変動することを回避できるのである。
【０１７２】
【数３４】
0005412588.tif 000035
【０１７３】
数３３式では、第ｎ期間の第１ストリームの入力平均ビットレートＳｎを、第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１で除算した値を期間比とした。これに対して、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、入力平均ビットレートＳｎ＋１を利用してもよい。入力平均ビットレートＳｎ＋１を先読みできる場合とは、上述したように、入力平均ビットレートＳｎ＋１に関する情報をバッファリングした上で、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を算出できる時間的余裕がある場合である。この場合には、数３３式において、期間比として、Ｓｎ／Ｓｎ−１に代えて、Ｓｎ＋１／Ｓｎを用いるのである。このように、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用することで、目標設定ビットレートＴｎ＋１をより高い精度で制御することが可能となる。
【０１７４】
数３４式では、関数ψを用いて求めた目標差に期間比を乗算した。この場合についても、同様に、期間比Ｓｎ／Ｓｎ−１に代えて、期間比Ｓｎ＋１／Ｓｎを用いてもよい。この場合にも、目標設定ビットレートＴｎ＋１をより精度高く制御することが可能である。
【０１７５】
期間比として、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用した場合には、数１７式に代えて、数２７式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１の比を関数ｆに入力することで、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するようにすればよい。
【０１７６】
また、数３３式、数３４式では、期間比としてＳｎ／Ｓｎ−１を利用した。これに代えて、第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎと、第（ｎ−１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ−１の比を期間比として用いてもよい。つまり、数３３式、数３４式において、期間比として、Ｓｎ／Ｓｎ−１に代えて、ＡＳｎ／ＡＳｎ−１を用いてもよい。これにより、局所的な変動の影響を小さくし、目標設定ビットレートＴｎ＋１を最適制御することが可能である。
【０１７７】
あるいは、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１と、第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎの比を期間比として用いてもよい。つまり、数３３式、数３４式において、期間比として、Ｓｎ／Ｓｎ−１に代えて、ＡＳｎ＋１／ＡＳｎを用いてもよい。これにより、局所的な変動の影響を小さくするとともに、最新の入力ビットレートを利用することで、より精度高く目標設定ビットレートＴｎ＋１を制御することが可能である。
【０１７８】
期間比として、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１を利用した場合には、数１８式に代えて、数２８式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１の比を関数ｆに入力することで、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するようにすればよい。
【０１７９】
また、第３の実施の形態における目標設定ビットレートＴｎ＋１の計算方法を、数２９式、数３０式、数３３式、数３４式などを用いて説明したが、これら数式を用いて説明した実施の形態を含め、この第３の実施の形態において説明した全ての計算方法において、第ｎ期間の出力平均ビットレートＣｎに代えて、第（ｎ−Ｍ＋１）期間から第ｎ期間までの期間平均ビットレートＡＣｎを用いても良い。たとえば、数２９式、数３０式、数３３式、数３４式などにおいて、Ｃｎに代えてＡＣｎを用いても良い。これにより、目標設定ビットレートＴｎ＋１を、より緩やかに制御することが可能である。
【０１８０】
｛第４の実施の形態｝
次に、本発明の第４の実施の形態について説明する。第４の実施の形態においても、第３の実施の形態と同様、第ｎ期間が終了した時点で、第（ｎ＋１）期間における第２ストリームの目標設定ビットレートＴｎ＋１を決定し、決定された目標設定ビットレートＴｎ＋１を用いて、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出する。第４の実施の形態においては、第（ｎ＋１）期間における第２ストリームの目標設定ビットレートＴｎ＋１の決定の方法が、第３の実施の形態と異なる。
【０１８１】
数３５式は、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を算出する式である。第ｎ期間の目標設定ビットレートＴｎから第ｎ期間の変換済みの第２ストリームの出力平均ビットレートＣｎを減算した値を目標差として利用する点も、第３の実施の形態と同様である。第３の実施の形態では、この目標差に期間比を乗算することで、目標差を調整したが、数３５式に示すように、第４の実施の形態では、目標差に期間差を乗算するようにしている。
【０１８２】
【数３５】
0005412588.tif 000036
【０１８３】
数３５式において、目標差に（Ｓｎ−Ｓｎ−１）が乗算されている。（Ｓｎ−Ｓｎ−１）は、第ｎ期間の第１ストリームの入力平均ビットレートＳｎから、第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１を減算した期間差である。つまり、目標差に期間差を乗算することで、目標差を調整しているのである。なお、数３５式中、係数ｋは、目標設定ビットレートＴｎ＋１を調整するための正の係数である。
【０１８４】
このように目標差に期間差を乗算することで、局所的な目標差の変化を補正することができる。たとえば、入力平均ビットレートＳｎが次第に小さく変化しているような場合には、それに伴い、Ｃｎが小さくなる場合があり、目標差（Ｔｎ−Ｃｎ）が正の値になる。このような場合には、期間差（Ｓｎ−Ｓｎ−１）が負の値となり、目標設定ビットレートＴｎ＋１が大きく設定されないよう補正するのである。つまり、入力平均ビットレートＳｎが小さく変化しているような場合には、その変化に反して、目標設定ビットレートＴｎ＋１が大きく変化しないよう制御するのである。
【０１８５】
数３５式では、（Ｔｎ−Ｃｎ）を目標差として利用しているが（係数ｋは乗算しているが）、数３６式で示すように、（Ｔｎ−Ｃｎ）を関数ψに入力することで、目標差を算出するようにしてもよい。関数ψとしては、たとえば、数３０式〜数３２式および図４で例示したものを同様に利用することが可能である。
【０１８６】
【数３６】
0005412588.tif 000037
【０１８７】
このような関数ψを用いることで、目標差（Ｔｎ−Ｃｎ）が、少し“０”からずれている場合に、目標設定ビットレートＴｎ＋１が全体目標ビットレートＴから大きく変動してしまうことを回避できる。目標差が比較的大きくずれた場合に、目標設定ビットレートＴｎ＋１を変動させることで、目標に対する最適な追従が行えるように制御するのである。
【０１８８】
数３５式では、期間差（Ｓｎ−Ｓｎ−１）をそのまま目標差に乗算し、係数ｋを乗算することで目標設定ビットレートＴｎ＋１を調整するようにしたが、数３７式に示すように、期間差（Ｓｎ−Ｓｎ−１）を関数φに入力するようにしてもよい。これにより、一定の係数ｋを乗算する場合と比べて、より精度高く目標設定ビットレートＴｎ＋１を制御することができる。関数φは、特に限定されるものではなく、期間差の大きさと目標設定ビットレートＴｎ＋１の変動割合との関係を考慮して最適なものを選択すればよい。
【０１８９】
【数３７】
0005412588.tif 000038
【０１９０】
数３６式においても、期間差（Ｓｎ−Ｓｎ−１）をそのまま目標差（関数ψの出力）に乗算し、目標設定ビットレートＴｎ＋１を調整するようにしたが、数３８式に示すように、期間差（Ｓｎ−Ｓｎ−１）を関数φに入力するようにしてもよい。これにより、関数ψによる制御と併せて、より精度高く目標設定ビットレートＴｎ＋１を制御することができる。関数φは、特に限定されるものではなく、期間差の大きさと目標設定ビットレートＴｎ＋１の変動割合との関係を考慮して最適なものを選択すればよい。
【０１９１】
【数３８】
0005412588.tif 000039
【０１９２】
数３５式、数３７式で説明した目標設定ビットレートＴｎ＋１の算出方法では、目標差（Ｔｎ−Ｃｎ）に期間差を乗算するようにした。これに対して、数３９式に示すように、目標差に期間差を加算するようにしてもよい。数３９式中、ｈは、目標設定ビットレートＴｎ＋１を調整するための正の係数である。このように、期間差を加算することで、乗算した場合とは異なる特性で目標設定ビットレートＴｎ＋１を制御することが可能である。
【０１９３】
【数３９】
0005412588.tif 000040
【０１９４】
また、数３６式、数３８式で説明した目標設定ビットレートＴｎ＋１の算出方法では、目標差ψ（Ｔｎ−Ｃｎ）に期間差を乗算するようにした。これに対して、数４０式に示すように、目標差に期間差を加算するようにしてもよい。このように、期間差を加算することで、乗算した場合とは異なる特性で目標設定ビットレートＴｎ＋１を制御することが可能である。
【０１９５】
【数４０】
0005412588.tif 000041
【０１９６】
数３５式〜第３８式では、第ｎ期間の第１ストリームの入力平均ビットレートＳｎから第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１を減算した値を期間差とした。そして、目標差に期間差を乗算するようにした。これに対して、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、入力平均ビットレートＳｎ＋１を利用してもよい。この場合には、数３５式〜数３８式において、期間差として、（Ｓｎ−Ｓｎ−１）に代えて、（Ｓｎ＋１−Ｓｎ）を用いるのである。このように、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用することで、目標設定ビットレートＴｎ＋１をより高い精度で制御することが可能となる。
【０１９７】
また、数３９式、第４０式においても、第ｎ期間の第１ストリームの入力平均ビットレートＳｎから第（ｎ−１）期間の第１ストリームの入力平均ビットレートＳｎ−１を減算した値を期間差とした。そして、目標差に期間差を加算するようにした。これに対して、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、入力平均ビットレートＳｎ＋１を利用してもよい。この場合には、数３９式、数４０式において、期間差として、（Ｓｎ−Ｓｎ−１）に代えて、（Ｓｎ＋１−Ｓｎ）を用いるのである。このように、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用することで、目標設定ビットレートＴｎ＋１をより高い精度で制御することが可能となる。
【０１９８】
期間差として、第（ｎ＋１）期間の第１ストリームの入力平均ビットレートＳｎ＋１を利用した場合には、数２７式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１の比を関数ｆに入力することで、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するようにすればよい。
【０１９９】
また、数３５式〜数４０式では、期間差として（Ｓｎ−Ｓｎ−１）を利用した。これに代えて、第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎと、第（ｎ−１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ−１の差を期間差として用いてもよい。つまり、数３５式〜数４０式において、期間差として、（Ｓｎ−Ｓｎ−１）に代えて、（ＡＳｎ−ＡＳｎ−１）を用いてもよい。これにより、局所的な変動の影響を小さくし、目標設定ビットレートＴｎ＋１を最適制御することが可能である。
【０２００】
あるいは、第１ストリームの第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１を先読みできる場合には、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１と、第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎの差を期間差として用いてもよい。つまり、数３５式〜数４０式において、期間差として、（Ｓｎ−Ｓｎ−１）に代えて、（ＡＳｎ＋１−ＡＳｎ）を用いてもよい。これにより、局所的な変動の影響を小さくするとともに、最新の入力ビットレートを利用することで、より精度高く目標設定ビットレートＴｎ＋１を制御することが可能である。
【０２０１】
期間差として、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１を利用した場合には、数２８式で示すように、第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１と、第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１の比を関数ｆに入力することで、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出するようにすればよい。
【０２０２】
また、第４の実施の形態における目標設定ビットレートＴｎ＋１の計算方法を、数３５式〜数４０式などを用いて説明したが、これら数式を用いて説明した場合を含め第４の実施の形態で説明した全ての計算方法において、第ｎ期間の出力平均ビットレートＣｎに代えて、第（ｎ−Ｍ＋１）期間から第ｎ期間までの期間平均ビットレートＡＣｎを用いても良い。たとえば、数３５式〜数４０式などにおいて、Ｃｎに代えてＡＣｎを用いても良い。これにより、目標設定ビットレートＴｎ＋１を、より緩やかに制御することが可能である。
【０２０３】
｛第５の実施の形態｝
次に、本発明の第５の実施の形態について説明する。第５の実施の形態においても、第３あるいは第４の実施の形態と同様、第ｎ期間が終了した時点で、第（ｎ＋１）期間における第２ストリームの目標設定ビットレートＴｎ＋１を決定し、決定された目標設定ビットレートＴｎ＋１を用いて、第（ｎ＋１）期間の量子化ステップ変換係数αｎ＋１を算出する。第５の実施の形態においては、第（ｎ＋１）期間における第２ストリームの目標設定ビットレートＴｎ＋１の決定の方法が、第３あるいは第４の実施の形態と異なる。
【０２０４】
数３３式、数３４式では、第ｎ期間の入力平均ビットレートＳｎと第（ｎ−１）期間の入力平均ビットレートＳｎ−１との比を期間比として目標差に乗算した。数３３式、数３４式を含め第３の実施の形態で説明した各実施の形態において、この期間比Ｓｎ／Ｓｎ−１に代えて、期間比Ｓｎ／ＡＳｎを用いるようにしてもよい。つまり、第ｎ期間の入力平均ビットレートＳｎと第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎとの比を期間比とするのである。これにより、入力平均ビットレートＳｎの変動を緩やかに評価することが可能である。
【０２０５】
あるいは、数３３式、数３４式を含め第３の実施の形態で説明した各実施の形態において、期間比Ｓｎ／Ｓｎ−１に代えて、期間比Ｓｎ／ＡＳｎ−１を用いるようにしてもよい。つまり、第ｎ期間の入力平均ビットレートＳｎと第（ｎ−１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ−１との比を期間比とするのである。同様に、入力平均ビットレートＳｎの変動を緩やかに評価することが可能である。
【０２０６】
また、入力ビットレートの先読みができる場合、数３３式、数３４式を含め第３の実施の形態で説明した各実施の形態において、期間比Ｓｎ／Ｓｎ−１に代えて期間比Ｓｎ＋１／Ｓｎを用いてもよいと説明した。そこで、さらに、この期間比Ｓｎ＋１／Ｓｎに代えて、期間比Ｓｎ＋１／ＡＳｎ＋１を用いるようにしてもよい。つまり、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１と第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１との比を期間比とするのである。これにより、入力平均ビットレートＳｎ＋１の変動を緩やかに評価することが可能である。
【０２０７】
あるいは、数３３式、数３４式を含め第３の実施の形態で説明した各実施の形態において、期間比Ｓｎ＋１／Ｓｎに代えて、期間比Ｓｎ＋１／ＡＳｎを用いるようにしてもよい。つまり、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１と第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎとの比を期間比とするのである。同様に、入力平均ビットレートＳｎ＋１の変動を緩やかに評価することが可能である。
【０２０８】
数３５式〜数３８式では、第ｎ期間の入力平均ビットレートＳｎと第（ｎ−１）期間の入力平均ビットレートＳｎ−１との差を期間差として目標差に乗算した。数３５式〜数３８式を含め第４の実施の形態で説明した各実施の形態において、この期間差（Ｓｎ−Ｓｎ−１）に代えて、期間差（Ｓｎ−ＡＳｎ）を用いるようにしてもよい。つまり、第ｎ期間の入力平均ビットレートＳｎと第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎとの差を期間差とするのである。これにより、入力平均ビットレートＳｎの変動を緩やかに評価することが可能である。
【０２０９】
あるいは、数３５式〜数３８式を含め第４の実施の形態で説明した各実施の形態において、期間差（Ｓｎ−Ｓｎ−１）に代えて、期間差（Ｓｎ−ＡＳｎ−１）を用いるようにしてもよい。つまり、第ｎ期間の入力平均ビットレートＳｎと第（ｎ−１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ−１との差を期間差とするのである。同様に、入力平均ビットレートＳｎの変動を緩やかに評価することが可能である。
【０２１０】
また、入力ビットレートの先読みができる場合、数３５式〜数３８式を含め第４の実施の形態で説明した各実施の形態において、期間差（Ｓｎ−Ｓｎ−１）に代えて期間差（Ｓｎ＋１−Ｓｎ）用いてもよいと説明した。そこで、さらに、この期間差（Ｓｎ＋１−Ｓｎ）に代えて、期間差（Ｓｎ＋１−ＡＳｎ＋１）を用いるようにしてもよい。つまり、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１と第（ｎ＋１）期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎ＋１との差を期間比とするのである。これにより、入力平均ビットレートＳｎ＋１の変動を緩やかに評価することが可能である。
【０２１１】
あるいは、数３５式〜数３８式を含め第４の実施の形態で説明した各実施の形態において、期間比（Ｓｎ＋１−Ｓｎ）に代えて、期間差（Ｓｎ＋１−ＡＳｎ）を用いるようにしてもよい。つまり、第（ｎ＋１）期間の入力平均ビットレートＳｎ＋１と第ｎ期間を含む過去Ｍ期間の期間平均ビットレートＡＳｎとの差を期間差とするのである。同様に、入力平均ビットレートＳｎ＋１の変動を緩やかに評価することが可能である。
【０２１２】
数３９式、数４０式では、第ｎ期間の入力平均ビットレートＳｎと第（ｎ−１）期間の入力平均ビットレートとの差を期間差として目標差に加算した。数３９式、数４０式を含め第４の実施の形態で説明した各実施の形態において、この期間差（Ｓｎ−Ｓｎ−１）に代えて、期間差（Ｓｎ−ＡＳｎ）を用いるようにしてもよい。同様に、入力平均ビットレートＳｎの変動を緩やかに評価することが可能である。あるいは、数３９式、数４０式を含め第４の実施の形態で説明した各実施の形態において、期間差（Ｓｎ−Ｓｎ−１）に代えて、期間差（Ｓｎ−ＡＳｎ−１）を用いるようにしてもよい。
【０２１３】
また、入力ビットレートの先読みができる場合、数３９式、数４０式を含め第４の実施の形態で説明した各実施の形態において、この期間差（Ｓｎ＋１−Ｓｎ）に代えて、期間差（Ｓｎ＋１−ＡＳｎ＋１）を用いるようにしてもよい。あるいは、期間比（Ｓｎ＋１−Ｓｎ）に代えて、期間差（Ｓｎ＋１−ＡＳｎ）を用いるようにしてもよい。同様に、入力平均ビットレートＳｎ＋１の変動を緩やかに評価することが可能である。
【０２１４】
｛変形例｝
上記第２〜第５の実施の形態においては、第ｎ期間が終了したところで第（ｎ＋１）期間の目標設定ビットレートＴｎ＋１を求めた。ここで、発生符号量の極端な振れを防ぐため、数４１式に示すように、算出する目標設定ビットレートＴｎ＋１に上限値および下限値を設定してもよい。
【０２１５】
【数４１】
0005412588.tif 000042
【０２１６】
数４１式中、δＬＴ、δＨＴは、それぞれ目標設定ビットレートＴｎ＋１に対する下限変動幅と上限変動幅を示す。上記第２〜第５の実施の形態において算出した目標設定ビットレートＴｎ＋１と全体目標ビットレートＴとの差が、下限変動幅δＬＴあるいは上限変動幅δＨＴを超えている場合には、それぞれ、変動幅内に収まるよう目標設定ビットレートＴｎ＋１を補正するようにすればよい。
【０２１７】
あるいは、算出された目標設定ビットレートＴｎ＋１から算出された量子化ステップ変換係数αｎ＋１に上限閾値ＬＩＭ＿Ｈと下限閾値ＬＩＭ＿Ｌを設定し、これら上限閾値あるいは下限閾値内に収まるよう量子化ステップ変換係数αｎ＋１を補正するようにしてもよい。
【０２１８】
上述したように、第（ｎ＋１）期間におけるトランスコード処理の開始前にαｎ＋１が決定され、この量子化ステップ変換係数αｎ＋１の値が第（ｎ＋１）期間において使用される。
【０２１９】
しかし、第１ストリームの入力全体ビットレートＳが変化した場合、たとえば、入力ストリームであるＭＰＥＧ２の入力全体ビットレートＳが変化した場合には、変更されたビットレートＳに応じて量子化ステップ変換係数αｎ＋１を再計算するようにすればよい。
【０２２０】
あるいは、ビデオレコーダのように、第２ストリームをハードディスク等のストレージに蓄積するようなシステムを構成した場合、システム側でハードディスク容量の残量を検知し、残量に見合うような全体目標ビットレートＴを適応的に変化させることが可能である。この場合には、全体目標ビットレートＴが変化した時点で、量子化ステップ変換係数αｎ＋１を再計算するようにすればよい。
【０２２１】
また、上記各実施の形態において目標設定ビットレートＴｎ＋１を計算したが、外部のパラメータを利用して計算した目標設定ビットレートＴｎ＋１をさらにコントロールしてもよい。たとえば、ハードディスクの残量ｘが少なくなってきた場合、あるいは、デコーダバッファ内のビット量ｘが増加傾向にある場合など、これらパラメータｘにより係数ｋ（ｘ）を生成する。そして、上記各実施の形態において算出された目標設定ビットレートＴｎ＋１に外部パラメータｋ（ｘ）を乗算するのである。そして、数４２式に示すように、その乗算結果を、コントロール後の目標設定ビットレートＴｎ＋１とするのである。
【０２２２】
【数４２】
0005412588.tif 000043
【０２２３】
上記第２の実施の形態においては、目標比に対して、期間比（Ｓｎ−１／Ｓｎ）あるいは期間比（Ｓｎ／Ｓｎ＋１）を乗算することにしたが、いずれの期間比を利用するかをユーザにより選択可能としてもよい。また、目標比に対して、期間比（ＡＳｎ−１／ＡＳｎ）あるいは期間比（ＡＳｎ／ＡＳｎ＋１）を乗算することにしたが、いずれの期間比を利用するかをユーザにより選択可能としてもよい。たとえば、画質は劣るが遅延の少ない処理を希望する場合には、Ｓｎ−１とＳｎの組み合わせを利用することを選択し、遅延は生じても高画質を希望する場合には、ＳｎとＳｎ＋１の組み合わせを選択するなどの利用方法が考えられる。
【０２２４】
上記第３の実施の形態においては、目標差に対して、期間比（Ｓｎ−１／Ｓｎ）あるいは期間比（Ｓｎ／Ｓｎ＋１）を乗算することにしたが、同様に、いずれの期間比を利用するかをユーザにより選択可能としてもよい。また、目標差に対して、期間比（ＡＳｎ−１／ＡＳｎ）あるいは期間比（ＡＳｎ／ＡＳｎ＋１）を乗算することにしたが、いずれの期間比を利用するかをユーザにより選択可能としてもよい。
【０２２５】
上記第４の実施の形態においては、目標差に対して、期間差（Ｓｎ−Ｓｎ−１）あるいは期間差（Ｓｎ＋１−Ｓｎ）を乗算あるいは加算することにしたが、同様に、いずれの期間差を利用するかをユーザにより選択可能としてもよい。また、目標差に対して、期間差（ＡＳｎ−ＡＳｎ−１）あるいは期間差（ＡＳｎ＋１−ＡＳｎ）を乗算あるいは加算することにしたが、いずれの期間差を利用するかをユーザにより選択可能としてもよい。
【０２２６】
また、上記第２の実施の形態で説明した関数θおよび第４の実施の形態で説明した関数ψでは、変数（ａ０，ａ１）を用いた。この変数（ａ０，ａ１）の組み合わせを複数用意しておき、画像の複雑さを示す指標に応じて使い分けるようにしてもよい。たとえば、シーンチェンジ部分と通常部分で使い分けるようにしてもよい。つまり、変化率として複数のパターンを予め用意しておき、画像の複雑さに応じて使い分けるのである。画像の複雑さを示す指標は、発生符号量と量子化パラメータ平均値との積で定義される値である。この値として、ＭＰＥＧ２のＴＥＳＴ  ＭＯＤＥＬ５で定義されているものを利用することができる。
【符号の説明】
【０２２７】
１    トランスコーダ
２    デコーダ
３    エンコーダ
ＡＣｎ  期間平均ビットレート
ＡＳｎ  期間平均ビットレート
Ｃｎ  出力平均ビットレート
Ｌｎ  制御単位期間
Ｐ  量子化ステップ値
Ｑ  量子化ステップ値
Ｓ    入力全体ビットレート
Ｓｎ  入力平均ビットレート
Ｔ    全体目標ビットレート
Ｔｎ  目標設定ビットレート
αｎ  量子化ステップ変換係数
【図１】
0005412588.tif 000044
【図２】
0005412588.tif 000045
【図３】
0005412588.tif 000046
【図４】
0005412588.tif 000047