少なくとも単独でデコード可能な単独圧縮フレームデータと、前記単独圧縮フレームデータを参照してデコード可能な参照圧縮フレームデータとを有し、各圧縮フレームデータの順番が、これら圧縮フレームデータに対応する元フレームデータの順番と異なるように構成された第一圧縮ストリームをデコードし、デコード後のストリームを再エンコードして第二圧縮ストリームにする装置であって、第一圧縮ストリームをデコードして元フレームデータを得るデコード手段と、前記デコード手段によって得られた元フレームデータをエンコードして第二圧縮ストリームを得て記録するエンコード手段とを備え、前記エンコード手段は、第二圧縮ストリームにおける後ろのフレームデータを参照する参照圧縮フレームデータの連続部分の記録をすると、第二圧縮ストリームの各フレームの再生順番のうち最も後ろの再生順番と、第二圧縮ストリームの前記最も後ろの再生順番に対応する圧縮フレームデータから前記参照圧縮フレームデータの連続部分の最後のフレームデータまでのフレーム数とをログデータとして記録し、前記デコード手段およびエンコード手段の処理停止後、処理再開時に、前記記録されたログデータの最も後ろの再生順番の次の順番に対応するフレームから処理を再開するよう指示する処理再開指示手段をさらに備えたことを特徴とするトランスコード装置。少なくとも単独でデコード可能な単独圧縮フレームデータと、前記単独圧縮フレームデータを参照してデコード可能な参照圧縮フレームデータとを有し、各圧縮フレームデータの順番が、これら圧縮フレームデータに対応する元フレームデータの順番と異なるように構成された第一圧縮ストリームをデコードし、デコード後のストリームを再エンコードして第二圧縮ストリームにする装置をコンピュータによって実現するためのトランスコードプログラムであって、コンピュータを、第一圧縮ストリームをデコードして元フレームデータを得るデコード手段と、前記デコード手段によって得られた元フレームデータをエンコードして第二圧縮ストリームを得て記録するエンコード手段として機能させるためのプログラムであって、前記エンコード手段は、第二圧縮ストリームにおける後ろのフレームデータを参照する参照圧縮フレームデータの連続部分の記録をすると、第二圧縮ストリームの各フレームの再生順番のうち最も後ろの再生順番と、第二圧縮ストリームの前記最も後ろの再生順番に対応する圧縮フレームデータから前記参照圧縮フレームデータの連続部分の最後のフレームデータまでのフレーム数とをログデータとして記録し、前記プログラムは、前記コンピュータを、さらに、前記デコード手段およびエンコード手段の処理停止後、処理再開時に、前記記録されたログデータの最も後ろの再生順番の次の順番に対応するフレームから処理を再開するよう指示する処理再開指示手段として機能させること特徴とするトランスコードプログラム。請求項1の装置または請求項2のプログラムにおいて、前記エンコード手段は、前記ログデータとして、最も後ろの再生順番のフレームを含む、ひとかたまりのフレームにおける最も前の再生順番も含めて記録することを特徴とする装置またはプログラム。請求項1~3のいずれかの装置またはプログラムにおいて、前記エンコード手段は、前記ログデータとして、最も後ろの再生順番のフレームの種類も含めて記録し、前記処理再開指示手段は、前記ログデータ中の、最も後ろの再生順番のフレームの種類を参照して、既に記録されている第二の圧縮ストリームの直近の単独圧縮フレームデータから、処理を再開するよう指示することを特徴とする装置またはプログラム。しかしながら、特許文献1の手法では、トランスコード後の圧縮データとしてBフレームを用いることが困難となる。その理由は以下のとおりである。たとえば、図1Bに示す9個のフレームF3~F11が一つのGOPを構成している。したがって、特許文献1の手法では、この9個のフレームについてトランスコードを行う。通常通りトランスコードを行うと、圧縮データの最後の2つのフレームは、BフレームF10およびF11となる。この2つのBフレームは、次のGOPであるIフレームF12を参照することになる。しかし、このようにGOPをまたがって、参照を行うことはできない。このため、トランスコード後の圧縮データにおいて、後ろのフレームを参照するBフレームを用いることができなくなる。その結果、トランスコード後の圧縮率を大きくすることができないという問題があった。また、圧縮率を犠牲にしないため、中断時には、次のGOPを参照するフレームが存在しないようにBフレームとして出力する予定のフレームをPフレームとして出力するという手法も考えられる。しかし、このような中断処理を行うことにした場合、かかる中断処理の途中で不意の電源断等によって強制的に中断されてしまうと、Pフレームが正常に記録されず、トランスコードの再開が困難になるという問題があった。この発明は上記のような問題を解決して、適切にトランスコードの再開を行うことのできる装置を提供することを目的とする。この発明に係るトランスコード装置は、少なくとも単独でデコード可能な単独圧縮フレームデータと、前記単独圧縮フレームデータを参照してデコード可能な参照圧縮フレームデータとを有し、各圧縮フレームデータの順番が、これら圧縮フレームデータに対応する元フレームデータの順番と異なるように構成された第一圧縮ストリームをデコードし、デコード後のストリームを再エンコードして第二圧縮ストリームにする装置であって、第一圧縮ストリームをデコードして元フレームデータを得るデコード手段と、前記デコード手段によって得られた元フレームデータをエンコードして第二圧縮ストリームを得て記録するエンコード手段とを備え、前記エンコード手段は、第二圧縮ストリームにおける後ろのフレームデータを参照する参照圧縮フレームデータの連続部分の記録をすると、第二圧縮ストリームの各フレームの再生順番のうち最も後ろの再生順番と、第二圧縮ストリームの前記最も後ろの再生順番に対応する圧縮フレームデータから前記参照圧縮フレームデータの連続部分の最後のフレームデータまでのフレーム数とをログデータとして記録し、前記デコード手段およびエンコード手段の処理停止後、処理再開時に、前記記録されたログデータの最も後ろの再生順番の次の順番に対応するフレームから処理を再開するよう指示する処理再開指示手段をさらに備えたことを特徴としている。したがって、一旦中断したトランスコードを再開してトランスコードを継続することができる。この発明に係るトランスコード装置は、エンコード手段が、前記ログデータとして、最も後ろの再生順番のフレームを含む、ひとかたまりのフレームにおける最も前の再生順番も含めて記録することを特徴としている。したがって、再開時に容易に、再開すべきフレームが含まれるひとかたまりのフレームを見つけ出すことができる。この発明に係るトランスコード装置は、エンコード手段が、前記ログデータとして、最も後ろの再生順番のフレームの種類も含めて記録し、処理再開指示手段が、前記ログデータ中の、最も後ろの再生順番のフレームの種類を参照して、既に記録されている第二の圧縮ストリームの直近の単独圧縮フレームデータから、処理を再開するよう指示することを特徴としている。したがって、単独圧縮フレームの密度が高くなり、圧縮率が低下することを防止することができる。デコード手段は、実施形態においては、ステップS1がこれに対応する。エンコード手段は、実施形態においては、ステップS2がこれに対応する。処理再開指示手段は、実施形態においては、ステップS10~S15がこれに対応する。プログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。1.トランスコード装置の機能ブロック図図2に、この発明の一実施形態によるトランスコード装置の機能ブロック図を示す。デコード手段2は、第一圧縮ストリームをデコードし元フレームデータを復元する。エンコード手段4は、元フレームデータをエンコードし第二圧縮ストリームを生成する。エンコード手段4は、第二圧縮ストリームにおける後ろのフレームデータを参照する参照圧縮フレームデータの連続部分の記録をすると、第二圧縮ストリームの各フレームの再生順番のうち最も後ろの再生順番と、第二圧縮ストリームの前記最も後ろの再生順番に対応する圧縮フレームデータから前記参照圧縮フレームデータの連続部分の最後のフレームデータまでのフレーム数とをログデータ6として記録する。たとえば、図1CのF2のBフレームを記録した時点で、最も大きいフレーム番号この場合F3と、当該F3から記録した最後のフレームF2までのフレーム数この場合2を記録する。つまり、F3のI、F1のBを記録した時点では、上記ログデータ6は記録せず、F2のBを記録した時点になって、上記ログデータ6を記録する。したがって、ログデータ6には、既に記録されている圧縮フレームのうち、IBBやPBBなど、IまたはPを先頭とする一組のフレームの記録が完了した時点までの情報が記録されることになる。たとえば、図3Cに示すように、F4のBまで圧縮フレームを記録した時点でトランスコードの中断があったとする。この場合には、図3Dに示すように、最も後ろの再生フレーム番号としてF3、当該フレームから最終記録フレームまでのフレーム数として2が記録されていることになる。トランスコードを再開する際には、処理再開指示手段8は、記録されているログデータ6を読み出す。このログデータ6に示されている最も後ろの再生フレーム番号F3に基づいて、当該再生順番に対応する圧縮データを探し出す。このためには、たとえば、処理再開指示手段8は、記録されたトランスコード後の圧縮フレームのGOPの先頭図3CのF3のIからデコードを行い、当該再生順番の圧縮フレームを探し出す。なお、この実施形態では、GOP中のフレームにおいて、再生順番が最も早いフレームのフレーム番号ここではF1を記録している。したがって、デコードをすることにより、最後に再生される圧縮フレームここではF3のIを特定することができる。したがって、処理再開指示手段8は、このフレーム番号F3の次のフレーム番号F4からトランスコードを再開するように、デコード手段2、エンコード手段4に指示を与える。また、処理再開指示手段8は、ログデータ6に示される、前記最も後ろの再生フレームF3から、記録した最後のフレームF2までのフレーム数この場合2を読み出す。そして、上記フレームF3から後ろ2つの圧縮フレームまでを残して、それ以降の圧縮フレームを削除する。図3Cの場合であれば、フレームF6、F4を削除することになる。このようにして、図3Eに示すようにトランスコードされたものが記録されていくことになる。なお、再開時には最初のフレームは、Iフレームとして記録する。2.ハードウエア構成図4に、一実施形態によるトランスコード装置のハードウエア構成を示す。CPU10には、メモリ12、ハードディスク14、CD-ROMドライブ16が接続されている。ハードディスク14には、オペレーティングシステム20、トランスコードプログラム22、トランスコードの対象であるMPEG2データ24が記録されている。トランスコードプログラム22は、オペレーティングシステム20と協働してその機能を発揮する。また、オペレーティングシステム20、トランスコードプログラム22は、CD-ROMドライブ16を介して、CD-ROM18に記録されていたものを、ハードディスク14にインストールしたものである。3.トランスコード処理ここでは、MPEG2データをMPEG4データにトランスコードする場合について説明する。図5に、ハードディスク14に記録されたトランスコードプログラム22のフローチャートを示す。CPU10は、ハードディスク14に記録されているMPEG2データを読み出してデコードし、元フレームを生成するステップS1。この際、CPU10は、生成した元フレームのフレーム番号をカウントして、各元フレームに関連づける。生成した元フレームおよびフレーム番号は、メモリ12またはハードディスク14に一次的に記録される。たとえば、図3Aに示すMPEG2データを読み出し、図3Bに示す元フレームを得る。続いて、CPU10は、デコードして得た元フレームを、MPEG4にエンコードする。一組の元フレームF1、F2、F3についてのエンコードを完了すると、CPU10は、MPEG4データをハードディスク14に記録するステップS3。たとえば、図3Cに示すF3のIフレーム、F1のBフレーム、F2のBフレームが記録される。ただし、圧縮動画ファイルにおいては、一般に、フレーム番号は記録しない。したがって、この実施形態においても、フレーム番号を記録していない。一組のMPEG4データがハードディスク14に記録されると、CPU10は、ログデータをハードディスク14に記録するステップS4。ログデータの例を、図6に示す。最大フレーム番号は、既に記録したMPEG4データのうち、最も大きいフレーム番号である。ここでは、F3に対応して3が最も大きいフレーム番号として記録される。最終記録フレームまでのフレーム数は、最も大きい番号を持つフレームが記録されている位置から、最後の位置に記録されているフレームまでのフレーム数である。ここでは、図3CのF3のIフレームから、F2のBフレームまでのフレーム数2が記録される。フレームタイプは、最も大きいフレーム番号を持つフレームのタイプである。ここでは、Pが記録される。最大フレーム番号を含むGOPの先頭からのバイト数は、トランスコード後の圧縮データにおいて、最大フレーム番号を持つフレームを含むGOPの先頭の、圧縮データの先頭からのバイト数である。ここでは、たとえば、10バイトが記録される。GOPの先頭のフレーム番号は、上記GOPの先頭のフレームのフレーム番号である。ここでは、1が記録される。ログデータの記録が終了すると、CPU10は、トランスコードが終了したかどうかを判断するステップS5。終了していなければ、ステップS1以下を繰り返し実行する。その結果、MPEG2データがMPEG4データに変換されてハードディスク14に記録されていくことになる。また、これとともに、図6に示すように、ログデータが次々と記録されていく。ステップS5において、トランスコードが終了したと判断した場合、CPU10は、処理を終了する。以上のようにして、トランスコードが実行される。なお、トランスコード中に、恣意的に中断する場合や、予期せぬエラーにより中断する場合がある。この場合に、トランスコードを再開する処理を以下説明する。図7に、トランスコードプログラム22の、トランスコード再開時のフローチャートを示す。ここでは、図8Cに示すように、F20010のP、F20008のBまで記録した時点で、予期せぬエラーによって中断してしまった場合を例として説明する。なお、図8において、F20010は、表記を省略してF10としている。F20010のP、F20008のB、F20009のBは、フレームF20010までのデコードとエンコード処理が終わると、直ちに書き込みがなされる。したがって、通常は、これら一組のF20010のP、F20008のB、F20009のBは、そろって書き込みがなされることになる。しかし、予期せぬエラーにて中断した場合には、図8Cに示すように、F20010のP、F20008のBまで記録した時点で終了するという事態が生じうる。なお、上記のような中断の際には、F20010のP、F20008のB、F20009のBが全て記録されていないので、これらについてのログデータは記録されていない。つまり、ログデータは、F20007のP、F20005のB、F20006のBについて記録がなされた状態となっている。まず、CPU10は、ハードディスク14に記録されている最後のログデータを読み出すステップS10。次に、図6の当該ログデータから、最大フレーム番号を取得する。ここでは、20007を取得することになる。次に、CPU10は、当該ログデータから、GOPの先頭までのファイルの先頭からのバイト数を取得する。ここでは、120000000バイトを取得することになる。さらに、GOPの先頭のフレーム番号を取得するステップS11。ここでは、20002を取得することになる。CPU10は、既にトランスコードして記録済みのMPEG4データのGOPの先頭から1フレームずつデコードを行い、上記の最大フレーム番号を有する圧縮フレームを特定するステップS12。つまり、図8Cにおける、F20007のPを特定する。この際、取得したバイト数によりGOPの先頭を容易に見つけ出すことができる。さらに、GOPの先頭フレーム番号が分かっているので、最大フレーム数に対応する圧縮フレームを容易に見いだすことができる。次に、CPU10は、最終記録フレームまでのフレーム数を取得するステップS13。ここでは、2を取得することになる。CPU10は、特定した最大フレーム番号を有する圧縮フレームから、最終記録フレームまでのフレーム数を加えたフレームより後の圧縮フレームを削除するステップS14。ここでは、図8CのF20007のPから2つ後のF20006のBまでを残して、それより後の圧縮データF20010のP、F20008のBを削除する。これにより、記録された圧縮データMPEG4データは、図8Dのようになる。これは、完全な一組として記録されていない圧縮データを削除するためである。続いて、CPU10は、最大フレーム番号の次のフレーム番号を、再開するフレーム番号とするステップS15。したがって、CPU10は、MPEG2データをデコードし、再開フレーム番号に対応するフレームを探し出す。その後、図5のフローチャートにしたがってトランスコードを実行する。これにより、図8Eに示すように、F20010のIフレームから記録が再開される。以上のようにして、トランスコードの再開を行うことができる。3.その他の実施形態上記実施形態では、いずれの箇所において中断したかにより、PフレームとなるべきところがIフレームになってしまい、Iフレームの密度が高くなり圧縮度が低下することになる。再開時に記録される最初の圧縮フレームは、Iフレームとなるからである。この問題に対応するため、ログデータを参照し、圧縮データMPEG4中の直近のIフレームからトランスコードが再開されるように、制御するようにしてもよい。この場合、ステップS14において、当該Iフレーム以下の記録済み圧縮フレームは削除する。上記実施形態では、MPEG2データをMPEG4データにトランスコードする場合について説明した。しかし、圧縮データを一旦デコードした後、階調変更、画像サイズ変更、フレームレート変更、インタレース有無の変更、画像縦横比変更、クロップなどを変更する処理を行い、再び圧縮データとする場合などトランスコード一般に適用することができる。上記実施形態では、フレーム番号を再生順番としているが、PTSなどを再生順番として用いてもよい。