(57)【特許請求の範囲】
【請求項１】
MPEG（Moving Picture Expert Group）規格の符号を格納する格納手段と、
前記符号の時刻情報と位置情報とを対応付けて管理する第１の管理手段と、
前記符号の時刻情報が不連続になった不連続時刻情報の範囲を管理する第２の管理手段と、
前記第１の管理手段及び前記第２の管理手段を参照し、前記格納手段に格納された前記符号の編集操作を行う編集手段と、を有し、
前記編集手段は、
編集操作を受け付けた場合に、前記第２の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、前記ピクチャの時刻情報を補正する補正手段と、
前記第１の管理手段を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する位置情報特定手段と、
前記特定した位置情報を基に、前記格納手段に格納された前記符号の編集操作を行う編集操作手段と、
を有することを特徴とする再生装置。
【請求項２】
前記第１の管理手段に管理されている前記符号の時刻情報と前記位置情報とを基に、前記格納手段に格納されている前記符号を読み出す読出手段と、
前記読出手段が前記符号を読み出す際に使用した前記符号の時刻情報と前記位置情報とをインデックスとして管理する第３の管理手段と、を有し、
前記補正手段は、
編集操作を受け付けた場合に、前記第３の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報に近いIピクチャの時刻情報を特定する第１の特定手段と、
前記第２の管理手段を参照し、前記第１の特定手段で特定したIピクチャの時刻情報に近い不連続時刻情報の範囲を特定する第２の特定手段と、
前記第２の特定手段で特定した不連続時刻情報の範囲から順に、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定する第３の特定手段と、
を有することを特徴とする請求項１記載の再生装置。
【請求項３】
前記第３の特定手段は、
前記第２の特定手段で特定した不連続時刻情報の範囲に、編集操作時に受け付けたピクチャの時刻情報が含まれていない場合は、不連続時刻情報の範囲を変更し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定することを特徴とする請求項２記載の再生装置。
【請求項４】
MPEG（Moving Picture Expert Group）規格の符号を格納する格納手段と、前記符号の時刻情報と位置情報とを対応付けて管理する第１の管理手段と、前記符号の時刻情報が不連続になった不連続時刻情報の範囲を管理する第２の管理手段と、を有して構成する再生装置の制御方法であって、
編集操作を受け付けた場合に、前記第２の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、前記ピクチャの時刻情報を補正する補正工程と、
前記第１の管理手段を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する位置情報特定工程と、
前記特定した位置情報を基に、前記格納手段に格納された前記符号の編集操作を行う編集操作工程と、
を有することを特徴とする制御方法。
【請求項５】
MPEG（Moving Picture Expert Group）規格の符号を格納する格納手段と、前記符号の時刻情報と位置情報とを対応付けて管理する第１の管理手段と、前記符号の時刻情報が不連続になった不連続時刻情報の範囲を管理する第２の管理手段と、を有して構成する再生装置のコンピュータに実行させるプログラムであって、
編集操作を受け付けた場合に、前記第２の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、前記ピクチャの時刻情報を補正する補正処理と、
前記第１の管理手段を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する位置情報特定処理と、
前記特定した位置情報を基に、前記格納手段に格納された前記符号の編集操作を行う編集操作処理と、を前記コンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、MPEG（Moving Picture Expert Group）規格の符号を再生する再生装置、制御方法及びプログラムに関する。
【背景技術】
【０００２】
MPEG（Moving Picture Expert Group）規格の符号を解析すると、タイムスタンプ（33ビットPTS；Presentation Time Stamp）を取得することができる。従来は、このタイムスタンプ（33ビットPTS）を用いて符号の編集操作を行っていた。
【０００３】
MPEG規格の符号の上限となる時間は、約26.5時間である。詳細な値は、以下の算出式で得られる。
(0x1ffffffff/90000)/（60×60）≒26.51214
但し、0x1ffffffff；33ビットの最大値
90000；タイムスタンプの周期（Hz）
60×60；秒を時間に換算するための値
【０００４】
このため、MPEG規格では、MPEG規格の符号が33ビットの上限値（約26．5時間）を越えると、タイムスタンプ（33ビットPTS）の値が桁あふれするため、図１に示すように、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越えたタイミングでリセットし、リセット後のタイムスタンプ（33ビットPTS）の値を０に戻している。図１に示す縦軸は、タイムスタンプ（33ビットPTS）を示し、横軸は、符号位置を示している。
【０００５】
また、図１に示すように、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットする場合がある。通常、タイムスタンプ（33ビットPTS）の値は単調増加するが、タイムスタンプ（33ビットPTS）の値が単調増加せず、不連続になる場合があり、この場合は、タイムスタンプ（33ビットPTS）の値をリセットしている。タイムスタンプ（33ビットPTS）の値が不連続になるケースとしては、番組が切り替わる場合が挙げられる。例えば、番組Aと番組Bとがあり、番組Bに番組Aよりも古いタイムスタンプ（33ビットPTS）の値が含まれており、番組A→番組Bの順番で切り替わる場合は、タイムスタンプ（33ビットPTS）の値が単調増加せず、番組A,B間でタイムスタンプ（33ビットPTS）の値が不連続になる。
【０００６】
タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットした場合は、リセット後のタイムスタンプ（33ビットPTS）の値が０にならない。このため、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットした場合は、タイムスタンプ（33ビットPTS）に対応するピクチャの位置を特定することが困難になる。
【０００７】
このようなことから、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットした場合でも、タイムスタンプ（33ビットPTS）に対応するピクチャの位置を特定することが可能な仕組みの開発が必要視されることになる。
【０００８】
なお、本発明より先に出願された技術文献として、受信電波状況の悪化等に起因するストリームデータの一部欠落によりPCRをリセットするPCR情報を取得できなかった場合にも、欠落からの回復後、次のPCR情報を取得するまでに正常に取得したストリームデータを放送システムが意図したタイミングで再生できるようにする技術について開示された文献がある（例えば、特許文献１：WO2006/112508号公報参照）。
【０００９】
上記特許文献１では、ストリームデータにおける欠落区間の位置を特定する位置情報と、欠落区間に含まれていたPCRに同期して時刻カウンタが示したであろう時刻を特定する時刻補正情報と、をストリームデータに対応付けて記憶する。そして、ストリームデータの再生時には、位置情報と時刻補正情報とを参照し、欠落が終了する位置で時刻カウンタを放送システムが意図していた時刻に設定し直す。これにより、正常に取得したストリームデータを放送システムが意図したタイミングで再生することを可能にしている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】ＷＯ２００６／１１２５０８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
上記特許文献１では、位置情報と補正時刻情報とを参照し、正常に取得したストリームデータを放送システムが意図したタイミングで再生することを可能にしている。
【００１２】
しかし、上記特許文献１には、MPEG規格の符号の時刻情報（タイムスタンプ（33ビットPTS））が上限を越える前に、符号の時刻情報をリセットした場合でも、符号の時刻情報に対応するピクチャの位置を特定することが可能な仕組みについては何ら記載も示唆もされていない。
【００１３】
本発明は、上記事情に鑑みてなされたものであり、MPEG規格の符号の時刻情報（タイムスタンプ（33ビットPTS））が上限を越える前に、符号の時刻情報をリセットした場合でも、符号の時刻情報に対応するピクチャの位置を特定することが可能な再生装置、制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
かかる目的を達成するために、本発明は、以下の特徴を有することとする。
【００１６】
本発明にかかる再生装置は、
MPEG（Moving Picture Expert Group）規格の符号を格納する格納手段と、
前記符号の時刻情報と位置情報とを対応付けて管理する第１の管理手段と、
前記符号の時刻情報が不連続になった不連続時刻情報の範囲を管理する第２の管理手段と、
前記第１の管理手段及び前記第２の管理手段を参照し、前記格納手段に格納された前記符号の編集操作を行う編集手段と、を有し、
前記編集手段は、
編集操作を受け付けた場合に、前記第２の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、前記ピクチャの時刻情報を補正する補正手段と、
前記第１の管理手段を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する位置情報特定手段と、
前記特定した位置情報を基に、前記格納手段に格納された前記符号の編集操作を行う編集操作手段と、
を有することを特徴とする。
【００１７】
本発明にかかる制御方法は、
MPEG（Moving Picture Expert Group）規格の符号を格納する格納手段と、前記符号の時刻情報と位置情報とを対応付けて管理する第１の管理手段と、前記符号の時刻情報が不連続になった不連続時刻情報の範囲を管理する第２の管理手段と、を有して構成する再生装置の制御方法であって、
編集操作を受け付けた場合に、前記第２の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、前記ピクチャの時刻情報を補正する補正工程と、
前記第１の管理手段を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する位置情報特定工程と、
前記特定した位置情報を基に、前記格納手段に格納された前記符号の編集操作を行う編集操作工程と、
を有することを特徴とする。
【００１８】
本発明にかかるプログラムは、
MPEG（Moving Picture Expert Group）規格の符号を格納する格納手段と、前記符号の時刻情報と位置情報とを対応付けて管理する第１の管理手段と、前記符号の時刻情報が不連続になった不連続時刻情報の範囲を管理する第２の管理手段と、を有して構成する再生装置のコンピュータに実行させるプログラムであって、
編集操作を受け付けた場合に、前記第２の管理手段を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、前記ピクチャの時刻情報を補正する補正処理と、
前記第１の管理手段を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する位置情報特定処理と、
前記特定した位置情報を基に、前記格納手段に格納された前記符号の編集操作を行う編集操作処理と、を前記コンピュータに実行させることを特徴とする。
【発明の効果】
【００１９】
本発明によれば、MPEG規格の符号の時刻情報（タイムスタンプ（33ビットPTS））が上限を越える前に、符号の時刻情報をリセットした場合でも、符号の時刻情報に対応するピクチャの位置を特定することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の課題を説明するための図である。
【図２】本実施形態の再生装置100の構成例を示す図である。
【図３】編集部200の構成例を示す図である。
【図４】Video符号検索部203での処理動作例を示す図である。
【図５】Video符号検索部203での処理動作例を説明するための図である。
【発明を実施するための形態】
【００２１】
＜本実施形態の再生装置100の概要＞
まず、図２、図３を参照しながら、本実施形態の再生装置100の概要について説明する。
【００２２】
本実施形態の再生装置100は、MPEG規格の符号を格納する格納手段（MPEGファイル1012に相当）と、符号の時刻情報（Iピクチャの表示時刻に相当）と位置情報（Iピクチャのファイル位置に相当）とを対応付けて管理する第１の管理手段（Iピクチャテーブル1011に相当）と、符号の時刻情報が不連続になった不連続時刻情報の範囲（不連続直前の33ビットPTS、不連続直後の33ビットPTS）を管理する第２の管理手段（不連続なPTSを示すファイル1013に相当）と、第１の管理手段1011及び第２の管理手段1013を参照し、格納手段1012に格納された符号の編集操作を行う編集手段（編集部200に相当）と、を有して構成する。
【００２３】
本実施形態の編集手段200は、編集操作を受け付けた場合に、第２の管理手段1013を参照し、編集操作時に受け付けたピクチャの時刻情報が含まれる不連続時刻情報の範囲を特定し、該特定した不連続時刻情報の範囲に応じた補正値で、ピクチャの時刻情報を補正する。そして、第１の管理手段1011を参照し、補正後のピクチャの時刻情報を含む時刻情報を特定し、該特定した時刻情報と対応付けられた位置情報を特定する。そして、その特定した位置情報を基に、格納手段1012に格納された符号の編集操作を行う。
【００２４】
本実施形態の再生装置100は、MPEG規格の符号の時刻情報が不連続になった不連続時刻情報の範囲を管理し、その不連続時刻情報の範囲を基に、編集操作時に受け付けたピクチャの時刻情報に対応するピクチャの位置を特定することにしている。このため、本実施形態の再生装置100は、MPEG規格の符号の時刻情報（タイムスタンプ（33ビットPTS））が上限を越える前に、符号の時刻情報をリセットした場合でも、符号の時刻情報に対応するピクチャの位置を特定することができる。以下、添付図面を参照しながら、本実施形態の再生装置100について詳細に説明する。
【００２５】
＜本実施形態の再生装置100の構成例＞
まず、図２を参照しながら、本実施形態の再生装置100の構成例について説明する。
【００２６】
本実施形態の再生装置100は、メモリ101と、プッシュソース102と、Demux103と、Decode104と、Video Render105と、Audio Render106と、ディスプレイ107と、スピーカ108と、を含んで構成している。
【００２７】
メモリ101は、各種情報を記憶するものであり、例えば、Iピクチャテーブル1011、MPEGファイル1012、不連続なPTSを示すファイル1013などを格納する。
【００２８】
Iピクチャテーブル1011は、Iピクチャの表示時刻（64ビットPTS）と、Iピクチャのファイル位置と、を対応付けて管理するテーブルである。Iピクチャは、Intra-coded picture（フレーム内符号化画像）のことを示す。Iピクチャテーブル1011では、ファイル先頭のIピクチャの表示時刻（64ビットPTS）を最小値として、Iピクチャの表示時刻（64ビットPTS）が単調増加するように、Iピクチャの表示時刻（64ビットPTS）と、Iピクチャのファイル位置と、を対応付けて管理することが好ましい。
【００２９】
MPEGファイル1012は、MPEG規格の多重化符号を格納したファイルである。
【００３０】
不連続なPTSを示すファイル1013は、不連続なタイムスタンプ（33ビットPTS）の情報を格納するファイルであり、先頭の33ビットPTS、不連続直前の33ビットPTS、不連続直後の33ビットPTS、リセット前の33ビットPTS、リセット後の33ビットPTSなどの情報を格納する。不連続直前の33ビットPTS及び不連続直後の33ビットPTSは、タイムスタンプ（33ビットPTS）が不連続であることを検出した際に、一対の情報として不連続なPTSを示すファイル1013に格納する。このため、タイムスタンプ（33ビットPTS）が不連続であることを検出する毎に、不連続直前の33ビットPTS及び不連続直後の33ビットPTSの一対の情報を不連続なPTSを示すファイル1013に順に格納していくことになる。なお、上述した不連続なPTSを示すファイル1013の作成方法は特に限定せず、上述した各種情報を不連続なPTSを示すファイル1013に格納することが可能であれば、あらゆる作成方法が適用可能である。例えば、画像データの録画時に、上述した各種情報を不連続なPTSを示すファイル1013に格納することも可能である。
【００３１】
放送番組を録画する際は、多重化符号を解析し、番組の本編の間に存在するコマーシャル区間を検出している。このため、コマーシャル区間の検出処理を行う際に、タイムスタンプ（33ビットPTS）の値が不連続になる箇所も検出し、タイムスタンプ（33ビットPTS）の値が不連続になった箇所の直前のタイムスタンプ（33ビットPTS）の値（不連続直前の33ビットPTS）と、直後のタイムスタンプ（33ビットPTS）の値（不連続直後の33ビットPTS）と、の情報を取得し、その取得した情報（不連続直前の33ビットPTS、不連続直後の33ビットPTSの一対の情報）を不連続なPTSを示すファイル1013に格納するように構築することも可能である。これにより、不連続なタイムスタンプ（33ビットPTS）の範囲を不連続なPTSを示すファイル1013に格納して管理することができる。なお、タイムスタンプ（33ビットPTS）の値が不連続になる箇所を検出する際の方法は、特に限定せず、任意の方法が適用可能である。例えば、タイムスタンプ（33ビットPTS）の値が所定期間（例えば、２秒程度）不連続になった場合に、不連続になった箇所として検出するように構築することも可能である。
【００３２】
プッシュソース102は、動画ファイルを読み込む機能を行うソースフィルタである。プッシュソース102は、MPEGファイル1012から多重化符号を読み取り、その読み取った多重化符号をDemux103に送信する。プッシュソース102は、MPEGファイル1012から多重化符号を読み取り、その読み取った多重化符号をDemux103に送信する際に使用したIピクチャの表示時刻（64ビットPTS）と、Iピクチャのファイル位置と、をIピクチャテーブルのインデックス1021として管理する。
【００３３】
Demux103は、動画ファイルをVideo符号、Audio符号に区分けする機能を行うスプリッタフィルタである。Demux103は、バッファを含んで構成し、プッシュソース102から受け付けた多重化符号をバッファに保存する。また、バッファに保存した多重化符号を解析し、1ピクチャ分の33ビットPTSを取得する。また、多重化符号をVideo符号とAudio符号とに分離する。Demux103は、Video符号とAudio符号、及び33ビットPTSをDecode104に出力する。
【００３４】
Decode104は、動画ファイルを出力データに変換する機能を行う変換フィルタである。Decode104は、バッファを含んで構成し、Demux103から受け付けたVideo符号とAudio符号、及び33ビットPTSをバッファに保存する。また、バッファに保存したVideo符号と、Audio符号と、を復号し、その復号したデータをRender105,106に出力する。Decode104は、Video符号を復号した画像データをVideo Render105に出力し、Audio符号を復号した音声データをAudio Render106に出力する。また、Decode104は、Video符号を復号した画像データ（サムネイル画像）と、33ビットPTSと、を対応付けてテーブル1041で管理する。
【００３５】
Video Render105は、画像データをディスプレイ107に出力する機能を行うレンダリングフィルタである。Video Render105は、画像データをディスプレイ107に出力し、ディスプレイ107上に画像データを表示する。
【００３６】
Audio Render106は、音声データをスピーカ108に出力する機能を行うレンダリングフィルタである。Audio Render106は、音声データをスピーカ108に出力し、スピーカ108から音声データを出力する。
【００３７】
＜再生装置100の処理動作例＞
次に、図２を参照しながら、本実施形態の再生装置100の処理動作例について説明する。
【００３８】
本実施形態の再生装置100は、再生開始時刻の指示を受け付けた場合に、プッシュソース102は、Iピクチャテーブル1011を参照し、再生開始時刻に相当するIピクチャの表示時刻（64ビットPTS）を特定し、その特定したIピクチャ表示時刻（64ビットPTS）に対応するIピクチャのファイル位置を特定する。そして、その特定したIピクチャのファイル位置を基に、MPEGファイル1012から多重化符号を読み出し、その読み出した多重化符号をDemux103に送信する。この時、プッシュソース102は、MPEGファイル1012から多重化符号を読み取り、その読み取った多重化符号をDemux103に送信する際に使用したIピクチャの表示時刻（64ビットPTS）と、Iピクチャのファイル位置と、をIピクチャテーブルのインデックス1021として管理する。このため、Iピクチャテーブルのインデックス1021は、プッシュソース102が多重化符号をDemux103に送信する際に使用したIピクチャの表示時刻（64ビットPTS）と、Iピクチャのファイル位置と、を順に管理することになる。
【００３９】
Demux103は、プッシュソース102から受け付けた多重化符号を解析し、33ビットPTSを取得する。また、多重化符号をVideo符号、Audio符号に分離する。そして、Demux103は、Video符号とAudio符号、及び33ビットPTSをDecode104に送信する。
【００４０】
Decode104は、Demux103から受け付けたVideo符号を復号し、復号した画像データ（サムネイル画像）と、33ビットPTSと、を対応付けてテーブル1041に記憶する。また、Decode104は、復号した画像データ、音声データをRender105,106に出力し、Render105,106は、画像データ、音声データをディスプレイ107、スピーカ108から出力する。
【００４１】
本実施形態の再生装置100は、MPEGファイル1012から読み出した多重化符号を解析すると、タイムスタンプ（33ビットPTS）を取得することができる。再生装置100は、このタイムスタンプ（33ビットPTS）と、サムネイル画像と、を対応付けてテーブル1041に記憶し、MPEGファイル1012から読み出した多重化符号の編集操作を行う。
【００４２】
MPEG規格では、MPEGファイル1012から読み出した多重化符号が約26.5時間以下ならば、MPEGファイル1012の多重化符号を解析して得られるタイムスタンプ（33ビットPTS）から正しい時刻情報を取得することができる。しかし、約26．5時間を越えると、タイムスタンプ（33ビットPTS）の値が桁あふれするため、図１に示すように、タイムスタンプ（33ビットPTS）の値が約26．5時間を越えたタイミングでリセットし、リセット後のタイムスタンプ（33ビットPTS）の値を０に戻している。この場合は、編集操作時にIピクチャテーブル1011を参照すれば、タイムスタンプ（33ビットPTS）に対応するピクチャの位置を特定することができる。
【００４３】
また、タイムスタンプ（33ビットPTS）の値が単調増加せず、不連続になり、図１に示すように、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットする場合がある。この場合は、リセット後のタイムスタンプ（33ビットPTS）の値が０にならない。このため、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットした場合は、Iピクチャテーブル1011を参照してもタイムスタンプ（33ビットPTS）に対応するピクチャの位置を特定することが困難になる。
【００４４】
このため、本実施形態の再生装置100は、タイムスタンプ（33ビットPTS）の値が不連続になった範囲（不連続直前の33ビットPTS、不連続直後の33ビットPTS）を不連続なPTSを示すファイル1013で管理し、編集操作時に、Iピクチャテーブル1011、Iピクチャテーブルのインデックス1021、MPEGファイル1012、不連続なPTSを示すファイル1013を参照し、タイムスタンプ（33ビットPTS）に対応するピクチャの位置を特定することにしている。これにより、タイムスタンプ（33ビットPTS）の値が33ビットの上限値を越える前に、タイムスタンプ（33ビットPTS）の値をリセットした場合でも、タイムスタンプ（33ビットPTS）に対応するピクチャの位置を特定することができる。以下、編集操作時の処理動作例について説明する。
【００４５】
＜編集操作時の構成例＞
次に、図３を参照しながら、編集操作時の構成例について説明する。
【００４６】
本実施形態の再生装置100は、図３に示す編集部200を有して構成する。編集部200は、編集操作を行うものであり、Audio符号検索部201と、Audio符号抜取部202と、Video符号検索部203と、Video符号抜取部204と、Video符号再圧縮部205と、再多重化部206と、を含んで構成する。編集操作としては、カット編集や、カット編集のプレビュー等が挙げられる。
【００４７】
Audio符号検索部201は、編集対象の指定ピクチャを受け付けた場合に、Iピクチャテーブル1011、Iピクチャテーブルのインデックス1021、MPEGファイル1012、不連続なPTSを示すファイル1013を参照し、指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置を検索する。指定ピクチャとほぼ同じ時刻のAudio符号とVideo符号とはほぼ同じファイル位置にあるので、指定ピクチャとほぼ同じ時刻のAudio符号は、指定ピクチャのVideo符号のファイル位置の前後から検索する。
【００４８】
Audio符号抜取部202は、Audio符号検索部201の検索結果（編集対象の指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置）を基に、多重化符号からAudio符号を抜き取る。
【００４９】
Video符号検索部203は、編集対象の指定ピクチャを受け付けた場合に、Iピクチャテーブル1011、Iピクチャテーブルのインデックス1021、MPEGファイル1012、不連続なPTSを示すファイル1013を参照し、指定ピクチャのVideo符号のファイル位置を検索する。
【００５０】
Video符号抜取部204は、Video符号検索部203の検索結果（編集対象の指定ピクチャのVideo符号のファイル位置）を基に、多重化符号からVideo符号を抜き取る。
【００５１】
Video符号再圧縮部205は、Video符号抜取部204で抜き取ったVideo符号を再圧縮する。
【００５２】
再多重化部206は、Audio符号とVideo符号とを再多重化する。
【００５３】
＜編集部200の処理動作例＞
次に、図３を参照しながら、編集部200の処理動作例について説明する。
【００５４】
Audio符号検索部201は、編集対象の指定ピクチャを受け付けた場合に、Iピクチャテーブル1011、Iピクチャテーブルのインデックス1021、MPEGファイル1012、不連続なPTSを示すファイル1013を参照し、指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置を検索する。そして、その検索結果（編集対象の指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置）をAudio符号抜取部202に通知する（ステップS10）。
【００５５】
Audio符号抜取部202は、Audio符号検索部201から受け付けた検索結果（編集対象の指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置）を基に、多重化符号に含まれるAudio符号を抜き取り、その抜き取ったAudio符号を再多重化部206に渡す（ステップS11）。
【００５６】
Video符号検索部203は、編集対象の指定ピクチャを受け付けた場合に、Iピクチャテーブル1011、Iピクチャテーブルのインデックス1021、MPEGファイル1012、不連続なPTSを示すファイル1013を参照し、指定ピクチャのVideo符号のファイル位置を検索する。そして、その検索結果（編集対象の指定ピクチャのVideo符号のファイル位置）をVideo符号抜取部204に通知する（ステップS12）。
【００５７】
Video符号抜取部204は、Video符号検索部203から受け付けた検索結果（編集対象の指定ピクチャのファイル位置）を基に、多重化符号に含まれるVideo符号を抜き取る（ステップS13）。
【００５８】
Video符号再圧縮部205は、Video符号抜取部204で抜き取ったVideo符号を再圧縮し、その再圧縮を行ったVideo符号を再多重化部206に渡す（ステップS14）。
【００５９】
再多重化部206は、Audio符号抜取部202から渡されたAudio符号と、Video符号再圧縮部205から渡されたVideo符号と、を再多重化する（ステップS15）。これにより、編集部200は、編集対象の指定ピクチャを受け付けた場合に、その指定ピクチャの編集操作を行うことができる。
【００６０】
＜Video符号検索部203での処理動作例＞
次に、図４を参照しながら、Video符号検索部203での処理動作例について説明する。Video符号検索部203は、編集操作時に、Iピクチャテーブル1011、Iピクチャテーブルのインデックス1021、MPEGファイル1012、不連続なPTSを示すファイル1013を参照し、編集対象の指定ピクチャのVideo符号のファイル位置を検索する。
【００６１】
Video符号検索部203は、編集対象の指定ピクチャを受け付けた場合に（ステップA1/Yes）、Iピクチャテーブルのインデックス1021を参照し、編集対象の指定ピクチャの33ビットPTSに近いIピクチャの表示時刻（64ビットPTS）を取得する（ステップA2）。図２に示すプッシュソース102がMPEGファイル1012から多重化符号を読み出し、その読み出した多重化符号をDemux103に送信し、Decode104でデコードするまでには所定の時間がかかり、遅延が発生する。このため、図２に示すプッシュソース102がDemux103に送信した多重化符号の33ビットPTSと、Decode104のテーブル1041に格納されている33ビットPTSと、には誤差があり、Iピクチャテーブルのインデックス1021で管理しているIピクチャの表示時刻（64ビットPTS）に対応するファイル位置は、Decode104のテーブル1041に格納されている33ビットPTSに対応するファイル位置にならない。このため、Video符号検索部203は、Iピクチャテーブルのインデックス1021を参照し、編集対象の指定ピクチャの33ビットPTSに近いIピクチャの表示時刻（64ビットPTS）を取得することにしている。この取得したIピクチャの表示時刻（64ビットPTS）が編集対象の指定ピクチャに近いIピクチャの表示時刻になる。
【００６２】
次に、Video符号検索部203は、不連続なPTSを示すファイル1013を参照し、ステップA2で取得した64ビットPTSが含まれる検索範囲を決定する（ステップA3）。
【００６３】
次に、Video符号検索部203は、ステップA3で決定した検索範囲に、編集対象の指定ピクチャの33ビットPTSが含まれているか否かを判定し（ステップA4）、検索範囲に編集対象の指定ピクチャの33ビットPTSが含まれている場合は（ステップA4/Yes）、編集対象の指定ピクチャの33ビットPTSを検索範囲の補正値で補正し、編集対象の指定ピクチャの33ビットPTSを64ビットPTSに変換する（ステップA6）。
【００６４】
また、検索範囲に編集対象の指定ピクチャの33ビットPTSが含まれていない場合は（ステップA4/No）、検索範囲を変更し（ステップA5）、編集対象の指定ピクチャの33ビットが含まれている検索範囲を特定し（ステップA4/Yes）、編集対象の指定ピクチャの33ビットPTSを検索範囲の補正値で補正し、編集対象の指定ピクチャの33ビットPTSを64ビットPTSに変換する（ステップA6）。
【００６５】
例えば、ステップA3において、64ビットPTSが含まれる検索範囲として図５に示すAの検索範囲を決定したとする。この場合は、図５に示すAの検索範囲に編集対象の指定ピクチャの33ビットPTSが含まれている場合は、Aの検索範囲の補正値で編集対象の指定ピクチャの33ビットPTSを補正する。また、Aの検索範囲に編集対象の指定ピクチャの33ビットPTSが含まれていない場合は、Aの検索範囲の前後の検索範囲に変更し（図５では、Bの検索範囲にしている）、その変更したBの検索範囲に編集対象の指定ピクチャの33ビットPTSが含まれている場合は、Bの検索範囲の補正値で編集対象の指定ピクチャの33ビットPTSを補正する。なお、図５においてA,Bの検索範囲の33ビットPTSは単調増加し、A,Bの検索範囲で同じ33ビットPTSは無いものとする。
【００６６】
図５に示すA、Bの検索範囲の補正値は、以下の式で求めることができる。
Modify Pts＝Modify Pts＋（Aft Pts−（Pre Pts ＋One Frame PTS＋AVDiff PTS））
但し、Modify Pts：補正値（初期値は先頭の33ビットPTS）
Pre Pts：不連続直前の33ビットPTS
Aft Pts：不連続直後の33ビットPTS
One Frame PTS：１フレーム分のPTS
AVDiff PTS：不連続直前から不連続直後までのAudio符号のみの再生時間（通常は０）
通常は、不連続前後でタイムスタンプ（33ビットPTS）の値が単調増加するように編集対象の指定ピクチャの33ビットPTSを補正する。しかし、不連続直前から不連続直後までの検索範囲にAudio符号のみがある場合は、そのAudio符号の再生時間分だけタイムスタンプを飛ばすことになる。
【００６７】
また、上記式で求めた検索範囲の補正値（Modify Pts）を以下の式に代入し、編集対象の指定ピクチャの33ビットPTS（33Pts）を64ビットPTSに変換した値（64Pts）を求めることができる。
64Pts＝33Pts−Modify Pts
【００６８】
これにより、Video符号検索部203は、編集対象の指定ピクチャの64ビットPTSを得ることができる。
【００６９】
なお、図５の例では、Aの検索範囲に編集対象の指定ピクチャの33ビットPTSが含まれていない場合は、Aの検索範囲よりも後に位置するBの検索範囲に変更することにした。しかし、Aの検索範囲のよりも前に位置する検索範囲に変更することも可能である。また、Aの検索範囲の前後の検索範囲にも編集対象の指定ピクチャの33ビットPTSが含まれていない場合は、更に、検索範囲を前後に拡張し、編集対象の指定ピクチャの33ビットPTSが含まれている検索範囲を特定することになる。
【００７０】
次に、Video符号検索部203は、Iピクチャテーブル1011を参照し、編集対象の指定ピクチャの64ビットPTSに近いIピクチャの表示時刻（64ビットPTS）を特定し、その特定したIピクチャの表示時刻（64ビットPTS）に対応するIピクチャのファイル位置を特定する（ステップA7）。
【００７１】
次に、Video符号検索部203は、MPEGファイル1012を参照し、Iピクチャのファイル位置から多重化符号の読み取りを開始し、その読み取った多重化符号を順次解析し、編集対象の指定ピクチャの33ビットPTSと一致するファイル位置を特定する（ステップA8）。
【００７２】
次に、Video符号検索部203は、編集対象の指定ピクチャの33ビットPTSと一致するファイル位置を検索結果としてVideo符号抜取部204に通知する（ステップA9）。
【００７３】
これにより、Video符号抜取部204は、Video符号検索部203から受け付けた検索結果（編集対象の指定ピクチャのVideo符号のファイル位置）を基に、多重化符号に含まれるVideo符号を抜き取り、編集対象の指定ピクチャのファイル位置から編集操作（カット編集等）を行うことができる。
【００７４】
なお、上記処理動作は、Video符号検索部203での処理動作例を説明した。しかし、編集対象の指定ピクチャのAudio符号は、編集対象の指定ピクチャのVideo符号とほぼ同じファイル位置にあるため、Audio符号検索部201でもVideo符号検索部203と同様な処理動作を行い、編集対象の指定ピクチャのVideo符号のファイル位置の前後から編集対象の指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置を検索し、編集対象の指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置を検索結果としてAudio符号抜取部202に通知する。これにより、Audio符号抜取部202は、Audio符号検索部201から受け付けた検索結果（編集対象の指定ピクチャとほぼ同じ時刻のAudio符号のファイル位置）を基に、多重化符号に含まれるAudio符号を抜き取り、編集対象の指定ピクチャのファイル位置から編集操作（カット編集等）を行うことができる。
【００７５】
＜本実施形態の再生装置100の作用・効果＞
このように、本実施形態の再生装置100の編集部200は、ピクチャの編集操作を受け付けた場合に（ステップA1/Yes）、Iピクチャテーブルのインデックス1012を参照し、編集操作時に受け付けたピクチャの時刻情報に近いIピクチャの時刻情報を取得する（ステップA2）。そして、Video符号検索部203は、不連続なPTSを示すファイル1013を参照し、上記取得したIピクチャの時刻情報に近い検索範囲を決定し（ステップA3）、編集操作時に受け付けたピクチャの時刻情報が含まれる検索範囲を特定する（ステップA4/Yes）。そして、上記特定した検索範囲の補正値で、編集操作時に受け付けたピクチャの時刻情報を補正する（ステップA6）。そして、補正後のピクチャの時刻情報を基に、Iピクチャテーブル1011を参照し、補正後のピクチャの時刻情報に近いIピクチャの時刻情報を特定し、その特定したIピクチャの時刻情報に対応するIピクチャのファイル位置を特定する。そして、MPEGファイル1012を参照し、上記特定したIピクチャのファイル位置から符号の読み取りを開始し、該読み取った符号を解析し、編集操作時に受け付けたピクチャの時刻情報と一致する符号を特定し、その特定した符号を基に、MPEGファイル1012に格納された符号の編集操作を行う。これにより、編集部200は、Video符号の編集操作を行うことができる。なお、編集部200は、GOP単位の編集操作だけではなく、フレーム単位の編集操作も行うことができる。
【００７６】
なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【００７７】
例えば、上述した本実施形態の再生装置100は、図２に示すように、プッシュソース102と、Demux103と、を有し、MPEGファイル1012から多重化符号を読み出す機能（プッシュソース102での機能）と、その多重化符号を分離する機能（Demux103）と、を区分して構成した。しかし、プッシュソース102の機能と、Demux103の機能と、を１つの機能として統合するように構築することも可能である。
【００７８】
また、上述する実施形態では、編集対象の指定ピクチャを受け付けた場合に、Iピクチャテーブル1011と、MPEGファイル1012と、不連続なPTSを示すファイル1013と、を参照し、編集対象の指定ピクチャの33ビットPTSと一致する多重化符号を検索することにした。しかし、本実施形態は、カット編集や、カット編集のプレビュー等の編集操作に限定せず、Iピクチャテーブル1011を参照するシーク再生操作などにも適用することが可能である。このため、本実施形態は、Iピクチャテーブル1011を参照する操作であれば、編集対象の指定ピクチャと見なして上述した一連の処理動作を行うように構築することが可能である。
【００７９】
また、上述する実施形態では、Iピクチャの情報をIピクチャテーブル1011で管理することにした。しかし、Iピクチャの情報だけでなく、Pピクチャ、Bピクチャなどの各ピクチャの情報をピクチャテーブル1011で管理するように構築することも可能である。これにより、各ピクチャの時刻情報を算出しなくとも、各ピクチャの時刻情報を把握することが可能となる。Pピクチャは、Predictive-coded picture（順方向予測符号化画像）のことを示す。また、Bピクチャは、Bi-directionally predictive-coded picture（双方向予測符号化画像）のことを示す。
【００８０】
また、上述した本実施形態における再生装置100を構成する各装置における制御動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成を用いて実行することも可能である。
【００８１】
なお、ソフトウェアを用いて処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させることが可能である。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【００８２】
例えば、プログラムは、記録媒体としてのハードディスクやROM（Read Only Memory）に予め記録しておくことが可能である。あるいは、プログラムは、リムーバブル記録媒体に、一時的、あるいは、永続的に格納（記録）しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。なお、リムーバブル記録媒体としては、フロッピー（登録商標）ディスク、CD-ROM（Compact Disc Read Only Memory）、MO（Magneto optical）ディスク、DVD（Digital Versatile Disc）、磁気ディスク、半導体メモリなどが挙げられる。
【００８３】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールすることになる。また、ダウンロードサイトから、コンピュータに無線転送することになる。また、ネットワークを介して、コンピュータに有線で転送することになる。
【００８４】
また、本実施形態における再生装置100は、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。
【産業上の利用可能性】
【００８５】
本発明は、MPEG規格の符号を再生する技術に適用可能である。
【符号の説明】
【００８６】
１０１    メモリ
１０１１    Iピクチャテーブル（第１の管理手段）
１０１２    MPEGファイル（格納手段）
１０１３    不連続なPTSを示すファイル（第２の管理手段）
１０２    プッシュソース（読出手段）
１０２１    Iピクチャテーブルのインデックス（第３の管理手段）
１０３    Demux
１０４    Decode
１０４１    テーブル
１０５    Video Render
１０６    Audio Render
１０７    ディスプレイ
１０８    スピーカ
２００    編集部（編集手段）
２０１    Audio符号検索部
２０２    Audio符号抜取部
２０３    Video符号検索部
２０４    Video符号抜取部
２０５    Video符号再圧縮部
２０６    再多重化部
【図１】
0005683871.tif 000002
【図２】
0005683871.tif 000003
【図３】
0005683871.tif 000004
【図４】
0005683871.tif 000005
【図５】
0005683871.tif 000006