(57)【要約】  ストリーム生成装置（２００）であって、ヘッダおよび量子化データに対し、少なくともヘッダに対する可変長符号化を含む、第一処理を行う第一処理部（２１１）と、第一処理後のヘッダを第一記憶領域に転送し、かつ、第一処理後の量子化データを第二記憶領域に転送する第一転送制御部（２１２）と、所定の単位分のヘッダおよび量子化データを第一記憶領域および第二記憶領域から取得する第二転送制御部（２２２）と、所定の単位分のヘッダおよび量子化データに対し、少なくとも所定の単位分の量子化データに対する圧縮符号化を含む、第二処理を行う第二処理部（２２１）とを備え、第二処理部（２２１）は、圧縮符号化が行われた所定の単位分のヘッダと、圧縮符号化が行われた所定の単位分の量子化データとが連なったストリームを生成する。
2012111315.tif 000002
【特許請求の範囲】
【請求項１】
量子化された画像データである量子化データと、前記量子化データに対応するヘッダとを受信し、受信された前記ヘッダと前記量子化データとに対して、可変長符号化および圧縮符号化を当該順序で行うことでストリームを生成するストリーム生成装置であって、
受信された前記ヘッダおよび前記量子化データに対し、少なくとも前記ヘッダに対する前記可変長符号化を含む、第一処理を行う第一処理部と、
前記第一処理が行われた後の前記ヘッダを、前記ストリーム生成装置に接続された記憶部が有する第一記憶領域に転送し、かつ、前記第一処理が行われた後の前記量子化データを、前記記憶部が有する第二記憶領域に転送する第一転送制御部と、
前記第一処理が行われた後の所定の単位分の前記ヘッダを前記第一記憶領域から取得し、かつ、前記第一処理が行われた後の前記所定の単位分の前記量子化データを前記第二記憶領域から取得する第二転送制御部と、
取得された、前記第一処理が行われた後の前記所定の単位分の前記ヘッダおよび前記量子化データに対し、少なくとも、前記第一処理が行われた後の前記所定の単位分の前記量子化データに対する前記圧縮符号化を含む、第二処理を行う第二処理部とを備え、
前記第二処理部は、前記第一処理および前記第二処理によって得られた、（ｉ）前記所定の単位分の前記ヘッダである第一符号化データと、（ｉｉ）前記所定の単位分の量子化データである第二符号化データと、が連なったストリームを生成する
ストリーム生成装置。
【請求項２】
前記第一処理部は、前記第一処理である、受信された前記ヘッダと前記量子化データとに対する前記可変長符号化を行うことで、前記可変長符号化が行われた後の前記ヘッダである可変長符号化ヘッダと、前記可変長符号化が行われた後の前記量子化データである可変長量子化データとを生成し、
前記第一転送制御部は、前記可変長符号化ヘッダを前記第一記憶領域に転送し、かつ、前記可変長量子化データを前記第二記憶領域に転送し、
前記第二転送制御部は、前記所定の単位分の前記可変長符号化ヘッダを前記第一記憶領域から取得し、かつ、前記所定の単位分の前記可変長量子化データを前記第二記憶領域から取得し、
前記第二処理部は、前記第二処理である、取得された前記所定の単位分の前記可変長符号化ヘッダおよび前記可変長量子化データに対する前記圧縮符号化を行うことで得られる前記第一符号化データと前記第二符号化データとを用いて前記ストリームを生成する
請求項１記載のストリーム生成装置。
【請求項３】
前記第一処理部は、前記第一処理である、受信された前記ヘッダに対する前記可変長符号化および前記圧縮符号化、ならびに、受信された量子化データの前記第一転送制御部への入力、を行い、
前記第一転送制御部は、前記可変長符号化と前記圧縮符号化とが行われた前記ヘッダを前記第一記憶領域に転送し、かつ、入力された前記量子化データを前記第二記憶領域に転送し、
前記第二転送制御部は、前記所定の単位分の、前記可変長符号化と前記圧縮符号化とが行われた前記ヘッダを前記第一記憶領域から取得し、かつ、前記所定の単位分の前記量子化データを前記第二記憶領域から取得し、
前記第二処理部は、前記第二処理である、取得された前記所定の単位分の前記ヘッダの前記第二転送制御部からの受信、ならびに、取得された前記所定の単位分の前記量子化データに対する前記可変長符号化および前記圧縮符号化によって得られる、前記第一符号化データと前記第二符号化データとを用いて前記ストリームを生成する
請求項１記載のストリーム生成装置。
【請求項４】
前記第一転送制御部は、
前記第一処理が行われた後の前記ヘッダを前記第一記憶領域に転送する際に、前記第一記憶領域に含まれる１つのワードに、前記ヘッダの少なくとも一部と他のヘッダの少なくとも一部とが連続して格納されるように転送し、
前記第一処理が行われた後の前記量子化データを前記第二記憶領域に転送する際に、前記第二記憶領域に含まれる１つのワードに、前記量子化データの少なくとも一部と他の量子化データの少なくとも一部とが連続して格納されるように転送する
請求項１〜３のいずれか１項に記載のストリーム生成装置。
【請求項５】
前記第一転送制御部は、前記ヘッダおよび前記量子化データの転送を行う際に参照する第一アドレス情報および第二アドレス情報であって、
前記第一転送制御部から転送される前記第一処理が行われた後の前記ヘッダが格納される、前記第一記憶領域におけるアドレスを示す第一アドレス情報と、
前記第一転送制御部から転送される前記第一処理が行われた後の前記量子化データが格納される、前記第二記憶領域におけるアドレスを示す第二アドレス情報とを有する
請求項１〜４のいずれか１項に記載のストリーム生成装置。
【請求項６】
前記第一転送制御部は、前記第一処理が行われた後の前記ヘッダを前記第一記憶領域に転送することで、前記記憶部が備える第一メモリが有する前記第一記憶領域に前記ヘッダを格納させ、かつ、前記第一処理が行われた後の前記量子化データを前記第二記憶領域に転送することで、前記記憶部が備える第二メモリであって、前記第一メモリとは物理的に異なる第二メモリが有する前記第二記憶領域に、前記量子化データを格納させる
請求項１〜５のいずれか１項に記載のストリーム生成装置。
【請求項７】
前記第一転送制御部は、前記第一処理が行われた後の前記ヘッダを前記第一記憶領域に転送することで、前記記憶部が備えるメモリが有する前記第一記憶領域に前記ヘッダを格納させ、かつ、前記第一処理が行われた後の前記量子化データを前記第二記憶領域に転送することで、前記メモリが有する前記第二記憶領域に前記量子化データを格納させる
請求項１〜５のいずれか１項に記載のストリーム生成装置。
【請求項８】
前記第二転送制御部は、前記所定の単位分の前記ヘッダである前記第一処理が行われた後の１ピクチャ分の前記ヘッダを前記第一記憶領域から取得し、かつ、前記所定の単位分の量子化データである前記第一処理が行われた後の当該１ピクチャ分の前記量子化データを前記第二記憶領域から取得し、
前記第二処理部は、取得された当該１ピクチャ分の前記ヘッダおよび前記量子化データに対して前記第二処理を行い、かつ、当該１ピクチャ分の第一符号化データと当該１ピクチャ分の第二符号化データが連なったストリームを生成する
請求項１〜７のいずれか１項に記載のストリーム生成装置。
【請求項９】
量子化された画像データである量子化データと、前記量子化データに対応するヘッダとを受信し、受信された前記ヘッダと前記量子化データとに対して、可変長符号化および圧縮符号化を当該順序で行うことでストリームを生成するストリーム生成方法であって、
受信された前記ヘッダおよび前記量子化データに対し、少なくとも前記ヘッダに対する前記可変長符号化を含む、第一処理を行う第一処理ステップと、
前記第一処理が行われた後の前記ヘッダを、記憶部が有する第一記憶領域に転送し、かつ、前記第一処理が行われた後の前記量子化データを前記記憶部が有する第二記憶領域に転送する第一転送ステップと、
前記第一処理が行われた後の所定の単位分の前記ヘッダを前記第一記憶領域から取得し、かつ、前記第一処理が行われた後の前記所定の単位分の前記量子化データを前記第二記憶領域から取得する第二転送ステップと、
取得された、前記第一処理が行われた後の前記所定の単位分の前記ヘッダおよび前記量子化データに対し、少なくとも、前記第一処理が行われた後の前記所定の単位分の前記量子化データに対する前記圧縮符号化を含む、第二処理を行う第二処理ステップと、
前記第一処理および前記第二処理によって得られた、（ｉ）前記所定の単位分の前記ヘッダである第一符号化データと、（ｉｉ）前記所定の単位分の量子化データである第二符号化データと、が連なったストリームを生成する生成ステップと
を含むストリーム生成方法。
【請求項１０】
量子化された画像データである量子化データと、前記量子化データに対応するヘッダとを受信し、受信された前記ヘッダと前記量子化データとに対して、可変長符号化および圧縮符号化を当該順序で行うことでストリームを生成する集積回路であって、
受信された前記ヘッダおよび前記量子化データに対し、少なくとも前記ヘッダに対する前記可変長符号化を含む、第一処理を行う第一処理部と、
前記第一処理が行われた後の前記ヘッダを、前記集積回路に接続された記憶部が有する第一記憶領域に転送し、かつ、前記第一処理が行われた後の前記量子化データを前記記憶部が有する第二記憶領域に転送する第一転送制御部と、
前記第一処理が行われた後の所定の単位分の前記ヘッダを前記第一記憶領域から取得し、かつ、前記第一処理が行われた後の前記所定の単位分の前記量子化データを前記第二記憶領域から取得する第二転送制御部と、
取得された、前記第一処理が行われた後の前記所定の単位分の前記ヘッダおよび前記量子化データに対し、少なくとも、前記第一処理が行われた後の前記所定の単位分の前記量子化データに対する前記圧縮符号化を含む、第二処理を行う第二処理部とを備え、
前記第二処理部は、前記第一処理および前記第二処理によって得られた、（ｉ）前記所定の単位分の前記ヘッダである第一符号化データと、（ｉｉ）前記所定の単位分の量子化データである第二符号化データと、が連なったストリームを生成する
集積回路。
【請求項１１】
量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行うストリーム処理装置であって、
前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、
前記ストリーム処理装置は、
前記ストリームに対し、少なくとも前記第二符号化データに対する伸張復号化を含む、第一復号処理を行う第一復号処理部と、
前記第一復号処理が行われた後の前記第一符号化データである第一データを、前記ストリーム処理装置に接続された記憶部が有する第一記憶領域に転送し、かつ、前記第一復号処理が行われた後の前記第二符号化データである第二データを、前記記憶部が有する第二記憶領域に転送する第一転送制御部と、
前記第一データを前記第一記憶領域から取得し、前記第二データを前記第二記憶領域から取得し、かつ、取得した前記第一データおよび前記第二データに含まれる、前記第一復号処理が行われた後の前記ヘッダのそれぞれと、前記ヘッダに対応する、前記第一復号処理が行われた後の前記量子化データとを出力する第二転送制御部と、
前記第二転送制御部から出力された、前記第一復号処理が行われた後の前記ヘッダおよび前記量子化データに対し、少なくとも、前記ヘッダに対する可変長復号化を含む、第二復号処理を行う第二復号処理部とを備え、
前記第二復号処理部は、前記第一復号処理および前記第二復号処理により得られた、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダと前記ヘッダに対応する前記量子化データとを並べて出力する
ストリーム処理装置。
【請求項１２】
前記第一復号処理部は、前記第一復号処理である、前記第一符号化データと前記第二符号化データとに対する前記伸張復号化を行うことで、前記第一データと前記第二データとを生成し、
前記第二復号処理部は、前記第二復号処理である、前記伸張復号化が行われた後の前記ヘッダおよび前記量子化データに対する可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダおよび前記量子化データを生成する
請求項１１記載のストリーム処理装置。
【請求項１３】
前記第一復号処理部は、前記第一復号処理である、前記第二符号化データに対する前記伸張復号化および前記可変長復号化、ならびに、前記第一符号化データの前記第一転送制御部への入力、を行い、
前記第一転送制御部は、前記第一データである、前記第一復号処理部から入力された前記第一符号化データを前記第一記憶領域に転送し、かつ、前記第二データである、前記伸張復号化および前記可変長復号化が行われた後の前記第二符号化データを前記第二記憶領域に転送し、
前記第二転送制御部は、取得した前記第一データおよび第二データに含まれる、前記伸張復号化および前記可変長復号化が行われた後の前記ヘッダのそれぞれと、前記ヘッダに対応する、前記伸張復号化および前記可変長復号化が行われていない前記量子化データとを出力し、
前記第二復号処理部は、前記第二復号処理である、前記伸張復号化および前記可変長復号化が行われた後の前記ヘッダの前記第二転送制御部からの受信、ならびに、前記第二転送制御部から出力された前記量子化データに対する前記伸張復号化および前記可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダおよび前記量子化データを生成する
請求項１１記載のストリーム処理装置。
【請求項１４】
前記第一転送制御部は、
前記第一データを前記第一記憶領域に転送する際に、前記第一記憶領域に含まれる１つのワードに、前記第一データに含まれる、１つのヘッダの少なくとも一部と他のヘッダの少なくとも一部とが連続して格納されるように転送し、
前記第二データを前記第二記憶領域に転送する際に、前記第二記憶領域に含まれる１つのワードに、前記第一データに含まれる、１つの量子化データの少なくとも一部と他の量子化データの少なくとも一部とが連続して格納されるように転送する
請求項１１〜１３のいずれか１項に記載のストリーム処理装置。
【請求項１５】
前記第一転送制御部は、前記第一データおよび前記第二データの転送を行う際に参照する第一アドレス情報および第二アドレス情報であって、
前記第一転送制御部から転送される前記第一データが格納される、前記第一記憶領域におけるアドレスを示す第一アドレス情報と、
前記第一転送制御部から転送される前記第二データが格納される、前記第二記憶領域におけるアドレスを示す第二アドレス情報とを有する
請求項１１〜１４のいずれか１項に記載のストリーム処理装置。
【請求項１６】
前記第一転送制御部は、前記第一データを前記第一記憶領域に転送することで、前記記憶部が備える第一メモリが有する前記第一記憶領域に前記第一データを格納させ、かつ、前記第二データを前記第二記憶領域に転送することで、前記記憶部が備える第二メモリであって、前記第一メモリとは物理的に異なる第二メモリが有する前記第二記憶領域に、前記第二データを格納させる
請求項１１〜１５のいずれか１項に記載のストリーム処理装置。
【請求項１７】
前記第一転送制御部は、前記第一データを前記第一記憶領域に転送することで、前記記憶部が備えるメモリが有する前記第一記憶領域に前記第一データを格納させ、かつ、前記第二データを前記第二記憶領域に転送することで、前記メモリが有する前記第二記憶領域に前記量子化データを格納させる
請求項１１〜１５のいずれか１項に記載のストリーム処理装置。
【請求項１８】
前記第一復号処理部は、前記所定の単位分である１ピクチャ分の前記ヘッダおよび前記量子化データである前記第一符号化データおよび前記第二符号化データに対して前記第一復号処理を行い、
前記第一転送制御部は、当該１ピクチャ分の、前記第一復号処理が行われた後の前記ヘッダを含む前記第一データを前記第一記憶領域に転送し、かつ、当該１ピクチャ分の、前記第一復号処理が行われた後の前記量子化データを含む前記第二データを前記第二記憶領域に転送する
請求項１１〜１７のいずれか１項に記載のストリーム処理装置。
【請求項１９】
量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行うストリーム処理方法であって、
前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、
前記ストリーム処理方法は、
前記ストリームに対し、少なくとも前記第二符号化データに対する伸張復号化を含む、第一復号処理を行う第一復号処理ステップと、
前記第一復号処理が行われた後の前記第一符号化データである第一データを、記憶部が有する第一記憶領域に転送し、かつ、前記第一復号処理が行われた後の前記第二符号化データである第二データを、前記記憶部が有する第二記憶領域に転送する第一転送ステップと、
前記第一データを前記第一記憶領域から取得し、前記第二データを前記第二記憶領域から取得し、かつ、取得した前記第一データおよび前記第二データに含まれる、前記第一復号処理が行われた後の前記ヘッダのそれぞれと、前記ヘッダに対応する、前記第一復号処理が行われた後の前記量子化データとを出力する第二転送ステップと、
第二転送ステップにおいて出力された、前記第一復号処理が行われた後の前記ヘッダおよび前記量子化データに対し、少なくとも、前記ヘッダに対する可変長復号化を含む、第二復号処理を行う第二復号処理ステップと、
前記第一復号処理および前記第二復号処理により得られた、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダと前記ヘッダに対応する前記量子化データとを並べて出力する出力ステップと
を含むストリーム処理方法。
【請求項２０】
量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行う集積回路であって、
前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、
前記集積回路は、
前記ストリームに対し、少なくとも前記第二符号化データに対する伸張復号化を含む、第一復号処理を行う第一復号処理部と、
前記第一復号処理が行われた後の前記第一符号化データである第一データを、前記集積回路に接続された記憶部が有する第一記憶領域に転送し、かつ、前記第一復号処理が行われた後の前記第二符号化データである第二データを、前記記憶部が有する第二記憶領域に転送する第一転送制御部と、
前記第一データを前記第一記憶領域から取得し、前記第二データを前記第二記憶領域から取得し、かつ、取得した前記第一データおよび前記第二データに含まれる、前記第一復号処理が行われた後の前記ヘッダのそれぞれと、前記ヘッダに対応する、前記第一復号処理が行われた後の前記量子化データとを出力する第二転送制御部と、
前記第二転送制御部から出力された、前記第一復号処理が行われた後の前記ヘッダおよび前記量子化データに対し、少なくとも、前記ヘッダに対する可変長復号化を含む、第二復号処理を行う第二復号処理部とを備え、
前記第二復号処理部は、前記第一復号処理および前記第二復号処理により得られた、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダと前記ヘッダに対応する前記量子化データとを並べて出力する
集積回路。
【請求項２１】
量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行うストリーム処理装置であって、
前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、かつ、前記ストリームにおける前記第二符号化データの先頭位置を示す位置情報が前記ストリームの先頭ヘッダに含まれており、
前記ストリーム処理装置は、
前記ストリームを取得し、前記ストリームの前記先頭ヘッダから読み出した前記位置情報に基づいて、前記第一符号化データの出力と前記第二符号化データの出力とを並行して行うストリーム制御部と、
前記ストリーム制御部から出力された前記第一符号化データに対する伸張復号化および可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダを取得する第一ストリーム処理部と、
前記ストリーム制御部から出力された前記第二符号化データに対する前記伸張復号化および前記可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記量子化データを取得する第二ストリーム処理部と、
前記第一ストリーム処理部によって取得された前記ヘッダと、前記第二ストリーム処理部によって取得された、前記ヘッダに対応する量子化データとを並べて出力する出力部と
を備えるストリーム処理装置。
【請求項２２】
量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行うストリーム処理方法であって、
前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、かつ、前記ストリームにおける前記第二符号化データの先頭位置を示す位置情報が前記ストリームの先頭ヘッダに含まれており、
前記ストリーム処理方法は、
前記ストリームを取得し、前記ストリームの前記先頭ヘッダから読み出した前記位置情報に基づいて、前記第一符号化データの出力と前記第二符号化データの出力とを並行して行うストリーム制御ステップと、
前記ストリーム制御ステップにおいて出力された前記第一符号化データに対する伸張復号化および可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダを取得する第一ストリーム処理ステップと、
前記ストリーム制御ステップにおいて出力された前記第二符号化データに対する前記伸張復号化および前記可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記量子化データを取得する第二ストリーム処理ステップと、
前記第一ストリーム処理ステップにおいて取得された前記ヘッダと、前記第二ストリーム処理ステップにおいて取得された、前記ヘッダに対応する量子化データとを並べて出力する出力ステップと
を含むストリーム処理方法。
【請求項２３】
量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行う集積回路であって、
前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、かつ、前記ストリームにおける前記第二符号化データの先頭位置を示す位置情報が前記ストリームの先頭ヘッダに含まれており、
前記集積回路は、
前記ストリームを取得し、前記ストリームの前記先頭ヘッダから読み出した前記位置情報に基づいて、前記第一符号化データの出力と前記第二符号化データの出力とを並行して行うストリーム制御部と、
前記ストリーム制御部から出力された前記第一符号化データに対する伸張復号化および可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダを取得する第一ストリーム処理部と、
前記ストリーム制御部から出力された前記第二符号化データに対する前記伸張復号化および前記可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記量子化データを取得する第二ストリーム処理部と、
前記第一ストリーム処理部によって取得された前記ヘッダと、前記第二ストリーム処理部によって取得された、前記ヘッダに対応する量子化データとを並べて出力する出力部と
を備える集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを圧縮符号化することでストリームを生成するストリーム生成装置およびストリーム生成方法、ならびに、圧縮符号化されたストリームに対して復号処理を行うストリーム処理装置およびストリーム処理方法に関する。
【背景技術】
【０００２】
近年、Ｈ．２６４／ＡＶＣ規格に従う画像符号化方式（以下、Ｈ．２６４符号化方式という）が動画像の符号化方式として主流になっている。【０００３】
また、画像符号化技術は、ハードディスク、ＤＶＤ、およびＢＤなどの記録メディアへの動画像の記録だけでなく、通信分野にも適用され、特に近年、ブロードバンド化が進むインターネット上に動画像を流す際に用いられる圧縮技術として注目を浴びている。【０００４】
そのため、例えばＨ．２６４においても、特に通信分野に適したプロファイルが用意されており、データが欠落したとしてもこれを補うための技術が盛り込まれている。その一つにデータパーティショニングがある。【０００５】
データパーティショニングでは、画像符号化情報をいくつかのパーティションに分割して重要な情報とそうでない情報とに分類して、重要な情報が格納されるパーティションは情報が欠落しにくくするなどの工夫が施される。【０００６】
このようなデータパーティショニングについての技術も開示されている。例えば特許文献１には、比較的少ないハードウェア量でデータパーティショニングを実行する可変長符号化システムについての技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−４１１０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述のＨ．２６４符号化方式では、これまでＭＰＥＧ−２などの規格では用いられていなかった算術符号化を用いることで、大幅な符号化効率の向上を図ることができる。【０００９】
また、算術符号化を用いるＨ．２６４符号化方式は、動画像の符号化における演算量が膨大であるため、動画像をリアルタイムで符号化する必要がある場合には専用のハードウェアが必要とされる。【００１０】
ここで、画像符号化処理によって得られる画像データのストリーム（以下、単に「ストリーム」という。）を生成する従来のストリーム生成装置について説明する。【００１１】
ストリーム生成装置は、例えば、画像データに対して、面内予測、面間予測、周波数変換、および量子化を行う画像符号化装置において、量子化より後段に配置され、入力されたデータを符号化することでストリームを生成する装置である。【００１２】
従来のストリーム生成装置では、量子化データおよびヘッダを、可変長符号化および算術符号化によって圧縮することでストリームを生成し出力する。【００１３】
ここで、特に算術符号化等に代表される変動型の符号化を行う際には、その符号化の状況に応じて例えばビット単位の出力を行う際に必要となる処理量（演算量）が変化する。そのため、量子化データとヘッダとを、例えばマクロブロック等のブロック単位で処理する際に、予め定められた時間内に当該処理を終える事が難しい。【００１４】
そこで、例えば、前段部で算術符号化直前までの処理を終えた状態の中間データを一旦主記憶メモリに退避させ、後段部で算術符号化を行う際に主記憶メモリに退避させていた中間データを復帰させて処理するという方法が用いられる。この時、算術符号化の処理は、前述したマクロブロック等のブロックより大きい単位、例えば、スライスまたはピクチャといった単位で処理を行う。【００１５】
ストリーム生成装置から中間データが出力され、主記憶メモリに一時的に格納される際、前段部で生成された中間データは連続して一つの領域に格納される。ストリーム生成装置の後段部は、格納された順番に中間データを読み出し、その順で並べられた中間データを、例えばピクチャ単位で算術符号化する。【００１６】
その結果、後段部において、例えば、図１９に示すようなデータ配列のストリームが生成され出力される。ここで、ヘッダ１は、例えばＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅｓ）ヘッダであり、ヘッダ２は、例えばピクチャヘッダであり、ヘッダ３は、例えばマクロブロックヘッダである。【００１７】
しかし、例えばマクロブロックヘッダは、マクロブロックごとの量子化データの先頭に格納される。つまり、算術符号化を伴う処理によりストリームを生成する従来のストリーム生成装置では、データパーティショニングは行われていない。【００１８】
そこで、算術符号化を伴う処理によりストリームを生成する従来のストリーム生成装置において、上述のデータパーティショニングを行うことを想定する。【００１９】
この場合、ストリームにおいて、例えばマクロブロック単位に必要となる符号化情報（マクロブロックヘッダ）を一箇所に集中させる必要がある。【００２０】
しかし、そのためには、一旦、ピクチャ等の、算術符号化を実行する単位に含まれる全てのマクロブロックについての符号化情報を予め得た後に、算術符号化を行わなければなない。従って、当該単位についての算術符号化までの処理を２度行うか、または、別途判別回路を用意して算術符号化を行う際に符号化情報の内容を判別しながら処理を行わなければならない。【００２１】
すなわち、このような処理を実行する場合、処理を行う上でのデータ転送帯域、処理サイクル、および判別回路のためのチップコストなどのオーバーヘッドを伴うといった問題が生ずる。【００２２】
実際にＨ．２６４においてもデータパーティションの適用が認められているプロファイルにおいては、算術符号化の適用は認められていない。【００２３】
本発明は、上記従来の課題を考慮し、転送帯域または回路規模等のオーバーヘッドを抑えつつ、高いエラー耐性と高圧縮とが両立されたストリームの生成を行うことができるストリーム生成装置、および、当該ストリームに対して復号処理を行うストリーム処理装置を提供することを目的とする。
【課題を解決するための手段】
【００２４】
上記従来の課題を解決するために、本発明の一態様に係るストリーム生成装置は、量子化された画像データである量子化データと、前記量子化データに対応するヘッダとを受信し、受信された前記ヘッダと前記量子化データとに対して、可変長符号化および圧縮符号化を当該順序で行うことでストリームを生成するストリーム生成装置であって、受信された前記ヘッダおよび前記量子化データに対し、少なくとも前記ヘッダに対する前記可変長符号化を含む、第一処理を行う第一処理部と、前記第一処理が行われた後の前記ヘッダを、前記ストリーム生成装置に接続された記憶部が有する第一記憶領域に転送し、かつ、前記第一処理が行われた後の前記量子化データを、前記記憶部が有する第二記憶領域に転送する第一転送制御部と、前記第一処理が行われた後の所定の単位分の前記ヘッダを前記第一記憶領域から取得し、かつ、前記第一処理が行われた後の前記所定の単位分の前記量子化データを前記第二記憶領域から取得する第二転送制御部と、取得された、前記第一処理が行われた後の前記所定の単位分の前記ヘッダおよび前記量子化データに対し、少なくとも、前記第一処理が行われた後の前記所定の単位分の前記量子化データに対する前記圧縮符号化を含む、第二処理を行う第二処理部とを備え、前記第二処理部は、前記第一処理および前記第二処理によって得られた、（ｉ）前記所定の単位分の前記ヘッダである第一符号化データと、（ｉｉ）前記所定の単位分の量子化データである第二符号化データと、が連なったストリームを生成する。【００２５】
また、本発明の一態様に係るストリーム処理装置は、量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行うストリーム処理装置であって、前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、前記ストリーム処理装置は、前記ストリームに対し、少なくとも前記第二符号化データに対する伸張復号化を含む、第一復号処理を行う第一復号処理部と、前記第一復号処理が行われた後の前記第一符号化データである第一データを、前記ストリーム処理装置に接続された記憶部が有する第一記憶領域に転送し、かつ、前記第一復号処理が行われた後の前記第二符号化データである第二データを、前記記憶部が有する第二記憶領域に転送する第一転送制御部と、前記第一データを前記第一記憶領域から取得し、前記第二データを前記第二記憶領域から取得し、かつ、取得した前記第一データおよび前記第二データに含まれる、前記第一復号処理が行われた後の前記ヘッダのそれぞれと、前記ヘッダに対応する、前記第一復号処理が行われた後の前記量子化データとを出力する第二転送制御部と、前記第二転送制御部から出力された、前記第一復号処理が行われた後の前記ヘッダおよび前記量子化データに対し、少なくとも、前記ヘッダに対する可変長復号化を含む、第二復号処理を行う第二復号処理部とを備え、前記第二復号処理部は、前記第一復号処理および前記第二復号処理により得られた、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダと前記ヘッダに対応する前記量子化データとを並べて出力する。【００２６】
また、本発明の他の一態様に係るストリーム処理装置は、量子化された画像データである量子化データと前記量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームに対する復号処理を行うストリーム処理装置であって、前記ストリームには、所定の単位分の前記ヘッダである第一符号化データと、前記所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれており、かつ、前記ストリームにおける前記第二符号化データの先頭位置を示す位置情報が前記ストリームの先頭ヘッダに含まれており、前記ストリーム処理装置は、前記ストリームを取得し、前記ストリームの前記先頭ヘッダから読み出した前記位置情報に基づいて、前記第一符号化データの出力と前記第二符号化データの出力とを並行して行うストリーム制御部と、前記ストリーム制御部から出力された前記第一符号化データに対する伸張復号化および可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダを取得する第一ストリーム処理部と、前記ストリーム制御部から出力された前記第二符号化データに対する前記伸張復号化および前記可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記量子化データを取得する第二ストリーム処理部と、前記第一ストリーム処理部によって取得された前記ヘッダと、前記第二ストリーム処理部によって取得された、前記ヘッダに対応する量子化データとを並べて出力する出力部とを備える。
【発明の効果】
【００２７】
本発明によれば、転送帯域または実装回路等のオーバーヘッドを抑えつつ、高いエラー耐性と高圧縮とが両立されたストリームを生成するストリーム生成装置およびその方法を提供することができる。また、本発明によれば、当該ストリームに対して復号処理を行うストリーム処理装置およびその方法を提供することができる。【００２８】
本発明は、例えば、データパーティションと算術符号化とが適用されたストリームを生成することのできるストリーム生成装置およびその方法を提供することができる。また、本発明は、例えば、データパーティションと算術符号化とが適用されたストリームに対して復号処理を行うストリーム処理装置およびその方法を提供することができる。
【図面の簡単な説明】
【００２９】
【図１】図１は、実施の形態１における画像符号化装置の構成概要を示すブロック図である。
【図２】図２は、実施の形態１における画像符号化部の構成概要を示すブロック図である。
【図３】図３は、実施の形態１におけるストリーム生成装置の構成概要を示すブロック図である。
【図４】図４は、実施の形態１におけるストリーム生成装置によって生成されるストリームのデータ構成例を示す図である。
【図５】図５は、図３に示すストリーム生成装置における第一転送制御部および第二転送制御部のより詳細な構成を示す図である。
【図６】図６は、図５に示す第一転送制御部におけるヘッダ・データ分離回路の構成概要を示すブロック図である。
【図７】図７は、図６に示すヘッダ・データ分離回路における転送回路の構成概要を示すブロック図である。
【図８】図８は、実施の形態１における主記憶メモリのマッピングの一例を示す図である。
【図９】図９は、図５に示す第二転送制御部におけるヘッダ・データ連結回路の構成概要を示すブロック図である。
【図１０】図１０は、図９に示すヘッダ・データ連結回路における転送回路の構成概要を示すブロック図である。
【図１１】図１１は、実施の形態１における画像符号化部の処理の流れの一例を示すフローチャートである。
【図１２Ａ】図１２Ａは、図１１に示す符号化＿１における処理の流れの一例を示すフローチャートである。
【図１２Ｂ】図１２Ｂは、図１１に示す符号化＿２における処理の流れの一例を示すフローチャートである。
【図１３】図１３は、実施の形態２におけるストリーム生成装置の構成概要を示すブロック図である。
【図１４Ａ】図１４Ａは、実施の形態２の符号化＿１における処理の流れの一例を示すフローチャートである。
【図１４Ｂ】図１４Ｂは、実施の形態２の符号化＿２における処理の流れの一例を示すフローチャートである。
【図１５】図１５は、実施の形態１における画像符号化装置が、第一記憶領域と第二記憶領域とを物理的に別のメモリに有する場合の構成概要を示すブロック図である。
【図１６】図１６は、実施の形態１における画像符号化部が、第一主記憶メモリと第二主記憶メモリとに接続された場合の構成概要を示すブロック図である。
【図１７】図１７は、図１６に示す第一主記憶メモリおよび第二主記憶メモリそれぞれのマッピングの一例を示す図である。
【図１８】図１８は、実施の形態１または２におけるストリーム生成装置を備えるＡＶシステムの構成例を示す図である。
【図１９】図１９は、従来のストリームのデータ構成例を示す図である。
【図２０】図２０は、実施の形態３における画像復号化装置の構成概要を示すブロック図である。
【図２１】図２１は、実施の形態３における画像復号化部の構成概要を示すブロック図である。
【図２２】図２２は、実施の形態３におけるストリーム処理装置の構成概要を示すブロック図である。
【図２３】図２３は、実施の形態３におけるストリーム処理装置に入力されるストリームのデータ構成例を示す図である。
【図２４】図２４は、図２２に示すストリーム処理装置における第一転送制御部および第二転送制御部のより詳細な構成を示す図である。
【図２５】図２５は、図２４に示す第二転送制御部におけるヘッダ・データ紐付回路の構成概要を示すブロック図である。
【図２６】図２６は、図２５に示すヘッダ・データ紐付回路における転送回路の構成概要を示すブロック図である。
【図２７】図２７は、実施の形態３におけるストリーム処理装置の処理の流れの一例を示すフローチャートである。
【図２８Ａ】図２８Ａは、図２７に示す復号化＿１における処理の流れの一例を示すフローチャートである。
【図２８Ｂ】図２８Ｂは、図２７に示す復号化＿２における処理の流れの一例を示すフローチャートである。
【図２９Ａ】図２９Ａは、図２７に示す復号化＿１における処理の流れの別の一例を示すフローチャートである。
【図２９Ｂ】図２９Ｂは、図２７に示す復号化＿２における処理の流れの別の一例を示すフローチャートである。
【図３０】図３０は、実施の形態４におけるストリーム処理装置の構成概要の一例を示すブロック図である。
【図３１】図３１は、実施の形態４におけるストリーム処理装置の構成概要の別の一例を示すブロック図である。
【発明を実施するための形態】
【００３０】
上述の、本発明の一態様に係るストリーム生成装置によれば、ストリームの生成過程において、第一処理後のヘッダと、第一処理後の量子化データとが互いに異なる記憶領域に一時的に記憶される。そのため、第二転送制御部は、例えばピクチャ等の所定の単位分の量子化データのみを取得することができ、第二処理部は、当該所定の単位分の量子化データに対して、例えば圧縮符号化の一例である算術符号化を行うことができる。
【００３１】
その結果、復号に重要な符号化情報が集約された第一符号化データと、当該符号化情報に対応する画像の実体データが集約された第二符号化データとで構成されるストリームの生成が可能となる。
【００３２】
すなわち、本態様のストリーム生成装置は、高いエラー耐性と高圧縮が両立されたストリームの生成を実現することができる。
【００３３】
また、本発明の一態様に係るストリーム生成装置において、前記第一処理部は、前記第一処理である、受信された前記ヘッダと前記量子化データとに対する前記可変長符号化を行うことで、前記可変長符号化が行われた後の前記ヘッダである可変長符号化ヘッダと、前記可変長符号化が行われた後の前記量子化データである可変長量子化データとを生成し、前記第一転送制御部は、前記可変長符号化ヘッダを前記第一記憶領域に転送し、かつ、前記可変長量子化データを前記第二記憶領域に転送し、前記第二転送制御部は、前記所定の単位分の前記可変長符号化ヘッダを前記第一記憶領域から取得し、かつ、前記所定の単位分の前記可変長量子化データを前記第二記憶領域から取得し、前記第二処理部は、前記第二処理である、取得された前記所定の単位分の前記可変長符号化ヘッダおよび前記可変長量子化データに対する前記圧縮符号化を行うことで得られる前記第一符号化データと前記第二符号化データとを用いて前記ストリームを生成するとしてもよい。
【００３４】
この構成によれば、ヘッダおよび量子化データに対する可変長符号化が第一処理部で行われ、可変長符号化後のヘッダおよび量子化データに対する圧縮符号化が第二処理部で行われる。
【００３５】
具体的には、可変長符号化後のヘッダおよび量子化データが、第一転送制御部により、互いに異なる記憶領域に転送される。また、第二転送制御部は、ピクチャ等の所定の単位分の可変長符号化後のヘッダおよび量子化データをそれぞれ取得することができる。これにより、第二処理部は、例えば、所定の単位分のヘッダに対する圧縮符号化を行った後に所定の単位分の量子化データに対する圧縮符号化を行うことができる。
【００３６】
すなわち、このような構成によっても、符号化情報が所定の範囲内に集約されることでエラー耐性が向上され、かつ、算術符号化等の高圧縮の手法により符号化されたストリームを得ることができる。
【００３７】
また、本発明の一態様に係るストリーム生成装置において、前記第一処理部は、前記第一処理である、受信された前記ヘッダに対する前記可変長符号化および前記圧縮符号化、ならびに、受信された量子化データの前記第一転送制御部への入力、を行い、前記第一転送制御部は、前記可変長符号化と前記圧縮符号化とが行われた前記ヘッダを前記第一記憶領域に転送し、かつ、入力された前記量子化データを前記第二記憶領域に転送し、前記第二転送制御部は、前記所定の単位分の、前記可変長符号化と前記圧縮符号化とが行われた前記ヘッダを前記第一記憶領域から取得し、かつ、前記所定の単位分の前記量子化データを前記第二記憶領域から取得し、前記第二処理部は、前記第二処理である、取得された前記所定の単位分の前記ヘッダの前記第二転送制御部からの受信、ならびに、取得された前記所定の単位分の前記量子化データに対する前記可変長符号化および前記圧縮符号化によって得られる、前記第一符号化データと前記第二符号化データとを用いて前記ストリームを生成するとしてもよい。
【００３８】
この構成によれば、ヘッダに対する可変長符号化および圧縮符号化が第一処理部で行われ、量子化データに対する可変長符号化および圧縮符号化が第二処理部で行われる。
【００３９】
具体的には、量子化データ、および圧縮符号化後のヘッダが、第一転送制御部により、互いに異なる記憶領域に転送される。また、第二転送制御部は、ピクチャ等の所定の単位分の圧縮符号化まで終えたヘッダ、および、可変長符号化および圧縮符号化がなされていない所定の単位分の量子化データをそれぞれ取得することができる。
【００４０】
これにより、第二処理部は、所定の単位分の量子化データに対する可変長符号化と圧縮符号化とを行い、圧縮符号化までを終えた所定の単位分のヘッダ（第一符号化データ）と、圧縮符号化までを終えた所定の単位分の量子化データ（第二符号化データ）とが連なったストリームを生成することができる。
【００４１】
すなわち、このような構成によっても、符号化情報が所定の範囲内に集約されることでエラー耐性が向上され、かつ、算術符号化等の高圧縮の手法により符号化されたストリームを得ることができる。
【００４２】
また、本発明の一態様に係るストリーム生成装置において、前記第一転送制御部は、前記第一処理が行われた後の前記ヘッダを前記第一記憶領域に転送する際に、前記第一記憶領域に含まれる１つのワードに、前記ヘッダの少なくとも一部と他のヘッダの少なくとも一部とが連続して格納されるように転送し、前記第一処理が行われた後の前記量子化データを前記第二記憶領域に転送する際に、前記第二記憶領域に含まれる１つのワードに、前記量子化データの少なくとも一部と他の量子化データの少なくとも一部とが連続して格納されるように転送するとしてもよい。
【００４３】
この構成によれば、ヘッダが一時的に第一記憶領域に記憶される場合、記憶容量を無駄に消費することなく効率よく記憶される。また、量子化データについても同様に、第二記憶領域の記憶容量を無駄に消費することなく効率よく記憶される。
【００４４】
また、本発明の一態様に係るストリーム生成装置において、前記第一転送制御部は、前記ヘッダおよび前記量子化データの転送を行う際に参照する第一アドレス情報および第二アドレス情報であって、前記第一転送制御部から転送される前記第一処理が行われた後の前記ヘッダが格納される、前記第一記憶領域におけるアドレスを示す第一アドレス情報と、前記第一転送制御部から転送される前記第一処理が行われた後の前記量子化データが格納される、前記第二記憶領域におけるアドレスを示す第二アドレス情報とを有するとしてもよい。
【００４５】
この構成によれば、例えば、第一記憶領域へのヘッダの記憶と、第二記憶領域への量子化データの記憶とが、第一アドレス情報および第二アドレス情報に基づく管理により的確に実行される。
【００４６】
また、本発明の一態様に係るストリーム生成装置において、前記第一転送制御部は、前記第一処理が行われた後の前記ヘッダを前記第一記憶領域に転送することで、前記記憶部が備える第一メモリが有する前記第一記憶領域に前記ヘッダを格納させ、かつ、前記第一処理が行われた後の前記量子化データを前記第二記憶領域に転送することで、前記記憶部が備える第二メモリであって、前記第一メモリとは物理的に異なる第二メモリが有する前記第二記憶領域に、前記量子化データを格納させるとしてもよい。
【００４７】
また、本発明の一態様に係るストリーム生成装置において、前記第一転送制御部は、前記第一処理が行われた後の前記ヘッダを前記第一記憶領域に転送することで、前記記憶部が備えるメモリが有する前記第一記憶領域に前記ヘッダを格納させ、かつ、前記第一処理が行われた後の前記量子化データを前記第二記憶領域に転送することで、前記メモリが有する前記第二記憶領域に前記量子化データを格納させるとしてもよい。
【００４８】
つまり、ヘッダ用の一時的な格納場所である第一記憶領域と、量子化データ用の一時的な格納場所である第二記憶領域とは、物理的に異なる２つのメモリに存在してもよく、物理的に同一の１つのメモリに存在していてもよい。
【００４９】
また、本発明の一態様に係るストリーム生成装置において、前記第二転送制御部は、前記所定の単位分の前記ヘッダである前記第一処理が行われた後の１ピクチャ分の前記ヘッダを前記第一記憶領域から取得し、かつ、前記所定の単位分の量子化データである前記第一処理が行われた後の当該１ピクチャ分の前記量子化データを前記第二記憶領域から取得し、前記第二処理部は、取得された当該１ピクチャ分の前記ヘッダおよび前記量子化データに対して前記第二処理を行い、かつ、当該１ピクチャ分の第一符号化データと当該１ピクチャ分の第二符号化データが連なったストリームを生成するとしてもよい。
【００５０】
また、本発明は上記いずれかの態様に係るストリーム生成装置を備える画像符号化装置として実現することもできる。
【００５１】
また、本発明は、上記いずれかの態様に係るストリーム生成装置が実行する特徴的な処理を含むストリーム生成方法として実現することもできる。また、当該ストリーム生成方法が含む各処理をコンピュータに実行させるためのプログラムとして実現すること、および、そのプログラムが記録された記録媒体として実現することもできる。そして、そのプログラムをインターネット等の伝送媒体又はＤＶＤ等の記録媒体を介して配信することもできる。
【００５２】
また、本発明は、上記いずれかの態様に係るストリーム生成装置の構成の一部または全部を含む集積回路として実現することもできる。
【００５３】
また、上述の、本発明の一態様に係るストリーム処理装置によれば、高いエラー耐性と高圧縮が両立されたストリームの復号処理を効率よく行うことができる。
【００５４】
具体的には、可変長符号化および圧縮符号化により得られたストリームに含まれる第一符号化データ（ヘッダ：復号に重要な符号化情報）と第二符号化データ（量子化データ：画像の実体データ）とに対する前段の処理結果である第一データおよび第二データが、互いに異なる記憶領域に一時的に記憶される。
【００５５】
例えば、復号処理に適した所定の単位ごとに、第一データと第二データとを、互いに異なる記憶領域に一時的に記憶させることができる。
【００５６】
さらに、これら記憶領域から読み出された第一データおよび第二データそれぞれに対する後段の処理が適切に実行される。
【００５７】
その結果、可変長符号化および圧縮符号化がなされる前の、当該所定の単位分のヘッダのそれぞれと、当該ヘッダに対応する量子化データとの組みが順次出力される。
【００５８】
また、本発明の一態様に係るストリーム処理装置において、前記第一復号処理部は、前記第一復号処理である、前記第一符号化データと前記第二符号化データとに対する前記伸張復号化を行うことで、前記第一データと前記第二データとを生成し、前記第二復号処理部は、前記第二復号処理である、前記伸張復号化が行われた後の前記ヘッダおよび前記量子化データに対する可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダおよび前記量子化データを生成するとしてもよい。
【００５９】
この構成によれば、ヘッダおよび量子化データに対する伸張復号化が第一復号処理部で行われ、伸張復号化後のヘッダおよび量子化データに対する可変長復号化が第二処理部で行われる。つまり、このような構成でも、可変長符号化および圧縮符号化により得られたストリームの効率のよい復号処理が実現される。
【００６０】
また、本発明の一態様に係るストリーム処理装置において、前記第一復号処理部は、前記第一復号処理である、前記第二符号化データに対する前記伸張復号化および前記可変長復号化、ならびに、前記第一符号化データの前記第一転送制御部への入力、を行い、前記第一転送制御部は、前記第一データである、前記第一復号処理部から入力された前記第一符号化データを前記第一記憶領域に転送し、かつ、前記第二データである、前記伸張復号化および前記可変長復号化が行われた後の前記第二符号化データを前記第二記憶領域に転送し、前記第二転送制御部は、取得した前記第一データおよび第二データに含まれる、前記伸張復号化および前記可変長復号化が行われた後の前記ヘッダのそれぞれと、前記ヘッダに対応する、前記伸張復号化および前記可変長復号化が行われていない前記量子化データとを出力し、前記第二復号処理部は、前記第二復号処理である、前記伸張復号化および前記可変長復号化が行われた後の前記ヘッダの前記第二転送制御部からの受信、ならびに、前記第二転送制御部から出力された前記量子化データに対する前記伸張復号化および前記可変長復号化を行うことで、前記可変長符号化および前記圧縮符号化がなされる前の前記ヘッダおよび前記量子化データを生成するとしてもよい。
【００６１】
この構成によれば、ヘッダに対する伸張復号化と可変長復号化とが第一復号処理部で行われ、量子化データに対する可変長復号化と可変長復号化とが第二処理部で行われる。つまり、このような構成でも、可変長符号化および圧縮符号化により得られたストリームの効率のよい復号処理が実現される。
【００６２】
また、本発明の一態様に係るストリーム処理装置において、前記第一転送制御部は、前記第一データを前記第一記憶領域に転送する際に、前記第一記憶領域に含まれる１つのワードに、前記第一データに含まれる、１つのヘッダの少なくとも一部と他のヘッダの少なくとも一部とが連続して格納されるように転送し、前記第二データを前記第二記憶領域に転送する際に、前記第二記憶領域に含まれる１つのワードに、前記第一データに含まれる、１つの量子化データの少なくとも一部と他の量子化データの少なくとも一部とが連続して格納されるように転送するとしてもよい。
【００６３】
この構成によれば、ヘッダが一時的に第一記憶領域に記憶される場合、記憶容量を無駄に消費することなく効率よく記憶される。また、量子化データについても同様に、第二記憶領域の記憶容量を無駄に消費することなく効率よく記憶される。
【００６４】
また、本発明の一態様に係るストリーム生成装置において、前記第一転送制御部は、前記第一データおよび前記第二データの転送を行う際に参照する第一アドレス情報および第二アドレス情報であって、前記第一転送制御部から転送される前記第一データが格納される、前記第一記憶領域におけるアドレスを示す第一アドレス情報と、前記第一転送制御部から転送される前記第二データが格納される、前記第二記憶領域におけるアドレスを示す第二アドレス情報とを有するとしてもよい。
【００６５】
この構成によれば、例えば、第一記憶領域への第一データの記憶と、第二記憶領域への第二データの記憶とが、第一アドレス情報および第二アドレス情報に基づく管理により的確に実行される。
【００６６】
また、本発明の一態様に係るストリーム処理装置において、前記第一転送制御部は、前記第一データを前記第一記憶領域に転送することで、前記記憶部が備える第一メモリが有する前記第一記憶領域に前記第一データを格納させ、かつ、前記第二データを前記第二記憶領域に転送することで、前記記憶部が備える第二メモリであって、前記第一メモリとは物理的に異なる第二メモリが有する前記第二記憶領域に、前記第二データを格納させるとしてもよい。
【００６７】
また、本発明の一態様に係るストリーム処理装置において、前記第一転送制御部は、前記第一データを前記第一記憶領域に転送することで、前記記憶部が備えるメモリが有する前記第一記憶領域に前記第一データを格納させ、かつ、前記第二データを前記第二記憶領域に転送することで、前記メモリが有する前記第二記憶領域に前記量子化データを格納させるとしてもよい。
【００６８】
つまり、ヘッダ用の一時的な格納場所である第一記憶領域と、量子化データ用の一時的な格納場所である第二記憶領域とは、物理的に異なる２つのメモリに存在してもよく、物理的に同一の１つのメモリに存在していてもよい。
【００６９】
また、本発明の一態様に係るストリーム処理装置において、前記第一復号処理部は、前記所定の単位分である１ピクチャ分の前記ヘッダおよび前記量子化データである前記第一符号化データおよび前記第二符号化データに対して前記第一復号処理を行い、前記第一転送制御部は、当該１ピクチャ分の、前記第一復号処理が行われた後の前記ヘッダを含む前記第一データを前記第一記憶領域に転送し、かつ、当該１ピクチャ分の、前記第一復号処理が行われた後の前記量子化データを含む前記第二データを前記第二記憶領域に転送するとしてもよい。
【００７０】
また、本発明の他の一態様に係るストリーム処理装置よれば、ストリームの先頭ヘッダに含まれる位置情報を参照することでで、即座に、第一符号化データと第二符号化データの境目の位置を特定することができる。そのため、第一符号化データと第二符号化データとを並行して、それぞれの処理部（第一ストリーム処理部および第二ストリーム処理部）に入力することができる。
【００７１】
その結果、例えば、１ピクチャ分のヘッダについての復号処理と、当該１ピクチャ分の量子化データとの復号処理とが並行して実行される。つまり、このような構成によっても、可変長符号化および圧縮符号化により得られたストリームの効率のよい復号処理が実現される。
【００７２】
また、本発明は上記いずれかの態様に係るストリーム処理装置を備える画像復号化装置として実現することもできる。
【００７３】
また、本発明は、上記いずれかの態様に係るストリーム生成装置が実行する特徴的な処理を含むストリーム処理方法として実現することもできる。また、当該ストリーム処理方法が含む各処理をコンピュータに実行させるためのプログラムとして実現すること、および、そのプログラムが記録された記録媒体として実現することもできる。そして、そのプログラムをインターネット等の伝送媒体又はＤＶＤ等の記録媒体を介して配信することもできる。
【００７４】
以下、図面を参照しつつ、本発明の実施の形態について説明する。なお、各図は、模式図であり、必ずしも厳密に図示したものではない。
【００７５】
また、以下で説明する各実施の形態では、本発明の好ましい一具体例が示されている。各実施の形態で示される数値、形状、構成要素、構成要素の配置および接続形態などは、一例であり、本発明を限定する主旨ではない。本発明は、請求の範囲によって限定される。よって、以下の各実施の形態における構成要素のうち、独立請求項に記載されていない構成要素は、本発明の課題を達成するのに必ずしも必要ではないが、より好ましい形態を構成する要素として説明される。
【００７６】
また、以下の説明では、同一の構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない場合もある。
【００７７】
（実施の形態１）
図１は、実施の形態１における画像符号化装置１０の構成概要を示すブロック図である。
【００７８】
図１に示すように、画像符号化装置１０は、画像符号化部１００と、制御部５０と、主記憶メモリ２０とを備える。
【００７９】
主記憶メモリ２０は、データを記憶するためのメモリ（例えば、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））である。
【００８０】
制御部５０は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のプロセッサ（図示せず）と、メモリ制御回路（図示せず）とを含む。
【００８１】
画像符号化装置１０において、画像符号化部１００は、入力された画像に対し、画像符号化部１００の外部に設置された主記憶メモリ２０を用いて、制御部５０を介した中間データを退避および復帰を行いながら圧縮したデータを生成し、ストリームとして出力する。
【００８２】
また制御部５０は、画像符号化部１００と主記憶メモリ２０との間のデータの転送を制御するだけでなく、画像符号化部１００の制御も行う。
【００８３】
図２は、実施の形態１における画像符号化部１００の構成概要を示すブロック図である。
【００８４】
図２を用いて、画像符号化部１００の基本的な処理内容を説明する。なお、図２では、図１における制御部５０の図示は省略されている。
【００８５】
画像符号化部１００に入力された画像は、スイッチ１０３を介して、画面内の空間的相関性を利用した予測によって冗長な情報を取り除く面内予測部１０１と、画面間の時間的相関性を利用した予測によって冗長な情報を取り除く面間予測部１０２とに入力される。
【００８６】
スイッチ１０４は、符号化するピクチャのタイプによって、または、面内予測と面間予測の何れが符号化に適しているかに応じて、面内予測部１０１および面間予測部１０２の一方を選択する。これにより、入力画像と予測画像との差となる差分画像のデータである差分データが周波数変換部１０５に入力される。
【００８７】
周波数変換部１０５に入力された差分データは、例えば離散コサイン変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ（ＤＣＴ））によって２次元の周波数成分の情報に変換される。この変換により得られたＤＣＴ係数データは、量子化部１０６によって人間の視覚に影響の少ない高周波成分が取り除かれることで圧縮される。
【００８８】
この量子化部１０６から得られる、比較的低周波成分に集中したデータ（以下「量子化データ」という。）は、ストリーム生成装置２００において、例えば、ジグザク状に走査した順序で、可変長符号化および算術符号化等によって更に圧縮された上で、これに、符号化タイプ等の符号化情報を示す先頭情報（以下「ヘッダ」という。）が付加され、ストリームとして出力される。ストリーム生成装置２００の詳細については図３等を用いて後述する。
【００８９】
また、量子化データは、再び量子化前の状態に近い情報に復元する為に逆量子化部１０７に入力され、続いて逆周波数変換部１０８によって、元の差分画像データ、または、これに近似したデータに復元される。復元されたデータと、当該データに対応する予測画像のデータとが合成される事で、再構成画像が生成される。生成された再構成画像は、そのまま、または、ループフィルタ１０９によるデブロッキング処理が行われた後に主記憶メモリ２０に退避され、その後に面間予測を行う際に、主記憶メモリ２０から読み出される。
【００９０】
なお、周波数変換部１０５および逆周波数変換部１０８は、周波数変換の手法として離散コサイン変換以外の手法を採用してもよい。また、ストリーム生成装置２００における走査順はジグザク以外の方法を適用してもよい。また、ストリーム生成装置２００における圧縮符号化の手法として、可変長符号化および算術符号化以外の手法が採用されてもよい。
【００９１】
図３は、実施の形態１におけるストリーム生成装置２００の構成概要を示すブロック図である。
【００９２】
ストリーム生成装置２００は、前段部２１０と後段部２２０とを備える。前段部２１０および後段部２２０はそれぞれ、ストリーム生成装置２００に接続された、記憶部の一例である主記憶メモリ２０と通信可能である。
【００９３】
ストリーム生成装置２００では、量子化部１０６から入力される量子化データ、および画像を復号する際に必要な符号化情報を示すヘッダを、例えば可変長符号化および算術符号化によって圧縮し、ストリームデータを出力する。
【００９４】
この時、特に算術符号化等に代表される変動型の符号化を行う際には、上述のように、その状況に応じて例えばビット単位の出力を行う際に必要となる処理量（演算量）が変化する。
【００９５】
そこで、実施の形態１におけるストリーム生成装置２００では、算術符号化直前までの処理を終えた状態の中間データを一旦主記憶メモリ２０に退避させ、算術符号化を行う際に主記憶メモリ２０に退避させていた中間データを復帰させて処理するという方法が採用されている。
【００９６】
なお、算術符号化の処理は、上述のように、マクロブロックやブロックよりも大きい単位であるスライスまたはピクチャといった単位で行われる。
【００９７】
具体的には、前段部２１０は、第一処理部２１１と第一転送制御部２１２とを有する。第一処理部２１１は、少なくともヘッダに対する可変長符号化を含む第一処理を行う。第一転送制御部２１２は、第一処理が行われた後のヘッダを、主記憶メモリ２０が有する第一記憶領域に転送し、かつ、第一処理が行われた後の量子化データを主記憶メモリ２０が有する第二記憶領域に転送する。
【００９８】
より詳細には、本実施の形態における第一処理部２１１は、第一処理である、ヘッダと量子化データとに対する可変長符号化を行うことで、可変長符号化が行われた後のヘッダである可変長符号化ヘッダと、可変長符号化が行われた後の量子化データである可変長量子化データとを生成する。なお、本実施の形態では、上記可変長符号化として２値化が実行される。
【００９９】
また、本実施の形態における第一転送制御部２１２は、可変長符号化ヘッダを第一記憶領域に転送し、かつ、可変長量子化データを前記第二記憶領域に転送する。つまり、第一転送制御部２１２は、それぞれが中間データである可変長符号化ヘッダおよび可変長量子化データを主記憶メモリ２０内の別々の記憶領域に退避させる。
【０１００】
なお、第一転送制御部２１２は、このような退避処理を制御するための、少なくとも２種類の転送制御情報を保持しており、退避処理（転送処理）の際にこれら転送制御情報を参照する。
【０１０１】
具体的には、第一転送制御部２１２は、第一記憶領域に対応する退避転送情報ａと第二記憶領域に対応する退避転送情報ｂとを保持している。
【０１０２】
また、後段部２２０は、第二処理部２２１と第二転送制御部２２２とを有する。第二転送制御部２２２は、第一処理が行われた後の所定の単位分のヘッダを第一記憶領域から取得し、かつ、第一処理が行われた後の所定の単位分の量子化データを第二記憶領域から取得する。
【０１０３】
第二処理部２２１は、少なくとも所定の単位分の量子化データに対する前記圧縮符号化を含む第二処理を行う。第二処理部２２１はさらに、第一処理および第二処理によって得られた、第一符号化データと第二符号化データとが連なったストリームを生成する。
【０１０４】
なお、第一符号化データとは、可変長符号化および圧縮符号化が行われた所定の単位分のヘッダで構成されるデータである。また、第二符号化データとは、可変長符号化および圧縮符号化が行われた所定の単位分の量子化データで構成されたデータである。
【０１０５】
より詳細には、本実施の形態における第二転送制御部２２２は、所定の単位分の可変長符号化ヘッダを第一記憶領域から取得し、かつ、所定の単位分の可変長量子化データを第二記憶領域から取得する。つまり、第一記憶領域および第二記憶領域に退避されていた中間データが、第二転送制御部２２２によって復帰される。
【０１０６】
なお、第二転送制御部２２２は、このような復帰処理を制御するための、少なくとも２種類の転送制御情報を保持しており、復帰処理（転送処理）の際にこれら転送制御情報を参照する。
【０１０７】
具体的には、第二転送制御部２２２は、第一記憶領域に対応する復帰転送情報ａと第二記憶領域に対応する復帰転送情報ｂとを保持している。
【０１０８】
また、本実施の形態における第二処理部２２１は、取得された所定の単位分の可変長符号化ヘッダと所定の単位分の可変長量子化データとを圧縮符号化することで得られる第一符号化データと第二符号化データとを用いてストリームを生成する。なお、本実施の形態では、上記圧縮符号化として算術符号化が実行される。
【０１０９】
ストリーム生成装置２００は上記構成を備えることで、データパーティショニングおよび算術符号化の双方が適用されたストリームの生成を実現している。
【０１１０】
図４は、実施の形態１におけるストリーム生成装置２００によって生成されるストリームのデータ構成例を示す図である。
【０１１１】
ここで、データパーティショニングを行う際、重要な情報をよりエラー耐性の高い部分に集中させる為、特にヘッダが所定の場所に集められる事が多い。特にマクロブロック等のブロック単位に付与されるヘッダが、例えばストリームの先頭、または、スライス単位もしくはピクチャ単位のデータが格納される部分の先頭に集中する。すなわち、その他のデータ、例えば量子化データなどは全く別の場所に格納される。
【０１１２】
図４はこのような特性を有するデータパーティショニング後のデータ構成例を示している。なお、ヘッダ１は、例えばＧＯＰヘッダであり、ヘッダ２は、例えばピクチャヘッダであり、ヘッダ３は、例えばマクロブロックヘッダ（図中で「ＭＨ」と表記）である。
【０１１３】
つまり、図４に示すストリームは、ピクチャ単位で算術符号化されたデータで構成されており、１つのピクチャを構成するｎ個のマクロブロックに対応するｎ個のマクロブロックヘッダ群に続いて、当該マクロブロックヘッダ群に対応するｎ個の量子化データ郡が連なっている。このマクロブロックヘッダ群は第一符号化データの一例であり、量子化データ郡は第二符号化データの一例である。
【０１１４】
なお、ヘッダ１〜３とヘッダ種類との対応関係は、上記対応関係に限定されない。例えば、上記対応関係において、ヘッダ２が、スライスヘッダ、または、ピクチャヘッダおよびスライスヘッダであってもよい。
【０１１５】
また、例えば、ヘッダ１がピクチャヘッダであり、ヘッダ２がスライスヘッダであり、ヘッダ３がマクロブロックヘッダであってもよい。
【０１１６】
また、図４に示すように、３種類のヘッダが含まれている必要はなく、例えば、ＧＯＰヘッダが存在せず、ピクチャヘッダおよびスライスヘッダの少なくとも一方と、マクロブラックヘッダとが集約されてストリームに格納されていてもよい。
【０１１７】
このようなデータパーティショニングを伴うストリームを生成するための構成について、図５〜図１０を用いて以下に説明する。
【０１１８】
図５は、図３に示すストリーム生成装置２００における第一転送制御部２１２および第二転送制御部２２２のより詳細な構成を示す図である。
【０１１９】
前段部２１０における第一転送制御部２１２には、各種データの転送を制御するための制御情報が、例えば、画像符号化部１００の動作を制御する制御部５０により、予め、退避転送情報ａおよび退避転送情報ｂとして設定されている。
【０１２０】
第一転送制御部２１２では、ヘッダ・データ分離回路２１３が、これらの情報に基づいて、第一処理部２１１から入力された中間データを、主記憶メモリ２０の所定の領域へ分離して転送する。
【０１２１】
具体的には、ヘッダ・データ分離回路２１３は、第一処理部２１１による２値化処理により得られた可変長符号化ヘッダと可変長量子化データとを取得する。ヘッダ・データ分離回路２１３は、退避転送情報ａに従って、２値データである可変長符号化ヘッダを、主記憶メモリ２０の第一記憶領域に転送する。また、ヘッダ・データ分離回路２１３は、退避転送情報ｂに従って、２値データである可変長量子化データを、主記憶メモリ２０の第二記憶領域に転送する。
【０１２２】
なお、退避転送情報ａは、第一アドレス情報の一例であり、例えば、ヘッダが格納される、第一記憶領域におけるアドレスを示す情報が含まれる。また、退避転送情報ｂは、第二アドレス情報の一例であり、例えば、量子化データが格納される、第二記憶領域におけるアドレスを示す情報が含まれる。
【０１２３】
一方、後段部２２０における第二転送制御部２２２には、各種データの転送を制御するための制御情報が、例えば、画像符号化部１００の動作を制御する制御部５０により、予め、復帰転送情報ａおよび復帰転送情報ｂとして設定されている。
【０１２４】
第二転送制御部２２２では、これらの情報に基づいてヘッダ・データ連結回路２２３が、主記憶メモリ２０の所定の領域から中間データを転送し、連結して第二処理部２２１へ出力する。
【０１２５】
具体的には、ヘッダ・データ連結回路２２３は、復帰転送情報ａに従って、ピクチャ等の所定の単位分の可変長符号化ヘッダを主記憶メモリ２０の第一記憶領域から取得する。また、ヘッダ・データ連結回路２２３は、復帰転送情報ｂに従って、当該所定の単位分の可変長量子化データを、主記憶メモリ２０の第二記憶領域から取得する。
【０１２６】
なお、復帰転送情報ａには、例えば、第一記憶領域のヘッダが格納されているアドレスを示す情報が含まれる。また、復帰転送情報ｂには、例えば、第二記憶領域の量子化データが格納されているアドレスを示す情報が含まれる。
【０１２７】
ヘッダ・データ連結回路２２３は、取得した当該所定の単位分可変長符号化ヘッダと可変長量子化データとを連結し、第二処理部２２１に入力する。第二処理部２２１は、入力された当該所定の単位分可変長符号化ヘッダと可変長量子化データとに対して算術符号化により圧縮することでストリームを生成する。
【０１２８】
図６は、図５に示す第一転送制御部２１２におけるヘッダ・データ分離回路２１３の構成概要を示すブロック図である。
【０１２９】
ヘッダ・データ分離回路２１３では、退避転送情報ａまたは退避転送情報ｂに設定された情報に基づいて第一処理部２１１から入力された中間データを主記憶メモリ２０に転送する。
【０１３０】
具体的には、第一処理部２１１から入力された中間データが、可変長符号化が行われた後のヘッダ（以下、単に「ヘッダ」ともいう。）の場合、例えばこれを第一記憶領域に転送するために用いられる情報（当該ヘッダが格納されるアドレスなど）が退避転送情報ａに設定されていれば、選択回路２１４がこの情報を選択し、制御回路２１５に受け渡す。
【０１３１】
制御回路２１５は、ヘッダの格納先となる、主記憶メモリ２０の第一記憶領域におけるアドレスと、書き込みに必要な制御信号とを出力する。また制御回路２１５は、転送回路２１６により出力されるヘッダとの同期を図る為の制御信号を転送回路２１６に受け渡す。
【０１３２】
転送回路２１６は制御回路２１５から入力された制御信号に基づいてヘッダを主記憶メモリ２０に出力する。また、転送回路２１６を通過するヘッダの情報は、監視回路２１７に受け渡される。監視回路２１７は、転送に用いられた情報を退避情報として退避転送情報ａの一部にフィードバックする。
【０１３３】
退避転送情報ａに格納された、ヘッダの転送に用いられた退避情報は、制御部５０に読み出され、後段部２２０が有する復帰転送情報ａの更新等に用いられる。
【０１３４】
次に、第一処理部２１１から入力された中間データが、可変長符号化が行われた後の量子化データ（以下、単に「量子化データ」ともいう。）の場合、例えばこれを第二記憶領域に転送するために用いられる情報（当該量子化データが格納されるアドレスなど）が退避転送情報ｂに設定されていれば、選択回路２１４がこの情報を選択し、制御回路２１５に受け渡す。
【０１３５】
制御回路２１５は、量子化データの格納先となる、主記憶メモリ２０の第二記憶領域におけるアドレスと、書き込みに必要な制御信号とを出力する。また制御回路２１５は、転送回路２１６により出力されるヘッダとの同期を図る為の制御信号を転送回路２１６に受け渡す。
【０１３６】
転送回路２１６は、制御回路２１５から入力された制御信号に基づいて量子化データを主記憶メモリ２０に出力する。また、転送回路２１６を通過する量子化データの情報は、監視回路２１７に受け渡される。監視回路２１７は、転送に用いられた情報を退避情報として退避転送情報ｂの一部にフィードバックする。
【０１３７】
退避転送情報ｂに格納された、量子化データの転送に用いられた退避情報は、制御部５０に読み出され、後段部２２０が有する復帰転送情報ｂの更新等に用いられる。
【０１３８】
なお、中間データとして第一記憶領域に転送される複数のヘッダのそれぞれは、第一記憶領域において、互いに異なるワードに格納されるのではなく、例えばピクチャ等の所定の単位ごとに詰めて第一記憶領域に格納される。
【０１３９】
つまり、あるヘッダに着目すると、１つのワードに、当該ヘッダの少なくとも一部と、他のヘッダの少なくとも一部とが連続して格納されるように、当該ヘッダは第一記憶領域に転送される。
【０１４０】
例えば、１ワードが１６ビットであり、あるヘッダが１０ビットである場合を想定する。この場合、例えば、当該ヘッダの全てと、次のヘッダの先頭から６ビットとが、空のワードに格納される。
【０１４１】
なお、量子化データも同様である。すなわち、第二記憶領域において、１つのワードに、ある量子化データの少なくとも一部と、他の量子化データの少なくとも一部とが連続して格納されるように、当該量子化データは第二記憶領域に転送される。
【０１４２】
このように、第一記憶領域および第二記憶領域のそれぞれにおいて、中間データを詰めるように格納することで、第一記憶領域および第二記憶領域の記憶容量を無駄に消費することがない。すなわち、第一記憶領域および第二記憶領域が効率的に使用される。
【０１４３】
図７は、図６に示すヘッダ・データ分離回路２１３における転送回路２１６の構成概要を示すブロック図である。
【０１４４】
転送回路２１６では、ビット調整部２１６ｂが、制御回路２１５から入力された制御信号に応じて、第一処理部２１１から入力されたヘッダまたは量子化データと言った中間データを、主記憶メモリ２０への転送に適したデータ量に分割して内部のバッファ２１６ａに受け渡す。つまり、制御回路２１５から出力されるアドレスと制御信号とに同期して中間データが出力される様にビット単位またはバイト単位など、出力される単位の調整が行われる。
【０１４５】
また、ビット調整部２１６ｂは、第一処理部２１１から入力されるヘッダの終端を検出する。ビット調整部２１６ｂは、その検出の結果、例えば、当該ヘッダのサイズが主記憶メモリ２０へ転送する際の転送単位内に収まらず、当該ヘッダの一部が残部となると判断した場合、例えば以下の処理を行う。
【０１４６】
ビット調整部２１６ｂは、例えば、次のヘッダが入力されるまで、当該残部を一時的に内部のバッファ２１６ａに退避させておく。または、ビット調整部２１６ｂは、残部の後ろに意味の無いデータを付加して、主記憶メモリ２０へ転送する際の転送単位に収まるサイズにして転送を行う。
【０１４７】
この時、何れの場合であっても、データの転送ごとに、主記憶メモリ２０に転送したデータの量がどの程度であるのかを、例えばビット量の情報として、監視回路２１７に受け渡す。
【０１４８】
転送回路２１６は、この様にして、データの転送ごとに、転送されたヘッダが最後にどの様な状態で転送を終えたのかを示す情報を残しておく。
【０１４９】
これにより、次のヘッダが第一処理部２１１から入力された時に、前回の転送においてヘッダの残部を内部のバッファ２１６ａに退避していた場合には、これを復帰させた上で、当該残部の終端と、今回転送しようとしているヘッダの先頭とを連結する事が可能になる。
【０１５０】
また、前回の残部の終端に意味の無いデータが付加されている場合には、今回転送しようとしているヘッダは、先頭からそのまま主記憶メモリ２０に出力してよいことが容易に判断される。
【０１５１】
なお、上記説明では、転送対象がヘッダである場合の転送回路２１６による制御について説明したが、転送対象が量子化データであっても同様の制御が行われる。
【０１５２】
また、転送回路２１６から転送された、中間データであるヘッダおよび量子化データは、主記憶メモリ２０において、互いに異なる記憶領域に記憶される。
【０１５３】
図８は、実施の形態１における主記憶メモリ２０のマッピングの一例を示す図である。
【０１５４】
ストリーム生成装置２００からは、上述のように、第一転送制御部２１２によって中間データが出力され、主記憶メモリ２０に一時格納される。
【０１５５】
この時、退避転送情報ａに従って中間データが書き込まれる領域と、退避転送情報ｂに従って中間データが書き込まれる領域とは、本実施の形態では、図８に示すように、物理的に１つの主記憶メモリ２０内の互いに異なる記憶領域である。
【０１５６】
具体的には、主記憶メモリ２０は、退避転送情報ａに従ってヘッダが書き込まれる第一記憶領域と、退避転送情報ｂに従って量子化データが書き込まれる第二記憶領域とを有する。
【０１５７】
このようにして、主記憶メモリ２０に格納された中間データは、ストリーム生成装置２００の第二転送制御部２２２よって取得される。具体的には、上述のように、第二転送制御部２２２は、復帰転送情報ａと復帰転送情報ｂとに従って、中間データを主記憶メモリ２０から取得する。
【０１５８】
この取得の際、復帰転送情報ａに応じて中間データが読み出される領域と、退避転送情報ａに応じて中間データが格納された領域とは一致し、ともに第一記憶領域である。
【０１５９】
また、復帰転送情報ｂに応じて中間データが読み出される領域と、退避転送情報ｂに応じて中間データが格納された領域とは一致し、ともに第二記憶領域である。
【０１６０】
図９は、図５に示す第二転送制御部２２２におけるヘッダ・データ連結回路２２３の構成概要を示すブロック図である。
【０１６１】
ヘッダ・データ連結回路２２３では、復帰転送情報ａまたは復帰転送情報ｂに設定された情報に基づいて、第二処理部２２１へ出力すべき中間データを主記憶メモリ２０から取得する。
【０１６２】
具体的には、第二処理部２２１へ出力すべき中間データがヘッダの場合、例えばこれを第一記憶領域から転送するために用いられる情報（当該ヘッダが格納されているアドレスなど）が復帰転送情報ａに設定されていれば、選択回路２２４がこの情報を選択し、制御回路２２５に受け渡す。
【０１６３】
制御回路２２５は、ヘッダが格納されている、主記憶メモリ２０の第一記憶領域におけるアドレスと、読み出しに必要な制御信号とを出力する。また、制御回路２２５は、転送回路２２６に入力されるヘッダとの同期を図る為の制御信号を転送回路２２６に受け渡す。
【０１６４】
転送回路２２６には、制御回路２２５から入力された制御信号に基づいてヘッダを主記憶メモリ２０から取得する。また、転送回路２２６を通過するヘッダの情報は、監視回路２２７に受け渡され、転送に用いられた情報は復帰情報として復帰転送情報ａの一部とマッチングされる。
【０１６５】
復帰転送情報ａに格納されている、ヘッダの転送に用いられる復帰情報は、制御部５０によって予め設定されている。
【０１６６】
次に、第二処理部２２１へ出力すべき中間データが量子化データである場合、例えばこれを第二記憶領域から転送するために用いられる情報が復帰転送情報ｂに設定されていれば、選択回路２２４がこの情報を選択し、制御回路２２５に受け渡す。
【０１６７】
制御回路２２５は、量子化データが格納されている、主記憶メモリ２０のアドレスと、読み出しに必要な制御信号とを出力する。また、制御回路２２５は、転送回路２２６に入力される量子化データとの同期を図る為の制御信号を転送回路２２６に受け渡す。
【０１６８】
転送回路２２６は、制御回路２２５から入力された制御信号に基づいて量子化データを主記憶メモリ２０から取得する。また、転送回路２２６を通る量子化データの情報は、監視回路２２７に受け渡され、転送に用いられた情報は復帰情報として復帰転送情報ｂの一部とマッチングされる。
【０１６９】
復帰転送情報ｂに格納されている、量子化データの転送に用いられる復帰情報は、制御部５０によって予め設定されている。
【０１７０】
図１０は、図９に示すヘッダ・データ連結回路２２３における転送回路２２６の構成概要を示すブロック図である。
【０１７１】
転送回路２２６では、制御回路２２５から入力された制御信号に応じて、第二処理部２２１へ出力するヘッダまたは量子化データと言った中間データを、主記憶メモリ２０からの転送に適したデータ量で一旦内部のバッファ２２６ａに蓄積する。つまり、転送回路２２６は、制御回路２２５から出力されるアドレスと制御信号とに同期して、中間データを第二処理部２２１へ出力する様に、ビット単位またはバイト単位など、出力される単位の調整を行う。
【０１７２】
また、例えば、あるヘッダが主記憶メモリ２０から転送された際に、当該ヘッダが転送単位に収まらず、当該ヘッダの終端付近において欠落した部分が存在している場合、ビット調整部２２６ｂは、例えば、以下の処理を行う。
【０１７３】
ビット調整部２２６ｂは、次のヘッダが主記憶メモリ２０から転送されてくるまで、当該ヘッダを一時的に内部のバッファ２２６ａに退避させておく。これにより、次のヘッダが入力され、かつ、バッファ２２６ａに退避されたヘッダの終端と、当該次のヘッダのデータとが連続している場合には、そのまま出力を行うことができる。
【０１７４】
また、例えば、あるヘッダが主記憶メモリ２０から転送された際に、当該ヘッダに意味の無いデータが付加されて転送された状態で転送されていた場合、例えば、以下の処理を行う。
【０１７５】
ビット調整部２２６ｂは、復帰転送情報ａを参照することで、前段部２１０で計測されていた当該ヘッダのビット量を参照し、これにより当該ヘッダの終端を検出し、意味の無いデータを分離して破棄する。ビット調整部２２６ｂは、さらにこの処理により得られたヘッダを、次に主記憶メモリ２０から転送されるヘッダの先頭と連結する。
【０１７６】
この時、何れの場合であっても、データの転送ごとに、主記憶メモリ２０から転送されたデータの量がどの程度であるのかを、例えばビット量の情報として、監視回路２２７に受け渡す。
【０１７７】
転送回路２２６は、この様にして、データの転送ごとに、転送されているヘッダが現在どの様な状態で転送されているのかを示す情報を残しておく。
【０１７８】
これにより、転送回路２２６が主記憶メモリ２０から取得したヘッダと、第一処理部２１１が生成した全ての可変長符号化後のヘッダの情報とを照合する事ができ、所定の単位分のヘッダと、当該所定の単位分の量子化データとを連結する事が可能となる。
【０１７９】
なお、上記説明では、転送対象がヘッダである場合の転送回路２２６による制御について説明したが、転送対象が量子化データであっても同様の制御が行われる。
【０１８０】
以上説明した、実施の形態１におけるストリーム生成装置２００を備える画像符号化部１００の処理の流れを、図１１〜図１２Ｂのフローチャートを参照しながら説明する。
【０１８１】
図１１は、実施の形態１における画像符号化部１００の処理の流れの一例を示すフローチャートである。
【０１８２】
まず、画像符号化を行う際に用いられるパラメータである、画像サイズ、フレームレート、およびビットレート等が予め設定される（Ｓ１００）。当該設定の後に、画像データが画像符号化部１００に入力される。
【０１８３】
入力された画像データは、ピクチャまたはスライス等の所定の単位で処理が繰り返され、その中に、マクロブロック等のブロック単位の符号化処理と、これによって生成される中間データをストリームデータに変換する処理とが用意される。
【０１８４】
例えば、マクロブロック単位で、上述の面内予測および面間予測が行われる（Ｓ１１０）。また、周波数変換および量子化によって量子化データが生成され、復号の際に必要となるヘッダが生成される（Ｓ１１５）。
【０１８５】
このようにして生成されたヘッダおよび量子化データは、ストリーム生成装置２００に入力され、符号化＿１が実行される（Ｓ１２０）。符号化＿１では、第一処理部２１１によって、これらヘッダおよび量子化データに対する第一処理が行なわれ、第一転送制御部２１２により、第一処理後のヘッダおよび量子化データが主記憶メモリ２０に転送される。
【０１８６】
また、例えば１ピクチャ分の全てのマクロブロックについて符号化＿１（Ｓ１２０）が終了すると、ストリーム生成装置２００によって符号化＿２が実行される（Ｓ１３０）。
【０１８７】
符号化＿２では、第二転送制御部２２２によって、当該１ピクチャ分のヘッダおよび量子化データが取得され、第二処理部２２１によって、当該１ピクチャ分のヘッダおよび量子化データに対する第二処理が行われる。
【０１８８】
このような処理の結果、ストリーム生成装置２００から、例えば図４に示すデータ構成を有するストリームが出力される。
【０１８９】
図１２Ａは、図１１に示す符号化＿１における処理の流れの一例を示すフローチャートである。
【０１９０】
前段部２１０の第一処理部２１１では、後段部２２０において行われる算術符号化のための２値化（Ｓ１２１）とその際に生成された符号量の計測（Ｓ１２２）とが行われる。
【０１９１】
また、処理対象がヘッダである場合（Ｓ１２３でＹｅｓ）、計測結果はヘッダの符号量として累積される（Ｓ１２４）。また、処理対象が量子化データである場合（Ｓ１２３でＮｏ）、計測結果は量子化データの符号量として累積される（Ｓ１２５）。
【０１９２】
第一転送制御部２１２は、処理対象が例えばマクロブロック単位のヘッダまたは量子化データの終端である場合（Ｓ１２６でＹｅｓ）、当該終端に対し、次のヘッダまたは量子化データと連結する為の終端処理を行う（Ｓ１２７）。
【０１９３】
第一転送制御部２１２はさらに、２値化後のヘッダまたは量子化データを、主記憶メモリ２０に退避させる（Ｓ１２８）。
【０１９４】
その後、例えば、主記憶メモリ２０に転送すべきデータがなくなった場合（Ｓ１２９でＹｅｓ）、符号化＿１の処理は終了する。
【０１９５】
図１２Ｂは、図１１に示す符号化＿２における処理の流れの一例を示すフローチャートである。
【０１９６】
後段部２２０の第二転送制御部２２２は、算術符号化を行う為に生成された中間データを主記憶メモリ２０から復帰させる（Ｓ１３１）。つまり中間データが主記憶メモリ２０から取得される。
【０１９７】
第二転送制御部２２２は、取得した中間データの符号量の計測を行い（Ｓ１３２）、処理対象がヘッダである場合（Ｓ１３３でＹｅｓ）、計測結果とヘッダの総符号量とを比較する（Ｓ１３４）。また、第二転送制御部２２２は、処理対象が量子化データである場合（Ｓ１３３でＮｏ）、計測結果と、量子化データの総符号量と比較する（Ｓ１３５）。
【０１９８】
なお、これら総符号量は、復帰転送情報ａおよび復帰転送情報ｂを参照することで取得される。
【０１９９】
第二転送制御部２２２は上記比較の結果から、処理対象がヘッダまたは量子化データの終端である事を検出すると（Ｓ１３６でＹｅｓ）、終端処理を行う（Ｓ１３７）。
【０２００】
また、第二転送制御部２２２は、例えば１ピクチャ分の複数のヘッダと、当該複数のヘッダに対応する量子化データとが連続したデータとなる様にこれら複数のヘッダと量子化データとを連結する。
【０２０１】
連結されたデータは第二転送制御部２２２から第二処理部２２１に入力され、第二処理部２２１は、入力されたデータに対して算術符号化を行う（Ｓ１３８）。その結果、例えば図４に示すデータ構成のストリームが生成される。
【０２０２】
その後、例えば、算術符号化すべきデータがなくなった場合（Ｓ１３９でＹｅｓ）、符号化＿２の処理は終了する。
【０２０３】
以上のように、実施の形態１におけるストリーム生成装置２００は、入力されるヘッダおよび量子化データに対して、前段部２１０の第一処理部２１１により可変長符号化が行われ、後段部２２０の第二処理部２２１により圧縮符号化が行われる。具体的には、可変長符号化として２値化が行われ、圧縮符号化として算術符号化が行われる。
【０２０４】
また、算術符号化のための中間データ（２値化後のヘッダおよび量子化データ）を前段部２１０から主記憶メモリ２０に退避させる際に、第一転送制御部２１２は、ヘッダと量子化データとを別々の記憶領域に格納させる。
【０２０５】
そのため後段部２２０の第二転送制御部２２２は、所定の単位分のヘッダと量子化データとを別々に取得することができ、その結果、第二処理部２２１は、所定の単位分のヘッダに続いて所定の単位分の量子化データが連結されたデータに対して算術符号化を行うことができる。
【０２０６】
つまり、第二処理部２２１は、図４に示すような、データパーティションが施されたストリームを生成することができる。
【０２０７】
（実施の形態２）
図１３は、実施の形態２におけるストリーム生成装置４００の構成概要を示すブロック図である。
【０２０８】
実施の形態２におけるストリーム生成装置４００は、実施の形態１におけるストリーム生成装置２００と同様に、画像データに対して可変長符号化および圧縮符号化を行うことでデータパーティションが施されたストリームを生成する装置である。
【０２０９】
なお、実施の形態２における可変長符号化および圧縮符号化としては、実施の形態１と同じく２値化および算術符号化が採用される。
【０２１０】
また、ストリーム生成装置４００は、例えば、図２に示す画像符号化部１００のストリーム生成装置２００と置き換えて使用することのできる装置である。
【０２１１】
実施の形態２におけるストリーム生成装置４００の機能構成は、図１３に示すように、実施の形態１におけるストリーム生成装置２００と同様の機能構成である。
【０２１２】
すなわち、ストリーム生成装置４００は、前段部４１０と後段部４２０とを備える。また、前段部４１０は、第一処理部４１１と第一転送制御部４１２とを有し、後段部４２０は、第二処理部４２１と第二転送制御部４２２とを有する。
【０２１３】
しかしながら、実施の形態２における第一処理部４１１および第二処理部４２１が行う処理の内容は、実施の形態１における第一処理部２１１および第二処理部２２１が行う処理の内容と異なる。
【０２１４】
具体的には、第一処理部４１１は、第一処理として、ヘッダに対する可変長符号化および圧縮符号化、ならびに、量子化データの第一転送制御部４１２への入力、を行う。
【０２１５】
つまり、ヘッダに対して算術符号化までの処理を行う一方で、量子化データに対しては、２値化および算術符号化は行わず、原則としてそのまま第一転送制御部４１２に入力する。
【０２１６】
また、第二処理部４２１は、第二処理として、所定の単位分算術符号化までを終えたヘッダの第二転送制御部４２２からの受信、ならびに、第二転送制御部４２２によって取得された、所定の単位分の量子化データに対する可変長符号化および圧縮符号化を行う。
【０２１７】
第二処理部４２１はさらに、当該第二処理によって得られる、所定の単位分の可変長符号化および圧縮符号化が行われたヘッダである第一符号化データと、所定の単位分の可変長符号化および圧縮符号化が行われた量子化データである第二符号化データとを用いてストリームを生成する。
【０２１８】
つまり、ヘッダについては算術符号化までの処理が完了しているため、第二処理部４２１は、量子化データに対する２値化および算術符号化を行う。
【０２１９】
実施の形態２におけるストリーム生成装置４００は、このような構成を備えることにより、図４に示すようなデータパーティションが施されたストリームを生成することができる。
【０２２０】
なお、第一処理部４１１および第二処理部４２１のそれぞれは、２値化と算術符号化とを行うが、この処理において発生する２値データの退避領域としては、例えば、主記憶メモリ２０の第一記憶領域および第二記憶領域以外の領域、またはストリーム生成装置４００の内部の記憶領域（図示せず）が利用される。
【０２２１】
また、ストリーム生成装置４００を備えた場合の画像符号化部１００の基本的な処理の流れは、図１１に示す処理の流れと同じであり、例えば、マクロブロック単位で符号化＿１が実行され、例えばスライス単位またはピクチャ単位で符号化＿２が実行される。
【０２２２】
しかし、実施の形態２では、符号化＿１および符号化＿２の処理内容が実施の形態１とは異なる。そこで、実施の形態２における符号化＿１および符号化＿２の処理の流れを図１４Ａおよび図１４Ｂを用いて説明する。
【０２２３】
図１４Ａは、実施の形態２の符号化＿１における処理の流れの一例を示すフローチャートである。
【０２２４】
第一処理部４１１では、処理対象がヘッダである場合（Ｓ２２１でＹｅｓ）、例えばピクチャ等の所定の単位分のヘッダに対して、２値化と算術符号化までの一連の処理を行い（Ｓ２２２、Ｓ２２３）、算術符号化後のヘッダとしてのストリームデータの符号量を計測し累積する（Ｓ２２４）。
【０２２５】
一方、処理対象が量子化データである場合（Ｓ２２１でＮｏ）、符号化等の処理は行わず、その符号量を計測し累積する（Ｓ２２５）。
【０２２６】
また、算術符号化まで終えたヘッダおよび、符号化等の処理が行われていない量子化データは、第一処理部４１１から第一転送制御部４１２に入力される。
【０２２７】
第一転送制御部４１２では、何れかの処理（Ｓ２２２〜Ｓ２２４、または、Ｓ２２５）を経て、処理対象がヘッダまたは量子化データの終端であることを検出した場合（Ｓ２２６でＹｅｓ）、当該終端に対し、次に入力されるヘッダまたは量子化データと連結する為の終端処理を施す（Ｓ２２７）。
【０２２８】
その後、第一転送制御部４１２は、算術符号化まで終えた所定の単位分のヘッダ、または、符号化等の処理が行われていない量子化データである中間データを主記憶メモリ２０に退避させる（Ｓ２２８）。
【０２２９】
なおこの退避処理、つまり、中間データの主記憶メモリ２０への転送は、実施の形態１と同じく、退避転送情報ａおよび退避転送情報ｂに従って行われる。また、退避転送情報ａおよび退避転送情報ｂが、制御部５０によって設定される点等も実施の形態１と同様であり、退避転送情報ａおよび退避転送情報ｂについてのここでの説明は省略する。
【０２３０】
つまり、当該転送により、第一処理が行われた後のヘッダである、算術符号化までの処理を終えたヘッダが、第一記憶領域に格納される。また、当該転送により、第一処理が行われた後の量子化データである、符号化等の処理がなされずに第一処理部４１１から第一転送制御部４１２に入力された量子化データが、第二記憶領域に格納される。
【０２３１】
その後、例えば、主記憶メモリ２０に転送すべきデータがなくなった場合（Ｓ２２９でＹｅｓ）、符号化＿１の処理は終了する。
【０２３２】
図１４Ｂは、実施の形態２の符号化＿２における処理の流れの一例を示すフローチャートである。
【０２３３】
後段部４２０の第二転送制御部４２２は、主記憶メモリ２０に退避された中間データを主記憶メモリ２０から復帰させる（Ｓ２３１）。つまり中間データが主記憶メモリ２０から取得される。
【０２３４】
第二転送制御部４２２は、取得した中間データがヘッダである場合（Ｓ２３２でＹｅｓ）、当該ヘッダに対して、符号量の計測および比較を行い（Ｓ２３３）、第二処理部４２１に出力する。
【０２３５】
また、取得した中間データが量子化データである場合（Ｓ２３２でＮｏ）、第二転送制御部４２２は、当該量子化データに対して、符号量の計測および比較を行い（Ｓ２３４）、第二処理部４２１に出力する。
【０２３６】
なおこの復帰処理、つまり、中間データの主記憶メモリ２０からの転送は、実施の形態１と同じく、復帰転送情報ａおよび復帰転送情報ｂに従って行われる。また、復帰転送情報ａおよび復帰転送情報ｂが、制御部５０によって設定される点等も実施の形態１と同様であり、復帰転送情報ａおよび復帰転送情報ｂについてのここでの説明は省略する。
【０２３７】
第二処理部４２１は、第二処理部４２１から受け取ったピクチャ等の所定の単位分の量子化データに対して２値化を行い（Ｓ２３５）、さらに、２値化後の量子化データに対して算術符号化を行う（Ｓ２３６）。
【０２３８】
また、第二処理部４２１は、例えば、第二転送制御部４２２による上記比較（Ｓ２３３およびＳ２３４）の結果に基づいて、算術符号化後のヘッダの終端を検出した場合（Ｓ２３７でＹｅｓ）、当該終端に、後続する量子化データと連結するための終端処理を行う（Ｓ２３８）。また、算術符号化後の量子化データについても同様に、終端が検出された場合（Ｓ２３７でＹｅｓ）、終端処理が行われる（Ｓ２３８）。
【０２３９】
このようにして得られた、算術符号化まで完了した所定の単位分のヘッダと量子化データとは、第二処理部４２１によって連結され、例えば、図４に示すデータ構成のストリームが生成される。
【０２４０】
その後、例えば、算術符号化すべきデータがなくなった場合（Ｓ２３９でＹｅｓ）、符号化＿２の処理は終了する。
【０２４１】
以上のように、実施の形態２におけるストリーム生成装置４００は、前段部４１０の第一処理部４１１によりヘッダに対する可変長符号化および圧縮符号化が行われ、後段部４２０の第二処理部４２１により量子化データに対する可変長符号化および圧縮符号化が行われる。
【０２４２】
具体的には、可変長符号化として２値化が行われ、圧縮符号化として算術符号化が行われる。
【０２４３】
また、本実施の形態における中間データ（算術符号化後のヘッダ、および、符号化等の処理がなされていない量子化データ）を前段部４１０から主記憶メモリ２０に退避させる際に、第一転送制御部４１２は、ヘッダと量子化データとを別々の記憶領域に格納させる。
【０２４４】
そのため後段部４２０の第二転送制御部４２２は、所定の単位分のヘッダと量子化データとを別々に取得することができる。その結果、第二処理部４２１は、算術符号化後の所定の単位分のヘッダに続いて、算術符号化後の所定の単位分の量子化データが連結されたストリームを生成することがきる。
【０２４５】
つまり、第二処理部２２１は、図４に示すような、データパーティショニングが施されたストリームを生成することができる。
【０２４６】
（実施の形態１および２の補足事項）
上述の実施の形態１および２では、ヘッダ用の記憶領域である第一記憶領域と、量子化データ用の第二記憶領域とは、１つのメモリ（主記憶メモリ２０）に存在するとした（図８参照）。
【０２４７】
しかしながら、第一記憶領域と第二記憶領域とは物理的に別のメモリに存在してもよい。
【０２４８】
図１５は、実施の形態１における画像符号化装置１０が、第一記憶領域と第二記憶領域とを物理的に別のメモリに有する場合の構成概要を示すブロック図である。
【０２４９】
具体的には、画像符号化部１００は、制御部５０を介して、第一主記憶メモリ２１と第二主記憶メモリ２２とに接続されている。
【０２５０】
図１６は、実施の形態１における画像符号化部１００が、第一主記憶メモリ２１と第二主記憶メモリ２２とに接続された場合の構成概要を示すブロック図である。
【０２５１】
図１６において、例えば、第一主記憶メモリ２１が第一記憶領域を有し、第二主記憶メモリ２２が第二記憶領域を有している。つまり、第一主記憶メモリ２１と第二主記憶メモリ２２とによりストリーム生成装置２００が利用する記憶部が構成されている。
【０２５２】
つまり、第一転送制御部２１２から出力されるヘッダは、第一主記憶メモリ２１に格納される。また、第一転送制御部２１２から出力される量子化データは、第二主記憶メモリ２２に格納される。
【０２５３】
図１７は、図１６に示す第一主記憶メモリ２１および第二主記憶メモリ２２それぞれのマッピングの一例を示す図である。
【０２５４】
図１７に示すように、第一主記憶メモリ２１に各種のヘッダがまとめて格納され、第一主記憶メモリ２１とは物理的に異なる第二主記憶メモリ２２に、量子化データがまとめて格納される。
【０２５５】
このように、ストリーム生成装置２００および４００が中間データの退避先として使用する２つの記憶領域が、物理的に互いに異なる２つのメモリに存在する場合であっても、これら記憶領域が１つのメモリに存在する場合と同様の効果を奏することができる、すなわち、ストリームの生成過程において、容易にヘッダと量子化データとを分けて扱うことができ、その結果、算術符号化とデータパーティショニングとが施されたストリームの生成が可能である。
【０２５６】
なお、ヘッダおよび量子化データの各メモリへの転送処理は、実施の形態１および２と同様に制御される。つまり、第一主記憶メモリ２１および第二主記憶メモリ２２それぞれのアドレス等の情報を含む退避転送情報ａおよび退避転送情報ｂに従って、ヘッダおよび量子化データが転送される。
【０２５７】
また、実施の形態１および２におけるストリーム生成装置２００および４００は、画像データの符号化を実行する各種のシステムにおいて、ストリームを生成する装置として採用可能である。
【０２５８】
図１８は、実施の形態１または２におけるストリーム生成装置２００または４００を備えるＡＶ（Ａｕｄｉｏ  ａｎｄ  Ｖｉｓｕａｌ）システム５００の構成例を示す図である。
【０２５９】
ＡＶシステム５００は、ストリーム入出力部５１０、メモリ入出力部５１１、内部メモリ５１２、内部制御部５１３、画像復号化部５１４、音声復号化部５１５、画像処理部５１６、音声処理部５１７、音声符号化部５１８、画像入出力部５１９、音声入出力部５２０、および画像符号化部１００を備える。
【０２６０】
また、ＡＶシステム５００は外部メモリ５５０と接続されており、外部メモリ５５０との間でのデータのやり取りが可能である。また、ＡＶシステム５００は、外部制御部５６０からの制御信号に従って動作することもできる。
【０２６１】
画像符号化部１００は、上述のストリーム生成装置２００または４００を有する装置であり、その構成は例えば図２に示す通りである。
【０２６２】
画像符号化部１００は、他の機能ブロックとバスで接続され、データおよび制御信号などをやり取りする。なお、ストリーム生成装置２００または４００が中間データの退避先として使用するメモリとして、外部メモリ５５０が使用されてもよく、内部メモリ５１２が使用されてもよい。
【０２６３】
また、中間データの退避先として外部メモリ５５０が使用される場合、制御部５０（図１参照）の機能の一部がメモリ入出力部５１１によって担われる。
【０２６４】
また、ストリーム生成装置２００または４００に対する直接的な動作の制御は、外部制御部５６０によって行われてもよく、内部制御部５１３によって行われてもよい。
【０２６５】
ＡＶシステム５００は、このような構成を備えることで、例えば画像入出力部５１９から入力された画像データに対し、ストリーム生成装置２００または４００を有する画像符号化部１００が、算術符号化とデータパーティショニングとが適用されたストリームを生成することができる。また、生成されたストリームは、ストリーム入出力部５１０から出力され、例えばインターネットを介して外部の再生装置に受信される。
【０２６６】
以上、本発明のストリーム生成装置およびその方法について、実施の形態１および２に基づいて説明した。しかしながら、本発明は、上記の各実施の形態およびこれらの補足に限定されるものではない。
【０２６７】
本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を各実施の形態およびこれらの補足に施したものも、あるいは、上記説明された複数の構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【０２６８】
例えば、実施の形態１および２では、ストリーム生成装置２００および４００がデータパーティショニングを伴う算術符号化処理を行う場合について説明した。しかしながら、本発明はこれに限定されない。
【０２６９】
具体的には、“データパーティショニング”と呼ばれる技術を意図していない装置であっても、ヘッダと量子化データとをそれぞれストリーム上の別の領域に格納する装置であって、かつ、量子化後の処理を２段階に分けて行うことで当該ストリームを生成する装置に本発明は適用可能である。
【０２７０】
また、実施の形態１および２では、可変長符号化として２値化が採用され、圧縮符号化として算術符号化が採用されている。しかしながら、本発明はこれに限定されない。
【０２７１】
例えば、量子化後の処理を２段階で行う符号化処理において、前段の処理結果が可変長のデータであり、かつ、後段で、前段の処理結果を所定量まとめて圧縮するような一連の符号化処理が行われる装置であれば、本発明の適用は可能である。
【０２７２】
また、ストリーム生成装置２００または４００は、ストリームを生成する際に、復号化に有用な他の情報を当該ストリームに埋め込んでもよい。
【０２７３】
例えば、ストリームの先頭の、非算術符号化区間に含まれるヘッダに、第一符号化データと第二符号化データとの境目の位置を示す情報を埋め込んでもよい。
【０２７４】
つまり、ストリームの先頭ヘッダに、当該ストリームにおける第二符号化データの先頭位置を示す位置情報を埋め込んでもよい。
【０２７５】
これにより、当該ストリームを受信し復号化する画像復号化装置では、当該ストリームの先頭ヘッダから当該位置情報を読み出すことで、容易かつ即座に、第一符号化データと第二符号化データとを分離するための情報を取得することができる。
【０２７６】
その結果、画像復号化装置では、例えば、第一符号化データに対する復号化と第二符号化データに対する復号化とを並行して実行するなどの効率的な処理が可能となる。
【０２７７】
なお、ストリームに含まれる位置情報を利用して効率よく復号化処理を実行するストリーム処理装置について、実施の形態４で説明する。
【０２７８】
（実施の形態３）
次に、実施の形態３として、可変長符号化および圧縮符号化が適用され、かつ、データパーティショニングが施されたストリームを復号化する画像復号化装置について説明する。
【０２７９】
図２０は、実施の形態３における画像復号化装置６００の構成概要を示すブロック図である。
【０２８０】
図２０に示すように、画像復号化装置６００は、画像復号化部７００と、制御部６５０と、主記憶メモリ６２０とを備える。
【０２８１】
主記憶メモリ６２０は、データを記憶するためのメモリ（例えば、ＤＲＡＭ）である。
【０２８２】
制御部６５０は、例えばＣＰＵ等のプロセッサ（図示せず）と、メモリ制御回路（図示せず）とを含む。
【０２８３】
画像復号化装置６００において、画像復号化部７００は、入力されたストリームに対し、画像復号化部７００の外部に設置された主記憶メモリ６２０を用いて、制御部６５０を介した中間データを退避および復帰を行いながら復号処理を行う。また、画像復号化部７００は復号処理によって得られる画像を出力する。
【０２８４】
また制御部６５０は、画像復号化部７００と主記憶メモリ６２０との間のデータの転送を制御するだけでなく、画像復号化部７００の制御も行う。
【０２８５】
図２１は、実施の形態３における画像復号化部７００の構成概要を示すブロック図である。
【０２８６】
図２１を用いて、画像復号化部７００の基本的な処理内容を説明する。なお、図２１では、図２０における制御部６５０の図示は省略されている。
【０２８７】
画像復号化部７００には、量子化された画像データである量子化データと当該量子化データに対応するヘッダとに対して可変長符号化および圧縮符号化を当該順序で行うことで生成されたストリームが入力される。
【０２８８】
また、当該ストリームには、所定の単位分のヘッダである第一符号化データと、当該所定の単位分の量子化データである第二符号化データとが当該順序で連なって含まれている。つまり、当該ストリームにはデータパーティションが施されている。
【０２８９】
なお、本実施の形態では、画像復号化部７００には、例えば実施の形態１または２における画像符号化装置１０によって生成されたストリームが入力される。つまり、画像復号化部７００には、算術符号化およびデータパーティションの双方が適用されたストリームが入力される。
【０２９０】
画像復号化部７００に入力されたストリームは、ストリーム処理装置８００によって、伸張復号化および可変長復号化がなされる。
【０２９１】
本実施の形態では、ストリーム処理装置８００は、入力されたストリームに対して、伸張復号化の一例である算術復号化を実行し、可変長復号化の一例である多値化を実行する。
【０２９２】
ストリーム処理装置８００から出力されるデータは、逆量子化部７０７および逆周波数変換部７０８によって処理される。これにより、入力元の差分画像データ、または、これに近似したデータに復元される。復元されたデータと、スイッチ７０４から入力される、当該データに対応する予測画像のデータとが合成される事で、再構成画像が生成される。
【０２９３】
なお、スイッチ７０４は、復号化するピクチャに面内予測および面間予測のいずれが用いられているかに応じて、面内予測部７０１および面間予測部７０２の一方を選択する。
【０２９４】
生成された再構成画像は、そのまま、または、ループフィルタ７０９によるデブロッキング処理が行われた後に主記憶メモリ６２０に退避され、その後に面間予測を行う際に、主記憶メモリ６２０から読み出される。
【０２９５】
また、主記憶メモリ６２０に蓄積された、復号化された画像は、例えばテレビである映像表示装置に出力され、当該映像表示装置に表示される。
【０２９６】
図２２は、実施の形態３におけるストリーム処理装置８００の構成概要を示すブロック図である。
【０２９７】
図２３は、実施の形態３におけるストリーム処理装置８００に入力されるストリームのデータ構成例を示す図である。なお、図２３に示すストリームは、可変長符号化および圧縮符号化によって得られたストリームであって、データパーティションが施されたストリームの一例であり、例えば、実施の形態１または２における画像符号化装置１０によって生成される。
【０２９８】
ストリーム処理装置８００は、前段部８１０と後段部８２０とを備える。前段部８１０および後段部８２０はそれぞれ、ストリーム処理装置８００に接続された、記憶部の一例である主記憶メモリ６２０と通信可能である。
【０２９９】
本実施の形態のストリーム処理装置８００は、上述のように、入力されるストリームに対して算術復号化および多値化を行い、２値化および算術符号化が行われる前のヘッダと量子化データとを出力する。
【０３００】
なお、算術復号化の処理は、マクロブロックやブロックよりも大きい単位であるスライスまたはピクチャといった単位で行われる。
【０３０１】
また、本実施の形態のストリーム処理装置８００では、前段部８１０での復号処理を終えた状態の中間データを一旦主記憶メモリ６２０に退避させ、後段部８２０での復号処理を行う際に中間データを主記憶メモリ６２０から復帰させて処理するという方法が採用されている。
【０３０２】
具体的には、前段部８１０は、第一復号処理部８１１と第一転送制御部８１２とを有する。第一復号処理部８１１は、入力されたストリームに対し、少なくとも第二符号化データに対する伸張復号化を含む、第一復号処理を行う。
【０３０３】
なお、図２３に示す、＃０〜＃Ｎのマクロブロックヘッダ群は、第一符号化データの一例であり、＃０〜＃Ｎの量子化データ群は、第二符号化データの一例である。また、図２３に示すストリームの先頭ヘッダ（図２３において左端のヘッダ）は、例えば、これらマクロブロックヘッダ群および量子化データ群に対応するピクチャヘッダである。
【０３０４】
第一転送制御部８１２は、第一復号処理が行われた後の第一符号化データである第一データを、主記憶メモリ６２０が有する第一記憶領域に転送し、かつ、第一復号処理が行われた後の第二符号化データである第二データを、主記憶メモリ６２０が有する第二記憶領域に転送する。
【０３０５】
より詳細には、本実施の形態における第一復号処理部８１１は、第一復号処理である、第一符号化データと第二符号化データとに対する伸張復号化（算術復号化）を行うことで、中間データである第一データと第二データとを生成する。
【０３０６】
生成された第一データは、第一転送制御部８１２により第一記憶領域に転送され、生成された第二データは、第一転送制御部８１２により第二記憶領域に転送される。第一転送制御部８１２は、このような退避処理を制御するための、少なくとも２種類の転送制御情報を保持しており、退避処理（転送処理）の際にこれら転送制御情報を参照する。
【０３０７】
具体的には、第一転送制御部８１２は、第一記憶領域に対応する退避転送情報ｃと第二記憶領域に対応する退避転送情報ｄとを保持している。
【０３０８】
なお、実施の形態３における主記憶メモリ６２０における記憶領域のマッピングは、実施の形態１における主記憶メモリ２０における記憶領域のマッピングと同様である。具体的には、図８に示すように、第一記憶領域に第一データ（ヘッダ）が格納され、第二記憶領域に第二データ（量子化データ）が格納される。
【０３０９】
また、後段部８２０は、第二復号処理部８２１と第二転送制御部８２２とを有する。第二転送制御部８２２は、第一データを第一記憶領域から取得し、第二データを第二記憶領域から取得する。
【０３１０】
また、第二転送制御部８２２は、取得した第一データおよび第二データに含まれる、第一復号処理が行われた後のヘッダのそれぞれと、当該ヘッダに対応する、第一復号処理が行われた後の前記量子化データとを出力する。
【０３１１】
なお、第二転送制御部８２２は、第一データおよび第二データの主記憶メモリ６２０からの復帰処理を制御するための、少なくとも２種類の転送制御情報を保持しており、復帰処理（転送処理）の際にこれら転送制御情報を参照する。
【０３１２】
具体的には、第二転送制御部８２２は、第一記憶領域に対応する復帰転送情報ｃと第二記憶領域に対応する復帰転送情報ｄとを保持している。
【０３１３】
第二復号処理部８２１は、第二転送制御部８２２から出力された、第一復号処理が行われた後のヘッダおよび量子化データに対し、少なくとも、ヘッダに対する可変長復号化（多値化）を含む、第二復号処理を行う。
【０３１４】
第二復号処理部８２１はさらに、第一復号処理および第二復号処理により得られた、可変長符号化（２値化）および圧縮符号化（算術符号化）がなされる前のヘッダと当該ヘッダに対応する量子化データとを並べて出力する。
【０３１５】
例えば、図２３に示すストリームがストリーム処理装置８００に入力された場合、多値データに復元されたマクロブロックヘッダ＃Ｋと量子化データ＃Ｋとの組が、Ｋ＝０、１、２、・・・、Ｎの順にストリーム処理装置８００から出力される。
【０３１６】
ストリーム処理装置８００は上記構成を備えることで、データパーティショニングおよび算術復号化の双方が適用されたストリームに対する適切な復号処理を行うことができる。
【０３１７】
図２４は、図２２に示すストリーム処理装置８００における第一転送制御部８１２および第二転送制御部８２２のより詳細な構成を示す図である。
【０３１８】
前段部８１０における第一転送制御部８１２には、各種データの転送を制御するための制御情報が、例えば、画像復号化部７００の動作を制御する制御部６５０により、予め、退避転送情報ｃおよび退避転送情報ｄとして設定されている。
【０３１９】
第一転送制御部８１２では、ヘッダ・データ分離回路８１３が、これらの情報に基づいて、第一復号処理部８１１から入力された中間データを、主記憶メモリ６２０の所定の領域へ分離して転送する。
【０３２０】
具体的には、ヘッダ・データ分離回路８１３は、第一復号処理部８１１による算術復号化により得られた第一データと第二データとを取得する。ヘッダ・データ分離回路８１３は、退避転送情報ｃに従って、２値データである第一データを、主記憶メモリ６２０の第一記憶領域に転送する。また、ヘッダ・データ分離回路８１３は、退避転送情報ｄに従って、２値データである第二データを、主記憶メモリ６２０の第二記憶領域に転送する。
【０３２１】
なお、退避転送情報ｃは、第一アドレス情報の一例であり、例えば、複数のヘッダを含む第一データが格納される、第一記憶領域におけるアドレスを示す情報が含まれる。また、退避転送情報ｄは、第二アドレス情報の一例であり、例えば、複数の量子化データを含む第二データが格納される、第二記憶領域におけるアドレスを示す情報が含まれる。
【０３２２】
一方、後段部８２０における第二転送制御部８２２には、各種データの転送を制御するための制御情報が、例えば、画像復号化部７００の動作を制御する制御部６５０により、予め、復帰転送情報ｃおよび復帰転送情報ｄとして設定されている。
【０３２３】
第二転送制御部８２２では、これらの情報に基づいてヘッダ・データ紐付回路８２３が、主記憶メモリ６２０の所定の領域から中間データを転送し、紐付け処理を行って第二復号処理部８２１へ出力する。
【０３２４】
具体的には、ヘッダ・データ紐付回路８２３は、復帰転送情報ｃに従って、第一データを主記憶メモリ６２０の第一記憶領域から取得する。また、ヘッダ・データ紐付回路８２３は、復帰転送情報ｄに従って、当該第一データに対応する第二データを主記憶メモリ６２０の第二記憶領域から取得する。
【０３２５】
なお、復帰転送情報ｃには、例えば、第一記憶領域の第一データが格納されているアドレスを示す情報が含まれる。また、復帰転送情報ｄには、例えば、第二記憶領域の第一データが格納されているアドレスを示す情報が含まれる。
【０３２６】
ヘッダ・データ紐付回路８２３は、取得した第一データと当該第一データに対応する第二データとを、第二復号処理部８２１に入力する。例えば、第一データに含まれるヘッダのそれぞれと、第二データに含まれる、当該ヘッダに対応する量子化データとの組が、順次、第二復号処理部８２１に入力される。
【０３２７】
第二復号処理部８２１は、入力された第一データおよび第二データに含まれる、それぞれが２値データであるヘッダおよび量子化データを多値化する。第二復号処理部８２１はさらに、多値化によって得られるヘッダと当該ヘッダに対応する量子化データとを順次出力する。
【０３２８】
図２５は、図２４に示す第二転送制御部８２２におけるヘッダ・データ紐付回路８２３の構成概要を示すブロック図である。
【０３２９】
ヘッダ・データ紐付回路８２３では、復帰転送情報ｃまたは復帰転送情報ｄに設定された情報に基づいて、第二復号処理部８２１へ出力すべき中間データを主記憶メモリ６２０から取得する。
【０３３０】
具体的には、第二復号処理部８２１へ出力すべき中間データがヘッダの場合、例えばこれを第一記憶領域から転送するために用いられる情報（当該ヘッダが格納されているアドレスなど）が復帰転送情報ｃに設定されていれば、選択回路８２４がこの情報を選択し、制御回路８２５に受け渡す。
【０３３１】
制御回路８２５は、ヘッダが格納されている、主記憶メモリ６２０の第一記憶領域におけるアドレスと、読み出しに必要な制御信号とを出力する。また、制御回路８２５は、転送回路８２６に入力されるヘッダとの同期を図る為の制御信号を転送回路８２６に受け渡す。
【０３３２】
転送回路８２６は、制御回路８２５から入力された制御信号に基づいてヘッダを主記憶メモリ６２０から取得する。また、転送回路８２６を通過するヘッダの情報は、監視回路８２７に受け渡され、転送に用いられた情報は復帰情報として復帰転送情報ｃの一部とマッチングされる。
【０３３３】
次に、第二復号処理部８２１へ出力すべき中間データが量子化データである場合、例えばこれを第二記憶領域から転送するために用いられる情報が復帰転送情報ｄに設定されていれば、選択回路８２４がこの情報を選択し、制御回路８２５に受け渡す。
【０３３４】
制御回路８２５は、量子化データが格納されている、主記憶メモリ６２０の第二記憶領域におけるアドレスと、読み出しに必要な制御信号とを出力する。また、制御回路８２５は、転送回路８２６に入力される量子化データとの同期を図る為の制御信号を転送回路８２６に受け渡す。
【０３３５】
転送回路８２６は、制御回路８２５から入力された制御信号に基づいて量子化データを主記憶メモリ６２０から取得する。また、転送回路８２６を通る量子化データの情報は、監視回路８２７に受け渡され、転送に用いられた情報は復帰情報として復帰転送情報ｄの一部とマッチングされる。
【０３３６】
図２６は、図２５に示すヘッダ・データ紐付回路８２３における転送回路８２６の構成概要を示すブロック図である。
【０３３７】
転送回路８２６では、制御回路８２５から入力された制御信号に応じて、第二復号処理部８２１へ出力する中間データを、主記憶メモリ６２０からの転送に適したデータ量で一旦内部のバッファ８２６ａに蓄積する。
【０３３８】
つまり、転送回路８２６は、制御回路８２５から出力されるアドレスと制御信号とに同期して、中間データを第二復号処理部８２１へ出力する様に、ビット単位またはバイト単位など、出力される単位の調整を行う。
【０３３９】
また、例えば、あるヘッダが主記憶メモリ６２０から転送された際に、当該ヘッダが転送単位に収まらず、当該ヘッダの終端付近において欠落した部分が存在している場合、ビット調整部８２６ｂは、例えば、以下の処理を行う。
【０３４０】
ビット調整部８２６ｂは、次のヘッダが主記憶メモリ６２０から転送されてくるまで、当該ヘッダを一時的に内部のバッファ８２６ａに退避させておく。これにより、次のヘッダが入力され、かつ、バッファ８２６ａに退避されたヘッダの終端と、当該次のヘッダのデータとが連続している場合には、そのまま出力を行うことができる。
【０３４１】
また、例えば、あるヘッダが主記憶メモリ６２０から転送された際に、当該ヘッダに意味の無いデータが付加されて転送された状態で転送されていた場合、例えば、以下の処理を行う。
【０３４２】
ビット調整部８２６ｂは、復帰転送情報ｃを参照することで、前段部８１０で計測されていた当該ヘッダのビット量を参照し、これにより当該ヘッダの終端を検出し、意味の無いデータを分離して破棄する。ビット調整部８２６ｂは、さらにこの処理により得られたヘッダを、次に主記憶メモリ６２０から転送されるヘッダの先頭と連結する。
【０３４３】
この時、何れの場合であっても、データの転送ごとに、主記憶メモリ６２０から転送されたデータの量がどの程度であるのかを、例えばビット量の情報として、監視回路８２７に受け渡す。
【０３４４】
転送回路８２６は、この様にして、データの転送ごとに、転送されているヘッダが現在どの様な状態で転送されているのかを示す情報を残しておく。
【０３４５】
これにより、転送回路８２６が主記憶メモリ６２０から取得したヘッダと、第一復号処理部８１１が生成した全ての算術復号化後のヘッダの情報とを照合する事ができる。その結果、例えば、所定の単位分のヘッダのそれぞれと、当該ヘッダに対応する量子化データとを紐付ける事が可能となる。
【０３４６】
なお、上記説明では、転送対象がヘッダである場合の転送回路８２６による制御について説明したが、転送対象が量子化データであっても同様の制御が行われる。
【０３４７】
以上説明した、実施の形態３におけるストリーム処理装置８００の処理の流れの一例を、図２７〜図２８Ｂのフローチャートを参照しながら説明する。
【０３４８】
図２７は、実施の形態３におけるストリーム処理装置８００の処理の流れの一例を示すフローチャートである。
【０３４９】
まず、画像復号化を行う際に参照される、符号化モード等の各種パラメータが設定される（Ｓ３００）。当該設定の後に、ストリームに対する以下の処理がストリーム処理装置８００で実行される。
【０３５０】
すなわち、ストリーム処理装置８００に入力されたストリームは、ピクチャまたはスライス等の所定の単位で処理が繰り返され、その中に、マクロブロック等のブロック単位の復号処理が用意される。
【０３５１】
例えばピクチャ単位で、復号化＿１が実行され（Ｓ３１０）、復号化＿１によって得られた中間データに対してマクロブロックごとに復号化＿２が実行される（Ｓ３２０）。
【０３５２】
復号化＿２によって得られたデータに対し、ヘッダおよび量子化データの判別が行われ（Ｓ３３０）、さらに再構成処理（Ｓ３３５）が行われる。これにより、ストリーム処理装置８００から、ヘッダと当該ヘッダに対応する量子化データとが出力される。
【０３５３】
また、例えば１ピクチャ分の全てのマクロブロックについて復号化＿２（Ｓ３２０）が終了すると、次のピクチャに対するＳ３１０〜Ｓ３３５の処処理が実行される。
【０３５４】
図２８Ａは、図２７に示す復号化＿１における処理の流れの一例を示すフローチャートである。
【０３５５】
前段部８１０の第一復号処理部８１１では、ストリームに含まれる第一符号化データおよび第二符号化データに対する算術復号化（Ｓ３１１）とこれにより生成された符号量の計測（Ｓ３１２）とが行われる。
【０３５６】
また、処理対象がヘッダ（第一符号データ）である場合（Ｓ３１３でＹｅｓ）、計測結果はヘッダの符号量として累積される（Ｓ３１４）。また、処理対象が量子化データ（第二符号データ）である場合（Ｓ３１３でＮｏ）、計測結果は量子化データの符号量として累積される（Ｓ３１５）。
【０３５７】
第一転送制御部８１２は、処理対象が例えばマクロブロック単位のヘッダまたは量子化データの終端である場合（Ｓ３１６でＹｅｓ）、当該終端に対し、次のヘッダまたは量子化データと連結する為の終端処理を行う（Ｓ３１７）。
【０３５８】
第一転送制御部８１２はさらに、算術復号化後のヘッダまたは量子化データを、主記憶メモリ６２０に退避させる（Ｓ３１８）。
【０３５９】
その後、例えば、主記憶メモリ６２０に転送すべきデータがなくなった場合（Ｓ３１９でＹｅｓ）、復号化＿１の処理は終了する。
【０３６０】
図２８Ｂは、図２７に示す復号化＿２における処理の流れの一例を示すフローチャートである。
【０３６１】
後段部８２０の第二転送制御部８２２は、多値化の対象である中間データを主記憶メモリ６２０から復帰させる（Ｓ３２１）。つまり中間データが主記憶メモリ６２０から取得される。
【０３６２】
第二転送制御部８２２は、取得した中間データの符号量の計測を行い（Ｓ３２２）、処理対象がヘッダである場合（Ｓ３２３でＹｅｓ）、計測結果とヘッダの総符号量とを比較する（Ｓ３２４）。また、第二転送制御部８２２は、処理対象が量子化データである場合（Ｓ３２３でＮｏ）、計測結果と、量子化データの総符号量と比較する（Ｓ３２５）。
【０３６３】
なお、これら総符号量は、復帰転送情報ｃおよび復帰転送情報ｄを参照することで取得される。
【０３６４】
第二転送制御部８２２は上記比較の結果から、処理対象がヘッダまたは量子化データの終端である事を検出すると（Ｓ３２６でＹｅｓ）、終端処理を行う（Ｓ３２７）。
【０３６５】
また、第二転送制御部８２２は、例えば１ピクチャ分の複数のヘッダと、当該複数のヘッダに対応する量子化データとを第二復号処理部８２１に入力する。
【０３６６】
第二復号処理部８２１は、入力されたデータに対して多値化を行う（Ｓ３２８）。その結果、当該１ピクチャ分のヘッダのそれぞれと、当該ヘッダに対応する量子化データとが順次ストリーム処理装置８００から出力される。例えば、上述のように、マクロブロックヘッダ＃Ｋと量子化データ＃Ｋとの組が、Ｋ＝０、１、２、・・・、Ｎの順にストリーム処理装置８００から出力される。
【０３６７】
その後、例えば、多値化すべきデータがなくなった場合（Ｓ３２９でＹｅｓ）、復号化＿２の処理は終了する。
【０３６８】
ここで、本実施の形態では、ストリーム処理装置８００は、前段部８１０でヘッダおよび量子化データに対して算術復号化を行い、後段部８２０でヘッダおよび量子化データに対して多値化を行うとした。
【０３６９】
しかしながら、前段部８１０および後段部８２０の処理（ヘッダおよび量子化データに対する算術復号化および多値化）の分担はこれに限られない。
【０３７０】
例えば、前段部８１０が、量子化データに対する算術復号化と多値化とを行い、後段部８２０が、ヘッダに対する算術復号化と多値化とを行ってもよい。
【０３７１】
そこで、図２９Ａおよび図２９Ｂを用いて、前段部８１０が量子化データに対する算術復号化と多値化とを行い、後段部８２０がヘッダに対する算術復号化と多値化とを行う場合の、ストリーム処理装置８００の処置の流れの一例を説明する。
【０３７２】
図２９Ａは、図２７に示す復号化＿１における処理の流れの別の一例を示すフローチャートである。
【０３７３】
前段部８１０の第一復号処理部８１１では、処理対象が量子化データである場合（Ｓ４２１でＮｏ）、例えばピクチャ等の所定の単位分の量子化データに対して、算術復号化と多値化までの一連の処理を行い（Ｓ４２３、Ｓ４２４）、多値化後の量子化データの符号量を計測し累積する（Ｓ４２５）。
【０３７４】
一方、処理対象がヘッダである場合（Ｓ４２１でＹｅｓ）、第一復号処理部８１１は、復号化等の処理は行わず、その符号量を計測し累積する（Ｓ４２２）。
【０３７５】
また、多値化まで終えた量子化データおよび、算術復号化および多値化が行われていないヘッダは、第一復号処理部８１１から第一転送制御部８１２に入力される。
【０３７６】
第一転送制御部８１２では、何れかの処理（Ｓ４２３〜Ｓ４２５、または、Ｓ４２２）を経て、処理対象がヘッダまたは量子化データの終端であることを検出した場合（Ｓ４２６でＹｅｓ）、当該終端に対し、次に入力されるヘッダまたは量子化データと連結する為の終端処理を施す（Ｓ４２７）。
【０３７７】
その後、第一転送制御部８１２は、多値化まで終えた所定の単位分の量子化データ、または、算術復号化および多値化が行われていない所定の単位分のヘッダである中間データ（第二データまたは第一データ）を主記憶メモリ６２０に退避させる（Ｓ４２８）。
【０３７８】
なおこの退避処理、つまり、中間データの主記憶メモリ６２０への転送は、退避転送情報ｃおよび退避転送情報ｄ（図２２参照）に従って行われる。
【０３７９】
つまり、当該転送により、第一復号処理が行われた後の第一符号化データである、算術復号化および多値化が行われずに第一復号処理部８１１から第一転送制御部８１２に入力された第一符号化データが、第一データとして第一記憶領域に格納される。
【０３８０】
また、当該転送により、第一復号処理が行われた後の第一符号化データである、算術復号化および多値化がなされた第二符号化データが、第二データとして第二記憶領域に格納される。
【０３８１】
その後、例えば、主記憶メモリ６２０に転送すべきデータがなくなった場合（Ｓ４２９でＹｅｓ）、復号化＿１の処理は終了する。
【０３８２】
図２９Ｂは、図２７に示す復号化＿２における処理の流れの別の一例を示すフローチャートである。
【０３８３】
後段部８２０の第二転送制御部８２２は、主記憶メモリ６２０に退避された中間データを主記憶メモリ６２０から復帰させる（Ｓ４３１）。つまり中間データが主記憶メモリ６２０から取得される。
【０３８４】
なお、この復帰処理、つまり、中間データの主記憶メモリ６２０からの転送は、復帰転送情報ｃおよび復帰転送情報ｄ（図２２参照）に従って行われる。
【０３８５】
第二復号処理部８２１は、第二転送制御部８２２によって取得された中間データに含まれる第一データに対して算術復号化を行い（Ｓ４３２）、さらに、算術復号化後の第一データに対して多値化を行う（Ｓ４３３）。これにより、多値データであるヘッダが得られる。
【０３８６】
以上の処理により得られた、多値データであるヘッダおよび量子化データのそれぞれについて符号量の計測が行われる。また、計測された、ヘッダおよび量子化データそれぞれの符号量と、復帰転送情報ｃおよび復帰転送情報ｄそれぞれに示される総符号量との比較が行われる（Ｓ４３４）。
【０３８７】
さらに、ヘッダと当該ヘッダに対応する量子化データとの連結処理が行われる（Ｓ４３５）。
【０３８８】
また、第二復号処理部８２１は、上記比較処理（Ｓ４３４）の結果に基づいて、量子化データの終端を検出した場合（Ｓ４３６でＹｅｓ）、当該終端に、後続するヘッダと連結するための終端処理を行う（Ｓ４３７）。
【０３８９】
その後、例えば、算術復号化および多値化すべきデータがなくなった場合（Ｓ４３８でＹｅｓ）、復号化＿２の処理は終了する。
【０３９０】
このようにして得られる、所定の単位分（例えば１ピクチャ分）のヘッダのそれぞれと、当該ヘッダに対応する量子化データとが順次ストリーム処理装置８００から出力される。例えば、上述のように、マクロブロックヘッダ＃Ｋと量子化データ＃Ｋとの組が、Ｋ＝０、１、２、・・・、Ｎの順にストリーム処理装置８００から出力される。
【０３９１】
以上のように、実施の形態３におけるストリーム処理装置８００は、算術符号化およびデータパーティションの双方が適用されたストリームに含まれるヘッダおよび量子化データのそれぞれを多値データに復元し、データパーティションが施される前の順序で出力することができる。
【０３９２】
つまり、実施の形態１または２における画像符号化装置１０によって生成される、高いエラー耐性と高圧縮とが両立されたストリームの復号処理を適切に実行することができる。
【０３９３】
（実施の形態４）
次に、実施の形態４として、可変長符号化および圧縮符号化が適用され、データパーティショニングが施されたストリームであって、かつ、先頭ヘッダに、第二符号化データの先頭位置を示す位置情報を含むストリームに対して復号処理を行うストリーム処理装置について説明する。
【０３９４】
図３０は、実施の形態４におけるストリーム処理装置の構成概要の一例を示すブロック図である。
【０３９５】
図３０に示すストリーム処理装置９００は、例えば、図２１に示す画像復号化部７００において、ストリーム処理装置８００に代えて備えられる装置である。
【０３９６】
つまり、実施の形態４のストリーム処理装置９００は、実施の形態３のストリーム処理装置８００と同様に、算術符号化およびデータパーティションの双方が適用されたストリームを処理することで、多値データに復元されたヘッダと量子化データとを出力する装置である。
【０３９７】
なお、ストリーム処理装置９００に入力されるストリームは、先頭ヘッダ（例えば、図２３における左端のヘッダ）に、第二符号化データの先頭位置を示す位置情報を含んでいる。
【０３９８】
図２３に示すストリームの場合、先頭ヘッダに、例えば、当該先頭ヘッダのサイズと、第一符号化データ（マクロブロック＃０〜マクロブロック＃Ｎ）のサイズとの和を示す情報を含む位置情報が、当該先頭ヘッダに含まれている。
【０３９９】
ストリーム処理装置９００はこの位置情報を利用することで、効率的な復号処理を実現している。
【０４００】
ストリーム処理装置９００は、図３０に示すように、ストリーム制御部９０５と、ヘッダ処理部９１０と、量子化データ処理部９２０と、出力部９５０とを備える。
【０４０１】
また、ストリーム処理装置９００は、主記憶メモリ１０２０と接続されている。なお、主記憶メモリ１０２０は、画像復号化部７００に接続された主記憶メモリ６２０（図２１参照）に相当する記憶部である。
【０４０２】
また、実施の形態４における主記憶メモリ１０２０における記憶領域のマッピングは、実施の形態１における主記憶メモリ２０における記憶領域のマッピングと同様であり、第一記憶領域と第二記憶領域とを有している（図８参照）。
【０４０３】
ストリーム制御部９０５は、ストリームを取得し、当該ストリームの先頭ヘッダから読み出した位置情報に基づいて、第一符号化データの出力と前記第二符号化データの出力とを並行して行う。
【０４０４】
つまり、ストリーム制御部９０５は、当該ストリームの先頭ヘッダに含まれる位置情報を参照することで、即座に、第一符号化データと第二符号化データの境目の位置を特定することができる。
【０４０５】
具体的には、ストリーム制御部９０５は、例えば、主記憶メモリ１０２０に一時的に記憶されたストリームの先頭ヘッダから位置情報を読み出す。
【０４０６】
ストリーム制御部９０５はさらに、主記憶メモリ１０２０の所定の記憶領域における第一符号化データが格納されたアドレスを、復帰転送情報＿０−ｈとして記憶する。
【０４０７】
また、ストリーム制御部９０５は、当該位置情報を用いて求まる、主記憶メモリ１０２０の所定の記憶領域における第二符号化データが格納されたアドレスを、復帰転送情報＿０−ｃとして記憶する。
【０４０８】
ストリーム制御部９０５は、主記憶メモリ１０２０の、復帰転送情報＿０−ｈに示されるアドレスから第一符号化データを読み出し、主記憶メモリ１０２０の、復帰転送情報＿０−ｃに示されるアドレスから、第二符号化データを読み出す。
【０４０９】
また、ストリーム制御部９０５は、第一符号化データをヘッダ処理部９１０に出力するとともに、第二符号化データを量子化データ処理部９２０に出力する。
【０４１０】
つまり、ストリーム制御部９０５は、処理対象のストリームを先頭から順に解析することなく、当該ストリームから第一符号化データと第二符号化データとを分離して取得することができる。その結果、第一符号化データの出力と第二符号化データの出力とを並行して行うことができる。
【０４１１】
ヘッダ処理部９１０は、第一ストリーム処理部の一例であり、ストリーム制御部９０５から出力された第一符号化データに対する伸張復号化および可変長復号化を行うことで、可変長符号化および圧縮符号化がなされる前のヘッダを取得する。
【０４１２】
本実施の形態では、ヘッダ処理部９１０は、２値化および算術符号化により得られた第一符号化データに対し、算術復号化および多値化を行うことで、２値化および算術符号化がなされる前のヘッダを取得する。
【０４１３】
具体的には、ヘッダ処理部９１０は、第一復号処理部９１１と、第一転送制御部９１２と、第二転送制御部９１３と、第二復号処理部９１４とを有する。
【０４１４】
つまり、ヘッダ処理部９１０は、実施の形態３におけるストリーム処理装置８００に似た構成を有している。以下に、ヘッダ処理部９１０における処理の流れを簡単に説明する。
【０４１５】
ヘッダ処理部９１０では、第一復号処理部９１１が第一符号化データの算術復号化を行い、これにより得られた中間データ（第一データ）は、第一転送制御部９１２によって、主記憶メモリ１０２０の第一記憶領域に転送される。
【０４１６】
この転送には、第一転送制御部９１２に保持された退避転送情報＿１−ｈが参照され、退避転送情報＿１−ｈに設定された、第一記憶領域内のアドレスに、第一データが格納される。
【０４１７】
第二転送制御部９１３は、主記憶メモリ１０２０の第一記憶領域から第一データを読み出す。この読み出しには、第二転送制御部９１３に保持された復帰転送情報＿２−ｈが参照され、復帰転送情報＿２−ｈに設定された、第一記憶領域内のアドレスから、第一データが読み出される。
【０４１８】
なお、退避転送情報＿１−ｈおよび復帰転送情報＿２−ｈは、例えば、ストリーム処理装置９００を備える画像復号化部７００の動作を制御する制御部６５０（図２０参照）により設定される。
【０４１９】
第二転送制御部９１３は、読み出した第一データを第二復号処理部９１４に送信し、第二復号処理部９１４は、受信した第一データを多値化することで、多値データであるヘッダを、順次、出力部９５０に送信する。
【０４２０】
量子化データ処理部９２０は、第二ストリーム処理部の一例であり、ストリーム制御部９０５から出力された第二符号化データに対する伸張復号化および可変長復号化を行うことで、可変長符号化および圧縮符号化がなされる前の量子化データを取得する。
【０４２１】
本実施の形態では、量子化データ処理部９２０は、２値化および算術符号化により得られた第二符号化データに対し、算術復号化および多値化を行うことで、２値化および算術符号化がなされる前の量子化データを取得する。
【０４２２】
具体的には、量子化データ処理部９２０は、第一復号処理部９２１と、第一転送制御部９２２と、第二転送制御部９２３と、第二復号処理部９２４とを有する。
【０４２３】
つまり、量子化データ処理部９２０は、ヘッダ処理部９１０と同じく、実施の形態３におけるストリーム処理装置８００に似た構成を有している。以下に、量子化データ処理部９２０における処理の流れを簡単に説明する。
【０４２４】
量子化データ処理部９２０では、第一復号処理部９２１が第二符号化データの算術復号化を行い、これにより得られた中間データ（第二データ）は、第一転送制御部９２２によって、主記憶メモリ１０２０の第二記憶領域に転送される。
【０４２５】
この転送には、第一転送制御部９２２に保持された退避転送情報＿１−ｃが参照され、退避転送情報＿１−ｃに設定された、第二記憶領域内のアドレスに、第二データが格納される。
【０４２６】
第二転送制御部９２３は、主記憶メモリ１０２０の第二記憶領域から第二データを読み出す。この読み出しには、第二転送制御部９２３に保持された復帰転送情報＿２−ｃが参照され、復帰転送情報＿２−ｃに設定された、第二記憶領域内のアドレスから、第二データが読み出される。
【０４２７】
なお、退避転送情報＿１−ｃおよび復帰転送情報＿２−ｃは、例えば、ストリーム処理装置９００を備える画像復号化部７００の動作を制御する制御部６５０（図２０参照）により設定される。
【０４２８】
第二転送制御部９２３は、読み出した第二データを第二復号処理部９２４に送信し、第二復号処理部９２４は、受信した第二データを多値化することで、多値データである量子化データを、順次、出力部９５０に送信する。
【０４２９】
以上説明した、ヘッダ処理部９１０による復号処理と、量子化データ処理部９２０による復号処理とは、並行して行われる。
【０４３０】
つまり、あるマクロブロックに対応するヘッダおよび量子化データ（例えば図２３におけるマクロブロックヘッダ＃０および量子化データ＃０）は、ほぼ同時に処理される。
【０４３１】
出力部９５０は、ヘッダ処理部９１０によって取得されたヘッダと、量子化データ処理部９２０によって取得された、当該ヘッダに対応する量子化データとを並べて出力する。
【０４３２】
例えば、図２３に示すストリームがストリーム処理装置９００に入力された場合、ストリーム処理装置９００の出力部９５０からは、マクロブロックヘッダ＃Ｋと量子化データ＃Ｋとの組が、Ｋ＝０、１、２、・・・、Ｎの順に出力される。
【０４３３】
以上のように、ストリーム処理装置９００では、ストリーム制御部９０５が、ストリームの先頭ヘッダに含まれる位置情報を参照することで、第一符号化データと第二符号化データとを並行して出力する。
【０４３４】
これにより、ストリーム処理装置９００は、第一符号化データから多値データであるヘッダを取得するための処理と、第二符号化データから多値データである量子化データを取得するための処理とを並行して実行することができる。
【０４３５】
つまり、ストリーム処理装置９００は、算術符号化およびデータパーティションの双方が適用されたストリームの復号化の効率性を向上させることができる。
【０４３６】
なお、ヘッダ処理部９１０および量子化データ処理部９２０のそれぞれは、前段の処理と後段の処理との間に発生する中間データ（第一データまたは第二データ）を、一時的に主記憶メモリ１０２０に退避させているが、この退避処理は必須ではない。
【０４３７】
例えば、第二復号処理部９１４が、第一復号処理部９１１による算術復号化の処理結果（２値データであるヘッダ）を、第一復号処理部９１１から順次受け取って多値化できる場合を想定する。この場合、第二復号処理部９１４は、主記憶メモリ１０２０を介さずに、第二復号処理部９１４による処理結果を受け取ってもよい。
【０４３８】
そこで、ヘッダ処理部および量子化データ処理部それぞれの前段の処理と後段の処理との間に発生する中間データを、主記憶メモリ１０２０に退避させない構成を有するストリーム処理装置について説明する。
【０４３９】
図３１は、実施の形態４におけるストリーム処理装置の構成概要の別の一例を示すブロック図である。
【０４４０】
図３１に示すストリーム処理装置９０１は、上述のストリーム処理装置９００と同じく、算術符号化およびデータパーティションの双方が適用されたストリームを処理することで、多値化されたヘッダと量子化データとを出力する装置である。また、処理対象のストリームの先頭ヘッダには、第二符号化データの先頭位置を示す位置情報が含まれている。
【０４４１】
ストリーム処理装置９０１は、ストリーム制御部９０５と、ヘッダ処理部９３０と、量子化データ処理部９４０と、出力部９５０とを備える。
【０４４２】
ストリーム制御部９０５は上述のように、位置情報に基づいて、処理対象のストリームから第一符号化データおよび第二符号化データを取得する。ストリーム制御部９０５は、さらに、第一符号化データの出力と第二符号化データの出力とを並行して行う。
【０４４３】
ヘッダ処理部９３０は、第一復号処理部９３１と第二復号処理部９３４とを有する。第一復号処理部９３１は、ストリーム制御部９０５から受信する第一符号化データを算術復号化し、これより得られた２値信号のヘッダを第二復号処理部９３４に送信する。第二復号処理部９３４は、受信したヘッダを多値化し、これにより得られた多値データであるヘッダを出力部９５０に送信する。
【０４４４】
量子化データ処理部９４０は、第一復号処理部９４１と第二復号処理部９４４とを有する。第一復号処理部９４１は、ストリーム制御部９０５から受信する第二符号化データを算術復号化し、これより得られた２値データである量子化データを第二復号処理部９４４に送信する。第二復号処理部９４４は、受信した量子化データを多値化し、これにより得られた多値データである量子化データを出力部９５０に送信する。
【０４４５】
なお、以上説明した、ヘッダ処理部９３０による復号処理と、量子化データ処理部９４０による復号処理とは、並行して行われる。
【０４４６】
つまり、あるマクロブロックに対応するヘッダおよび量子化データ（例えば図２３におけるマクロブロックヘッダ＃０および量子化データ＃０）は、ほぼ同時に処理される。
【０４４７】
出力部９５０は、ヘッダ処理部９３０によって取得されたヘッダと、量子化データ処理部９４０によって取得された、当該ヘッダに対応する量子化データとを並べて出力する。
【０４４８】
例えば、図２３に示すストリームがストリーム処理装置９０１に入力された場合、ストリーム処理装置９００の出力部９５０からは、マクロブロックヘッダ＃Ｋと量子化データ＃Ｋとの組が、Ｋ＝０、１、２、・・・、Ｎの順に出力される。
【０４４９】
以上のように、実施の形態４におけるストリーム処理装置９００および９０１のそれぞれは、ストリームの先頭ヘッダに含まれる位置情報を読み出すことで、当該ストリームに含まれるヘッダ群（第一符号化データ）と量子化データ群（第二符号化データ）との境目の位置を容易に特定することができる。これにより、算術符号化およびデータパーティションの双方が適用されたストリームに含まれる第一符号化データおよび第二符号化データのそれぞれが容易かつ即座に取得される。その結果、第一符号化データおよび第二符号化データに対する復号化処理を並行して実行することが可能となる。
【０４５０】
つまり、ストリーム処理装置９００および９０１のそれぞれは、実施の形態１または２における画像符号化装置１０によって生成される、高いエラー耐性と高圧縮とが両立されたストリームの復号処理を適切かつ効率的に実行することができる。
【０４５１】
以上、本発明のストリーム処理装置およびその方法について、実施の形態３および４に基づいて説明した。しかしながら、本発明は、上記の各実施の形態およびこれらの補足に限定されるものではない。
【０４５２】
本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を各実施の形態およびこれらの補足に施したものも、あるいは、上記説明された複数の構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【０４５３】
例えば、中間データを退避させる場合に、実施の形態１で説明したように、複数の連続するワードに１つのヘッダまたは量子化データが記憶されるように、主記憶メモリ６２０または１０２０に中間データが格納されてもよい。
【０４５４】
つまり、第一データに含まれるあるヘッダに着目した場合、第一記憶領域における１つのワードに、当該ヘッダの少なくとも一部と、他のヘッダの少なくとも一部とが連続して格納されるように、第一データが第一記憶領域に転送されてもよい。
【０４５５】
第二データについても同様である。すなわち、第二記憶領域における１つのワードに、ある量子化データの少なくとも一部と、他の量子化データの少なくとも一部とが連続して格納されるように、第二データが第二記憶領域に転送されてもよい。
【０４５６】
このように、第一記憶領域および第二記憶領域のそれぞれにおいて、中間データを詰めるように格納することで、第一記憶領域および第二記憶領域が効率的に使用される。
【０４５７】
また、実施の形態３および４における第一記憶領域および第二記憶領域は、実施の形態１で説明したように、物理的に別のメモリに存在してもよい。
【０４５８】
つまり、第一転送制御部８１２および第一転送制御部９１２は、第一データを第一記憶領域に転送することで、記憶部が備える第一メモリが有する第一記憶領域に第一データを格納させてもよい。
【０４５９】
また、第一転送制御部８１２および第一転送制御部９２２は、第二データを第二記憶領域に転送することで、記憶部が備える第二メモリであって、第一メモリとは物理的に異なる第二メモリが有する第二記憶領域に、第二データを格納させてもよい。
【０４６０】
また、実施の形態３および４では、２段階の復号化（伸張復号化および可変長復号化）として算術復号化および多値化が採用されている。しかしながら、本発明はこれに限定されない。
【０４６１】
例えば、量子化後の処理を２段階で行う符号化処理であって、前段の処理結果が可変長のデータであり、かつ、後段で、前段の処理結果を所定量まとめて圧縮するような一連の符号化処理によって生成されたストリームに対して、当該符号化処理に対応した２段階の復号化を行う装置であれば、本発明の適用は可能である。
【０４６２】
また、実施の形態３および４における、ストリーム処理装置８００、９００、および９０１を備える機器に特に限定はない。ストリーム処理装置８００、９００、および９０１のそれぞれは、例えば、図１８に示すＡＶシステム５００における画像復号化部５１４に、算術符号化により得られたストリームからヘッダと量子化データとを多値データに復元する装置として備えられてもよい。
【０４６３】
また、実施の形態１〜４におけるストリーム生成装置２００および４００、ならびに、ストリーム処理装置８００、９００、および９０１のそれぞれ（以下、「各装置」という。）を構成する複数の構成要素の全てまたは一部は、ハードウェアで構成されてもよい。また、各装置の構成要素の全てまたは一部は、ＣＰＵ等により実行されるプログラムのモジュールであってもよい。
【０４６４】
また、各装置の複数の構成要素の全てまたは一部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されてもよい。
【０４６５】
システムＬＳＩは、複数の構成要素を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを含んで構成されるコンピュータシステムである。
【０４６６】
また、本発明は、各装置が備える特徴的な構成部の動作を含むストリーム生成方法またはストリーム処理方法として実現してもよい。また、本発明は、そのようなストリーム生成方法またはストリーム処理方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。
【０４６７】
また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。
【産業上の利用可能性】
【０４６８】
本発明は、転送帯域または実装回路等のオーバーヘッドを抑えつつ、高いエラー耐性と高圧縮とが両立されたストリームを生成するストリーム生成装置およびその方法を提供することができる。そのため、本発明は、画像データを圧縮符号化し出力する装置に備えられるストリーム生成装置等として有用である。【０４６９】
また、本発明は、高いエラー耐性と高圧縮とが両立されたストリームに対して復号処理を行うストリーム処理装置およびその方法を提供することができる。そのため、本発明は、画像データを伸張復号化し出力する装置に備えられるストリーム処理装置等として有用である。
【符号の説明】
【０４７０】
１０  画像符号化装置
２０、６２０、１０２０  主記憶メモリ
２１  第一主記憶メモリ
２２  第二主記憶メモリ
５０、６５０  制御部
１００  画像符号化部
１０１、７０１  面内予測部
１０２、７０２  面間予測部
１０３、１０４、７０４  スイッチ
１０５  周波数変換部
１０６  量子化部
１０７、７０７  逆量子化部
１０８、７０８  逆周波数変換部
１０９、７０９  ループフィルタ
２００、４００  ストリーム生成装置
２１０、４１０、８１０  前段部
２１１、４１１  第一処理部
２１２、４１２、８１２、９１２、９２２  第一転送制御部
２１３、８１３  ヘッダ・データ分離回路
２１４、２２４、８２４  選択回路
２１５、２２５、８２５  制御回路
２１６、２２６、８２６  転送回路
２１６ａ、２２６ａ、８２６ａ  バッファ
２１６ｂ、２２６ｂ、８２６ｂ  ビット調整部
２１７、２２７、８２７  監視回路
２２０、４２０、８２０  後段部
２２１、４２１  第二処理部
２２２、４２２、８２２、９１３、９２３  第二転送制御部
２２３  ヘッダ・データ連結回路
５００  ＡＶシステム
５１０  ストリーム入出力部
５１１  メモリ入出力部
５１２  内部メモリ
５１３  内部制御部
５１４、７００  画像復号化部
５１５  音声復号化部
５１６  画像処理部
５１７  音声処理部
５１８  音声符号化部
５１９  画像入出力部
５２０  音声入出力部
５５０  外部メモリ
５６０  外部制御部
６００  画像復号化装置
８００、９００、９０１  ストリーム処理装置
８１１、９１１、９２１、９３１、９４１  第一復号処理部
８２１、９１４、９２４、９３４、９４４  第二復号処理部
８２３  ヘッダ・データ紐付回路
９０５  ストリーム制御部
９１０、９３０  ヘッダ処理部
９２０、９４０  量子化データ処理部
９５０  出力部
【図１】
2012111315.tif 000003
【図２】
2012111315.tif 000004
【図３】
2012111315.tif 000005
【図４】
2012111315.tif 000006
【図５】
2012111315.tif 000007
【図６】
2012111315.tif 000008
【図７】
2012111315.tif 000009
【図８】
2012111315.tif 000010
【図９】
2012111315.tif 000011
【図１０】
2012111315.tif 000012
【図１１】
2012111315.tif 000013
【図１２Ａ】
2012111315.tif 000014
【図１２Ｂ】
2012111315.tif 000015
【図１３】
2012111315.tif 000016
【図１４Ａ】
2012111315.tif 000017
【図１４Ｂ】
2012111315.tif 000018
【図１５】
2012111315.tif 000019
【図１６】
2012111315.tif 000020
【図１７】
2012111315.tif 000021
【図１８】
2012111315.tif 000022
【図１９】
2012111315.tif 000023
【図２０】
2012111315.tif 000024
【図２１】
2012111315.tif 000025
【図２２】
2012111315.tif 000026
【図２３】
2012111315.tif 000027
【図２４】
2012111315.tif 000028
【図２５】
2012111315.tif 000029
【図２６】
2012111315.tif 000030
【図２７】
2012111315.tif 000031
【図２８Ａ】
2012111315.tif 000032
【図２８Ｂ】
2012111315.tif 000033
【図２９Ａ】
2012111315.tif 000034
【図２９Ｂ】
2012111315.tif 000035
【図３０】
2012111315.tif 000036
【図３１】
2012111315.tif 000037
【国際調査報告】
2012111315.tif 000038
2012111315.tif 000039
2012111315.tif 000040
2012111315.tif 000041
2012111315.tif 000042
2012111315.tif 000043
2012111315.tif 000044
2012111315.tif 000045
2012111315.tif 000046