(57)【要約】  ＣＰＵと符号化処理専用のチップや回路との両方を用いる符号化装置を開示する。符号化装置は、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２を含み、ハードウェア・エンコーダ１５１は符号化処理用のハードウェアで構成され、ＡＶデータの一部を符号化する。ソフトウェア・エンコーダ１５２はＣＰＵ１０を利用して、ハードウェア・エンコーダ１５１による符号化処理と並行してＡＶデータの他の一部を符号化する。位置検出部１８は、ＡＶデータにおける割り振り先の切換位置を検出する。データ割振部１４は、切換位置で区切られたＡＶデータの各区間を両エンコーダ１５１、１５２に割り振る。合成部１６は、符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する。出力部１７はその一連の符号化されたＡＶデータを出力する。【特許請求の範囲】
【請求項１】
音声データおよび／または映像データを含むＡＶデータを符号化する符号化装置（１１）であって、
ＣＰＵ（１０）と、
符号化処理用のハードウェアで構成され、符号化対象のＡＶデータの一部を符号化するハードウェア・エンコーダ（８０，１５１）と、
前記ＣＰＵ（１０）を利用して、前記ハードウェア・エンコーダによる符号化処理と並行して前記ＡＶデータの他の一部を符号化するソフトウェア・エンコーダ（１５２）と、
前記ＡＶデータの割り振り先の切換位置を検出する位置検出部であって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該位置検出部（１８）と、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに前記ＡＶデータを割り振ってそれぞれのエンコーダに供給するデータ割振部であって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該データ割振部（１４）と、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する合成部（１６）と、
前記一連の符号化されたＡＶデータを出力する出力部（１７）と、
を備える、前記符号化装置。
【請求項２】
前記一つのシーンが別のシーンに切り換わる位置および編集処理の種類が切り換わる位置が、前記ＡＶデータの編集情報に基づいて検出される、請求項１に記載の符号化装置。
【請求項３】
前記編集処理の種類が所定のパターンで変更される位置および前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置が、前記ＡＶデータに基づいて検出される、請求項１に記載の符号化装置。
【請求項４】
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータは互いに予測関係にない、請求項１に記載の符号化装置。
【請求項５】
前記位置検出部は、符号化に先立って前記符号化対象のＡＶデータの切換位置を検出して格納し、
前記データ割振部は、格納された切換位置においてＡＶデータの供給先を切り換える、
請求項１に記載の符号化装置。
【請求項６】
前記符号化対象のＡＶデータについて、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振る頻度の許容度を表すデータが前記位置検出部に供給され、
前記位置検出部が、前記許容度に基づいて切換位置を決定する、請求項５に記載の符号化装置。
【請求項７】
前記データ割振部と前記ハードウェア・エンコーダとの間に接続され、前記データ割振部によって前記ハードウェア・エンコーダに供給されるＡＶデータを一時記憶し、前記ハードウェア・エンコーダにＡＶデータを供給するバッファを更に備え、
前記データ割振部は、前記バッファの空き情報を取得し、その空き情報が所定量以上の空きを示す場合は、切換位置が到来しても前記バッファにＡＶデータを割り振り、その空き情報が所定量未満の空きを示す場合、ソフトウェア・エンコーダにＡＶデータを割り振る、請求項１に記載の符号化装置。
【請求項８】
前記位置検出部は、隣り合う切換位置の区間の長さに基づいて、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとによって符号化されるそれぞれの区間について、単位時間当たりに供給すべきデータ単位数の割合を決定し、その割合を表すデータを前記データ割振部に供給し、
前記データ割振部は、前記それぞれの区間において、その区間のその割合を表すデータに基づいて前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダに前記ＡＶデータを供給する、
請求項１に記載の符号化装置。
【請求項９】
前記ＣＰＵは、前記符号化対象のＡＶデータについて符号化処理以外の他の処理も行い、
前記位置検出部は、前記他の処理を行うときの前記ＣＰＵの負荷を、検出された隣り合う切換位置の区間のＡＶデータに対応させて予測するＣＰＵ負荷推定部を更に含み、
前記位置検出部は、予測されたＣＰＵの負荷に応じて、それぞれの区間のＡＶデータの割り振り先を決定し、
前記データ割振部は、前記それぞれの区間において、前記決定された割り振り先にＡＶデータを供給する、
請求項１に記載の符号化装置。
【請求項１０】
前記ＣＰＵは、前記符号化対象のＡＶデータについて符号化処理以外の他の処理も行い、
前記ＣＰＵの負荷を検出するＣＰＵ負荷検出部を更に備え、
前記データ割振部は、前記ＣＰＵに、一つの切換位置から所定の長さのＡＶデータについて前記他の処理を符号化処理よりも先行させて、その先行期間に前記ＣＰＵ負荷検出部によって検出された前記他の処理による前記ＣＰＵの負荷に応じて、前記切換位置から次の切換位置までの区間のＡＶデータの割り振り先を決定する、
請求項１に記載の符号化装置。
【請求項１１】
前記データ割振部は、前記ＡＶデータを、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとの一方には前記ＡＶデータの先頭から後尾に向かって割り振り、他方にはＡＶデータの後尾から先頭に向かって割り振る、請求項１に記載の符号化装置。
【請求項１２】
前記ＡＶデータについて、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方に割り振られるべき固定区間を表すデータが前記位置検出部に供給され、
前記位置検出部は、前記固定区間では割り振り先の切換位置を検出しない、
請求項１に記載の符号化装置。
【請求項１３】
前記ＡＶデータについて、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダのいずれにも割り振り可能な切換自由区間を表すデータが前記位置検出部に供給され、
前記位置検出部は、前記切換自由区間では割り振り先の切換位置を検出しない、
請求項１に記載の符号化装置。
【請求項１４】
ＣＰＵ（１０）と、
音声データおよび／または映像データを含むＡＶデータを編集する編集部（１３）と、
符号化処理用の回路で構成され、編集されたＡＶデータの一部を符号化するハードウェア・エンコーダ（８０，１５１）と、
前記ＣＰＵ（１０）を利用して、前記ハードウェア・エンコーダによる符号化処理と並行して、前記編集されたＡＶデータの他の一部を符号化するソフトウェア・エンコーダ（１５２）と、
前記編集されたＡＶデータの割り振り先の切換位置を検出する位置検出部であって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該位置検出部（１８）と、
前記編集されたＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振ってそれぞれのエンコーダに供給するデータ割振部であって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該データ割振部（１４）と、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する合成部（１６）と、
前記一連の符号化されたＡＶデータを出力する出力部（１７）と、
を備えているビデオ編集システム（２００）。
【請求項１５】
前記位置検出部は、前記編集部から編集情報を取得し、編集されるＡＶデータの切換位置を、前記編集情報から検出して格納し、
前記データ割振部は、格納された切換位置においてＡＶデータの供給先を切り換える、
請求項１４に記載のビデオ編集システム。
【請求項１６】
音声データおよび／または映像データを含むＡＶデータを符号化する方法であって、
符号化対象のＡＶデータを受信するステップと、
前記ＡＶデータの割り振り先の切換位置を検出するステップであって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該ステップと、
前記ＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振るステップであって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換え、該ハードウェア・エンコーダが符号化処理用のハードウェアで構成されてなり、該ソフト・ソフトウェア・エンコーダがＣＰＵを利用してＡＶデータを符号化するように構成されてなる、該ステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで、供給されたＡＶデータを符号化するステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成するステップと、
前記一連の符号化されたＡＶデータを出力するステップと、
を含む、前記方法。
【請求項１７】
音声データおよび／または映像データを含むＡＶデータを符号化するプログラムであって、
ＣＰＵと、
符号化処理専用のハードウェアで構成され、符号化対象のＡＶデータの一部を符号化するハードウェア・エンコーダと、
前記ＣＰＵを利用して、前記符号化対象のＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、
を備えた装置に、
前記符号化対象のＡＶデータを受信するステップと、
前記ＡＶデータの割り振り先の切換位置を検出するステップであって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該ステップと、
前記ＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振るステップであって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該ステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで、供給されたＡＶデータを符号化するステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成するステップと、
前記一連の符号化されたＡＶデータを出力するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像データおよび／または音声データの符号化処理に関する。
【背景技術】
【０００２】
ビデオ編集システムはユーザによる映像データおよび／または音声データ（ＡＶデータ）の編集作業を支援するためのシステムであり、一般に、パーソナルコンピュータなど、汎用のＣＰＵを備えたコンピュータ端末に所定のアプリケーションプログラムを実行させることによって実現される。ビデオ編集システムは、予めビデオカメラなどからＨＤＤに１つ以上のＡＶデータを取り込み、それらから１本のＡＶデータ・ストリームを編集する。編集されたＡＶデータはシステムによって圧縮された後、または非圧縮データのまま、同じシステム内でＨＤＤやＤＶＤなどの任意の記録媒体に記録され、あるいは放送などのために送出され、またはＩＥＥＥ１３９４などのインタフェースを通して外部に出力される。
【０００３】
ビデオ編集システムは、ＡＶデータを圧縮符号化するために様々な符号化方式を利用する。ＡＶデータの符号化処理には、ＡＶデータの編集処理や復号処理を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いる手法および符号化処理専用のチップや回路で符号化処理を行う手法が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３５６８５１号公報
【特許文献２】特開平０６−３３９０１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、新規かつ有用な、映像および音声データを符号化する符号化装置とその符号化方法、および、ビデオ編集システムを提供することにある。本発明の具体的な目的は、映像および音声データについて符号化処理以外の他の処理を行うＣＰＵと符号化処理専用のチップや回路との両方を用いて、良好な画質が得られるように映像および音声データを符号化する符号化装置とその符号化方法、および、ビデオ編集システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一観点によれば、音声データおよび／または映像データを含むＡＶデータを符号化する符号化装置であって、ＣＰＵと、符号化処理用のハードウェアで構成され、符号化対象のＡＶデータの一部を符号化するハードウェア・エンコーダと、前記ＣＰＵを利用して、前記ハードウェア・エンコーダによる符号化処理と並行して前記ＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、前記ＡＶデータの割り振り先の切換位置を検出する位置検出部であって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該位置検出部と、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに前記ＡＶデータを割り振ってそれぞれのエンコーダに供給するデータ割振部であって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該データ割振部と、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する合成部と、前記一連の符号化されたＡＶデータを出力する出力部とを備えている、前記符号化装置が提供される。
【０００７】
本発明によれば、位置検出部が符号化対象のＡＶデータにおける割り振り先の切換位置を検出し、データ割振部がそのＡＶデータの割り振り先を切換位置ごとに、ハードウェア・エンコーダとソフトウェア・エンコーダとの一方から他方に切り換える。それにより、ハードウェア・エンコーダとソフトウェア・エンコーダとが並列してＡＶデータを符号化する。ここで、切換位置は、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである。上記の、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、および、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置では、映像の変化が大きいので、これらの位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。また、上記の、前後のデータ単位の両方で情報量が所定の閾値より小さい位置では、ＡＶデータのデータ単位の情報量が少ないため、この位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化が現れ難い。そのため、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、本発明による符号化装置は、符号化されたＡＶデータの画質を良好にできる。
【０００８】
本明細書および特許請求の範囲において、「ハードウェア・エンコーダ」は、（ｉ）ＡＶデータの符号化処理の一部または全体を実行するために専用に設計されたＩＣやモジュールなどの回路、または（ｉｉ）ＡＶデータの符号化処理の一部または全体と、符号化処理以外の処理とを実行可能なＣＰＵやＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）などの演算回路であって、その演算回路がＡＶデータの符号化処理の一部または全体を実行している間はその符号化処理の一部または全体を排他的に行う演算回路である。
【０００９】
本明細書および特許請求の範囲において、「ソフトウェア・エンコーダ」は、汎用のＣＰＵやＤＳＰなど、ＡＶデータの符号化処理以外の他の処理にも利用されている演算回路でＡＶデータの符号化処理用ソフトウェアを実行することによって、ＡＶデータの符号化処理を他の処理と並列に行うエンコーダをいう。
【００１０】
本発明の他の観点によれば、ＣＰＵと、音声データおよび／または映像データを含むＡＶデータを編集する編集部と、符号化処理用の回路で構成され、編集されたＡＶデータの一部を符号化するハードウェア・エンコーダと、前記ＣＰＵを利用して、前記ハードウェア・エンコーダによる符号化処理と並行して、前記編集されたＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、前記編集されたＡＶデータの割り振り先の切換位置を検出する位置検出部であって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該位置検出部と、前記編集されたＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振ってそれぞれのエンコーダに供給するデータ割振部であって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該データ割振部と、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する合成部と、前記一連の符号化されたＡＶデータを出力する出力部とを備えているビデオ編集システムが提供される。
【００１１】
本発明によれば、位置検出部が、編集部によって編集されたＡＶデータにおける割り振り先の切換位置を検出し、データ割振部がそのＡＶデータの割り振り先を切換位置ごとに、ハードウェア・エンコーダとソフトウェア・エンコーダとの一方から他方に切り換える。それにより、ハードウェア・エンコーダとソフトウェア・エンコーダとが並列して、編集されたＡＶデータを符号化する。ここで、切換位置は、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである。上記の、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、および、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置では、映像の変化が大きいので、これらの位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。また、上記の、前後のデータ単位の両方で情報量が所定の閾値より小さい位置では、ＡＶデータのデータ単位の情報量が少ないため、この位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化が現れ難い。そのため、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、本発明によるビデオ編集システムは、符号化されたＡＶデータの画質を良好にできる。
【００１２】
本発明のその他の観点によれば、音声データおよび／または映像データを含むＡＶデータを符号化する方法であって、符号化対象のＡＶデータを受信するステップと、前記ＡＶデータの割り振り先の切換位置を検出するステップであって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該ステップと、前記ＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振るステップであって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換え、該ハードウェア・エンコーダが符号化処理用のハードウェアで構成されてなり、該ソフト・ソフトウェア・エンコーダがＣＰＵを利用してＡＶデータを符号化するように構成されてなる、該ステップと、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで、割り振られたＡＶデータを符号化するステップと、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成するステップと、前記一連の符号化されたＡＶデータを出力するステップとを含む方法が提供される。
【００１３】
本発明によれば、符号化対象のＡＶデータにおける割り振り先の切換位置が検出され、そのＡＶデータの割り振り先が切換位置ごとに、ハードウェア・エンコーダとソフトウェア・エンコーダとの一方から他方に切り換えられる。それにより、ハードウェア・エンコーダとソフトウェア・エンコーダとが並列してＡＶデータを符号化する。ここで、切換位置は、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである。上記の、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、および、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置では、映像の変化が大きいので、これらの位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。また、上記の、前後のデータ単位の両方で情報量が所定の閾値より小さい位置では、ＡＶデータのデータ単位の情報量が少ないため、この位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化が現れ難い。そのため、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、本発明による符号化方法は、符号化されたＡＶデータの画質を良好にできる。
【００１４】
本発明の別の観点によれば、音声データおよび／または映像データを含むＡＶデータを符号化するプログラムであって、ＣＰＵと、符号化処理専用のハードウェアで構成され、符号化対象のＡＶデータの一部を符号化するハードウェア・エンコーダと、前記ＣＰＵを利用して、前記符号化対象のＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、を備えた装置に、前記符号化対象のＡＶデータを受信するステップと、前記ＡＶデータの割り振り先の切換位置を検出するステップであって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該ステップと、前記ＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振るステップであって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該ステップと、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで、供給されたＡＶデータを符号化するステップと、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成するステップと、前記一連の符号化されたＡＶデータを出力するステップと、を実行させるためのプログラムが提供される。
【００１５】
本発明によれば、符号化対象のＡＶデータにおける割り振り先の切換位置が検出され、そのＡＶデータの割り振り先が切換位置ごとに、ハードウェア・エンコーダとソフトウェア・エンコーダとの一方から他方に切り換えられる。それにより、ハードウェア・エンコーダとソフトウェア・エンコーダとが並列してＡＶデータを符号化する。ここで、切換位置は、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである。上記の、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、および、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置では、映像の変化が大きいので、これらの位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。また、上記の、前後のデータ単位の両方で情報量が所定の閾値より小さい位置では、ＡＶデータのデータ単位の情報量が少ないため、この位置でハードウェア・エンコーダの符号化処理とソフトウェア・エンコーダの符号化処理とを切り換えても、ハードウェア・エンコーダとソフトウェア・エンコーダとの符号化処理の違いに起因する画質の変化が現れ難い。そのため、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、本発明によるプログラムは、符号化されたＡＶデータの画質を良好にできる。
【発明の効果】
【００１６】
本発明によれば、映像および音声データについて符号化処理以外の他の処理を行うＣＰＵと符号化処理専用のチップや回路との両方を用いて、良好な画質が得られるように映像および音声データを符号化する符号化装置とその符号化方法、および、ビデオ編集システムが提供される。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態１に係るビデオ編集システムおよび符号化装置のハードウェア構成を示すブロック図である。
【図２】ハードウェア・エンコーダが実装されたボードの概略的な平面図である。
【図３】本発明の実施形態１に係るビデオ編集システムの機能構成を示すブロック図である。
【図４】本発明の実施形態１に係るビデオ編集システムに表示される編集ウィンドウの一例を示す図である。
【図５】実施形態１に係るＡＶデータの割り振り処理のフローチャートである。
【図６】実施形態１に係る切換位置の検出処理のフローチャートである。
【図７】本発明の実施形態２に係る編集部と符号化部とのブロック図である。
【図８】実施形態２に係る切換位置の検出処理のフローチャートである。
【図９】本発明の実施形態３に係る編集部と符号化部とのブロック図である。
【図１０】実施形態３に係る切換位置の検出処理のフローチャートである。
【図１１】本発明の実施形態４に係る編集部と符号化部とのブロック図である。
【図１２】実施形態４に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【図１３】本発明の実施形態５に係る編集部と符号化部とのブロック図である。
【図１４】実施形態５に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【図１５】本発明の実施形態６に係る編集部と符号化部とのブロック図である。
【図１６】実施形態６に係る第１データベースに記憶されたＣＰＵ負荷指数の一例である。
【図１７】実施形態６に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【図１８】本発明の実施形態７に係る編集部と符号化部とのブロック図である。
【図１９】実施形態７に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【図２０】本発明の実施形態８に係る編集部と符号化部とのブロック図である。
【図２１】実施形態８に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【図２２】本発明の実施形態９に係る編集部と符号化部とのブロック図である。
【図２３】実施形態９に係る符号化部によるＡＶデータの割り振り処理のフローチャートの一部である。
【図２４】実施形態９に係る符号化部によるＡＶデータの割り振り処理のフローチャートの残りの部分である。
【図２５】実施形態９に係る切換位置の検出処理のフローチャートである。
【図２６】本発明の実施形態１０に係る編集部と符号化部とのブロック図である。
【図２７】実施形態１０に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【図２８】本発明の実施形態１１に係る編集部と符号化部とのブロック図である。
【図２９】実施形態１１に係る符号化部によるＡＶデータの割り振り処理のフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の好ましい実施形態について、図面を参照しながら説明する。なお、本発明は映像データおよび音声データのいずれの符号化処理も可能である。従って、以下の説明では、ＡＶデータは映像データおよび／または音声データを含む。
【００１９】
《実施形態１》
図１は、本発明の実施形態１に係る符号化装置１００およびビデオ編集システム２００の構成を示すブロック図である。図１を参照するに、本発明の実施形態１に係るビデオ編集システム２００はノンリニアビデオ編集システムであり、パーソナルコンピュータなどのコンピュータ端末を用いて実現される。ビデオ編集システム２００は、符号化装置１００、メモリ部２０、ＨＤＤ３０Ａ、ドライブ４０Ａ、入出力インタフェース５０、ユーザ・インタフェース６０、ＡＶユニット７０、および、これらの要素を接続する内部バス９０を備えている。符号化装置１００は、ＣＰＵ１０およびハードウェア・エンコーダ８０を備えている。ビデオ編集システム２００は、外部のＬＡＮやインターネットに接続可能なネットワークインタフェースを更に備えてもよい。
【００２０】
ＣＰＵ１０は、メモリ部２０に記憶されているプログラムを実行し、後述の編集部１３、データ割振部１４、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および、切換位置検出部１８として機能する。すなわち、ＣＰＵ１０は、ビデオ編集システム２００の制御および処理を行い、更にソフトウェア・エンコーダ１５２として符号化処理を行う。
【００２１】
メモリ部２０には、ＣＰＵ１０に後述の処理を実行させるプログラムやデータが記憶されている。また、メモリ部２０には、入力バッファ領域ＢＩ、第１出力バッファ領域ＢＯ１、および、第２出力バッファ領域ＢＯ２が確保される。入力バッファ領域ＢＩは、符号化対象のＡＶデータが書き込まれる領域であり、第１出力バッファ領域ＢＯ１は、ハードウェア・エンコーダ８０によって符号化されたＡＶデータが書き込まれる領域であり、第２出力バッファ領域ＢＯ２は、ソフトウェア・エンコーダ１５２によって符号化されたＡＶデータが書き込まれる領域である。
【００２２】
ＨＤＤ３０Ａおよびドライブ４０Ａは、ビデオ編集システム２００を実現するコンピュータ端末に内蔵されている。なお、ＨＤＤ３０Ａの代わりに、図１に示すように入出力インタフェース５０を通して内部バス９０に接続された外付けのＨＤＤ３０Ｂを設けてもよく、ＨＤＤ３０ＡとＨＤＤ３０Ｂの両方を設けてもよい。ＨＤＤ３０Ｂはネットワークを介して入出力インタフェース５０に接続されてもよい。ドライブ４０Ａもこれと同様にドライブ４０Ｂを設けてもよい。
【００２３】
ドライブ４０Ａおよびドライブ４０Ｂは、ＤＶＤ１０２などのリムーバブルメディアにＡＶデータの記録再生を行う。リムーバブルメディアとしては、光ディスク、磁気ディスク、光磁気ディスク、半導体メモリなどが挙げられる。
【００２４】
入出力インタフェース５０は、ＨＤＤ３０Ｂやドライブ４０Ｂの他に、ユーザ・インタフェース６０の各要素６１〜６４や、第２カメラ１０１Ｂなどの外部機器に内蔵される記憶媒体を内部バス９０に接続する。例えば、入出力インタフェース５０はＩＥＥＥ１３９４インタフェースなどを含み、それを利用して第２カメラ１０１Ｂとの間でＡＶデータの入出力を行う。入出力インタフェース５０は、第２カメラ１０１Ｂの他にも、ＶＴＲ、スイッチャー、送出サーバーなど、ＡＶデータを扱う様々な機器との間でＡＶデータの入出力を行うことができる。
【００２５】
ユーザ・インタフェース６０は、入出力インタフェース５０を通して内部バス９０に接続されている。ユーザ・インタフェース６０は例えば、マウス６１、キーボード６２、ディスプレイ６３、および、スピーカ６４を含む。ユーザ・インタフェース６０は、タッチパネル（図示せず）などのその他の入力デバイスを含んでもよい。
【００２６】
ＡＶユニット７０はビデオ・インタフェースとオーディオ・インタフェースとを含む。ＡＶユニット７０はそれらのインタフェースを通して第１カメラ１０１Ａなどの外部機器との間でＡＶデータの入出力を行う。ＡＶユニット７０は、第１カメラ１０１Ａの他にも、ＶＴＲ、スイッチャー、送出サーバーなど、ＡＶデータを扱う様々な機器との間でＡＶデータの入出力を行うことができる。
【００２７】
ハードウェア・エンコーダ８０は、（ｉ）ＡＶデータの符号化処理の一部または全体を実行するために専用に設計されたＩＣやモジュールなどの回路、または（ｉｉ）ＡＶデータの符号化処理の一部または全体と、符号化処理以外の処理とを実行可能なＣＰＵやＤＳＰなどの演算回路であって、その演算回路がＡＶデータの符号化処理の一部または全体を実行している間はその符号化処理の一部または全体を排他的に行う演算回路である。
【００２８】
ハードウェア・エンコーダ８０は、非圧縮のＡＶデータを符号化によって圧縮する。例えば非可逆符号化方式の場合、ハードウェア・エンコーダ８０によって実行されるＡＶデータの符号化処理は、
（Ｉ）ブロックやタイルなどへの分割ステップ、
（ＩＩ）ＤＣＴ（離散コサイン変換、Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）やウェーブレット変換などの直交変換ステップ、
（ＩＩＩ）量子化ステップ、および、
（ＩＶ）エントロピー符号化などの可逆符号化ステップ、
を含む。
【００２９】
ハードウェア・エンコーダ８０によるＡＶデータの符号化処理はその他にも、例えば、サブサンプリングステップ、シャッフリングステップ、イントラフレーム予測ステップ、またはフレーム間予測ステップを含んでもよい。なお、ハードウェア・エンコーダ８０によるＡＶデータの符号化処理は、圧縮を目的とはしない符号化処理であってもよい。
【００３０】
ハードウェア・エンコーダ８０はフレーム・バッファを内蔵し、それに記憶されたＡＶデータを符号化する。その他に、同様なフレーム・バッファとしてメモリ部２０の所定の記憶領域が利用されてもよい。ハードウェア・エンコーダ８０による符号化方式は、例えば、ＤＶ方式、ＭＰＥＧ方式、ＪＰＥＧ２０００方式、イントラフレーム方式（例えば、ＡＶＣ−Ｉｎｔｒａ方式）、または、クローズドＧＯＰ方式、例えばＭＰＥＧ方式におけるクローズドＧＯＰ方式であるが、特に限定されない。ハードウェア・エンコーダ８０による符号化方式は、符号化された映像データの出力先のデバイスに応じて予め選択される。ハードウェア・エンコーダ８０は各データ単位を、それに含まれている情報に基づいて符号化する。例えばイントラフレーム方式ではそのデータ単位は１フレームである。その他に、クローズドＧＯＰ方式では符号化のデータ単位は１ＧＯＰであってもよい。
【００３１】
図２は、図１のハードウェア・エンコーダ８０が実装されたボード８００の概略的な平面図の一例である。このボード８００は、ビデオ編集システム２００を実現するコンピュータ端末に搭載される。
【００３２】
図２を参照するに、ボード８００は、コネクタ８１、ハードウェア・エンコーダ８２、フレーム・バッファ８３、および、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）８４を含む。ボード８００には更に、ＡＶユニット７０が実装されていてもよい。
【００３３】
コネクタ８１はＰＣＩ−Ｅｘｐｒｅｓｓに準拠しており、コンピュータ端末内のＰＣＩ−Ｅｘｐｒｅｓｓスロットに挿入されることで、ボード８００上の回路をそのコンピュータ端末のＰＣＩ−Ｅｘｐｒｅｓｓバスに接続する。このバスは内部バス９０に含まれている。
【００３４】
フレーム・バッファ８３はＤＤＲ２−ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ２−Ｓｙｎｃｈｒｏｎｏｕｓ−ＤＲＡＭ）の独立素子であり、所定数、例えば４枚のフレームを記憶可能である。符号化対象のＡＶデータはフレームごとに、メモリ部２０の入力バッファ領域ＢＩから、コネクタ８１とＦＰＧＡ８４とを通してフレーム・バッファ８３に転送される。ハードウェア・エンコーダ８２はＦＰＧＡ８４を通してフレーム・バッファ８３の先頭アドレスから順にＡＶデータを符号化する。ハードウェア・エンコーダ８２によって符号化されたＡＶデータはフレームごとに、ＦＰＧＡ８４を通してフレーム・バッファ８３に書き込まれ、更に、フレーム・バッファ８３からＦＰＧＡ８４とコネクタ８１とを通してメモリ部２０の第１出力バッファ領域ＢＯ１に転送される。
【００３５】
ＦＰＧＡ８４は単一のチップであり、ＰＣＩ−Ｅｘｐｒｅｓｓインタフェース８５、メモリインタフェース８６、ＤＭＡエンジン８７、および、エンコーダインタフェース８８を含む。ＰＣＩ−Ｅｘｐｒｅｓｓインタフェース８５はコネクタ８１を通してＦＰＧＡ８４内の他のモジュールを、ビデオ編集システム２００を構成するコンピュータ端末のＰＣＩ−Ｅｘｐｒｅｓｓバスに接続する。メモリインタフェース８６はＦＰＧＡ８４内の他のモジュールによるフレーム・バッファ８３へのアクセスを制御する。ＤＭＡエンジン８７はＰＣＩ−Ｅｘｐｒｅｓｓインタフェース８５とメモリインタフェース８６とを利用して、前記コンピュータ端末内のＰＣＩ−Ｅｘｐｒｅｓｓバスを通したメモリ部２０とフレーム・バッファ８３との間でのＡＶデータの転送を制御する。エンコーダインタフェース８８はＦＰＧＡ８４内の他のモジュールをハードウェア・エンコーダ８２に接続する。
【００３６】
図３は、図１のビデオ編集システム２００の主要な機能構成を示すブロック図である。図３を参照するに、ビデオ編集システム２００は機能構成としては編集部１３と符号化部１１とを含む。符号化部１１は、データ割振部１４、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および、切換位置検出部１８を含む。編集部１３、データ割振部１４、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および、切換位置検出部１８は、図１のビデオ編集システム２００のＣＰＵ１０にプログラムを実行させることによって実現される。
【００３７】
編集部１３は、ユーザの操作に従い、編集対象のＡＶデータを選択して、それに対する編集情報を作成する。ここで、編集情報とは、編集対象のＡＶデータから一連のＡＶデータ・ストリームを編集する処理の内容を規定する情報である。編集情報は、例えば、そのＡＶデータ・ストリームの各部分を構成する素材データの一部または全体を参照する情報、すなわちクリップを含む。編集情報は更に、クリップごとに、その参照先の素材データを含むファイルの識別情報と形式、静止画や動画などの素材データの種類、映像サイズ、アスペクト比、フレームレート、および／または、素材データの一部または全体の、時間軸上、すなわちタイムライン上での開始位置と終了位置との各タイムコードを含む。編集情報はその他に、クリップごとに、その参照先の素材データに対する、復号処理やエフェクト処理などの編集処理の内容を規定する情報を含む。ここで、エフェクト処理の種類には、例えば、各クリップに対応する映像の色や明るさの調整、各クリップに対応する映像全体に対する特殊効果、および、複数のクリップ間での映像の合成などが含まれる。
【００３８】
編集部１３は更に、編集情報に基づき、選択されたＡＶデータを読み出してそれに対して編集処理を行い、一連のＡＶデータ・ストリームとして出力する。
【００３９】
具体的には、編集部１３はまず、ＤＶＤ１０２、ＨＤＤ３０Ａ、またはＨＤＤ３０Ｂなどのリソースに記憶されたファイルの一覧を、ユーザ・インタフェース６０に含まれるディスプレイ６３に表示する。それらのファイルは、映像データ、音声データ、静止画、またはテキストデータなどを含む。ユーザはマウス６１やキーボード６２を操作して、その一覧の中から、編集対象のデータ、すなわち素材データを含むファイルを選択する。編集部１３はユーザによるファイルの選択を受け付け、選択されたファイルに対応するクリップをディスプレイ６３に表示する。
【００４０】
図４は編集ウィンドウＥＷの一例である。編集部１３は、ディスプレイ６３に編集ウィンドウＥＷを表示してユーザから編集操作を受け付ける。図４を参照するに、編集ウィンドウＥＷは例えば、素材ウィンドウＢＷ、タイムラインウィンドウＴＷ、および、プレビューウィンドウＰＷを含む。
【００４１】
編集部１３は素材ウィンドウＢＷに、選択された編集対象のファイルに対応するクリップのアイコンＩＣ１を表示する。
【００４２】
編集部１３はタイムラインウィンドウＴＷに複数のトラックＴＲを表示し、各トラックＴＲ上へのクリップＣＬ１〜ＣＬ８の配置を受け付ける。図４の例では各トラックＴＲは画面の水平方向に延びている細長い帯状領域である。各トラックＴＲはタイムライン上での位置情報を示す。図４の例では、各トラックＴＲの上を画面の水平方向に左から右へ進むほどタイムライン上の位置が進むように、各トラックＴＲ上の水平方向での位置がタイムライン上の位置に対応づけられている。編集部１３は例えばユーザによるマウス６１の操作を通して、素材ウィンドウＢＷから各トラックＴＲ上へのクリップＣＬ１〜ＣＬ８の配置を受け付ける。
【００４３】
編集部１３はまた、タイムラインウィンドウＴＷにタイムラインカーソルＴＬＣと時間軸目盛りＴＬＳとを表示してもよい。図４の例ではタイムラインカーソルＴＬＣは、時間軸目盛りＴＬＳから画面の垂直方向に延びて各トラックＴＲと垂直に交差している直線である。タイムラインカーソルＴＬＣはタイムラインウィンドウＴＷの中を水平方向に移動可能である。タイムラインカーソルＴＬＣの端が指す時間軸目盛りＴＬＳの値は、タイムラインカーソルＴＬＣと各トラックＴＲとの交差点のタイムライン上での位置を表す。
【００４４】
編集部１３は、各トラックＴＲ上に配置されるクリップＣＬ１〜ＣＬ８のタイムライン上での開始位置であるインポイントＩＰと終了位置であるアウトポイントＯＰとの設定、および、各トラックＴＲ上に配置された後でのクリップＣＬ１〜ＣＬ８のインポイントＩＰとアウトポイントＯＰとの変更を受け付ける。
【００４５】
編集部１３は更に、各トラックＴＲ上に配置された各クリップＣＬ１〜ＣＬ８について、エフェクト処理の設定をユーザから受け付けることができる。ユーザは例えば、各クリップＣＬ１〜ＣＬ８に対応する映像の色や明るさの調整、各クリップＣＬ１〜ＣＬ８に対応する映像全体に対する特殊効果の設定、異なるトラックＴＲに並列に配置された第３クリップＣＬ３と第４クリップＣＬ４との間での映像の合成などを、編集部１３に対して指定することができる。
【００４６】
編集部１３はプレビューウィンドウＰＷに、タイムラインカーソルＴＬＣの示すタイムライン上の位置に配置されたクリップに対応する映像を表示する。図４の例では、タイムラインカーソルＴＬＣの示す、第６クリップＣＬ６内の位置に対応する映像Ｄ１と、第７クリップＣＬ７内の位置に対応する映像Ｄ２とが、プレビューウィンドウＰＷに表示される。編集部１３はまた、タイムラインウィンドウＴＷに配置されたクリップＣＬ１〜ＣＬ８のうち、指定された範囲に対応する動画像をプレビューウィンドウＰＷに表示する。ユーザは、プレビューウィンドウＰＷに表示された映像から、編集部１３によって受け付けられた編集処理の結果を確認できる。
【００４７】
編集部１３は、タイムラインウィンドウＴＷ内のトラックＴＲ上でのクリップＣＬ１〜ＣＬ８の配置、および、各クリップＣＬ１〜ＣＬ８に設定されたエフェクト処理に基づいて、編集される一連のＡＶデータ・ストリームに関する編集情報を出力する。編集部１３は更に、その編集情報に従い、各クリップＣＬ１〜ＣＬ８が参照するＡＶデータをタイムライン上の順番で連結して一連のＡＶデータ・ストリームとして出力する。編集部１３は、そのＡＶデータ・ストリームを符号化対象のＡＶデータとしてメモリ部２０内の入力バッファ領域ＢＩに書き込み、その書き込みをデータ割振部１４に通知する。
【００４８】
図３に戻り、データ割振部１４は、編集部１３によってメモリ部２０内の入力バッファ領域ＢＩに書き込まれたＡＶデータをハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とに割り振る。データ割振部１４は、切換位置検出部１８から検出信号を受けるごとに、それらのＡＶデータの割り振り先を両エンコーダ１５１、１５２の一方から他方に切り換える。
【００４９】
具体的には、データ割振部１４はまず、メモリ部２０内に、エンコーダ１５１、１５２ごとに、符号化されたＡＶデータを書き込むための出力バッファ領域ＢＯ１、ＢＯ２を確保する。
【００５０】
データ割振部１４は次に、入力バッファ領域ＢＩに符号化対象のデータ単位が一つ、例えばフレームが一枚書き込まれるごとに、そのデータ単位からタイムコードを読み取って切換位置検出部１８に渡す。そのタイムコードの出力に応じて切換位置検出部１８から検出信号が返された場合、データ割振部１４はそのデータ単位の割り振り先を、直前のデータ単位の割り振り先とは別のエンコーダに切り換える。一方、検出信号が返されなかった場合、データ割振部１４はそのデータ単位の割り振り先を、直前のデータ単位の割り振り先と同じエンコーダに維持する。
【００５１】
データ割振部１４は続いて、割り振り先がハードウェア・エンコーダ１５１であるデータ単位を順番にハードウェア・エンコーダ１５１のフレーム・バッファに転送する。データ割振部１４は更に、転送された各データ単位に第１出力バッファ領域ＢＯ１内のアドレスを対応させて、ハードウェア・エンコーダ１５１に符号化後の書き込み先として指定する。ハードウェア・エンコーダ１５１は、フレーム・バッファ内のデータ単位を順番に符号化して、指定された第１出力バッファ領域ＢＯ１内のアドレスに書き込む。
【００５２】
一方、データ割振部１４は、割り振り先がソフトウェア・エンコーダ１５２であるデータ単位の入力バッファ領域ＢＩ内のアドレスを順番にソフトウェア・エンコーダ１５２に渡す。データ割振部１４は更に、それら入力バッファ領域ＢＩ内の各アドレスに第２出力バッファ領域ＢＯ２内のアドレスを対応させて、ソフトウェア・エンコーダ１５２に符号化後の書き込み先として指定する。ソフトウェア・エンコーダ１５２は、データ割振部１４から受け取った入力バッファ領域ＢＩ内のアドレスのデータ単位を順番に符号化して、指定された第２出力バッファ領域ＢＯ２内のアドレスに書き込む。
【００５３】
また、データ割振部１４は、両エンコーダ１５１、１５２に割り振られたデータ単位に順番に通し番号、例えばフレーム番号を振って、各番号のデータ単位を符号化した後の書き込み先として各エンコーダ１５１、１５２に指定されたアドレスと共に、合成部１６に渡す。
【００５４】
なお、ハードウェア・エンコーダが２台以上存在し、それらが並列に符号化処理を行う場合、データ割振部１４は符号化対象のＡＶデータを、それらのハードウェア・エンコーダの間でも割り振る。
【００５５】
ハードウェア・エンコーダ１５１は、図１に示されているハードウェア・エンコーダ８０のデバイスドライバである。ハードウェア・エンコーダ１５１は、データ割振部１４によってメモリ部２０内の入力バッファ領域ＢＩからフレーム・バッファに転送された符号化対象のＡＶデータを順番に符号化する。その符号化方式は編集部１３によって設定される。ハードウェア・エンコーダ１５１はＡＶデータの各データ単位を、それに含まれている情報に基づいて符号化する。例えば、符号化方式がイントラフレーム方式である場合は符号化のデータ単位は１フレームであり、符号化方式がクローズドＧＯＰ方式である場合は符号化のデータ単位は１ＧＯＰである。ハードウェア・エンコーダ１５１は、符号化されたＡＶデータを、データ割振部１４によって指定された第１出力バッファ領域ＢＯ１内のアドレスに転送する。ハードウェア・エンコーダ１５１は更に、符号化されたＡＶデータを第１出力バッファ領域ＢＯ１に転送するごとに、その転送先のアドレスを合成部１６に通知する。
【００５６】
ソフトウェア・エンコーダ１５２はＣＰＵ１０によって実行される符号化処理モジュールであり、メモリ部２０内の入力バッファ領域ＢＩに記憶された符号化対象のＡＶデータを、データ割振部１４から指定されたアドレス順に符号化する。ソフトウェア・エンコーダ１５２はハードウェア・エンコーダ１５１と並列に符号化処理を実行する。ソフトウェア・エンコーダ１５２はハードウェア・エンコーダ１５１と同様、各データ単位を、それに含まれている情報に基づいて符号化する。
【００５７】
ソフトウェア・エンコーダ１５２のデータ単位はハードウェア・エンコーダ１５１のデータ単位と共通である。例えば、ハードウェア・エンコーダ１５１による符号化のデータ単位が１フレームであればソフトウェア・エンコーダ１５２による符号化のデータ単位も１フレームであり、ハードウェア・エンコーダ１５１による符号化のデータ単位が１ＧＯＰであれば、ソフトウェア・エンコーダ１５２による符号化のデータ単位も１ＧＯＰである。
【００５８】
ソフトウェア・エンコーダ１５２の符号化方式はハードウェア・エンコーダ１５１の符号化方式と共通である。例えば、ハードウェア・エンコーダ１５１による符号化方式がイントラフレーム方式であればソフトウェア・エンコーダ１５２による符号化方式もイントラフレーム方式であり、ハードウェア・エンコーダ１５１による符号化方式がクローズドＧＯＰ方式であればソフトウェア・エンコーダ１５２による符号化方式もクローズドＧＯＰ方式である。
【００５９】
ソフトウェア・エンコーダ１５２は、符号化されたＡＶデータを、データ割振部１４によって指定された第２出力バッファ領域ＢＯ２内のアドレスに書き込む。ソフトウェア・エンコーダ１５２は更に、符号化されたＡＶデータを第２出力バッファ領域ＢＯ２に書き込むごとに、その書き込み先のアドレスを合成部１６に通知する。
【００６０】
合成部１６は、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２によってそれぞれ符号化されたデータ単位を、データ割振部１４によって振られた番号順に配列し、１本の符号化されたＡＶデータ・ストリームに合成する。具体的には、合成部１６はまず、データ割振部１４から受け取ったアドレスの中から、次に合成されるべきデータ単位の番号に対応するアドレスを特定する。合成部１６は次に、その特定されたアドレスと同じアドレスがいずれかのエンコーダ１５１、１５２から通知されたとき、符号化されたデータ単位をそのアドレスから読み出し、それ以前に読み出されていた他のデータ単位の配列の末尾に合成する。こうして、合成された一連の符号化されたデータ単位の順序は、編集情報の示すタイムライン方向での順序に一致する。更に合成部１６は、合成されたＡＶデータ・ストリームを出力部１７に出力する。
【００６１】
なお、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２が符号化方式としてクローズドＧＯＰ方式を利用して、ＡＶデータをＧＯＰ単位で符号化する場合、合成部１６は、データ割振部１４から受け取った番号に加え、符号化されたＡＶデータの含むＧＯＰヘッダなどの情報に基づいて、符号化されたＡＶデータ・ストリームを配列することもできる。また、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２によって符号化されたデータ単位は互いに予測可能ではないことが、合成部１６の処理が容易になる点で好ましい。
【００６２】
出力部１７は、合成されたＡＶデータ・ストリームを所定のファイル形式または伝送形式に整形する。出力部１７は、そのＡＶデータ・ストリームに、符号化されたＡＶデータの復号に必要な情報やパラメータ、その他規定された情報を加え、それらのデータ全体を規定された形式に整える。出力部１７によって利用されるファイル形式または伝送形式は編集部１３によって設定される。出力部１７は、内部バス９０を介して任意の記録媒体、例えば、ＨＤＤ３０Ａ、ＨＤＤ３０Ｂ、または、ドライブ４０Ａ若しくはドライブ４０Ｂに装着されたＤＶＤ１０２などに、合成されたＡＶデータ・ストリームを書き込む。出力部１７は、合成されたＡＶデータ・ストリームを、ネットワークインタフェースを介して接続されたデータベースや情報端末に送信することもできる。出力部１７は、合成されたＡＶデータ・ストリームをＡＶユニット７０や入出力インタフェース５０から外部機器に出力することもできる。
【００６３】
切換位置検出部１８は、編集部１３によって編集されるＡＶデータにおける割り振り先の切換位置を、そのＡＶデータに関する編集情報から検出する。具体的には、切換位置検出部１８はまず、編集部１３から編集情報を受け取る。切換位置検出部１８は次に、その編集情報をタイムライン方向の順に調べて、切換位置をタイムライン方向の順番に検出し、各切換位置を示すタイムコードを記憶する。
【００６４】
ここで、割り振り先の切換位置とは、編集部１３によって編集されたＡＶデータをデータ割振部１４が両エンコーダ１５１、１５２に割り振るとき、そのＡＶデータの割り振り先を両エンコーダ１５１、１５２の一方から他方に切り換える、そのＡＶデータ内での位置をいう。切換位置検出部１８は、編集情報に基づき、そのＡＶデータにおいて、（Ａ）「一つのシーンが別のシーンに切り換わる位置」、および、（Ｂ）「編集処理の種類が所定のパターンで変更される位置」の少なくともいずれかを切換位置として検出する。
【００６５】
（Ａ）「一つのシーンが別のシーンに切り替わる位置」には、タイムライン上に並列に配置されたクリップが一斉に終了して別のクリップに切り替わる位置が含まれる。そのような位置には、例えば図４のタイムラインウィンドウＴＷの中に示されている位置ＳＷＰが含まれる。その位置ＳＷＰでは、タイムライン上に並列に配置された第３クリップＣＬ３と第４クリップＣＬ４とが共に終了すると同時に、第５クリップＣＬ５が始まる。その位置ＳＷＰのようなクリップ間の境界が切換位置として検出され得る。なお、複数のクリップがタイムライン上に一列に配置された区間では、二つの連続するクリップ間の境界が切換位置として検出され得る。
【００６６】
（Ｂ）「編集処理の種類が所定のパターンで変更される位置」には、素材データの復号処理やエフェクト処理の種類など、編集処理の種類が所定のパターンで切り替わるクリップ間の境界が含まれる。ここで、その所定のパターンは次のように決定される。ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とでは一般に、符号化処理に違いがある。従って、二つの連続するクリップのそれぞれに対応するＡＶデータが異なるエンコーダで符号化された場合、その符号化されたＡＶデータから復号されて再構成された映像では、それらのクリップ間の境界に相当する位置で圧縮歪みの見え方、すなわち画質が多少なりとも変化し得る。その画質の変化が、編集処理の種類の変化によって視聴者に感知され難くなる場合、その編集処理の種類の変化パターンが上記の所定のパターンとして決定される。
【００６７】
前記（Ａ）、（Ｂ）のいずれの位置に相当するクリップ間の境界でも、その前後では映像の変化が大きいので、その位置でハードウェア・エンコーダ１５１の符号化処理とソフトウェア・エンコーダ１５２の符号化処理とを切り換えることによって画質が多少変化したとしても、その画質の変化は視聴者には感知され難い。従って、それらの境界のいずれかが切換位置であれば、符号化されたＡＶデータから復号されて再構成された映像において、その切換位置の前後で画質が多少なりとも変化したとしても、その画質の変化が視聴者には感知され難くなる。
【００６８】
編集部１３からメモリ部２０に符号化対象のデータ単位が一つ、例えばフレームが一枚書き込まれるごとに、データ割振部１４はそのデータ単位からタイムコードを読み取って切換位置検出部１８に渡す。切換位置検出部１８はそのタイムコードを、各切換位置のタイムコードと比較する。データ割振部１４からのタイムコードが、いずれかの切換位置のタイムコードに一致したとき、切換位置検出部１８は検出信号をデータ割振部１４に出力する。データ割振部１４はその検出信号に応じて、当該データ単位以降のＡＶデータの割り振り先を、直前のデータ単位が割り振られたエンコーダとは別のエンコーダに切り換える。
【００６９】
図５は、実施形態１に係るＡＶデータの割り振り処理のフローチャートである。以下、図５を参照しながら、割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。
【００７０】
割り振り処理は、符号化対象のＡＶデータに関する編集情報を使用して行われ、例えば、編集部１３によって、その編集情報が作成されたときに開始される。
【００７１】
最初に、ステップＳ１では、切換位置検出部１８が、符号化対象のＡＶデータに関する編集情報から割り振り先の切換位置を検出し、検出された切換位置のタイムコードＴ（ｓｗ）を記憶する。ここで、それらの切換位置およびタイムコードＴ（ｓｗ）に対しては通し番号ｓｗ＝１、２、３、…、がタイムライン方向の順に振られている。なお、切換位置の検出処理の詳細については後述する。
【００７２】
次いで、ステップＳ２では、切換位置検出部１８は検出対象の切換位置の番号ｓｗを１に初期化する。一方、データ割振部１４は、符号化対象のＡＶデータの先頭フレームから最初の切換位置Ｔ（１）までの区間の割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに決める。
【００７３】
次いで、ステップＳ３では、編集部１３が、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【００７４】
次いで、ステップＳ４では、編集部１３が入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４はそのフレームからタイムコードＴｃを読み取って切換位置検出部１８に渡す。
【００７５】
次いで、ステップＳ５では、データ割振部１４は、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ５で“Ｎｏ”の場合）、処理がステップＳ６に進む。一方、そのフレームが後尾のフレームである場合（ステップＳ５で“Ｙｅｓ”の場合）、データ割振部１４はそのフレームを、その時点で割り振り先として決められているエンコーダに割り振り、その後、処理が終了する。
【００７６】
次いで、ステップＳ６では、切換位置検出部１８は、データ割振部１４から受け取ったタイムコードＴｃをｓｗ番目の切換位置のタイムコードＴ（ｓｗ）と比較する。データ割振部１４からのタイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致した場合（ステップＳ６で“Ｙｅｓ”の場合）、処理がステップＳ７に進む。タイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致しない場合（ステップＳ６で“Ｎｏ”の場合）、処理がステップＳ３に戻る。その場合、データ割振部１４はタイムコードＴｃのフレームを、その時点で割り振り先として決められているエンコーダに割り振る。
【００７７】
次いで、ステップＳ７では、切換位置検出部１８は検出信号を出力する。データ割振部１４はその検出信号に応じて、割り振り先を別のエンコーダに切り換える。それにより、データ割振部１４はタイムコードＴｃ以降のフレームを、タイムコードＴｃの直前のフレームとは別のエンコーダに割り振る。
【００７８】
次いで、ステップＳ８では、切換位置検出部１８は切換位置の番号ｓｗを“１”だけ増やして、次の切換位置Ｔ（ｓｗ）を検出対象に設定する。そして、処理はステップＳ３から繰り返される。
【００７９】
図６は、実施形態１に係る切換位置の検出処理のフローチャートである。以下、図６を参照しながら、切換位置の検出処理の詳細を説明する。
【００８０】
最初に、ステップＳ１１１では、切換位置検出部１８は、編集部１３から編集情報を取得する。切換位置検出部１８は更に、その編集情報を、先頭のクリップに関するものからタイムライン方向の順に調べる。
【００８１】
次いで、ステップＳ１１２では、切換位置検出部１８が、まず、クリップ間の境界の位置、および、クリップ間での編集処理の種類の変更パターンの少なくともいずれかを調べる。タイムライン上に並列に配置されたクリップが一斉に終了して別のクリップに切り替わっている場合、および／または、編集処理の種類の変更パターンが所定のパターンである場合、切換位置検出部１８は、対応するクリップ間の境界を割り振り先の切換位置として検出する。
【００８２】
次いで、ステップＳ１１３では、切換位置検出部１８は、編集情報をＡＶデータの後尾のフレームまで調べたか否かを判定する。後尾のフレームまでは調べていない場合（ステップＳ１１３で“Ｎｏ”の場合）、処理がステップＳ１１２に戻り、後尾のフレームまで調べ終えた場合（ステップＳ１１３で“Ｙｅｓ”の場合）、処理が、図５に示されているステップＳ２に進む。
【００８３】
実施形態１に係る符号化装置１００は、切換位置検出部１８により、符号化対象のＡＶデータにおける割り振り先の切換位置を、そのＡＶデータに関する編集情報から検出する。編集部１３が、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４が各切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。切換位置は、一つのシーンが別のシーンに切り替わる位置、および、編集処理の種類が所定のパターンで変更される位置の少なくともいずれかである。これらの位置では、映像の変化が大きいので、ハードウェア・エンコーダ１５１の符号化処理とソフトウェア・エンコーダ１５２の符号化処理とを切り換えても、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、符号化装置１００は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、符号化装置１００は、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【００８４】
なお、編集部１３は、編集されるＡＶデータの一部の範囲をユーザに指定させ、その指定された範囲のＡＶデータを両エンコーダ１５１、１５２に割り振る頻度の許容度をユーザに設定させてもよい。ここで、その頻度の許容度は、指定されたＡＶデータの範囲から検出されてもよい切換位置の個数の上限値、または、その範囲のタイムライン方向の長さに対する切換位置の間隔の比の下限値を表す。その頻度の許容度が高い範囲では、切換位置の個数の上限値が大きく設定され、または、その範囲のタイムライン方向の長さに対する切換位置の間隔の比の下限値が小さく設定される。従って、データ割振部１４がＡＶデータの割り振り先を切り換える頻度が高くなり得るので、両エンコーダ１５１、１５２の並列処理によって符号化処理全体が高速になり得る。逆に、その頻度の許容度が低い範囲では、切換位置の個数の上限値が小さく設定され、または、その範囲のタイムライン方向の長さに対する切換位置の間隔の比の下限値が大きく設定される。従って、データ割振部１４がＡＶデータの割り振り先を切り換える頻度が抑えられるので、画質の均一性が高くなり得る。
【００８５】
具体的には例えば、編集部１３は、図４のタイムラインウィンドウＴＷ内に表示されたクリップＣＬ１〜ＣＬ８の一部または全体をユーザにタイムラインカーソルＴＬＣ等で指定させ、その指定された範囲の映像をプレビューウィンドウＰＷに表示する。ユーザは、プレビューウィンドウＰＷに表示された映像から、両エンコーダ１５１、１５２へのＡＶデータの割り振りがその映像の画質に与える影響を推測しながら、上記の範囲を両エンコーダ１５１、１５２に割り振る頻度の許容度を編集部１３に入力する。ユーザは、両エンコーダ１５１、１５２間での符号化処理の違いに起因する画質の変化が目立ちやすいＡＶデータの範囲については頻度の許容度を低く設定し、逆に、画質の変化が目立ちにくい範囲については頻度の許容度を高く設定する。例えば図４では、第１クリップＣＬ１から第３クリップＣＬ３までの範囲は第５クリップＣＬ５以降の範囲よりも、両エンコーダ１５１、１５２に割り振る頻度の許容度が低く設定されてもよい。
【００８６】
編集部１３は、編集されるＡＶデータの各部分についてユーザによって設定された、両エンコーダ１５１、１５２に割り振る頻度の許容度を、編集情報の一部として切換位置検出部１８に通知する。切換位置検出部１８は、編集部１３から編集情報を受け取ったときにまず、両エンコーダ１５１、１５２にＡＶデータを割り振る頻度の許容度をその編集情報から読み出し、その許容度が共通するＡＶデータの範囲ごとに切換位置の検出基準を決定する。その検出基準は、例えば、その範囲から検出されてもよい切換位置の個数の上限値、または、その範囲のタイムライン方向の長さに対する切換位置の間隔の比の下限値を表す。切換位置検出部１８は続いて、その検出基準に基づいて、編集情報から切換位置を検出する。その結果、両エンコーダ１５１、１５２に割り振る頻度の許容度が共通するＡＶデータの範囲ごとに、切換位置の個数の上限値または切換位置の間隔の下限値が調節される。
【００８７】
切換位置検出部１８は更に、検出された切換位置の間隔を調べ、いずれかの間隔が所定の閾値を超えているＡＶデータの区間について、切換位置の検出基準を緩めて、編集情報からの切換位置の検出を繰り返してもよい。例えば、隣り合う二つの切換位置で区切られた区間のデータ量がハードウェア・エンコーダ１５１のフレーム・バッファの容量に等しい場合、それらの切換位置の間隔が上記の閾値として設定される。その場合、切換位置検出部１８は、検出された切換位置の間隔が全て閾値以下に収まるまで、検出基準の変更と、その検出基準による切換位置の検出とを繰り返す。それにより、切換位置で区切られたＡＶデータの各区間のデータ量がハードウェア・エンコーダ１５１のフレーム・バッファの容量以下に収まるので、両エンコーダ１５１、１５２の並列処理によって符号化処理全体が高速になり得る。
【００８８】
以下に説明する本発明の実施形態２〜１１の符号化装置１００は、実施形態１によるものと同様、ノンリニアビデオ編集システム２００に組み込まれている。また、ビデオ編集システム２００は、符号化部を除いて実施形態１によるものと同様である。従って、それら同様な要素には同様の符号を付し、その詳細については実施形態１についての説明を援用する。
【００８９】
《実施形態２》
図７は、本発明の実施形態２による編集部１３と符号化部１１１とのブロック図である。図７を参照するに、符号化部１１１は、データ割振部１４、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および切換位置検出部１８１を含む。符号化部１１１は、切換位置検出部１８１を除き、図３に示されている要素と同様な要素を含む。図７ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、切換位置検出部１８１の動作は、図３に示されている切換位置検出部１８の動作と同様な部分を含む。従って、以下、切換位置検出部１８１については、図３に示されている切換位置検出部１８とは異なる部分を説明し、同様な部分の詳細については、図３に示されている切換位置検出部１８についての説明を援用する。
【００９０】
切換位置検出部１８１はデータ分析部１８２を含み、それを利用して、編集部１３によって編集されたＡＶデータそのものから割り振り先の切換位置を検出し、各切換位置を示すタイムコードを記憶する。具体的には、切換位置検出部１８１は、まず、編集部１３から編集された映像データを受け取り、データ分析部１８２によってその映像データそのものを分析し、その中から切換位置を検出する。切換位置検出部１８１が、編集部１３によって編集されたＡＶデータの全体から切換位置を検出し終えた後、編集部１３は、編集されたＡＶデータをその先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。その後、切換位置検出部１８１は実施形態１に係る切換位置検出部１８と同様に、データ割振部１４から受け取ったタイムコードを各切換位置のタイムコードと比較し、データ割振部１４からのタイムコードがいずれかの切換位置のタイムコードに一致したとき、検出信号をデータ割振部１４に出力する。
【００９１】
データ分析部１８２は、映像データの中から、（Ｃ）「前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置」、および、（Ｄ）「前後のデータ単位の両方で情報量が所定の閾値より小さい位置」の少なくともいずれかを割り振り先の切換位置として検出する。ここで、シーンの変化量は、例えば、画面全体での映像データの変化量、色成分の変化量、画面全体の動きの変化量、および、画面の中の特定のオブジェクトの動きの変化量の少なくともいずれかである。一方、情報量は、例えば、ＤＣＴによって各データ単位から得られる高域周波数の変換係数の和または平均値、または、ソフトウェア・エンコーダ１５２によって推定された符号化後のビットレートである。
【００９２】
データ分析部１８２は、映像データの中から（Ｃ）「前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置」を検出する場合、まず、二つの連続するデータ単位ごとに、例えば二枚の連続するフレームごとに、それらの間の差分を算出する。その差分は、フレーム全体について算出されても、特定のブロックについて算出されてもよい。データ分析部１８１は次に、算出された差分からシーンの変化量を評価する。
【００９３】
データ分析部１８２は更に、評価されたシーンの変化量を所定の閾値と比較し、その変化量がその閾値を超えた場合、その変化量が算出されたデータ単位間の境界を切換位置として検出する。ここで、その閾値は次のように決定される。二つの連続するデータ単位が異なるエンコーダで符号化された場合、それらの符号化されたデータ単位から復号されて再構成された映像における画質の変化が、それらのデータ単位間でのシーンの変化によって視聴者に感知され難くなるとき、そのシーンの変化量が上記の閾値として決定される。
【００９４】
従って、前記（Ｃ）の位置が切換位置であれば、両エンコーダ１５１、１５２の符号化処理の違いによって、符号化されたＡＶデータから復号されて再構成された映像における画質が多少なりとも変化したとしても、その映像からはその画質の変化が視聴者には感知され難くなる。
【００９５】
データ分析部１８２は、映像データの中から（Ｄ）「前後のデータ単位の両方で、ＤＣＴによる高域周波数の変換係数の和または平均値が所定の閾値より小さい位置」を検出する場合、まず、各データ単位、例えば各フレームからいくつかのブロックを抽出し、各ブロックの輝度成分と色差成分とのいずれか、または全部についてＤＣＴを行う。ここで、ＤＣＴによって一枚のフレームから得られる変換係数のうち、高域周波数の変換係数の多くが０である場合はよく生じる。一般的な映像データの圧縮方式ではそのような傾向が考慮され、高域周波数の変換係数よりも低域周波数の変換係数に対して量子化のビット数が多く割り当てられることで、符号化後のデータ量が抑えられている。このように、一般的な映像データの圧縮方式では、高域周波数の変換係数は粗く量子化され、または、捨てられる。従って、一般に、高域周波数成分を多く含むフレームでは圧縮歪みが目立ちやすいと考えられる。それ故、データ分析部１８２は、一枚のフレームから抽出された各ブロックにおける高域周波数の変換係数の分布を評価することによって、当該フレームで圧縮歪みが目立ちやすいか否かを判定できる。データ分析部１８２は更に、直前のフレームと当該フレームとの両方で圧縮歪みが目立ちにくいと判定した場合、当該フレームを切換位置として検出する。
【００９６】
データ分析部１８２は、各ブロックにおける高域周波数の変換係数の分布を、次のように評価する。データ分析部１８２は、まず、各ブロックの変換係数から評価対象の高域周波数の変換係数を少なくとも一つ選択し、それらの和または平均値を所定の閾値と比較する。ここで、その閾値としては、圧縮歪みが実際に目立ちにくい一般的な映像からＤＣＴによって得られる高域周波数の変換係数の和または平均値が利用される。評価対象の高域周波数の変換係数の和または平均値がその閾値より小さい場合、データ分析部１８２は、当該ブロックでは高域周波数成分が少ない、すなわち、圧縮歪みが目立ちにくいと判定する。データ分析部１８２は、一枚のフレームから抽出されたブロックの全てを同様に評価する。データ分析部１８２は、それらのブロックの全て、または、所定数以上で圧縮歪みが目立ちにくいと判定した場合、当該フレームでは圧縮歪みが目立ちにくいと判定する。
【００９７】
データ分析部１８２は、映像データの中から（Ｄ）「前後のデータ単位の両方で、ソフトウェア・エンコーダ１５２によって推定された符号化後のビットレートが所定の閾値より小さい位置」を検出する場合、まず、符号化対象の各データ単位、例えば各フレームからいくつかのブロックを抽出する。データ分析部１８２は次に、ソフトウェア・エンコーダ１５２に、抽出された各ブロックに対する符号化処理を、エントロピー符号化などの可逆符号化ステップの前まで行わせて、符号化データのビットレートを推定させる。データ分析部１８２は続いて、推定されたビットレートを所定の閾値と比較する。ここで、その閾値としては、ソフトウェア・エンコーダ１５２による符号化処理における目標ビットレートが利用される。抽出されたブロックのいずれかについて、推定されたビットレートが目標ビットレートを超えた場合、データ分析部１８２は、そのブロックを抽出したフレームでは圧縮歪みが目立ちやすいと判定する。データ分析部１８２は更に、直前のフレームと当該フレームとの両方で圧縮歪みが目立ちにくいと判定した場合、当該フレームを切換位置として検出する。
【００９８】
映像データの圧縮方式には、直交変換にＤＣＴを使用しないものがある。例えばＪＰＥＧ２０００では、ＤＣＴに代えてウェーブレット変換が直交変換に利用される。また、圧縮歪みの見え方は圧縮方式によって異なり、同じ圧縮方式でも、圧縮パラメータの選び方や目標ビットレートによって異なる。各エンコーダ１５１、１５２が多様な圧縮方式、特に、直交変換にＤＣＴを利用しない圧縮方式を利用する場合でも、データ分析部１８２は上記のようにソフトウェア・エンコーダ１５２に符号化後のビットレートを推定させることにより、各エンコーダ１５１、１５２が実際に利用する圧縮方式に合わせて、ＡＶデータの中から圧縮歪みの目立ちにくい位置を検出できる。
【００９９】
前記（Ｄ）の位置の前後では、例えば真っ黒な画面が連続するシーンの途中のように、それらのデータ単位のいずれでも、圧縮歪みがたとえ存在したとしても目立ちにくい。従って、前記（Ｄ）の位置が切換位置であれば、両エンコーダ１５１、１５２の符号化処理の違いによって、符号化されたＡＶデータから復号されて再構成された映像における画質が多少なりとも変化したとしても、その映像からはその画質の変化が視聴者に感知され難くなる。前記（Ｄ）の位置が切換位置であれば、更に、複数の切換位置が比較的狭い間隔で検出され、ＡＶデータの符号化処理においてそのＡＶデータの割り振り先のエンコーダが比較的頻繁に切り換えられたとしても、両エンコーダ１５１、１５２の符号化処理の違いに起因する上記映像における画質の変化が、画面のちらつきとして視聴者に感知されることは生じ難くなる。
【０１００】
図８は、実施形態２に係る切換位置の検出処理のフローチャートである。以下、図８を参照しながら、切換位置の検出処理の詳細を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図８に示されている切換位置の検出処理の後に続くＡＶデータの割り振り処理の各ステップは、図５に示されている実施形態１に係るステップと同様である。それら同様なステップの詳細については、図５についての説明を援用する。
【０１０１】
最初に、ステップＳ１２１では、切換位置検出部１８１は、編集部１３から編集された映像データを所定数のフレームずつ取得する。
【０１０２】
次いで、ステップＳ１２２では、データ分析部１８２が、編集部１３から取得された映像データの各フレームを分析し、二枚の連続するフレームの間でのシーンの変化量が所定の閾値よりも大きい位置、および、二枚の連続するフレームの両方で情報量が所定の閾値より小さい位置の少なくともいずれかを切換位置として検出する。
【０１０３】
次いで、ステップＳ１２３では、切換位置検出部１８１は、編集部１３から取得されたフレームが符号化対象の映像データの後尾のフレームであるか否かを判定する。後尾のフレームではない場合（ステップＳ１２３で“Ｎｏ”の場合）、処理がステップＳ１２１に戻り、後尾のフレームである場合（ステップＳ１２３で“Ｙｅｓ”の場合）、処理が、図５に示されているステップＳ２に進む。
【０１０４】
実施形態２に係る符号化装置は、切換位置検出部１８１により、符号化対象のＡＶデータにおける割り振り先の切換位置を、そのＡＶデータそのものから検出する。編集部１３が、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４が各切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。切換位置は、前後のデータ単位の間でのシーンの変化量が所定の閾値よりも大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである。前後のデータ単位の間でのシーンの変化量が所定の閾値よりも大きい位置では、映像の変化が大きいので、ハードウェア・エンコーダ１５１の符号化処理とソフトウェア・エンコーダ１５２の符号化処理とを切り換えても、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。また、前後のデータ単位の両方で情報量が所定の閾値より小さい位置では、ＡＶデータのデータ単位の情報量が少ないため、この位置でハードウェア・エンコーダ１５１の符号化処理とソフトウェア・エンコーダ１５２の符号化処理とを切り換えても、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化が現れ難い。そのため、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態２に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、圧縮歪みの目立ちやすいＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０１０５】
なお、切換位置検出部１８１は、データ分析部１８２によって検出された切換位置の間隔のいずれかが所定の閾値を超えているか否かを調べてもよい。ここで、その閾値としては、例えば、隣り合う二つの切換位置で区切られた区間のデータ量がハードウェア・エンコーダ１５１のフレーム・バッファの容量に等しい場合における、それらの切換位置の間隔が利用される。切換位置検出部１８１は更に、切換位置の間隔が所定の閾値を超えたＡＶデータの区間について、データ分析部１８２に、シーンの変化量または情報量に対する閾値を変化させながら、切換位置の検出を繰り返させてもよい。その場合、切換位置検出部１８１は、検出された切換位置の間隔が全て閾値以下に収まるまで、閾値の変更と、その閾値に基づく切換位置の検出とを繰り返す。それにより、切換位置で区切られたＡＶデータの各区間のデータ量がハードウェア・エンコーダ１５１のフレーム・バッファの容量以下に収まるので、両エンコーダ１５１、１５２の並列処理によって符号化処理全体が高速になり得る。
【０１０６】
《実施形態３》
図９は、本発明の実施形態３による編集部１３と符号化部１１２とのブロック図である。図９を参照するに、符号化部１１２は、データ割振部１４、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および切換位置検出部１８３を含む。符号化部１１２は、切換位置検出部１８３を除き、図３、図７に示されている要素と同様な要素を含む。図９ではそれら同様な要素に対し、図３、図７に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３、図７に示されている要素についての説明を援用する。更に、切換位置検出部１８３の動作は、図３、図７に示されている切換位置検出部１８、１８１の動作と同様な部分を含む。従って、以下、切換位置検出部１８３については、図３、図７に示されている切換位置検出部１８、１８１とは異なる部分を説明し、同様な部分の詳細については、図３、図７に示されている切換位置検出部１８、１８１についての説明を援用する。
【０１０７】
切換位置検出部１８３は、まず、編集部１３から編集情報を受け取り、その編集情報から割り振り先の切換位置を検出し、各切換位置を示すタイムコードを記憶する。ここで、その切換位置は、実施形態１に係る切換位置と同様に、（Ａ）「一つのシーンが別のシーンに切り替わる位置」、および、（Ｂ）「編集処理の種類が所定のパターンで変更される位置」の少なくともいずれかである。
【０１０８】
切換位置検出部１８３は更に、検出された切換位置の間隔を調べる。いずれかの間隔が所定の閾値を超えている場合、例えば、その間隔で隣り合う二つの切換位置で区切られた区間のデータ量がハードウェア・エンコーダ１５１のフレーム・バッファの容量に比べて大きい場合、切換位置検出部１８３はデータ分析部１８２によってその区間の映像データそのものを分析し、その区間の中から新たな切換位置を更に検出する。ここで、その切換位置は、実施形態２に係る切換位置と同様に、（Ｃ）「前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置」、および、（Ｄ）「前後のデータ単位の両方で情報量が所定の閾値より小さい位置」の少なくともいずれかである。
【０１０９】
切換位置検出部１８３は、検出された切換位置の間隔が全て閾値以下に収まるまで、その閾値を超えた間隔の区間に対してデータ分析部１８２による切換位置の検出処理を繰り返す。
【０１１０】
図１０は、実施形態３に係る切換位置の検出処理のフローチャートである。以下、図１０を参照しながら、切換位置の検出処理の詳細を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図１０に示されている切換位置の検出処理の後に続くＡＶデータの割り振り処理の各ステップは、図５に示されている実施形態１に係るステップと同様である。それら同様なステップの詳細については、図５についての説明を援用する。
【０１１１】
最初に、ステップＳ１３１では、切換位置検出部１８３は、編集部１３から編集情報を取得する。切換位置検出部１８３は更に、その編集情報を、先頭のクリップに関するものからタイムライン方向の順に調べる。
【０１１２】
次いで、ステップＳ１３２では、切換位置検出部１８３が、まず、クリップ間の境界の位置、および、クリップ間での編集処理の種類の変更パターンの少なくともいずれかを調べる。タイムライン上に並列に配置されたクリップが一斉に終了して別のクリップに切り替わっている場合、および／または、編集処理の種類の変更パターンが所定のパターンである場合、切換位置検出部１８３は、対応するクリップ間の境界を割り振り先の切換位置として検出する。
【０１１３】
次いで、ステップＳ１３３では、切換位置検出部１８３は、新たな切換位置を検出するごとに、その切換位置と直前の切換位置との間隔を所定の閾値と比較する。その間隔がその閾値を超えた場合（ステップＳ１３３で“Ｙｅｓ”の場合）、処理がステップＳ１３４に進み、その閾値以下である場合（ステップＳ１３３で“Ｎｏ”の場合）、処理がステップＳ１３５に進む。
【０１１４】
ステップＳ１３４では、データ分析部１８２が、新たな切換位置とその直前の切換位置とで区切られた区間の映像データを編集部１３から取得して分析する。データ分析部１８２がその区間の映像データの中から、二枚の連続するフレームの間でのシーンの変化量が所定の閾値よりも大きい位置、および、二枚の連続するフレームの両方で情報量が所定の閾値より小さい位置の少なくともいずれかを検出した場合、データ分析部１８２はそれらのフレーム間の境界に新たな切換位置を検出する。新たな切換位置が検出された場合、処理はステップＳ１３３に戻る。
【０１１５】
一方、ステップＳ１３５では、切換位置検出部１８３は、編集情報をＡＶデータの後尾のフレームまで調べたか否かを判定する。後尾のフレームまでは調べていない場合（ステップＳ１３５で“Ｎｏ”の場合）、処理がステップＳ１３２に戻り、後尾のフレームまで調べ終えた場合（ステップＳ１３５で“Ｙｅｓ”の場合）、処理が、図５に示されているステップＳ２に進む。
【０１１６】
実施形態３に係る符号化装置は、実施形態１に係る符号化装置と同様に、編集情報から割り振り先の切換位置を検出する。更に、検出された切換位置の間隔のいずれかが所定の閾値を超えた場合、この符号化装置は、実施形態２に係る符号化装置と同様に、その間隔の切換位置で区切られた区間のＡＶデータそのものから新たな切換位置を検出する。編集部１３が、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４が各切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。この符号化装置では、実施形態１、２による符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態３に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、同じ編集処理が継続されているＡＶデータの部分、または、圧縮歪みの目立ちやすいＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０１１７】
更に、編集情報から検出された切換位置の間隔のいずれかが所定の閾値を超えた場合、その間隔の切換位置で区切られた区間のＡＶデータそのものから新たな切換位置が検出される。それにより、切換位置で区切られたＡＶデータの各区間のデータ量がハードウェア・エンコーダ１５１のフレーム・バッファの容量以下に収まるので、両エンコーダ１５１、１５２の並列処理によって符号化処理全体が高速になり得る。また、実施形態３に係るデータ分析部１８１は、実施形態２に係るデータ分析部１８１と比べて、検出対象の映像データの量が一般に少ないので、切換位置の検出処理が高速になる。
【０１１８】
《実施形態４》
図１１は、本発明の実施形態４による編集部１３と符号化部１１Ａとのブロック図である。図１１を参照するに、符号化部１１Ａは、データ割振部１４Ａ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、切換位置検出部１８、および、バッファ２１を含む。符号化部１１Ａは、データ割振部１４Ａとバッファ２１とを除き、図３に示されている要素と同様な要素を含む。図１１ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、データ割振部１４Ａの動作は、図３に示されているデータ割振部１４の動作と同様な部分を含む。従って、以下、データ割振部１４Ａについては、図３に示されているデータ割振部１４とは異なる部分を説明し、同様な部分の詳細については、図３に示されているデータ割振部１４についての説明を援用する。
【０１１９】
図１１では、バッファ２１は、データ割振部１４Ａとハードウェア・エンコーダ１５１との間に配置されている。バッファ２１はハードウェア・エンコーダ８０のフレーム・バッファ、例えば図２に示されているフレーム・バッファ８３の記憶領域を表す。その場合、バッファ２１の容量は例えば数フレームである。バッファ２１はその他に、メモリ部２０内の記憶領域であってもよい。その場合、バッファ２１の容量は例えば数十フレームである。
【０１２０】
データ割振部１４Ａは、ハードウェア・エンコーダ１５１に割り振ったＡＶデータを逐次、バッファ２１に転送する。ハードウェア・エンコーダ１５１はバッファ２１の先頭アドレスから順にＡＶデータを所定のデータ単位ずつ、例えば１フレームずつ符号化する。
【０１２１】
データ割振部１４Ａは、切換位置検出部１８からの検出信号に応じてバッファ２１から空き情報を読み出し、その空き情報からバッファ２１の空き領域のサイズ、例えば空いているフレーム・バッファの数を確認する。そのサイズが所定の閾値、例えば１フレームを超えている場合、データ割振部１４Ａは、その検出信号を受けた時点から、新たな検出信号を受ける時点まで、入力バッファ領域ＢＩに書き込まれたＡＶデータをハードウェア・エンコーダ１５１に割り振る。すなわち、データ割振部１４ＡはそのＡＶデータをバッファ２１に書き込む。一方、バッファ２１の空き領域のサイズが所定の閾値以下、例えば１フレーム以下まで減っていた場合、データ割振部１４Ａは、その検出信号を受けた時点から、新たな検出信号を受ける時点まで、入力バッファ領域ＢＩに書き込まれたＡＶデータをソフトウェア・エンコーダ１５２に割り振る。すなわち、データ割振部１４ＡはそのＡＶデータをバッファ２１には書き込まず、そのＡＶデータが記憶された入力バッファ領域ＢＩ内のアドレスをソフトウェア・エンコーダ１５２に渡す。以後、バッファ２１の空き領域のサイズが閾値を再び超えるまで、データ割振部１４Ａは符号化対象のＡＶデータをソフトウェア・エンコーダ１５２に割り振り続ける。
【０１２２】
図１２は、図１１に示されている符号化部１１ＡによるＡＶデータの割り振り処理のフローチャートである。以下、図１２を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図１２は、図５に示されているステップと同様なステップを含む。従って、図１２ではそれら同様なステップに対して、図５に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５についての説明を援用する。
【０１２３】
例えば、編集部１３によって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０１２４】
最初に、ステップＳ１では、切換位置検出部１８が、符号化対象のＡＶデータに関する編集情報から割り振り先の切換位置を検出し、検出された切換位置を示すタイムコードＴ（ｓｗ）を記憶する。
【０１２５】
次いで、ステップＳ２１では、切換位置検出部１８は検出対象の切換位置の番号ｓｗを１に初期化する。一方、データ割振部１４Ａは、符号化対象のＡＶデータの先頭フレームから最初の切換位置Ｔ（１）までの区間の割り振り先をハードウェア・エンコーダ１５１に決める。
【０１２６】
次いで、ステップＳ３では、編集部１３が、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【０１２７】
次いで、ステップＳ４では、編集部１３が入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＡはそのフレームからタイムコードＴｃを読み取って切換位置検出部１８に渡す。
【０１２８】
次いで、ステップＳ５では、データ割振部１４Ａは、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ５で“Ｎｏ”の場合）、処理がステップＳ６に進む。一方、そのフレームが後尾のフレームである場合（ステップＳ５で“Ｙｅｓ”の場合）、データ割振部１４Ａはそのフレームを、その時点で割り振り先として決められているエンコーダに割り振り、その後、処理が終了する。
【０１２９】
次いで、ステップＳ６では、切換位置検出部１８は、データ割振部１４Ａから受け取ったタイムコードＴｃをｓｗ番目の切換位置のタイムコードＴ（ｓｗ）と比較する。データ割振部１４ＡからのタイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致した場合（ステップＳ６で“Ｙｅｓ”の場合）、処理がステップＳ２２に進む。タイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致しない場合（ステップＳ６で“Ｎｏ”の場合）、処理がステップＳ３に戻る。その場合、データ割振部１４ＡはタイムコードＴｃのフレームを、その時点で割り振り先として決められているエンコーダに割り振る。
【０１３０】
次いで、ステップＳ２２では、切換位置検出部１８は検出信号を出力する。データ割振部１４Ａはその検出信号に応じてバッファ２１から空き情報を読み出し、その空き情報からバッファ２１の空き領域のサイズを確認する。そのサイズが所定の閾値を超えている場合（ステップＳ２２で“Ｙｅｓ”の場合）、処理はステップＳ２３に進み、その閾値以下である場合（ステップＳ２２で“Ｎｏ”の場合）、処理はステップＳ２４に進む。
【０１３１】
次いで、ステップＳ２３では、データ割振部１４Ａは、検出信号の示す切換位置から次の切換位置までの区間のＡＶデータの割り振り先を引き続き、ハードウェア・エンコーダ１５１に設定する。すなわち、データ割振部１４Ａは、その区間のＡＶデータを入力バッファ領域ＢＩからバッファ２１に転送する。そして、処理はステップＳ８に進む。
【０１３２】
一方、ステップＳ２４では、データ割振部１４Ａは、検出信号の示す切換位置から次の切換位置までの区間のＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１からソフトウェア・エンコーダ１５２に切り換える。すなわち、データ割振部１４Ａは、その区間のＡＶデータが記憶された入力バッファ領域ＢＩ内のアドレスをソフトウェア・エンコーダ１５２に渡す。そして、処理はステップＳ８に進む。
【０１３３】
次いで、ステップＳ８では、切換位置検出部１８は切換位置の番号ｓｗを“１”だけ増やして、次の切換位置Ｔ（ｓｗ）を検出対象に設定する。そして、処理はステップＳ３から繰り返される。
【０１３４】
実施形態４に係る符号化装置は、実施形態１に係る符号化装置と同様に、切換位置検出部１８によって割り振り先の切換位置を、編集情報から検出する。編集部１３が、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４Ａがバッファ２１の空き領域のサイズに応じて、いずれかの切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。この符号化装置では、実施形態１による符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態４に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０１３５】
実施形態４に係る符号化装置は更に、データ割振部１４Ａによって符号化対象のＡＶデータを、まずハードウェア・エンコーダ１５１に割り振り、割り振られたＡＶデータをバッファ２１に書き込む。バッファ２１の空き領域が閾値以下まで減った場合、この符号化装置はデータ割振部１４Ａによって符号化対象のＡＶデータを、次の切換位置からソフトウェア・エンコーダ１５２に割り振る。それにより、ハードウェア・エンコーダ１５１によるＡＶデータの符号化処理を継続しつつ、ソフトウェア・エンコーダ１５２によるＡＶデータの符号化処理を行うので、この符号化装置は、ハードウェア・エンコーダ１５１のみにより符号化処理を行う場合よりも高速で符号化処理を行うことが可能となる。
【０１３６】
《実施形態５》
図１３は、本発明の実施形態５による編集部１３Ｂと符号化部１１Ｂとのブロック図である。図１３を参照するに、符号化部１１Ｂは、データ割振部１４Ｂ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および切換位置検出部１８Ｂを含む。符号化部１１Ｂは、データ割振部１４Ｂと切換位置検出部１８Ｂとを除き、図３に示されている要素と同様な要素を含む。図１３ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、編集部１３Ｂ、データ割振部１４Ｂ、および切換位置検出部１８Ｂの各動作は、図３に示されている編集部１３、データ割振部１４、および切換位置検出部１８の各動作と同様な部分を含む。従って、以下、編集部１３Ｂ、データ割振部１４Ｂ、切換位置検出部１８Ｂについては、図３に示されている編集部１３、データ割振部１４、切換位置検出部１８とは異なる部分を説明し、同様な部分の詳細については、図３に示されている編集部１３、データ割振部１４、切換位置検出部１８についての説明を援用する。
【０１３７】
図１３を参照するに、切換位置検出部１８Ｂは、隣り合う切換位置で区切られたＡＶデータの区間の長さに基づいて、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とによって符号化される各区間について、単位時間当たりに各エンコーダ１５１、１５２に供給されるべきデータ単位数の割合、例えばフレーム数の比を決定する。切換位置検出部１８Ｂは特にその割合を、二つの連続する区間ごとに決定する。切換位置検出部１８Ｂは、決定された切換位置と割合とを示すデータを区間情報として編集部１３Ｂに渡す。切換位置検出部１８Ｂはまた、検出信号を出力するとき、その検出信号の示す切換位置の前後の区間に対する上記の割合を表すデータをデータ割振部１４Ｂに供給する。
【０１３８】
編集部１３Ｂは、切換位置検出部１８Ｂから区間情報を受け取り、その区間情報に基づいて、編集されたＡＶデータの二つの連続する区間を、それらに対して決定されたデータ単位数の割合で交互に出力する。例えば、データ単位が１フレームであり、二つの連続する区間に対して決定されたフレーム数の比が２：１である場合、編集部１３Ｂは、それら二つの連続する区間のうち、前の区間のフレームを二枚連続して出力するごとに、後の区間のフレームを一枚出力する。前の区間を全て出力し終えたとき、編集部１３Ｂは、後の区間の残りとその次の区間とを、それら二つの区間に対して決定されたデータ単位数の割合で交互に出力する。
【０１３９】
データ割振部１４Ｂは、編集部１３Ｂによってメモリ部２０内の入力バッファ領域ＢＩに符号化対象のデータ単位が一つ、例えばフレームが一枚書き込まれるごとに、そのデータ単位からタイムコードを読み取って切換位置検出部１８Ｂに渡す。それに応じて切換位置検出部１８Ｂから検出信号と、データ単位数の割合を示すデータとを受け取った場合、データ割振部１４Ｂは、新たな検出信号を受け取るまで、そのデータ単位以降に入力バッファ領域ＢＩに書き込まれるデータ単位を、上記のデータの示す割合で両エンコーダ１５１、１５２に交互に割り振る。例えば、データ単位が１フレームであり、上記のデータの示すフレーム数の比が２：１である場合、データ割振部１４Ｂは、検出信号の示す切換位置から順に、二枚のフレームを連続してハードウェア・エンコーダ１５１に割り振るごとに、一枚のフレームをソフトウェア・エンコーダ１５２に割り振る。
【０１４０】
図１４は、図１３に示されている符号化部１１ＢによるＡＶデータの割り振り処理のフローチャートである。以下、図１４を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図１４は、図５に示されているステップと同様なステップを含む。従って、図１４ではそれら同様なステップに対して、図５に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５についての説明を援用する。
【０１４１】
例えば、編集部１３Ｂによって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０１４２】
最初に、ステップＳ１では、切換位置検出部１８Ｂが、符号化対象のＡＶデータに関する編集情報から割り振り先の切換位置を検出し、検出された切換位置を示すタイムコードＴ（ｓｗ）を記憶する。
【０１４３】
次いで、ステップＳ３１では、切換位置検出部１８Ｂが、符号化対象のＡＶデータの二つの連続する区間ごとに、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とに単位時間当たりに供給されるべきフレーム数の比を決定する。ここで、切換位置検出部１８Ｂは、そのＡＶデータの先頭フレームから最初の切換位置Ｔ（１）までの最初の区間の割り振り先をハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに決める。
【０１４４】
次いで、ステップＳ３２では、切換位置検出部１８Ｂは区間情報を編集部１３Ｂに渡し、符号化対象の最初の区間の割り振り先をデータ割振部１４Ｂに知らせる。切換位置検出部１８Ｂは更に、検出対象の切換位置の番号ｓｗを１に初期化する。
【０１４５】
次いで、ステップＳ３３では、編集部１３Ｂが区間情報に基づき、編集されたＡＶデータの二つの連続する区間のそれぞれに含まれるフレームを交互に、それら二つの区間に対して決定されたフレーム数の比でメモリ部２０の入力バッファ領域ＢＩに書き込む。
【０１４６】
次いで、ステップＳ４では、編集部１３Ｂが入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＢはそのフレームからタイムコードＴｃを読み取って切換位置検出部１８Ｂに渡す。
【０１４７】
次いで、ステップＳ５では、データ割振部１４Ｂは、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ５で“Ｎｏ”の場合）、処理がステップＳ６に進む。一方、そのフレームが後尾のフレームである場合（ステップＳ５で“Ｙｅｓ”の場合）、データ割振部１４Ｂはそのフレームを、両エンコーダ１５１、１５２に割り振るフレーム数の比に従ってハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに割り振り、その後、処理が終了する。
【０１４８】
次いで、ステップＳ６では、切換位置検出部１８Ｂは、データ割振部１４Ｂから受け取ったタイムコードＴｃをｓｗ番目の切換位置のタイムコードＴ（ｓｗ）と比較する。データ割振部１４ＢからのタイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致した場合（ステップＳ６で“Ｙｅｓ”の場合）、処理がステップＳ３４に進む。タイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致しない場合（ステップＳ６で“Ｎｏ”の場合）、処理がステップＳ３５に進む。
【０１４９】
次いで、ステップＳ３４では、切換位置検出部１８Ｂが、検出信号と、その検出信号の示す切換位置の前後の区間に対するフレーム数の比とを表すデータをデータ割振部１４Ｂに渡す。データ割振部１４Ｂはその検出信号に応じ、タイムコードＴｃのフレーム以降に入力バッファ領域ＢＩに書き込まれるフレームを両エンコーダ１５１、１５２に割り振る割合を、上記のデータの示すフレーム数の比に更新する。そして、処理はステップＳ８に進む。
【０１５０】
次いで、ステップＳ８では、切換位置検出部１８Ｂは切換位置の番号ｓｗを“１”だけ増やして、次の切換位置Ｔ（ｓｗ）を検出対象に設定する。そして、処理はステップＳ３５に進む。
【０１５１】
次いで、ステップＳ３５では、データ割振部１４Ｂは、両エンコーダ１５１、１５２に割り振るフレーム数の比に従って、タイムコードＴｃのフレームをハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに割り振る。そして、処理はステップＳ３３から繰り返される。
【０１５２】
実施形態５に係る符号化装置は、実施形態１に係る符号化装置と同様に、切換位置検出部１８Ｂによって割り振り先の切換位置を、編集情報から検出する。編集部１３Ｂが、切換位置で区切られたＡＶデータの二つの連続する区間を、切換位置検出部１８Ｂによって設定されたデータ単位数の割合で交互にメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４Ｂがその書き込まれたＡＶデータを同じデータ単位数の割合でハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とに交互に供給し、特に各切換位置でそのＡＶデータの割り振り先を、両エンコーダ１５１、１５２の一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。この符号化装置では、実施形態１による符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態５に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０１５３】
実施形態５に係る符号化装置は、ＡＶデータの二つの区間をそれぞれの割り振り先のエンコーダ１５１、１５２に、所定のデータ単位数の割合で交互に供給する。この符号化装置は更に、そのデータ単位数の割合を各区間の長さに応じて設定し、切換位置のデータ単位がメモリ部２０の入力バッファ領域ＢＩに書き込まれるごとに、そのデータ単位数の割合を、その切換位置から始まる区間に対して設定された値に更新する。それにより、この符号化装置は、各エンコーダ１５１、１５２が符号化対象のデータ単位の入力を待つ時間を短縮しつつ、またはその時間の発生を抑制しつつ、両エンコーダ１５１、１５２による符号化処理を並行させることができる。その結果、この符号化装置はその全体による符号化処理を、ハードウェア・エンコーダ１５１のみによる符号化処理よりも高速にできる。
【０１５４】
《実施形態６》
図１５は、本発明の実施形態６による編集部１３と符号化部１１Ｃとのブロック図である。図１５を参照するに、符号化部１１Ｃは、データ割振部１４、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、切換位置検出部１８Ｃ、および、第１データベース２２を含む。符号化部１１Ｃは、切換位置検出部１８Ｃおよび第１データベース２２を除き、図３に示されている要素と同様な要素を含む。図１５ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、切換位置検出部１８Ｃの動作は、図３に示されている切換位置検出部１８の動作と同様な部分を含む。従って、以下、切換位置検出部１８Ｃについては、図３に示されている切換位置検出部１８とは異なる部分を説明し、同様な部分の詳細については、図３に示されている切換位置検出部１８についての説明を援用する。
【０１５５】
図１５を参照するに、切換位置検出部１８ＣはＣＰＵ負荷推定部１８４を更に含む。ＣＰＵ負荷推定部１８４は、編集部１３による編集処理でのＣＰＵ１０の負荷を、編集情報から以下のように予測する。
【０１５６】
ＣＰＵ負荷推定部１８４は編集情報に基づき、切換位置で区切られたＡＶデータの区間ごとにタイムライン処理指数の平均値を算定する。ここで、タイムライン処理指数は、編集部１３が１つのデータ単位のＡＶデータを編集するのに要するＣＰＵ１０の処理量、すなわち、ＣＰＵ負荷指数で定義される。以下、説明の便宜上、そのデータ単位を１フレームとする。
【０１５７】
ＣＰＵ負荷推定部１８４は、まず、各区間で並行する編集処理の種類を編集情報から特定して、それぞれに対応するＣＰＵ負荷指数を求める。ここで、ＣＰＵ負荷指数は、編集処理の種類ごとに予め評価され、メモリ部２０に第１データベース２２として記憶されている。
【０１５８】
図１６は、そのＣＰＵ負荷指数の一例を示す表である。図１６を参照するに、ＡＶＣ−Ｉｎｔｒａ方式の映像データの復号処理におけるＣＰＵ負荷指数を１００として、ＣＰＵ１０の他の様々な処理に関するＣＰＵ負荷指数が評価されている。ＣＰＵ負荷推定部１８４は、特定された編集処理の各種類に対応するＣＰＵ負荷指数を第１データベース２２から検索する。ＣＰＵ負荷推定部１８４は更に、検索されたＣＰＵ負荷指数を区間ごとに足し合わせ、各和をその区間のデータ単位数で割った値を、その区間のタイムライン処理指数ＴＥの平均値として決定する。
【０１５９】
例えば編集情報が、ある区間で行われる編集処理を「ＡＶＣ−Ｉｎｔｒａ５０の素材データを２つピクチャーインピクチャーで合成し、タイトルを１つ入れる」と表現している場合を想定する。ＣＰＵ負荷推定部１８４は、まず、その区間で並行する編集処理の種類として、「ＡＶＣ−Ｉｎｔｒａ５０の素材データの復号」、「ピクチャーインピクチャーによるエフェクト処理」、および、「タイトルの付加」を特定する。ＣＰＵ負荷推定部１８４は、次に第１データベース２２から、特定された編集処理の各種類に対応するＣＰＵ負荷指数として、１００、５、５を検索する。ＣＰＵ負荷推定部１８４は更に、検索されたＣＰＵ負荷指数１００、５、５からタイムライン処理指数ＴＥを次式で決定する：ＴＥ＝１００×２＋５＋５＝２１０。ここで、編集されたＡＶデータの各データ単位には、ＡＶＣ−Ｉｎｔｒａ５０の素材データが２つのデータ単位ずつ利用されているので、それらの素材データの復号処理に対するＣＰＵ負荷指数は、１つのデータ単位当たりの値１００の２倍で評価されている。
【０１６０】
切換位置検出部１８Ｃは、ＣＰＵ負荷推定部１８４によって予測された各区間のタイムライン処理指数の平均値を所定の閾値と比較する。ここで、編集部１３による編集処理と並行するソフトウェア・エンコーダ１５２による符号化処理の速度、すなわち単位時間当たりに符号化可能なデータ単位数が、ハードウェア・エンコーダ１５１の符号化処理速度と等しい場合、その編集処理におけるタイムライン処理指数が上記の閾値として決定される。予測されたタイムライン処理指数の平均値がその閾値を超えている場合、その区間の編集処理に対するＣＰＵ１０の負荷が重いと見なせるので、切換位置検出部１８Ｃはその区間の割り振り先をハードウェア・エンコーダ１５１に設定する。一方、その平均値がその閾値以下である場合、その区間の編集処理に対するＣＰＵ１０の負荷が軽いと見なせるので、切換位置検出部１８Ｃはその区間の割り振り先をソフトウェア・エンコーダ１５２に設定する。こうして、切換位置検出部１８Ｃは、編集情報に基づいて符号化対象のＡＶデータの各区間の割り振り先を予め決めて、当該区間のタイムコードに関連づけて記憶する。
【０１６１】
切換位置検出部１８Ｃは、符号化対象のデータ単位のタイムコードをデータ割振部１４から受け取るごとに、そのタイムコードを各切換位置のタイムコードと比較する。データ割振部１４からのタイムコードがいずれかの切換位置のタイムコードに一致したとき、切換位置検出部１８Ｃは更に、その切換位置の前後の区間で割り振り先のエンコーダが異なるか否かを確認する。割り振り先が異なっている場合、切換位置検出部１８Ｃは検出信号をデータ割振部１４に出力する。データ割振部１４はその検出信号に応じて、当該データ単位以降の区間の割り振り先を、直前の区間の割り振り先とは別のエンコーダに切り換える。
【０１６２】
図１７は、図１５に示されている符号化部１１ＣによるＡＶデータの割り振り処理のフローチャートである。以下、図１７を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図１７は、図５に示されているステップと同様なステップを含む。従って、図１７ではそれら同様なステップに対して、図５に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５についての説明を援用する。
【０１６３】
例えば、編集部１３によって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０１６４】
最初に、ステップＳ１では、切換位置検出部１８Ｃが、符号化対象のＡＶデータに関する編集情報から割り振り先の切換位置を検出し、検出された切換位置を示すタイムコードＴ（ｓｗ）を記憶する。
【０１６５】
次いで、ステップＳ４１では、ＣＰＵ負荷推定部１８４が、編集情報に基づいて、切換位置で区切られたＡＶデータの区間ごとにタイムライン処理指数の平均値を算定する。
【０１６６】
次いで、ステップＳ４２では、切換位置検出部１８Ｃは、ＣＰＵ負荷推定部１８４によって算定された各区間のタイムライン処理指数の平均値を所定の閾値と比較する。切換位置検出部１８Ｃは更に、各区間の割り振り先を、その平均値がその閾値を超えている場合はハードウェア・エンコーダ１５１に決め、その平均値がその閾値以下である場合はソフトウェア・エンコーダ１５２に決める。こうして決められた各区間の割り振り先を、切換位置検出部１８Ｃはその区間のタイムコードに関連づけて記憶する。切換位置検出部１８Ｃはまた、最初の区間の割り振り先をデータ割振部１４に通知する。
【０１６７】
次いで、ステップＳ２では、切換位置検出部１８Ｃは、検出対象の切換位置の番号ｓｗを１に初期化する。一方、データ割振部１４は、符号化対象のＡＶデータの最初の区間の割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに決める。
【０１６８】
次いで、ステップＳ３では、編集部１３が、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【０１６９】
次いで、ステップＳ４では、編集部１３が入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４はそのフレームからタイムコードＴｃを読み取って切換位置検出部１８Ｃに渡す。
【０１７０】
次いで、ステップＳ５では、データ割振部１４は、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ５で“Ｎｏ”の場合）、処理がステップＳ６に進む。一方、そのフレームが後尾のフレームである場合（ステップＳ５で“Ｙｅｓ”の場合）、データ割振部１４はそのフレームを、その時点で割り振り先として決められているエンコーダに割り振り、その後、処理が終了する。
【０１７１】
次いで、ステップＳ６では、切換位置検出部１８Ｃは、データ割振部１４から受け取ったタイムコードＴｃをｓｗ番目の切換位置のタイムコードＴ（ｓｗ）と比較する。データ割振部１４からのタイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致した場合（ステップＳ６で“Ｙｅｓ”の場合）、処理がステップＳ４３に進む。タイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致しない場合（ステップＳ６で“Ｎｏ”の場合）、処理がステップＳ３に戻る。その場合、データ割振部１４はタイムコードＴｃのフレームを、その時点で割り振り先として決められているエンコーダに割り振る。
【０１７２】
次いで、ステップＳ４３では、切換位置検出部１８Ｃは、ｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に関連づけて記憶された割り振り先を確認する。その割り振り先が、その切換位置の直前の区間の割り振り先とは異なる場合（ステップＳ４３で“Ｙｅｓ”の場合）、処理がステップＳ７に進む。その割り振り先が、その切換位置の直前の区間の割り振り先と同じである場合（ステップＳ４３で“Ｎｏ”の場合）、処理がステップＳ８に進む。その場合、データ割振部１４はタイムコードＴｃのフレームを、その時点で割り振り先として決められているエンコーダに割り振る。
【０１７３】
次いで、ステップＳ７では、切換位置検出部１８Ｃは検出信号を出力する。データ割振部１４はその検出信号に応じて、割り振り先を別のエンコーダに切り換える。それにより、データ割振部１４は、タイムコードＴｃ以降のフレームを、タイムコードＴｃ直前のフレームとは別のエンコーダに割り振る。
【０１７４】
次いで、ステップＳ８では、切換位置検出部１８Ｃは切換位置の番号ｓｗを“１”だけ増やして、次の切換位置Ｔ（ｓｗ）を検出対象に検出する。そして、処理はステップＳ３から繰り返される。
【０１７５】
実施形態６に係る符号化装置は、実施形態１に係る符号化装置と同様に、切換位置検出部１８Ｃによって割り振り先の切換位置を、編集情報から検出する。編集部１３が、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４が所定の切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。この符号化装置では、実施形態１による符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態６に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０１７６】
実施形態６に係る符号化装置は更に、切換位置検出部１８Ｃにより、編集処理に対するＣＰＵ１０の負荷をＡＶデータの区間ごとに予測し、予測された負荷に応じて各区間の割り振り先を決める。それにより、ソフトウェア・エンコーダ１５２が、ＣＰＵ１０に過大な負荷をかけることなく、ＡＶデータの符号化処理を行う。その結果、この符号化装置はその全体による符号化処理を、ハードウェア・エンコーダ１５１のみによる符号化処理よりも高速にできる。
【０１７７】
《実施形態７》
図１８は、本発明の実施形態７による編集部１３と符号化部１１Ｄとのブロック図である。図１８を参照するに、符号化部１１Ｄは、データ割振部１４Ｄ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、切換位置検出部１８、および、ＣＰＵ負荷検出部２３を含む。符号化部１１Ｄは、データ割振部１４ＤとＣＰＵ負荷検出部２３とを除き、図３に示されている要素と同様な要素を含む。図１８ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、データ割振部１４Ｄの動作は、図３に示されているデータ割振部１４の動作と同様な部分を含む。従って、以下、データ割振部１４Ｄについては、図３に示されているデータ割振部１４とは異なる部分を説明し、同様な部分の詳細については、図３に示されているデータ割振部１４についての説明を援用する。
【０１７８】
図１８を参照するに、ＣＰＵ負荷検出部２３は、ＣＰＵ１０が所定のプログラムに従ってコンピュータ端末の他の要素を制御することによって機能する。ＣＰＵ負荷検出部２３は、コンピュータ端末のＯＳ２７の提供するＡＰＩを利用してＣＰＵ１０の使用率を計測する。ＣＰＵ負荷検出部２３は特にその計測動作を、データ割振部１４Ｄから所定の開始信号を受信した時点から所定時間行い、計測されたＣＰＵ１０の使用率をデータ割振部１４Ｄに出力する。
【０１７９】
データ割振部１４Ｄは、切換位置検出部１８から検出信号を受けるごとにＡＶデータの割り振り動作を所定時間停止し、その間のＣＰＵ１０の使用率に基づいて、検出信号の示す切換位置以降のＡＶデータの割り振り先を両エンコーダ１５１、１５２のいずれかに決定する。
【０１８０】
具体的には、データ割振部１４Ｄは、切換位置検出部１８から検出信号を受けたとき、ＣＰＵ負荷検出部２３に開始信号を出力すると共に、その出力時点から所定時間、ＡＶデータの割り振り動作を停止する。それにより、編集部１３によるＡＶデータの入力バッファ領域ＢＩへの書き込み動作が、両エンコーダ１５１、１５２によるそのＡＶデータの符号化処理よりも所定時間先行する。ここで、その所定時間は、切換位置で区切られたＡＶデータの各区間の全体が入力バッファ領域ＢＩに書き込まれる時間よりは十分に短く設定されている。
【０１８１】
上記の所定時間が経過したとき、データ割振部１４ＤはＣＰＵ負荷検出部２３からＣＰＵ１０の使用率を受け取って所定の閾値と比較する。その使用率がその閾値を超えている場合、上記の検出信号の示す切換位置以降のＡＶデータの区間については、編集部１３による編集処理に対するＣＰＵ１０の負荷が重いと見なせるので、データ割振部１４Ｄは、ＡＶデータのその区間の割り振り先をハードウェア・エンコーダ１５１に決定する。一方、ＣＰＵ１０の使用率が上記の閾値以下である場合、上記の検出信号の示す切換位置以降のＡＶデータの区間については、編集部１３による編集処理に対するＣＰＵ１０の負荷が軽いと見なせるので、データ割振部１４Ｄは、ＡＶデータのその区間の割り振り先をソフトウェア・エンコーダ１５２に決定する。
【０１８２】
図１９は、図１８に示されている符号化部１１ＤによるＡＶデータの割り振り処理のフローチャートである。以下、図１９を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図１９は、図５に示されているステップと同様なステップを含む。従って、図１９ではそれら同様なステップに対して、図５に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５についての説明を援用する。
【０１８３】
例えば、編集部１３によって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０１８４】
最初に、ステップＳ１では、切換位置検出部１８が、符号化対象のＡＶデータに関する編集情報から割り振り先の切換位置を検出し、検出された切換位置を示すタイムコードＴ（ｓｗ）を記憶する。
【０１８５】
次いで、ステップＳ５１では、切換位置検出部１８は検出対象の切換位置の番号ｓｗを１に初期化する。
【０１８６】
次いで、ステップＳ３では、編集部１３が、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【０１８７】
次いで、ステップＳ４では、編集部１３が入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＤはそのフレームからタイムコードＴｃを読み取って切換位置検出部１８に渡す。
【０１８８】
次いで、ステップＳ５では、データ割振部１４Ｄは、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ５で“Ｎｏ”の場合）、処理がステップＳ６に進む。一方、そのフレームが後尾のフレームである場合（ステップＳ５で“Ｙｅｓ”の場合）、データ割振部１４Ｄはそのフレームを、その時点で割り振り先として決められているエンコーダに割り振り、その後、処理が終了する。
【０１８９】
次いで、ステップＳ６では、切換位置検出部１８は、データ割振部１４Ｄから受け取ったタイムコードＴｃをｓｗ番目の切換位置のタイムコードＴ（ｓｗ）と比較する。データ割振部１４ＤからのタイムコードＴｃが符号化対象のＡＶデータの先頭フレームのタイムコードであるとき、または、ｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致した場合（ステップＳ６で“Ｙｅｓ”の場合）、処理がステップＳ５２に進む。タイムコードＴｃがｓｗ番目の切換位置のタイムコードＴ（ｓｗ）に一致しない場合（ステップＳ６で“Ｎｏ”の場合）、処理がステップＳ３に戻る。その場合、データ割振部１４ＤはタイムコードＴｃのフレームを、その時点で割り振り先として決められているエンコーダに割り振る。
【０１９０】
次いで、ステップＳ５２では、切換位置検出部１８が検出信号を出力する。その検出信号に応じてデータ割振部１４ＤはＣＰＵ負荷検出部２３に開始信号を出力し、その出力時点から所定時間、ＡＶデータの割り振り動作を停止する。
【０１９１】
次いで、ステップＳ５３では、ＣＰＵ負荷検出部２３が開始信号に応じてＣＰＵ１０の使用率を計測する。開始信号の受信時点から所定時間が経過したとき、ＣＰＵ負荷検出部２３は、計測されたＣＰＵ１０の使用率をデータ割振部１４Ｄに出力する。
【０１９２】
次いで、ステップＳ５４では、データ割振部１４ＤがＣＰＵ負荷検出部２３からＣＰＵ１０の使用率を受け取って所定の閾値と比較する。その使用率がその閾値を超えている場合（ステップＳ５４で“Ｙｅｓ”の場合）、処理はステップＳ５５に進み、その閾値以下である場合（ステップＳ５４で“Ｎｏ”の場合）、処理はステップＳ５６に進む。
【０１９３】
次いで、ステップＳ５５では、データ割振部１４Ｄは、タイムコードＴｃ＝Ｔ（ｓｗ）のフレームを含む区間をハードウェア・エンコーダ１５１に割り振る。そして、処理はステップＳ８に進む。
【０１９４】
一方、ステップＳ５６では、データ割振部１４Ｄは、タイムコードＴｃ＝Ｔ（ｓｗ）のフレームを含む区間をソフトウェア・エンコーダ１５２に割り振る。そして、処理はステップＳ８に進む。
【０１９５】
次いで、ステップＳ８では、切換位置検出部１８は切換位置の番号ｓｗを“１”だけ増やして、次の切換位置Ｔ（ｓｗ）を検出対象に設定する。そして、処理はステップＳ３から繰り返される。
【０１９６】
実施形態７に係る符号化装置は、実施形態１に係る符号化装置と同様に、切換位置検出部１８によって割り振り先の切換位置を、編集情報から検出する。編集部１３が、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４ＤがＣＰＵ１０の使用率に応じて、いずれかの切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列して、ＡＶデータの符号化処理を行う。この符号化装置では、実施形態１による符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態７に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０１９７】
実施形態７に係る符号化装置は更に、編集部１３が切換位置のＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むごとに、データ割振部１４Ｄによる割り振り処理を所定時間停止させ、ＣＰＵ負荷検出部２３によってＣＰＵ１０の使用率を計測する。データ割振部１４ＤはそのときのＣＰＵ１０の使用率に応じて、その切換位置から始まるＡＶデータの区間の割り振り先を決める。それにより、ソフトウェア・エンコーダ１５２が、ＣＰＵ１０に過大な負荷をかけることなく、ＡＶデータの符号化処理を行う。その結果、この符号化装置はその全体による符号化処理を、ハードウェア・エンコーダ１５１のみによる符号化処理よりも高速にできる。
【０１９８】
《実施形態８》
図２０は、本発明の実施形態８による編集部１３Ｅと符号化部１１Ｅとのブロック図である。図２０を参照するに、符号化部１１Ｅは、データ割振部１４Ｅ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、および、切換位置検出部１８Ｅを含む。符号化部１１Ｅは、データ割振部１４Ｅと切換位置検出部１８Ｅとを除き、図３に示されている要素と同様な要素を含む。図２０ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、編集部１３Ｅ、データ割振部１４Ｅ、および、切換位置検出部１８Ｅの各動作は、図３に示されている編集部１３、データ割振部１４、および、切換位置検出部１８の各動作と同様な部分を含む。従って、以下、編集部１３Ｅ、データ割振部１４Ｅ、および、切換位置検出部１８Ｅについては、図３に示されている編集部１３、データ割振部１４、および、切換位置検出部１８とは異なる部分を説明し、同様な部分の詳細については、図３に示されている編集部１３、データ割振部１４、および、切換位置検出部１８についての説明を援用する。
【０１９９】
図２０を参照するに、編集部１３Ｅは切換位置検出部１８Ｅから区間情報を受け取る。ここで、区間情報は、編集情報から検出された切換位置を示すデータを含む。編集部１３Ｅは、その区間情報に基づいて、符号化対象のＡＶデータを切換位置で区切って複数の区間に分け、それらの区間を、先頭から後尾に向かって出力すると共に、後尾から先頭に向かっても出力する。但し、各区間内では、編集されたＡＶデータはタイムライン方向の順に出力される。以下、先頭から後尾に向かって出力される区間群を第１区間群とし、後尾から先頭に向かって出力される区間群を第２区間群とする。編集部１３Ｅは、一つの区間を出力し終えるごとに、まだ出力されていない区間の一つを第１区間群または第２区間群に追加してその区間の出力を開始する。具体的には、編集部１３Ｅは、第１区間群の後尾に位置する区間を出力し終えたときは、その次の区間がまだ出力されていなければ、その区間を第１区間群の後尾に追加して出力する。一方、編集部１３Ｅは、第２区間群の先頭に位置する区間を出力し終えたときは、その直前の区間がまだ出力されていなければ、その区間を第２区間群の先頭に追加して出力する。
【０２００】
編集部１３Ｅは更に、第１区間群の後尾の区間と第２区間群の先頭の区間との各データ単位を交互に所定の割合で入力バッファ領域ＢＩに書き込む。例えば、データ単位が１フレームであり、その割合が２：１である場合、編集部１３Ｅは、第１区間群の後尾の区間から二枚のフレームを連続して出力するごとに、第２区間群の先頭の区間から一枚のフレームを出力する。そして、入力バッファ領域ＢＩにはまだ出力されていないデータ単位を含む区間が残り一つになった時点からは、編集部１３Ｅはその区間の残りのデータ単位を連続して出力する。
【０２０１】
データ割振部１４Ｅは、編集部１３Ｅによって入力バッファ領域ＢＩに書き込まれたＡＶデータを所定のデータ単位数の割合で両エンコーダ１５１、１５２に交互に供給する。その割合は、編集部１３Ｅが入力バッファ領域ＢＩに、第１区間群の後尾の区間と第２区間群の先頭の区間とを交互に書き込むときのデータ単位数の割合と等しい。例えば、データ単位が１フレームであり、その割合が２：１である場合、データ割振部１４Ｅは、入力バッファ領域ＢＩから二枚のフレームを連続してハードウェア・エンコーダ１５１に供給するごとに、一枚のフレームをソフトウェア・エンコーダ１５２に供給する。その後、切換位置検出部１８Ｅから検出信号を受けるまで、データ割振部１４Ｅはその割り振り動作を繰り返す。
【０２０２】
一方、データ割振部１４Ｅは、入力バッファ領域ＢＩに書き込まれたデータ単位からタイムコードを読み取って切換位置検出部１８Ｅに渡す。そのタイムコードに応じて切換位置検出部１８Ｅから検出信号を受けた場合、データ割振部１４Ｅは、そのデータ単位の割り振り先とは別のエンコーダに、そのデータ単位より後に入力バッファ領域ＢＩに書き込まれるデータ単位を全て供給する。なお、検出信号は後述のとおり、編集部１３Ｅからまだ出力されていないデータ単位を含む区間が残り一つになったことを示す。
【０２０３】
切換位置検出部１８Ｅは、編集情報から検出された切換位置を区間情報として編集部１３Ｅに通知する。一方、切換位置検出部１８Ｅは、第１区間群の後尾に位置する区間の番号を、符号化対象のＡＶデータ全体の先頭に位置する区間の番号１に初期化し、その番号１の区間の後尾に位置するデータ単位のタイムコード、すなわち、最初の切換位置の直前に位置するデータ単位のタイムコードを第１タイムコードとして設定する。切換位置検出部１８Ｅは更に、第２区間群の先頭に位置する区間の番号を、符号化対象のＡＶデータ全体の後尾に位置する区間の番号、すなわち区間の総数に初期化し、その番号の区間の後尾に位置するデータ単位のタイムコードを第２タイムコードとして設定する。
【０２０４】
切換位置検出部１８Ｅは、データ割振部１４Ｅからタイムコードを受け取るごとに、第１タイムコードと第２タイムコードとを更新すべきか否か、および、検出信号を出力すべきか否かを次のように判断する。
【０２０５】
切換位置検出部１８Ｅはデータ割振部１４Ｅからのタイムコードを、まず、第１タイムコードと比較する。データ割振部１４Ｅからのタイムコードが第１タイムコードより小さい場合、切換位置検出部１８Ｅは検出信号を出力しない。
【０２０６】
データ割振部１４Ｅからのタイムコードが第１タイムコードに一致した場合、切換位置検出部１８Ｅは更に、所定のフラグの値を確認する。ここで、後述のように、編集部１３Ｅからまだ出力されていないデータ単位を含む区間が残り一つになったとき、切換位置検出部１８Ｅはそのフラグを立てる。従って、そのフラグが既に立っている場合、切換位置検出部１８Ｅは検出信号を出力しない。なお、この場合、データ割振部１４Ｅからのタイムコードは、編集部１３Ｅによって入力バッファ領域ＢＩに最後に書き込まれたデータ単位のタイムコードである。一方、そのフラグがまだ立っていない場合、切換位置検出部１８Ｅは、第１区間群の後尾の区間の番号を“１”だけ増やし、第１タイムコードを、第１区間群の直後に位置する区間の後尾のデータ単位のタイムコードに更新する。切換位置検出部１８Ｅは続いて、更新された第１区間群の後尾の区間の番号を第２区間群の先頭の区間の番号と比較する。前者の番号が後者の番号より小さい場合、切換位置検出部１８Ｅは検出信号を出力しない。前者の番号が後者の番号に一致した場合、それは、編集部１３Ｅからまだ出力されていないデータ単位を含む区間が残り一つであることを意味するので、切換位置検出部１８Ｅはデータ割振部１４Ｅに検出信号を出力すると共に、上記のフラグを立てる。なお、この場合、編集部１３Ｅが第１区間群の後尾の区間を全て出力し終えたときに、その区間の直後に位置する区間が既に、第２区間群の先頭に位置する区間として出力され始めている。
【０２０７】
データ割振部１４Ｅからのタイムコードが第１タイムコードより大きい場合、切換位置検出部１８Ｅはデータ割振部１４Ｅからのタイムコードを第２タイムコードと比較する。データ割振部１４Ｅからのタイムコードが第２タイムコードより小さい場合、切換位置検出部１８Ｅは検出信号を出力しない。データ割振部１４Ｅからのタイムコードが第２タイムコードに一致した場合、切換位置検出部１８Ｅは更に、第２区間群の先頭の区間の番号を“１”だけ減らし、第２タイムコードを、第２区間群の直前に位置する区間の後尾のデータ単位のタイムコードに更新する。切換位置検出部１８Ｅは続いて、更新された第２区間群の先頭の区間の番号を第１区間群の後尾の区間の番号と比較する。前者の番号が後者の番号より大きい場合、切換位置検出部１８Ｅは検出信号を出力しない。前者の番号が後者の番号に一致した場合、それは、編集部１３Ｅからまだ出力されていないデータ単位を含む区間が残り一つであることを意味するので、切換位置検出部１８Ｅはデータ割振部１４Ｅに検出信号を出力すると共に、上記のフラグを立てる。なお、この場合、編集部１３Ｅが第２区間群の先頭の区間を全て出力し終えたときに、その区間の直前に位置する区間が既に、第１区間群の後尾の区間として出力され始めている。
【０２０８】
以上の構成により、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との一方が符号化対象のＡＶデータを先頭から後尾へ向かって符号化し、それと並行して、他方が後尾から先頭に向かって符号化する。
【０２０９】
なお、切換位置検出部１８Ｅは、実施形態５に係る切換位置検出部１８Ｂと同様に、ＡＶデータの各区間の長さに応じて、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とが並列して符号化する各区間について、単位時間当たりに各エンコーダ１５１、１５２に供給されるべきデータ単位数の割合を変更してもよい。すなわち、切換位置検出部１８Ｅはその割合を、先頭の区間と後尾の区間との組み合わせのように、第１区間群と第２区間群とで並列に符号化され得る二つの区間の組み合わせごとに変更してもよい。その場合、切換位置検出部１８Ｅはそれらの割合を区間情報の一部として編集部１３Ｅに渡す。編集部１３Ｅは、第１区間群と第２区間群とのデータ単位を交互に、区間情報の示す割合で出力する。一方、切換位置検出部１８Ｅは、データ割振部１４Ｅからのタイムコードが各切換位置のタイムコードと一致するごとに、その切換位置の直前または直後の区間に対して設定された上記の割合をデータ割振部１４Ｅに通知する。それにより、第１区間群と第２区間群とのそれぞれの全体が同じエンコーダで符号化されるようにできる。
【０２１０】
切換位置検出部１８Ｅはまた、実施形態６に係る切換位置検出部１８Ｃと同様に、ＣＰＵ負荷推定部１８４を含んでもよい。それにより、切換位置検出部１８Ｅは、編集部１３Ｅによる編集処理に先立ち、符号化対象のＡＶデータの先頭と後尾とのそれぞれに位置する区間について、編集処理に対するＣＰＵ１０の負荷を編集情報から予測する。切換位置検出部１８Ｅは更に、予測されたＣＰＵ１０の負荷を先頭の区間と後尾の区間との間で比較する。後尾の区間よりも先頭の区間について予測されたＣＰＵ１０の負荷が重い場合、切換位置検出部１８Ｅはデータ割振部１４Ｅに第１区間群をハードウェア・エンコーダ１５１に割り振らせる。逆に、後尾の区間よりも先頭の区間について予測されたＣＰＵ１０の負荷が軽い場合、切換位置検出部１８Ｅはデータ割振部１４Ｅに第１区間群をソフトウェア・エンコーダ１５２に割り振らせる。
【０２１１】
その他に、編集部１３Ｅは第１区間群と第２区間群とを区間単位で交互に出力してもよい。その場合、データ割振部１４Ｅからのタイムコードが、各切換位置の直前、すなわち、各区間の後尾に位置するデータ単位のタイムコードに一致するごとに、切換位置検出部１８Ｅは検出信号を出力する。一方、データ割振部１４Ｅは、図３に示されているデータ割振部１４と同様に、検出信号を受けるごとに、入力バッファ領域ＢＩに次に書き込まれるデータ単位からその割り振り先を切り換える。
【０２１２】
図２１は、図２０に示されている符号化部１１ＥによるＡＶデータの割り振り処理のフローチャートである。以下、図２１を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図２１は、図５に示されているステップと同様なステップを含む。従って、図２１ではそれら同様なステップに対して、図５に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５についての説明を援用する。
【０２１３】
例えば、編集部１３Ｅによって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０２１４】
最初に、ステップＳ１では、切換位置検出部１８Ｅが、符号化対象のＡＶデータに関する編集情報から割り振り先の切換位置を検出する。切換位置検出部１８Ｅは更に、検出されたｓｗ番目（ｓｗ＝１、２、３、…）の切換位置の直前に位置するフレーム、すなわち、ｓｗ番目の区間の後尾に位置するフレームのタイムコードＴ（ｓｗ）を記憶する。
【０２１５】
次いで、ステップＳ６１では、切換位置検出部１８Ｅは、検出された切換位置を示す区間情報を編集部１３Ｅに渡す。
【０２１６】
次いで、ステップＳ６２では、切換位置検出部１８Ｅは、第１区間群の後尾に位置する区間の番号ｓｗ１を１に初期化し、第２区間群の先頭に位置する区間の番号ｓｗ２を区間の総数に初期化する。それにより、第１タイムコードＴ（ｓｗ１）が、符号化対象のＡＶデータ全体の先頭に位置する区間の後尾のフレームのタイムコードＴ（１）に初期化され、第２タイムコードＴ（ｓｗ２）が、そのＡＶデータ全体の後尾に位置するフレームのタイムコードに初期化される。切換位置検出部１８Ｅは更に、第１区間群の割り振り先と第２区間群の割り振り先とを決めてデータ割振部１４Ｅに通知する。以下の説明の便宜上、第１区間群の割り振り先をハードウェア・エンコーダ１５１とし、第２区間群の割り振り先をソフトウェア・エンコーダ１５２とする。なお、割り振り先がその逆に設定された場合にも以下の説明は同様に当てはまる。
【０２１７】
次いで、ステップＳ６３では、編集部１３Ｅが、編集されたＡＶデータの第１区間群と第２区間群との各フレームを交互に所定の割合でメモリ部２０の入力バッファ領域ＢＩに書き込む。一方、データ割振部１４Ｅは、入力バッファ領域ＢＩに書き込まれたフレームを同じ割合で両エンコーダ１５１、１５２に交互に割り振る。それにより、第１区間群はハードウェア・エンコーダ１５１に割り振られ、第２区間群はソフトウェア・エンコーダ１５２に割り振られる。
【０２１８】
次いで、ステップＳ４では、編集部１３Ｅが入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＥはそのフレームからタイムコードＴｃを読み取って切換位置検出部１８Ｅに渡す。
【０２１９】
次いで、ステップＳ６４では、切換位置検出部１８Ｅはデータ割振部１４ＥからのタイムコードＴｃを第１タイムコードＴ（ｓｗ１）と比較する。データ割振部１４ＥからのタイムコードＴｃが第１タイムコードＴ（ｓｗ１）より小さい場合（ステップＳ６４で“＜”の場合）、処理がステップＳ６３に戻る。その場合、タイムコードＴｃのフレームは第１区間群の割り振り先、すなわち、ハードウェア・エンコーダ１５１に割り振られる。両タイムコードＴｃ、Ｔ（ｓｗ１）が一致した場合（ステップＳ６４で“＝”の場合）、処理がステップＳ６５に進む。その場合、タイムコードＴｃのフレームは第１区間群の割り振り先、すなわち、ハードウェア・エンコーダ１５１に割り振られる。データ割振部１４ＥからのタイムコードＴｃが第１タイムコードＴ（ｓｗ１）より大きい場合（ステップＳ６４で“＞”の場合）、処理がステップＳ６９に進む。その場合、タイムコードＴｃのフレームは第２区間群の割り振り先、すなわち、ソフトウェア・エンコーダ１５２に割り振られる。
【０２２０】
次いで、ステップＳ６５では、切換位置検出部１８Ｅはフラグの値をチェックする。そのフラグが立っていない場合（ステップＳ６５で“Ｎｏ”の場合）、処理がステップＳ６６に進む。一方、そのフラグが立っている場合（ステップＳ６５で“Ｙｅｓ”の場合）、タイムコードＴｃのフレームが編集部１３Ｅによって入力バッファ領域ＢＩに最後に書き込まれたフレームである。従って、そのフレームが、その時点で割り振り先として決められているエンコーダに割り振られ、その後、処理が終了する。
【０２２１】
次いで、ステップＳ６６では、切換位置検出部１８Ｅは、第１区間群の後尾に位置する区間の番号ｓｗ１を“１”だけ増やす。それにより、第１タイムコードＴ（ｓｗ１）が、第１区間群の直後に位置する区間の後尾のフレームのタイムコードに更新される。
【０２２２】
次いで、ステップＳ６７では、切換位置検出部１８Ｅは、第１区間群の後尾に位置する区間の番号ｓｗ１を、第２区間群の先頭に位置する区間の番号ｓｗ２と比較する。前者の番号ｓｗ１が後者の番号ｓｗ２に一致しない場合、つまりｓｗ１がｓｗ２よりも小さい場合（ステップＳ６７で“Ｎｏ”の場合）、処理がステップＳ６３に戻る。両者の番号ｓｗ１、ｓｗ２が一致した場合（ステップＳ６７で“Ｙｅｓ”の場合）、処理がステップＳ６８に進む。
【０２２３】
次いで、ステップＳ６８では、切換位置検出部１８Ｅはデータ割振部１４Ｅに検出信号を出力し、上記のフラグを立てる。その後、処理はステップＳ６３に戻る。
【０２２４】
一方、ステップＳ６９では、切換位置検出部１８Ｅはデータ割振部１４ＥからのタイムコードＴｃを第２タイムコードＴ（ｓｗ２）と比較する。データ割振部１４ＥからのタイムコードＴｃが第２タイムコードＴ（ｓｗ２）より小さい場合（ステップＳ６９で“Ｎｏ”の場合）、処理がステップＳ６３に戻る。両タイムコードＴｃ、Ｔ（ｓｗ２）が一致した場合（ステップＳ６９で“Ｙｅｓ”の場合）、処理がステップＳ７０に進む。
【０２２５】
次いで、ステップＳ７０では、切換位置検出部１８Ｅは、第２区間群の先頭の区間の番号ｓｗ２を“１”だけ減らす。それにより、第２タイムコードＴ（ｓｗ２）が、第２区間群の直前に位置する区間の後尾のフレームのタイムコードに更新される。その後、処理はステップＳ６７に進む。
【０２２６】
実施形態８に係る符号化装置では、実施形態１に係る符号化装置と同様に、切換位置検出部１８Ｅによって割り振り先の切換位置を、編集情報から検出する。編集部１３Ｅが、切換位置で区切られたＡＶデータの複数の区間を、先頭から後尾に向かって出力すると共に、後尾から先頭に向かっても出力する。編集部１３Ｅが、先頭から後尾に向かって出力される第１区間群と、後尾から先頭に向かって出力される第２区間群とを交互に所定のデータ単位数の割合でメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４Ｅが、その書き込まれたＡＶデータを同じデータ単位数の割合でハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とに交互に供給する。それにより、両エンコーダ１５１、１５２の一方が、ＡＶデータの第１区間群の符号化処理を行い、それに並行して、他方が第２区間群の符号化処理を行う。その結果、データ割振部１４ＥがそのＡＶデータの割り振り先を、第１区間群と第２区間群との間の境界の切換位置で両エンコーダ１５１、１５２の一方から他方に切り換えたことになる。従って、この符号化装置では、実施形態１による符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。それ故、実施形態８に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その画質を均一にできる。
【０２２７】
実施形態８に係る符号化装置は、符号化対象のＡＶデータを、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２の一方には先頭から後尾に向かって供給し、それに並行して、他方には後尾から先頭に向かって供給する。それにより、この符号化装置は、各エンコーダ１５１、１５２が符号化対象のデータ単位の入力を待つ時間を短縮しつつ、またはその時間の発生を抑制しつつ、両エンコーダ１５１、１５２による符号化処理を並行させることができる。その結果、この符号化装置はその全体による符号化処理を、ハードウェア・エンコーダ１５１のみによる符号化処理よりも高速にできる。
【０２２８】
《実施形態９》
図２２は、本発明の実施形態９による編集部１３Ｆと符号化部１１Ｆとのブロック図である。図２２を参照するに、符号化部１１Ｆは、データ割振部１４Ｆ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、切換位置検出部１８Ｆ、および、バッファ２１を含む。符号化部１１Ｆは、データ割振部１４Ｆ、切換位置検出部１８Ｆ、および、バッファ２１を除き、図３に示されている要素と同様な要素を含む。図２２ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、編集部１３Ｆ、データ割振部１４Ｆ、および、切換位置検出部１８Ｆの各動作は、図３に示されている編集部１３、データ割振部１４、および、切換位置検出部１８の各動作と同様な部分を含む。従って、以下、編集部１３Ｆ、データ割振部１４Ｆ、切換位置検出部１８Ｆについては、図３に示されている編集部１３、データ割振部１４、切換位置検出部１８とは異なる部分を説明し、同様な部分の詳細については、図３に示されている編集部１３、データ割振部１４、切換位置検出部１８についての説明を援用する。
【０２２９】
図２２では、バッファ２１は、データ割振部１４Ｆとハードウェア・エンコーダ１５１との間に配置されている。バッファ２１はハードウェア・エンコーダ８０に内蔵のフレーム・バッファ、例えば、図２に示されているフレーム・バッファ８３の記憶領域を表す。その場合、バッファ２１の容量は例えば数フレームである。バッファ２１はその他にメモリ部２０内の記憶領域であってもよい。その場合、バッファ２１の容量は例えば数十フレームである。
【０２３０】
データ割振部１４Ｆは、ハードウェア・エンコーダ１５１に割り振ったＡＶデータを逐次、バッファ２１に転送する。ハードウェア・エンコーダ１５１はバッファ２１の先頭アドレスから順にＡＶデータを所定のデータ単位ずつ、例えば１フレームずつ符号化する。
【０２３１】
編集部１３Ｆは、図４に示されているタイムラインウィンドウＴＷ内のクリップＣＬ１〜ＣＬ８のうち、ユーザによって指定された範囲の割り振り先を、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２の一方に固定することをユーザに設定させることができる。例えば、画質をできる限り均一に維持すべきＡＶデータの範囲が、割り振り先を両エンコーダ１５１、１５２の一方に固定すべき区間、すなわち固定区間として設定される。固定区間は同じエンコーダによって符号化されるので、その画質が均一化される。編集部１３Ｆは更に、ＡＶデータの固定区間、および、各固定区間における割り振り先のエンコーダ１５１、１５２を示す情報を、編集情報の一部として切換位置検出部１８Ｆに供給する。
【０２３２】
編集部１３Ｆはまた、図４に示されているタイムラインウィンドウＴＷ内のクリップＣＬ１〜ＣＬ８のうち、ユーザによって指定された範囲の割り振り先を、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２の両方に自由に切換可能にすることをユーザに設定させることができる。例えば、画質の均一化よりも、両エンコーダ１５１、１５２が並列して符号化処理を行うことによる符号化処理の高速化を優先させるべきＡＶデータの範囲が、割り振り先を両エンコーダ１５１、１５２に自由に切換可能な区間、すなわち切換自由区間として設定される。切換自由区間は、切換位置の間隔よりも細かく両エンコーダ１５１、１５２に割り振られるので、その区間の符号化処理が高速化される。編集部１３Ｆは、ＡＶデータの切換自由区間を示す情報を、編集情報の一部として切換位置検出部１８Ｆに供給する。
【０２３３】
切換位置検出部１８Ｆは、編集部１３Ｆから編集情報を取得し、まず、その編集情報から、符号化対象のＡＶデータの固定区間および切換自由区間を検出する。切換位置検出部１８Ｆは次に、そのＡＶデータの固定区間でも切換自由区間でもない区間に関する編集情報から割り振り先の切換位置を、図３に示されている実施形態１に係る切換位置検出部１８と同様に検出する。
【０２３４】
切換位置検出部１８Ｆはデータ割振部１４Ｆからタイムコードを受け取るごとに、まず、そのタイムコードの示す位置が固定区間内または切換自由区間内であるか否かを判別する。そのタイムコードの示す位置が固定区間内または切換自由区間内である場合、切換位置検出部１８Ｆはデータ割振部１４Ｆにその旨を通知する。一方、そのタイムコードの示す位置が固定区間外および切換自由区間外である場合、切換位置検出部１８Ｆは、図３に示されている切換位置検出部１８と同様に、そのタイムコードがいずれかの切換位置のタイムコードに一致するごとに、データ割振部１４Ｆに検出信号を出力する。
【０２３５】
データ割振部１４Ｆは、編集部１３Ｆが符号化対象のデータ単位をメモリ部２０内の入力バッファ領域ＢＩに書き込むごとに、そのデータ単位からタイムコードを読み取って切換位置検出部１８Ｆに渡す。
【０２３６】
そのタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が固定区間内であることを通知された場合、データ割振部１４Ｆはそのタイムコードのデータ単位を、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのうち、割り振り先として固定された方に供給する。
【０２３７】
そのタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が切換自由区間内であることを通知された場合、データ割振部１４Ｆは、まずバッファ２１から空き情報を読み出し、その空き情報からバッファ２１の空き領域のサイズ、例えば空いているフレーム・バッファの数を確認する。そのサイズが所定の閾値、例えば１フレームを超えている場合、データ割振部１４Ｆは、そのタイムコードのデータ単位をハードウェア・エンコーダ１５１に割り振る。一方、バッファ２１の空き領域のサイズが所定の閾値以下、例えば１フレーム以下まで減っていた場合、データ割振部１４Ｆは、そのタイムコードのデータ単位をソフトウェア・エンコーダ１５２に割り振る。
【０２３８】
そのタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が固定区間内であることも、切換自由区間内であることも通知されなかった場合、データ割振部１４Ｆは、図３に示されているデータ割振部１４と同様に動作する。すなわち、切換位置検出部１８Ｆから更に検出信号を受けた場合、データ割振部１４Ｆはそのタイムコード以降のデータ単位の割り振り先を、そのタイムコードの直前のデータ単位の割り振り先とは別のエンコーダに切り換える。
【０２３９】
図２３および図２４は、図２２に示されている符号化部１１ＦによるＡＶデータの割り振り処理のフローチャートである。以下、図２３および図２４を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図２３および図２４は、図５に示されているステップと同様なステップを含む。従って、図２３および図２４ではそれら同様なステップに対して、図５に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５についての説明を援用する。
【０２４０】
例えば、編集部１３Ｆによって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０２４１】
最初に、ステップＳ１では、切換位置検出部１８Ｆが、符号化対象のＡＶデータに関する編集情報から固定区間および切換自由区間を検出し、固定区間でも切換自由区間でもない区間に関する編集情報から割り振り先の切換位置を検出する。切換位置検出部１８Ｆは更に、各固定区間および各切換自由区間の範囲を示すタイムコード、および、各切換位置を示すタイムコードＴ（ｓｗ）を記憶する。
【０２４２】
図２５は、図２３に示されているステップＳ１における、固定区間、切換自由区間、および、切換位置の検出処理のフローチャートである。以下、図２５を参照しながら、それらの検出処理を説明する。
【０２４３】
最初に、ステップＳ１１では、切換位置検出部１８Ｆは編集部１３Ｆから編集情報を取得して、先頭のクリップに関するものから順に調べる。
【０２４４】
次いで、ステップＳ１０１では、切換位置検出部１８Ｆは編集情報に基づいて、各クリップが固定区間内にあるか否かを判定する。そのクリップが固定区間内にある場合（ステップＳ１０１で“Ｙｅｓ”の場合）、処理がステップＳ１０２に進み、固定区間内にはない場合（ステップＳ１０１で“Ｎｏ”の場合）、処理がステップＳ１０３に進む。
【０２４５】
ステップＳ１０２では、切換位置検出部１８Ｆはそのクリップのタイムコードの範囲を、固定区間を示すタイムコードの範囲に加える。そして、処理がステップＳ１３に進む。
【０２４６】
一方、ステップＳ１０３では、切換位置検出部１８Ｆは編集情報に基づいて、そのクリップが切換自由区間内にあるか否かを判定する。そのクリップが切換自由区間内にある場合（ステップＳ１０３で“Ｙｅｓ”の場合）、処理がステップＳ１０４に進み、切換自由区間内にはない場合（ステップＳ１０３で“Ｎｏ”の場合）、処理がステップＳ１２に進む。
【０２４７】
ステップＳ１０４では、切換位置検出部１８Ｆはそのクリップのタイムコードの範囲を、切換自由区間を示すタイムコードの範囲に加える。そして、処理がステップＳ１３に進む。
【０２４８】
次いで、ステップＳ１２では、切換位置検出部１８Ｆは、まず、クリップ間の境界の位置、および、クリップ間での編集処理の種類の変更パターンの少なくともいずれかを調べる。タイムライン上に並列に配置されたクリップが一斉に終了して別のクリップに切り替わっている場合、および／または、編集処理の種類の変更パターンが所定のパターンである場合、切換位置検出部１８Ｆは、対応するクリップ間の境界を割り振り先の切換位置として検出する。
【０２４９】
次いで、ステップＳ１３では、切換位置検出部１８Ｆは、編集情報をＡＶデータの後尾のフレームまで調べたか否かを判定する。後尾のフレームまでは調べていない場合（ステップＳ１３で“Ｎｏ”の場合）、処理がステップＳ１０１から繰り返され、後尾のフレームまで調べ終えた場合（ステップＳ１３で“Ｙｅｓ”の場合）、処理が、図２３に示されているステップＳ２に進む。
【０２５０】
図２３に戻り、ステップＳ２では、切換位置検出部１８Ｆは検出対象の切換位置の番号ｓｗを１に初期化する。一方、データ割振部１４Ｆは、符号化対象のＡＶデータの先頭フレームの割り振り先をハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに決める。特に、先頭フレームが固定区間内であるときは、その割り振り先がその固定区間で固定されたエンコーダに設定され、先頭フレームが切換自由区間内であるときは、その割り振り先がハードウェア・エンコーダ１５１に設定される。
【０２５１】
次いで、ステップＳ３では、編集部１３Ｆが、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【０２５２】
次いで、ステップＳ４では、編集部１３Ｆが入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＦがそのフレームからタイムコードＴｃを読み取って切換位置検出部１８Ｆに渡す。
【０２５３】
次いで、ステップＳ９では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが固定区間内であるか否かを判定する。そのフレームが固定区間内である場合（ステップＳ９で“Ｙｅｓ”の場合）、処理がステップＳ９Ａに進む。一方、そのフレームが固定区間内ではない場合（ステップＳ９で“Ｎｏ”の場合）、処理がステップＳ１０に進む。
【０２５４】
次いで、ステップＳ９Ａでは、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが固定区間内であることをデータ割振部１４Ｆに通知する。それにより、データ割振部１４ＦはそのタイムコードＴｃのフレームの割り振り先を、その固定区間で固定されたエンコーダに設定する。そして、処理がステップＳ３から繰り返される。
【０２５５】
一方、ステップＳ１０では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内であるか否かを判定する。そのフレームが切換自由区間内ではない場合（ステップＳ１０で“Ｎｏ”の場合）、処理がステップＳ１０Ａに進む。一方、そのフレームが切換自由区間内である場合（ステップＳ１０で“Ｙｅｓ”の場合）、処理がステップＳ７１に進む。
【０２５６】
次いで、ステップＳ１０Ａでは、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内ではないことをデータ割振部１４Ｆに通知する。それにより、処理が、図２４に示されているステップＳ５〜Ｓ８の順に進む。ここで、図２４に示されているステップＳ５〜Ｓ８はいずれも、図５に示されているステップＳ５〜Ｓ８と全く同様である。従って、それらのステップＳ５〜Ｓ８の詳細については、図５についての説明を援用する。ステップＳ８の後、処理はステップＳ３から繰り返される。
【０２５７】
一方、ステップＳ７１では、データ割振部１４Ｆはバッファ２１の空き情報から、空いているフレーム・バッファの数が所定の閾値よりも多いか否かを判定する。空いているフレーム・バッファの数がその閾値よりも多い場合（ステップＳ７１で“Ｙｅｓ”の場合）、処理がステップＳ７２に進む。空いているフレーム・バッファの数がその閾値以下である場合（ステップＳ７１で“Ｎｏ”の場合）、処理がステップＳ７３に進む。
【０２５８】
ステップＳ７２では、データ割振部１４ＦはタイムコードＴｃのフレームをハードウェア・エンコーダ１５１に割り振り、そのフレームをバッファ２１に転送する。そして、処理はステップＳ７４に進む。
【０２５９】
一方、ステップＳ７３では、データ割振部１４ＦはタイムコードＴｃのフレームをソフトウェア・エンコーダ１５２に割り振る。そして、処理はステップＳ７４に進む。
【０２６０】
次いで、ステップＳ７４では、データ割振部１４Ｆは、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームではない場合（ステップＳ７４で“Ｎｏ”の場合）、処理がステップＳ３から繰り返され、後尾のフレームである場合（ステップＳ７４で“Ｙｅｓ”の場合）、処理が終了する。
【０２６１】
実施形態９に係る符号化装置は、符号化対象のＡＶデータについて固定区間と切換自由区間とをユーザに設定させることができる。この符号化装置は、固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、切換位置検出部１８Ｆによって割り振り先の切換位置を、編集情報から検出する。編集部１３Ｆが、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４Ｆが各切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２の一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列してＡＶデータの符号化処理を行う。この符号化装置では、固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態９に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その部分の画質を均一にできる。
【０２６２】
実施形態９に係る符号化装置は更に、符号化対象のＡＶデータの切換自由区間については、バッファ２１の空き領域が閾値以下まで減った場合、データ割振部１４Ｆにより、そのＡＶデータの一部を、切換位置に拘らず、ソフトウェア・エンコーダ１５２に割り振る。それにより、ハードウェア・エンコーダ１５１による符号化処理を常に継続しつつ、ソフトウェア・エンコーダ１５２による符号化処理を並列して実行できる。このようにして、この符号化装置はその全体の符号化処理を、ハードウェア・エンコーダ１５１のみによる符号化処理よりも高速にできる。
【０２６３】
《実施形態１０》
図２６は、本発明の実施形態１０による編集部１３Ｆと符号化部１１Ｇとのブロック図である。図２６を参照するに、符号化部１１Ｇは、データ割振部１４Ｇ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、切換位置検出部１８Ｆ、ＣＰＵ負荷検出部２３、割り振り割合設定部２４、および、第２データベース２５を含む。符号化部１１Ｇは、データ割振部１４Ｇ、切換位置検出部１８Ｆ、ＣＰＵ負荷検出部２３、割り振り割合設定部２４、および、第２データベース２５を除き、図３に示されている要素と同様な要素を含む。図２６ではそれら同様な要素に対し、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、データ割振部１４Ｇの動作は、図３に示されているデータ割振部１４の動作と同様な部分を含む。従って、以下、データ割振部１４Ｇの動作については、図３に示されているデータ割振部１４の動作とは異なる部分を説明し、同様な部分の詳細については、図３に示されているデータ割振部１４についての説明を援用する。一方、編集部１３Ｆと切換位置検出部１８Ｆとは、図２２に示されている編集部１３Ｆと切換位置検出部１８Ｆと全く同様に動作する。従って、編集部１３Ｆと切換位置検出部１８Ｆとの詳細については、図２２に示されている編集部１３Ｆと切換位置検出部１８Ｆとについての説明を援用する。
【０２６４】
ＣＰＵ負荷検出部２３は、ＣＰＵ１０が所定のプログラムに従ってコンピュータ端末の他の要素を制御することによって機能する。ＣＰＵ負荷検出部２３はコンピュータ端末のＯＳ２７の提供するＡＰＩを利用してＣＰＵ１０の使用率を所定の時間間隔で計測する。ＣＰＵ負荷検出部２３は更に、ＣＰＵ１０の使用率からその負荷を評価し、リアルタイムに割り振り割合設定部２４に通知する。例えばＣＰＵ負荷検出部２３は、ＣＰＵ１０の使用率の値が取り得る全範囲０〜１００％を数段階に分け、計測された使用率がいずれの段階に属するかでＣＰＵ１０の負荷を評価する。計測されたＣＰＵ１０の使用率の属する段階が変わったとき、ＣＰＵ負荷検出部２３はその変化を、変化後の段階の種類と共に、割り振り割合設定部２４に通知する。例えば、ＣＰＵ１０の使用率の段階を、０〜２０％、２０〜８０％、８０〜１００％の３段階に分けた場合を考える。計測されたＣＰＵ１０の使用率が第１段階０〜２０％から第２段階２０〜８０％に変わったときに、ＣＰＵ負荷検出部２３は、その変化が生じたことと、その変化後の段階が第２段階２０〜８０％であることとを共に、割り振り割合設定部２４に通知する。
【０２６５】
割り振り割合設定部２４は、ＣＰＵ１０が所定のプログラムに従ってコンピュータ端末の他の要素を制御することによって機能する。割り振り割合設定部２４はデータ割振部１４Ｇから所定の信号を受けたとき、ＣＰＵ負荷検出部２３にＣＰＵ１０の使用率の段階の変化を通知させる。ＣＰＵ負荷検出部２３から段階の変化が通知されたとき、割り振り割合設定部２４はその変化後の段階に応じて、両エンコーダ１５１、１５２に単位時間当たりに割り振るデータ単位数の割合、例えばフレーム数の比を決める。その割合はＣＰＵ１０の使用率の段階ごとに予め評価され、メモリ部２０に第２データベース２５として記憶されている。第２データベース２５では、データ単位数の割合として整数比ＨＦＩ：ＳＦＩが記憶されている。例えば、各整数比ＨＦＩ：ＳＦＩを構成する２つの整数の和ＨＦＩ＋ＳＦＩは、ＣＰＵ１０の使用率を計測する時間間隔で編集部１３Ｆによって編集されるデータ単位の総数より小さく設定されている。また、ＣＰＵ１０の使用率が高い段階ほど、ソフトウェア・エンコーダ１５２に割り振られるデータ単位数の割合が低く設定されている。すなわち、ＣＰＵ１０の負荷が重いほど、ソフトウェア・エンコーダ１５２に単位時間当たりに供給されるデータ単位数が抑えられている。割り振り割合設定部２４は、ＣＰＵ負荷検出部２３からＣＰＵ１０の使用率の段階を通知されたとき、その段階に対応するデータ単位数の割合を第２データベース２５から検索してデータ割振部１４Ｇに通知する。
【０２６６】
データ割振部１４Ｇは、編集部１３Ｆが符号化対象のデータ単位をメモリ部２０内の入力バッファ領域ＢＩに書き込むごとに、そのデータ単位からタイムコードを読み取って切換位置検出部１８Ｆに渡す。そのタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が切換自由区間内であることを通知された場合、データ割振部１４Ｇは、まず割り振り割合設定部２４に、その時点でのＣＰＵ１０の使用率の段階に対応するデータ単位数の割合を通知させる。それにより、データ割振部１４Ｇは、割り振り割合設定部２４から新たな割合が通知されるまで、そのデータ単位以降に入力バッファ領域ＢＩに書き込まれるデータ単位を、通知された割合で両エンコーダ１５１、１５２に交互に割り振る。例えばデータ単位が１フレームであり、通知されたフレーム数の比が２：１である場合、データ割振部１４Ｆは、入力バッファ領域ＢＩから二枚のフレームを連続してハードウェア・エンコーダ１５１に割り振るごとに、一枚のフレームをソフトウェア・エンコーダ１５２に割り振る。
【０２６７】
上記のタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が固定区間内であることが通知された場合、または、固定区間内であることも、切換自由区間内であることも通知されなかった場合、データ割振部１４Ｇは、図２２に示されているデータ割振部１４Ｆと同様に動作する。
【０２６８】
図２４および図２７は、図２６に示されている符号化部１１ＧによるＡＶデータの割り振り処理のフローチャートである。以下、図２７を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図２７は、図５または図２３に示されているステップと同様なステップを含む。従って、図２７ではそれら同様なステップに対して、図５または図２３に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５または図２３についての説明を援用する。
【０２６９】
例えば、編集部１３Ｆによって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０２７０】
最初に、ステップＳ１では、切換位置検出部１８Ｆが、符号化対象のＡＶデータに関する編集情報から固定区間および切換自由区間を検出し、固定区間でも切換自由区間でもない区間に関する編集情報から割り振り先の切換位置を検出する。切換位置検出部１８Ｆは更に、各固定区間および各切換自由区間の範囲を示すタイムコード、および、各切換位置を示すタイムコードＴ（ｓｗ）を記憶する。なお、ステップＳ１の詳細は、図２５に示されているフローチャートと全く同様であるので、その詳細については、実施形態９の説明中に記載された図２５の説明を援用する。
【０２７１】
ステップＳ２では、切換位置検出部１８Ｆは検出対象の切換位置の番号ｓｗを１に初期化する。一方、データ割振部１４Ｇは、符号化対象のＡＶデータの先頭フレームの割り振り先をハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに決める。
【０２７２】
次いで、ステップＳ３では、編集部１３Ｆが、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【０２７３】
次いで、ステップＳ４では、編集部１３Ｆが入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＧがそのフレームからタイムコードＴｃを読み取って切換位置検出部１８Ｆに渡す。
【０２７４】
次いで、ステップＳ９では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが固定区間内であるか否かを判定する。そのフレームが固定区間内である場合（ステップＳ９で“Ｙｅｓ”の場合）、処理がステップＳ９Ａに進む。一方、そのフレームが固定区間内ではない場合（ステップＳ９で“Ｎｏ”の場合）、処理がステップＳ１０に進む。
【０２７５】
次いで、ステップＳ９Ａでは、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが固定区間内であることをデータ割振部１４Ｇに通知する。それにより、データ割振部１４ＧはそのタイムコードＴｃのフレームの割り振り先を、その固定区間で固定されたエンコーダに設定する。そして、処理がステップＳ３から繰り返される。
【０２７６】
一方、ステップＳ１０では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内であるか否かを判定する。そのフレームが切換自由区間内ではない場合（ステップＳ１０で“Ｎｏ”の場合）、処理がステップＳ１０Ａに進む。一方、そのフレームが切換自由区間内である場合（ステップＳ１０で“Ｙｅｓ”の場合）、処理がステップＳ８０に進む。
【０２７７】
次いで、ステップＳ１０Ａでは、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内ではないことをデータ割振部１４Ｇに通知する。それにより、処理が、図２４に示されているステップＳ５〜Ｓ８の順に進む。ここで、図２４に示されているステップＳ５〜Ｓ８はいずれも、図５に示されているステップＳ５〜Ｓ８と全く同様である。従って、それらのステップＳ５〜Ｓ８の詳細については、図５についての説明を援用する。ステップＳ８の後、処理はステップＳ３から繰り返される。
【０２７８】
一方、ステップＳ８０では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内であることをデータ割振部１４Ｇに通知する。その通知に応じて、データ割振部１４Ｇは、両エンコーダ１５１、１５２に単位時間当たりに割り振るフレーム数の比を所定値に設定する。データ割振部１４Ｇは更に、割り振り割合設定部２４に所定の信号を出力する。その信号に応じて、割り振り割合設定部２４は、まず、以前ＣＰＵ負荷検出部２３にＣＰＵ１０の使用率を計測させた時点から所定時間が経過したか否かを判定する。所定時間が経過している場合（ステップＳ８０で“Ｙｅｓ”の場合）、処理がステップＳ８１に進み、経過していない場合（ステップＳ８０で“Ｎｏ”の場合）、処理がステップＳ８４に進む。
【０２７９】
次いで、ステップＳ８１では、割り振り割合設定部２４はＣＰＵ負荷検出部２３に、ＣＰＵ１０の使用率を計測させる。
【０２８０】
次いで、ステップＳ８２では、ＣＰＵ負荷検出部２３は、計測されたＣＰＵ１０の使用率の属する段階を特定し、以前の段階と同じであるか否かを判断する。段階が変わった場合（ステップＳ８２で“Ｙｅｓ”の場合）、処理がステップＳ８３に進み、段階が同じである場合（ステップＳ８２で“Ｎｏ”の場合）、処理がステップＳ８４に進む。
【０２８１】
次いで、ステップＳ８３では、ＣＰＵ負荷検出部２３は、ＣＰＵ１０の使用率の属する段階が変化したことを、変化後の段階の種類と共に、割り振り割合設定部２４に通知する。割り振り割合設定部２４は、通知された使用率の段階に対応するフレーム数の比を第２データベース２５から検索してデータ割振部１４Ｇに渡す。それにより、データ割振部１４Ｇは、ステップＳ８０で設定されたフレーム数の比をその通知された比に更新する。
【０２８２】
次いで、ステップＳ８４では、データ割振部１４ＧはタイムコードＴｃのフレームを、設定されたフレーム数の比に従って両エンコーダ１５１、１５２のいずれかに割り振る。
【０２８３】
次いで、ステップＳ８５では、データ割振部１４Ｇは、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ８５で“Ｎｏ”の場合）、処理がステップＳ３から繰り返される。一方、そのフレームが後尾のフレームである場合（ステップＳ８５で“Ｙｅｓ”の場合）、処理が終了する。
【０２８４】
実施形態１０に係る符号化装置は、符号化対象のＡＶデータについて固定区間および切換自由区間をユーザに設定させることができる。この符号化装置は、固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、切換位置検出部１８Ｆによって割り振り先の切換位置を、編集情報から検出する。編集部１３Ｆが、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４Ｇが各切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２の一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列してＡＶデータの符号化処理を行う。この符号化装置では、固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態１０に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その部分の画質を均一にできる。
【０２８５】
実施形態１０に係る符号化装置は更に、符号化対象のＡＶデータの切換自由区間については、編集部１３Ｆによってメモリ部２０内の入力バッファ領域ＢＩに書き込まれたデータ単位を、データ割振部１４Ｇにより、切換位置に拘らず、両エンコーダ１５１、１５２に所定のデータ単位数の割合で交互に供給する。この符号化装置はその上、ＣＰＵ負荷検出部２３によってＣＰＵ１０の使用率の段階をリアルタイムで計測し、割り振り割合設定部２４により、そのＣＰＵ１０の使用率の段階に応じて上記のデータ単位数の割合を設定する。その結果、両エンコーダ１５１、１５２が、ＣＰＵ１０の負荷の変動に関わらず、符号化対象のＡＶデータの入力を待つ時間を短縮させつつ、またはその時間の発生を抑制しつつ、そのＡＶデータの符号化処理を並列に実行できる。このようにして、この符号化装置はその全体の符号化処理を、ハードウェア・エンコーダ１５１のみによる符号化処理よりも高速にできる。
【０２８６】
《実施形態１１》
図２８は、本発明の実施形態１１による編集部１３Ｆと符号化部１１Ｈとのブロック図である。図２８を参照するに、符号化部１１Ｈは、データ割振部１４Ｈ、ハードウェア・エンコーダ１５１、ソフトウェア・エンコーダ１５２、合成部１６、出力部１７、切換位置検出部１８Ｆ、割り振り割合設定部２４Ｈ、および処理速度測定部２８を含む。符号化部１１Ｈは、データ割振部１４Ｈ、切換位置検出部１８Ｆ、割り振り割合設定部２４Ｈ、および処理速度測定部２８を除き、図３に示されている要素と同様な要素を含む。図２８ではそれら同様な要素に対して、図３に示されている符号と同じ符号を付す。また、それら同様な要素の詳細については、図３に示されている要素についての説明を援用する。更に、データ割振部１４Ｈの動作は、図３に示されているデータ割振部１４の動作と同様な部分を含む。従って、以下、データ割振部１４Ｈの動作については、図３に示されているデータ割振部１４の動作とは異なる部分を説明し、同様な部分の詳細については、図３に示されているデータ割振部１４についての説明を援用する。一方、編集部１３Ｆと切換位置検出部１８Ｆとは、図２２に示されている編集部１３Ｆと切換位置検出部１８Ｆと全く同様に動作する。従って、編集部１３Ｆと切換位置検出部１８Ｆとの詳細については、図２２に示されている編集部１３Ｆと切換位置検出部１８Ｆとについての説明を援用する。
【０２８７】
処理速度測定部２８は、ＣＰＵ１０が所定のプログラムに従ってコンピュータ端末の他の要素を制御することによって機能する。処理速度測定部２８は、データ割振部１４Ｈによって各エンコーダ１５１、１５２に符号化対象のデータ単位が割り振られた時点から、そのデータ単位が各エンコーダ１５１、１５２によって符号化されてメモリ部２０の各出力バッファ領域ＢＯ１、ＢＯ２に書き込まれた時点までの時間を計測する。具体的には、処理速度測定部２８は、データ割振部１４Ｈから合成部１６に、各エンコーダ１５１、１５２に割り振られたデータ単位の番号とそのデータ単位の符号化後の書き込み先のアドレスとが渡された時点から時間計測を開始し、そのアドレスと同じアドレスがいずれかのエンコーダ１５１、１５２から合成部１６に出力された時点で時間計測を終了する。処理速度測定部２８は更に、計測された時間から各エンコーダ１５１、１５２の符号化処理速度を算定して割り振り割合設定部２４Ｈに渡す。ここで、符号化処理速度は、各エンコーダ１５１、１５２が単位時間当たりに符号化可能なデータ単位数をいう。処理速度測定部２８はその他に、各エンコーダ１５１、１５２から各出力バッファ領域ＢＯ１、ＢＯ２に出力されるＡＶデータのビットレートを計測して、それらのビットレートから各エンコーダ１５１、１５２の符号化処理速度を算定してもよい。
【０２８８】
割り振り割合設定部２４Ｈは、ＣＰＵ１０が所定のプログラムに従ってコンピュータ端末の他の要素を制御することによって機能する。割り振り割合設定部２４Ｈはデータ割振部１４Ｈから所定の信号を受けたとき、処理速度測定部２８に各エンコーダ１５１、１５２の符号化処理速度を算定させて通知させる。割り振り割合設定部２４Ｈは更に、通知された各エンコーダ１５１、１５２の符号化処理速度からそれらの比を求め、その時点でデータ割振部１４Ｈによって両エンコーダ１５１、１５２に単位時間当たりに割り振られるデータ単位数の割合と比べる。その符号化処理速度の比がそのデータ単位数の割合とは異なる場合、割り振り割合設定部２４Ｈはその符号化処理速度の比を新たなデータ単位数の割合としてデータ割振部１４Ｈに通知する。ここで、符号化処理速度の比は一般に整数比ではないので、割り振り割合設定部２４Ｈは符号化処理速度の比を予め整数比で近似しておく。
【０２８９】
データ割振部１４Ｈは、編集部１３Ｆが符号化対象のデータ単位をメモリ部２０内の入力バッファ領域ＢＩに書き込むごとに、そのデータ単位からタイムコードを読み取って切換位置検出部１８Ｆに渡す。そのタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が切換自由区間内であることを通知された場合、データ割振部１４Ｈは、まず、割り振り割合設定部２４Ｈに、その時点での両エンコーダ１５１、１５２間の符号化処理速度の比を通知させる。それにより、データ割振部１４Ｈは、割り振り割合設定部２４Ｈから新たな比が通知されるまで、そのデータ単位以降に入力バッファ領域ＢＩに書き込まれるデータ単位を、通知された比で両エンコーダ１５１、１５２に割り振る。例えば、データ単位が１フレームであり、通知されたフレーム数の比が２：１である場合、データ割振部１４Ｈは、入力バッファ領域ＢＩから二枚のフレームを連続してハードウェア・エンコーダ１５１に割り振るごとに、一枚のフレームをソフトウェア・エンコーダ１５２に割り振る。
【０２９０】
上記のタイムコードに応じて切換位置検出部１８Ｆから、そのタイムコードの示す位置が固定区間内であることが通知された場合、または、固定区間内であることも、切換自由区間内であることも通知されなかった場合、データ割振部１４Ｈは、図２２に示されているデータ割振部１４Ｆと同様に動作する。
【０２９１】
図２９は、図２８に示されている符号化部１１ＨによるＡＶデータの割り振り処理のフローチャートである。以下、図２９を参照しながら、その割り振り処理を説明する。なお、以下の説明では便宜上、符号化のデータ単位を１フレームとする。また、図２９は、図５または図２３に示されているステップと同様なステップを含む。従って、図２９ではそれら同様なステップに対して、図５または図２３に示されている符号と同じ符号を付す。更に、それら同様なステップの詳細については、図５または図２３についての説明を援用する。
【０２９２】
例えば、編集部１３Ｆによって、符号化対象のＡＶデータに関する編集情報が作成されたときに、以下の処理は開始される。
【０２９３】
最初に、ステップＳ１では、切換位置検出部１８Ｆが、符号化対象のＡＶデータに関する編集情報から固定区間および切換自由区間を検出し、固定区間でも切換自由区間でもない区間に関する編集情報から割り振り先の切換位置を検出する。切換位置検出部１８Ｆは更に、各固定区間および各切換自由区間の範囲を示すタイムコード、および、各切換位置を示すタイムコードＴ（ｓｗ）を記憶する。なお、ステップＳ１の詳細は、図２５に示されているフローチャートと全く同様であるので、その詳細については、実施形態９の説明中に記載された図２５の説明を援用する。
【０２９４】
ステップＳ２では、切換位置検出部１８Ｆは検出対象の切換位置の番号ｓｗを１に初期化する。一方、データ割振部１４Ｈは、符号化対象のＡＶデータの先頭フレームの割り振り先をハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２とのいずれかに決める。
【０２９５】
次いで、ステップＳ３では、編集部１３Ｆが、編集されたＡＶデータの各フレームを先頭から順に、メモリ部２０の入力バッファ領域ＢＩに書き込む。
【０２９６】
次いで、ステップＳ４では、編集部１３Ｆが入力バッファ領域ＢＩに符号化対象の１フレームを書き込むごとに、データ割振部１４ＨがそのフレームからタイムコードＴｃを読み取って切換位置検出部１８Ｆに渡す。
【０２９７】
次いで、ステップＳ９では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが固定区間内であるか否かを判定する。そのフレームが固定区間内である場合（ステップＳ９で“Ｙｅｓ”の場合）、処理がステップＳ９Ａに進む。一方、そのフレームが固定区間内ではない場合（ステップＳ９で“Ｎｏ”の場合）、処理がステップＳ１０に進む。
【０２９８】
次いで、ステップＳ９Ａでは、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが固定区間内であることをデータ割振部１４Ｈに通知する。それにより、データ割振部１４ＨはそのタイムコードＴｃのフレームの割り振り先を、その固定区間で固定されたエンコーダに設定する。そして、処理がステップＳ３から繰り返される。
【０２９９】
一方、ステップＳ１０では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内であるか否かを判定する。そのフレームが切換自由区間内ではない場合（ステップＳ１０で“Ｎｏ”の場合）、処理がステップＳ１０Ａに進む。一方、そのフレームが切換自由区間内である場合（ステップＳ１０で“Ｙｅｓ”の場合）、処理がステップＳ９１に進む。
【０３００】
次いで、ステップＳ１０Ａでは、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内ではないことをデータ割振部１４Ｈに通知する。それにより、処理が、図２４に示されているステップＳ５〜Ｓ８の順に進む。ここで、図２４に示されているステップＳ５〜Ｓ８はいずれも、図５に示されているステップＳ５〜Ｓ８と全く同様である。従って、それらのステップＳ５〜Ｓ８の詳細については、図５についての説明を援用する。ステップＳ８の後、処理はステップＳ３から繰り返される。
【０３０１】
一方、ステップＳ９１では、切換位置検出部１８Ｆは、タイムコードＴｃのフレームが切換自由区間内であることをデータ割振部１４Ｈに通知する。その通知に応じて、データ割振部１４Ｈは、両エンコーダ１５１、１５２に単位時間当たりに割り振るフレーム数の比を所定値に設定する。データ割振部１４Ｈは更に、割り振り割合設定部２４Ｈに所定の信号を出力する。その信号に応じて、割り振り割合設定部２４Ｈは、まず、処理速度測定部２８に各エンコーダ１５１、１５２の符号化処理速度を計測させる。
【０３０２】
次いで、ステップＳ９２では、割り振り割合設定部２４Ｈは処理速度測定部２８から各エンコーダ１５１、１５２の符号化処理速度を受け取り、それらの比を求めて整数比で近似する。割り振り割合設定部２４Ｈは更に、その符号化処理速度の比を、その時点でデータ割振部１４Ｈに設定されているフレーム数の比と比べる。その符号化処理速度の比がそのフレーム数の比とは異なる場合（ステップＳ９２で“Ｙｅｓ”の場合）、処理がステップＳ９３に進む。その符号化処理速度の比がそのフレーム数の比と等しい場合（ステップＳ９２で“Ｎｏ”の場合）、処理がステップＳ９４に進む。
【０３０３】
次いで、ステップＳ９３では、割り振り割合設定部２４Ｈはその符号化処理速度の比をデータ割振部１４Ｈに渡す。それにより、データ割振部１４Ｈはフレーム数の比を、その通知された比に更新する。
【０３０４】
次いで、ステップＳ９４では、データ割振部１４ＨはタイムコードＴｃのフレームを、設定されたフレーム数の比に従って両エンコーダ１５１、１５２のいずれかに割り振る。
【０３０５】
次いで、ステップＳ９５では、データ割振部１４Ｈは、タイムコードＴｃのフレームが符号化対象のＡＶデータの後尾のフレームであるか否かを判定する。そのフレームが後尾のフレームでない場合（ステップＳ９５で“Ｎｏ”の場合）、処理がステップＳ３から繰り返される。一方、そのフレームが後尾のフレームである場合（ステップＳ９５で“Ｙｅｓ”の場合）、処理が終了する。
【０３０６】
実施形態１１に係る符号化装置は、符号化対象のＡＶデータについて固定区間および切換自由区間をユーザに設定させることができる。この符号化装置は、固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、切換位置検出部１８Ｆによって割り振り先の切換位置を、編集情報から検出する。編集部１３Ｆが、編集されたＡＶデータをメモリ部２０の入力バッファ領域ＢＩに書き込むと、データ割振部１４Ｆが各切換位置でそのＡＶデータの割り振り先を、ハードウェア・エンコーダ１５１およびソフトウェア・エンコーダ１５２の一方から他方に切り換える。それにより、両エンコーダ１５１、１５２が並列してＡＶデータの符号化処理を行う。この符号化装置では、固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、ハードウェア・エンコーダ１５１とソフトウェア・エンコーダ１５２との符号化処理の違いに起因する画質の変化は、多少なりとも存在したとしても、この符号化されたＡＶデータを復号して再構成した映像からは、視聴者には感知され難くなる。従って、実施形態１１に係る符号化装置は、両エンコーダ１５１、１５２が並列して符号化したＡＶデータの画質を良好にできる。なお、この符号化装置は、実施形態１に係る符号化装置と同様に、一つの切換位置から次の切換位置までは、一連のシーンを表すＡＶデータの部分、または、同じ編集処理が継続されているＡＶデータの部分を同じエンコーダで符号化するので、その部分の画質を均一にできる。
【０３０７】
実施形態１１に係る符号化装置は更に、符号化対象のＡＶデータの切換自由区間については、編集部１３Ｆによってメモリ部２０内の入力バッファ領域ＢＩに書き込まれたデータ単位を、データ割振部１４Ｈにより、切換位置に拘らず、両エンコーダ１５１、１５２に所定のデータ単位数の割合で交互に供給する。この符号化装置はその上、処理速度測定部２８によって各エンコーダ１５１、１５２の符号化処理速度を実測し、割り振り割合設定部２４Ｈによって上記のデータ単位数の割合を、両エンコーダ１５１、１５２間での実際の符号化処理速度の比に調節する。それにより、ＣＰＵ１０の負荷変動に伴うソフトウェア・エンコーダ１５２の符号化処理速度の変動に関わらず、合成部１６が各エンコーダ１５１、１５２によって符号化されたデータ単位の入力を待つ時間を短縮しつつ、またはその時間の発生を抑制しつつ、両エンコーダ１５１、１５２が符号化処理を並列に実行できる。
【０３０８】
実施形態９〜１１に係る符号化装置は、ＡＶデータの固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、各切換位置でＡＶデータの割り振り先を、両エンコーダ１５１、１５２の一方から他方に切り換える。その他に、実施形態９〜１１に係る符号化装置が、実施形態４〜８に係る符号化装置のいずれかと同様にしてＡＶデータの割り振り先を切り換えてもよい。
【０３０９】
実施形態４〜１１に係る符号化装置は、ＡＶデータの固定区間でも切換自由区間でもない区間については、実施形態１に係る符号化装置と同様に、切換位置検出部１８によって割り振り先の切換位置を編集情報から検出する。その他に、実施形態４〜１１に係る符号化装置が、実施形態２、３のいずれかと同様に、ＡＶデータの全体または一部から割り振り先の切換位置を検出してもよい。
【０３１０】
なお、以上の説明に関して更に以下の項目を開示する。
（項目１）
音声データおよび／または映像データを含むＡＶデータを符号化する符号化装置であって、
ＣＰＵと、
符号化処理用のハードウェアで構成され、符号化対象のＡＶデータの一部を符号化するハードウェア・エンコーダと、
前記ＣＰＵを利用して、前記ハードウェア・エンコーダによる符号化処理と並行して前記ＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、
前記ＡＶデータの割り振り先の切換位置を検出する位置検出部であって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該位置検出部と、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに前記ＡＶデータを割り振ってそれぞれのエンコーダに供給するデータ割振部であって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該データ割振部と、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する合成部と、
前記一連の符号化されたＡＶデータを出力する出力部と、
を備える、前記符号化装置。
（項目２）
前記一つのシーンが別のシーンに切り換わる位置および編集処理の種類が切り換わる位置が、前記ＡＶデータの編集情報に基づいて検出される、項目１に記載の符号化装置。
（項目３）
前記編集処理の種類が所定のパターンで変更される位置および前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置が、前記ＡＶデータに基づいて検出される、項目１に記載の符号化装置。
（項目４）
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとによる符号化の方式は共通である、項目１に記載の符号化装置。
（項目５）
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータは互いに予測関係にない、項目１に記載の符号化装置。
（項目６）
前記前後のデータ単位間でのシーンの変化量は、画面全体での映像データの差分、色成分の差分、画面全体の動きの変化量、および、画面の中の特定のオブジェクトの動きの変化量の少なくともいずれかを含む、項目１に記載の符号化装置。
（項目７）
前記編集処理の種類が所定のパターンで変更される位置は、編集対象のＡＶデータの復号方式、および、エフェクト処理の種類の少なくともいずれかが所定のパターンで変更される位置を含む、項目１に記載の符号化装置。
（項目８）
前記前後のデータ単位の両方で情報量が所定の閾値より小さい位置は、離散コサイン変換によって各データ単位から得られる、所定の高域周波数の変換係数の和または平均値が所定の閾値より小さい位置、および、前記ソフトウェア・エンコーダによる符号化処理の中で推定される符号化後のビットレートが所定の目標ビットレートより小さい位置の少なくともいずれかを含む、項目１に記載の符号化装置。
（項目９）
前記位置検出部は、符号化に先立って前記符号化対象のＡＶデータの切換位置を検出して格納し、
前記データ割振部は、格納された切換位置においてＡＶデータの供給先を切り換える、
項目１に記載の符号化装置。
（項目１０）
前記符号化対象のＡＶデータについて、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振る頻度の許容度を表すデータが前記位置検出部に供給され、
前記位置検出部が、前記許容度に基づいて切換位置を決定する、項目９に記載の符号化装置。
（項目１１）
前記データ割振部と前記ハードウェア・エンコーダとの間に接続され、前記データ割振部によって前記ハードウェア・エンコーダに供給されるＡＶデータを一時記憶し、前記ハードウェア・エンコーダにＡＶデータを供給するバッファを更に備え、
前記データ割振部は、前記バッファの空き情報を取得し、その空き情報が所定量以上の空きを示す場合は、切換位置が到来しても前記バッファにＡＶデータを割り振り、その空き情報が所定量未満の空きを示す場合、ソフトウェア・エンコーダにＡＶデータを割り振る、項目１に記載の符号化装置。
（項目１２）
前記位置検出部は、隣り合う切換位置の区間の長さに基づいて、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとによって符号化されるそれぞれの区間について、単位時間当たりに供給すべきデータ単位数の割合を決定し、その割合を表すデータを前記データ割振部に供給し、
前記データ割振部は、前記それぞれの区間において、その区間のその割合を表すデータに基づいて前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダに前記ＡＶデータを供給する、
項目１に記載の符号化装置。
（項目１３）
前記ＣＰＵは、前記符号化対象のＡＶデータについて符号化処理以外の他の処理も行い、
前記位置検出部は、前記他の処理を行うときの前記ＣＰＵの負荷を、検出された隣り合う切換位置の区間のＡＶデータに対応させて予測するＣＰＵ負荷推定部を更に含み、
前記位置検出部は、予測されたＣＰＵの負荷に応じて、それぞれの区間のＡＶデータの割り振り先を決定し、
前記データ割振部は、前記それぞれの区間において、前記決定された割り振り先にＡＶデータを供給する、
項目１に記載の符号化装置。
（項目１４）
前記ＣＰＵは、前記符号化対象のＡＶデータについて符号化処理以外の他の処理も行い、
前記ＣＰＵの負荷を検出するＣＰＵ負荷検出部を更に備え、
前記データ割振部は、前記ＣＰＵに、一つの切換位置から所定の長さのＡＶデータについて前記他の処理を符号化処理よりも先行させて、その先行期間に前記ＣＰＵ負荷検出部によって検出された前記他の処理による前記ＣＰＵの負荷に応じて、前記切換位置から次の切換位置までの区間のＡＶデータの割り振り先を決定する、
項目１に記載の符号化装置。
（項目１５）
前記データ割振部は、前記ＡＶデータを、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとの一方には前記ＡＶデータの先頭から後尾に向かって割り振り、他方にはＡＶデータの後尾から先頭に向かって割り振る、項目１に記載の符号化装置。
（項目１６）
前記位置検出部は、前記先頭の区間と前記後尾の区間とについて、前記ＣＰＵの行う処理による前記ＣＰＵの負荷を予測し、予測された前記ＣＰＵの負荷に基づいて、前記先頭の区間の割り振り先を決定する、項目１５に記載の符号化装置。
（項目１７）
前記ＡＶデータについて、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方に割り振られるべき固定区間を表すデータが前記位置検出部に供給され、
前記位置検出部は、前記固定区間では割り振り先の切換位置を検出しない、
項目１に記載の符号化装置。
（項目１８）
前記ＡＶデータについて、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダのいずれにも割り振り可能な切換自由区間を表すデータが前記位置検出部に供給され、
前記位置検出部は、前記切換自由区間では割り振り先の切換位置を検出しない、
項目１に記載の符号化装置。
（項目１９）
前記データ割振部と前記ハードウェア・エンコーダとの間に接続され、前記データ割振部によって前記ハードウェア・エンコーダに割り振られるＡＶデータを記憶し、前記ハードウェア・エンコーダにＡＶデータを供給するバッファを更に備え、
前記データ割振部は、前記バッファの空き情報を取得し、前記符号化対象のＡＶデータの所定区間については、前記切換位置に拘らず、前記空き情報に基づいて前記符号化対象のＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振る、
項目１８に記載の符号化装置。
（項目２０）
前記ＣＰＵの負荷を検出し、検出された負荷に応じて、前記ハードウェア・エンコーダに割り振られるＡＶデータと前記ソフトウェア・エンコーダに割り振られるＡＶデータとの単位時間当たりのデータ単位数の割合を算定し、その割合を表すデータを前記データ割振部に供給する割り振り割合設定部を更に備え、
前記データ割振部は、前記符号化対象のＡＶデータの所定区間については、前記切換位置に拘らず、前記符号化対象のＡＶデータを前記割合で前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振る、
項目１８に記載の符号化装置。
（項目２１）
前記ハードウェア・エンコーダによる符号化処理速度と前記ソフトウェア・エンコーダによる符号化処理速度とを測定する処理速度測定部と、
測定された符号化処理速度に応じて、前記ハードウェア・エンコーダに割り振られるＡＶデータと前記ソフトウェア・エンコーダに割り振られるＡＶデータとの単位時間当たりのデータ単位数の割合を算定し、その割合を表すデータを前記データ割振部に供給する割り振り割合設定部と、
を更に備え、
前記データ割振部は、前記符号化対象のＡＶデータの所定区間については、前記切換位置に拘らず、前記符号化対象のＡＶデータを前記割合で前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振る、
項目１８に記載の符号化装置。
（項目２２）
ＣＰＵと、
音声データおよび／または映像データを含むＡＶデータを編集する編集部と、
符号化処理用の回路で構成され、編集されたＡＶデータの一部を符号化するハードウェア・エンコーダと、
前記ＣＰＵを利用して、前記ハードウェア・エンコーダによる符号化処理と並行して、前記編集されたＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、
前記編集されたＡＶデータの割り振り先の切換位置を検出する位置検出部であって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該位置検出部と、
前記編集されたＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振ってそれぞれのエンコーダに供給するデータ割振部であって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該データ割振部と、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成する合成部と、
前記一連の符号化されたＡＶデータを出力する出力部と、
を備えているビデオ編集システム。
（項目２３）
前記位置検出部は、前記編集部から編集情報を取得し、編集されるＡＶデータの切換位置を、前記編集情報から検出して格納し、
前記データ割振部は、格納された切換位置においてＡＶデータの供給先を切り換える、
項目２２に記載のビデオ編集システム。
（項目２４）
前記位置検出部は、隣り合う切換位置の区間の長さに基づいて、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとによって符号化されるそれぞれの区間について、単位時間当たりに供給すべきデータ単位数の割合を決定し、その割合を表すデータを前記編集部と前記データ割振部とに供給し、
前記編集部は、前記それぞれの区間において、その区間のその割合を表すデータに基づいて、編集されたＡＶデータを前記データ割振部に供給し、
前記データ割振部は、前記それぞれの区間において、その区間のその割合を表すデータに基づいて、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダに前記ＡＶデータを供給する、
項目２２に記載のビデオ編集システム。
（項目２５）
前記位置検出部は、前記編集部が編集情報に基づいて編集されたＡＶデータを出力するときの前記ＣＰＵの負荷を、前記編集情報から、検出された隣り合う切換位置の区間のＡＶデータに対応させて予測するＣＰＵ負荷推定部を更に含み、
前記位置検出部は、予測された前記ＣＰＵの負荷に応じて、それぞれの区間のＡＶデータの割り振り先を決定し、
前記データ割振部は、前記それぞれの区間において、前記決定された割り振り先にＡＶデータを供給する、
項目２２に記載のビデオ編集システム。
（項目２６）
前記ＣＰＵの負荷を検出するＣＰＵ負荷検出部を更に備え、
前記データ割振部は、前記編集部に、一つの切換位置から所定の長さのＡＶデータの出力を符号化処理よりも先行させて、その先行期間に前記ＣＰＵ負荷検出部によって検出された前記編集部の出力処理による前記ＣＰＵの負荷に応じて、前記切換位置から次の切換位置までの区間のＡＶデータの割り振り先を決定する、
項目２２に記載のビデオ編集システム。
（項目２７）
前記編集部は、前記編集されたＡＶデータを、先頭から後尾に向かって出力すると共に、後尾から先頭に向かっても出力し、
前記データ割振部は、前記ＡＶデータを、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとの一方には前記ＡＶデータの先頭から後尾に向かって割り振り、他方には前記ＡＶデータの後尾から先頭に向かって割り振る、
項目２２に記載のビデオ編集システム。
（項目２８）
前記位置検出部は、前記先頭の区間と前記後尾の区間とについて、前記編集部の行う出力処理による前記ＣＰＵの負荷を予測し、予測された前記ＣＰＵの負荷に基づいて、前記先頭の区間の割り振り先を決定する、項目２７に記載のビデオ編集システム。
（項目２９）
前記編集されたＡＶデータについて、前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとの一方に割り振られるべき固定区間を表すデータが、前記編集部から前記位置検出部に供給される編集情報に含まれ、
前記位置検出部は、前記固定区間では割り振り先の切換位置を検出しない、
項目２２に記載のビデオ編集システム。
（項目３０）
前記編集されたＡＶデータについて、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダのいずれにも割り振り可能な切換自由区間を表すデータが、前記編集部から前記位置検出部に供給される編集情報に含まれ、
前記位置検出部は、前記切換自由区間では割り振り先の切換位置を検出しない、
項目２２に記載のビデオ編集システム。
（項目３１）
音声データおよび／または映像データを含むＡＶデータを符号化する方法であって、
符号化対象のＡＶデータを受信するステップと、
前記ＡＶデータの割り振り先の切換位置を検出するステップであって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該ステップと、
前記ＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振るステップであって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換え、該ハードウェア・エンコーダが符号化処理用のハードウェアで構成されてなり、該ソフト・ソフトウェア・エンコーダがＣＰＵを利用してＡＶデータを符号化するように構成されてなる、該ステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで、供給されたＡＶデータを符号化するステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成するステップと、
前記一連の符号化されたＡＶデータを出力するステップと、
を含む、前記方法。
（項目３２）
音声データおよび／または映像データを含むＡＶデータを符号化するプログラムであって、
ＣＰＵと、
符号化処理専用のハードウェアで構成され、符号化対象のＡＶデータの一部を符号化するハードウェア・エンコーダと、
前記ＣＰＵを利用して、前記符号化対象のＡＶデータの他の一部を符号化するソフトウェア・エンコーダと、
を備えた装置に、
前記符号化対象のＡＶデータを受信するステップと、
前記ＡＶデータの割り振り先の切換位置を検出するステップであって、前記切換位置が、該ＡＶデータにおいて、一つのシーンが別のシーンに切り換わる位置、編集処理の種類が所定のパターンで変更される位置、前後のデータ単位間でのシーンの変化量が所定の閾値より大きい位置、および、前後のデータ単位の両方で情報量が所定の閾値より小さい位置の少なくともいずれかである、該ステップと、
前記ＡＶデータを前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとに割り振るステップであって、前記切換位置において、前記ハードウェア・エンコーダおよび前記ソフトウェア・エンコーダの一方から他方にＡＶデータの供給先を切り換える、該ステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで、供給されたＡＶデータを符号化するステップと、
前記ハードウェア・エンコーダと前記ソフトウェア・エンコーダとのそれぞれで符号化されたＡＶデータを所定の順序に配列して一連の符号化されたＡＶデータに合成するステップと、
前記一連の符号化されたＡＶデータを出力するステップと、
を実行させるためのプログラム。
【符号の説明】
【０３１１】
１０  ＣＰＵ
１１、１１１、１１２、１１Ａ〜１１Ｈ  符号化部
１３、１３Ｂ、１３Ｅ、１３Ｆ  編集部
１４、１４Ａ、１４Ｂ、１４Ｄ〜１４Ｈ、  データ割振部
１５１  ハードウェア・エンコーダ
１５２  ソフトウェア・エンコーダ
１６  合成部
１７  出力部
１８、１８１、１８３、１８Ｂ、１８Ｅ、１８Ｆ  切換位置検出部
１８２  データ分析部
１８４  ＣＰＵ負荷推定部
２１  バッファ
２２  第１データベース
２３  ＣＰＵ負荷検出部
２４、２４Ｈ  割り振り割合設定部
２５  第２データベース
２８  処理速度測定部
１００  符号化装置
２００  ビデオ編集システム
【図１】
2011528513.tif 000002
【図２】
2011528513.tif 000003
【図３】
2011528513.tif 000004
【図４】
2011528513.tif 000005
【図５】
2011528513.tif 000006
【図６】
2011528513.tif 000007
【図７】
2011528513.tif 000008
【図８】
2011528513.tif 000009
【図９】
2011528513.tif 000010
【図１０】
2011528513.tif 000011
【図１１】
2011528513.tif 000012
【図１２】
2011528513.tif 000013
【図１３】
2011528513.tif 000014
【図１４】
2011528513.tif 000015
【図１５】
2011528513.tif 000016
【図１６】
2011528513.tif 000017
【図１７】
2011528513.tif 000018
【図１８】
2011528513.tif 000019
【図１９】
2011528513.tif 000020
【図２０】
2011528513.tif 000021
【図２１】
2011528513.tif 000022
【図２２】
2011528513.tif 000023
【図２３】
2011528513.tif 000024
【図２４】
2011528513.tif 000025
【図２５】
2011528513.tif 000026
【図２６】
2011528513.tif 000027
【図２７】
2011528513.tif 000028
【図２８】
2011528513.tif 000029
【図２９】
2011528513.tif 000030
【国際調査報告】
2011528513.tif 000031
2011528513.tif 000032
2011528513.tif 000033
2011528513.tif 000034
2011528513.tif 000035