(57)【要約】【課題】記録された大量の過去の放送番組の中から閲覧者が興味対象を絞って高速にザッピングしながら放送番組を閲覧する。【解決手段】放送番組再生装置２は、記憶している放送時刻の情報に対応した放送番組のデータを放送番組管理装置１から取得して表示部２３に表示させる。さらに、放送番組再生装置２は、放送番組管理装置１から閲覧中の放送番組の部分に対応したタグ名のリストを取得して表示部２３に表示させ、表示させた中から閲覧者が選択したタグ名と放送時刻の情報とを放送番組管理装置１に出力する。放送番組管理装置１は、タグ名に対応付けて記憶している時刻範囲のうち、受信した放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を返送する。放送番組再生装置２は、返送された時刻範囲により放送時刻の情報を更新し、更新した放送時刻の情報に対応した放送番組のデータを放送番組管理装置１から取得して表示部２３に表示させる。【選択図】図１４
2014178749.tif 000002
【特許請求の範囲】
【請求項１】
放送番組のデータを記憶する番組データ記憶部と、
放送時刻の時刻範囲に対応したタグ名のリストを記憶する時刻データベース記憶部と、
タグ名に対応した放送時刻の時刻範囲のリストを記憶するタグデータベース記憶部と、
検索対象と放送時刻の情報を受信し、前記検索対象が放送番組のデータである場合には、受信した前記放送時刻における前記放送番組のデータを前記番組データ記憶部から読み出して出力し、前記検索対象がタグリストを示す場合には、受信した前記放送時刻が含まれる前記時刻範囲に対応して前記時刻データベース記憶部に記憶されている前記タグ名のリストを読み出して出力し、前記検索対象がタグ名を示す場合には、前記タグ名に対応して前記タグデータベース記憶部に記憶されている前記時刻範囲のリストのうち、受信した前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出して出力する読み出しインタフェース部と、
を備えることを特徴とする放送番組管理装置。
【請求項２】
前記番組データ記憶部は、前記放送番組のデータをチャンネルごとに蓄積し、
前記時刻データベース記憶部は、放送時刻の時刻範囲に対応したタグ名のリストをチャンネルごとに記憶し、
前記タグデータベース記憶部は、タグ名に対応した放送時刻の時刻範囲のリストをチャンネルごとに記憶し、
前記読み出しインタフェース部は、チャンネル、検索対象、及び放送時刻の情報を受信し、前記検索対象が放送番組のデータである場合には、前記チャンネルの前記放送時刻における前記放送番組のデータを前記番組データ記憶部から読み出して出力し、前記検索対象がタグリストを示す場合には、前記チャンネルと前記放送時刻が含まれる前記時刻範囲とに対応して前記時刻データベース記憶部に記憶されている前記タグ名のリストを読み出して出力し、前記検索対象がタグ名を示す場合には、前記チャンネル及び前記タグ名に対応して前記タグデータベース記憶部に記憶されている前記時刻範囲のリストのうち、受信した前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出して出力する、
ことを特徴とする請求項１に記載の放送番組管理装置。
【請求項３】
タグ名及び時刻範囲を示すタグ情報と、追加または削除の指示とを受信し、前記指示が追加である場合には、前記タグ情報が示す前記タグ名に対応付けて前記タグデータベース記憶部に前記タグ情報が示す前記時刻範囲を登録し、前記指示が削除である場合には、前記タグ情報が示す前記タグ名に対応付けて前記タグデータベース記憶部に記憶されている前記時刻範囲のリストから前記タグ情報が示す前記時刻範囲を削除するタグデータベース更新部と、
前記指示が追加である場合には、前記タグ情報が示す前記時刻範囲に対応付けて前記時刻データベース記憶部に前記タグ情報が示す前記タグ名を登録し、前記指示が削除である場合には、前記タグ情報が示す前記時刻範囲に対応付けて前記時刻データベース記憶部に記憶されている前記タグ名のリストから前記タグ情報が示す前記タグ名を削除する時刻データベース更新部と、
をさらに備えることを特徴とする請求項１に記載の放送番組管理装置。
【請求項４】
放送時刻の情報を記憶する記憶部と、
映像を表示する表示部と、
所定の時間毎に、放送番組のデータを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを放送番組管理装置に出力し、前記放送番組管理装置から返送された放送番組のデータを前記表示部に表示させる放送番組データ取得部と、
前記放送番組データ取得部が取得した前記放送番組のデータの表示が終了した場合に前記記憶部に記憶されている前記放送時刻の情報を前記放送番組のデータの表示が終了した放送時刻に更新する放送時刻更新部と、
タグリストを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記放送番組管理装置から返送された前記放送時刻におけるタグ名のリストを前記表示部に表示させるタグリスト取得部と、
前記タグリスト取得部が前記表示部に表示させた前記タグ名のリストの中から閲覧者が選択したタグ名を示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信し、受信した前記時刻範囲から得られる表示移動先の放送時刻により前記記憶部が記憶している前記放送時刻の情報を更新する時刻リスト取得部と、
を備えることを特徴とする放送番組再生装置。
【請求項５】
前記時刻リスト取得部は、受信した前記時刻範囲から得られる表示移動先の放送時刻が前記表示部にデータを表示させている前記放送番組の番組放送時刻の範囲内に含まれる間は、閲覧者が選択した前記タグ名を示す検索対象の情報と、前記表示移動先の放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記表示移動先の放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信することを繰り返す、
ことを特徴とする請求項４に記載の放送番組再生装置。
【請求項６】
前記放送番組データ取得部が前記表示部にデータを表示させた前記放送番組の再生開始の放送時刻及び再生終了の放送時刻を記録する視聴履歴記録部をさらに備え、
前記時刻リスト取得部は、受信した前記時刻範囲から得られる表示移動先の放送時刻が前記視聴履歴記録部により記録された前記再生開始の放送時刻から前記再生終了の放送時刻までに含まれる間、あるいは、含まれない間は、閲覧者が選択した前記タグ名を示す検索対象の情報と、前記表示移動先の放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記表示移動先の放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信することを繰り返す、
ことを特徴とする請求項４に記載の放送番組再生装置。
【請求項７】
前記記憶部は、閲覧対象のチャンネルの情報をさらに記憶し、
放送番組データ取得部は、所定の時間毎に、放送番組のデータを示す検索対象の情報と、前記記憶部から読み出した前記閲覧対象のチャンネルの情報及び前記放送時刻の情報とを放送番組管理装置に出力し、前記閲覧対象のチャンネルの前記放送時刻における放送番組のデータを前記放送番組管理装置から受信して前記表示部に表示させ、
前記タグリスト取得部は、タグリストを示す検索対象の情報と、前記記憶部から読み出した前記閲覧対象のチャンネルの情報及び前記放送時刻の情報とを前記放送番組管理装置に出力し、前記閲覧対象のチャンネルの前記放送時刻におけるタグ名のリストを前記放送番組管理装置から受信して前記表示部に表示させ、
前記時刻リスト取得部は、前記閲覧者が選択したタグ名を示す検索対象の情報と、検索対象のチャンネルの情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記検索対象のチャンネルと前記タグ名とに対応した放送時刻の時刻範囲のうち前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信し、受信した前記時刻範囲から得られる表示移動先の放送時刻により、前記記憶部が記憶している前記放送時刻の情報を更新するとともに、受信した前記時刻範囲に対応する前記検索対象のチャンネルの情報により、前記記憶部が記憶している前記閲覧対象のチャンネルの情報を更新する、
ことを特徴とする請求項４に記載の放送番組再生装置。
【請求項８】
映像を表示する表示部を備えた放送番組再生装置に用いられるコンピュータを、
放送時刻の情報を記憶する記憶部、
所定の時間毎に、放送番組のデータを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを放送番組管理装置に出力し、前記放送番組管理装置から返送された放送番組のデータを前記表示部に表示させる放送番組データ取得部、
前記放送番組データ取得部が取得した前記放送番組のデータの表示が終了した場合に前記記憶部に記憶されている前記放送時刻の情報を前記放送番組のデータの表示が終了した放送時刻に更新する放送時刻更新部、
タグリストを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記放送番組管理装置から返送された前記放送時刻におけるタグ名のリストを前記表示部に表示させるタグリスト取得部、
前記タグリスト取得部が前記表示部に表示させた前記タグ名のリストの中から閲覧者が選択したタグ名を示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信し、受信した前記時刻範囲から得られる表示移動先の放送時刻により前記記憶部が記憶している前記放送時刻の情報を更新する時刻リスト取得部、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、放送番組管理装置、放送番組再生装置、及びプログラムに関する。
【背景技術】
【０００２】
ストレージ技術の発展により、大量のファイルを蓄積することが可能となった。放送した番組ファイルを蓄積し、過去の放送番組を視聴する技術として、例えば、非特許文献１では、タイムシフトザッピング視聴サービスを開示している。このサービスは、時刻方向（例えば１時間前や１日前など）にジャンプしながら閲覧者が見たいと思う過去の放送番組を探すことが可能なビデオオンデマンドサービスである。
【０００３】
過去の番組ファイルは日増しに増加するが、このようなサービスを実施する場合、再生可能なファイルが増加したとしてもそれに影響されることなく、できるだけ短時間でザッピング先の番組再生が開始されることが利用者の利便性の点で重要となる。そのため、蓄積される番組ファイルの数や蓄積容量に関係なく、高速に番組ファイルへアクセスできることが必要となる。また、過去の放送番組を利用した閲覧用のアプリケーションを容易に開発できるように、過去の膨大な量の放送番組の閲覧に必要な映像や音声などのデータをできるだけ容易に取得できるインタフェースが必要となる。
【０００４】
そこで、放送番組を蓄積し、蓄積したファイルから放送時刻を使ってフレーム単位にアクセス可能とする技術として、例えば、非特許文献２で開示されているファイルシステムがある。非特許文献２の技術では、分散したストレージノードによって論理的に単一のストレージシステムを構成し、そこに放送番組（映像および音声ファイル）および関連するデータ（例えば字幕データや番組情報ファイル、副音声ファイルなど）を蓄積する。このファイルシステムは、蓄積したファイルを放送時刻にマッピングすることができるため、ファイルが番組単位などに分割されていたとしても、例えば、放送時刻を指定することで、映像であれば１つの映像ファイルとしてアクセスできる。さらにこのファイルシステムでは、ディスク容量が足りなくなったとしても、必要に応じてストレージノードを追加することで、ディスク容量を増加できる。ディスクの追加や、番組ファイルが新たに蓄積されたとしても、利用者からは、それらを気にすることなく、常に同一のファイルに対してアクセスすることで、新しく保管された放送番組のデータを取得することができる。
【０００５】
また、特許文献１では、ザッピングによる閲覧中に、ザッピングの履歴を逆順にさかのぼりながら、動画コンテンツの再生を「中止した部分から」開始することが可能な技術が開示されている。特許文献１の技術では、後入れ先出し方式のスタックにザッピングのレジューム情報を保管しておくことで、動画再生の開始までの時間を高速化しており、ザッピングによる動画閲覧の利便性を向上させることができる。
【０００６】
一方、あるコンテンツに他のコンテンツを関連付けて利用する方法として、ハイパーリンクが古くから提案されている。現在、もっとも使われているハイパーリンクは、ＷＷＷ（ワールド・ワイド・ウェッブ）によるものである。ＷＷＷでは、ＨＴＭＬ（ハイパーテキストマークアップ言語）と呼ばれるテキスト記述フォーマットによりコンテンツが記述され、ＨＴＭＬ文書に対応したウェブブラウザと呼ばれるプログラムによりＨＴＭＬ文書を閲覧可能に表示する。ＨＴＭＬ文書では、コンテンツ内のテキストデータの文字列に対しリンク情報を記述することができる。このリンク情報には、関連付けたいコンテンツのＵＲＬ（ユニフォーム・リソース・ロケータ：ファイルを保管したサーバアドレスとファイル名などによりコンテンツを特定するための記述方法）を記述する。ウェブブラウザは、利用者が閲覧しているＨＴＭＬ文書の中でリンク情報が記述された文字列などがマウス等のユーザインタフェースによりクリックされると、そのリンク情報に記述されたＵＲＬのコンテンツ（ＨＴＭＬ文書）を読み出し、表示する。このように、ＷＷＷでは、ＨＴＭＬ文書からＨＴＭＬ文書へのハイパーリンクにより、ＨＴＭＬ文書を閲覧することができる。
ＨＴＭＬ文書内に記述するリンク情報としては、ＨＴＭＬ文書ファイルへのＵＲＬ以外にも、静止画ファイルや音声ファイル、動画ファイルなどのＵＲＬを記述することができる。これにより、利用者はウェブブラウザを使うことで、現在閲覧しているＨＴＭＬ文書の記述内容から興味のある関連コンテンツを次々と切り替え（ザッピングし）ながら閲覧することができる。
【０００７】
しかし、ＷＷＷはテキスト文書のハイパーリンクを元に発展してきた方式であるため、音声や動画などのハイパーリンク機能としては不十分である。例えば、ＷＷＷでは動画を見ている途中で、視聴中の興味対象に関連する他の動画にジャンプすることができない。例えば、ある動画を見ていて、そこに出演している俳優の別の動画を見てみたいと思っても、そこからすぐに他の関連する動画にジャンプできない。ＷＷＷでは、その動画像のリンク元であるＨＴＭＬ文書にもどり、その文書内に記述された他の動画ファイルのリンク先を選択することしかできない。この場合、戻ったＨＴＭＬ文書内に、興味対象の動画へのリンクが存在していればよいが、なければ、検索手段などの何らかの他の手段を使って探し出す必要がある。
【０００８】
ＷＷＷ以外に、動画間のハイパーリンクを実現する技術がある（例えば、特許文献２参照）。特許文献２では、利用者が興味対象の動画像中のオブジェクトをクリックしたことを検出すると、動作関連付け規則のデータベースに基づいて、リンク先の動画像に切り替える方式としている。データベースの関連付け規則を色々と変えることで、動画セグメント間のハイパーリンクを決めることができる。しかし、特許文献２では、動画像ファイルをどのように保管し利用するか、リンク情報をどのように利用するかなど具体的な方法は述べられていない。
【０００９】
一方、映像や音声間のハイパーリンクを実現するには、リンク情報をどのように生成するかという問題がある。そこで、個々の閲覧者が作成したメタデータを公開し、多数のユーザでそのメタデータを共有するシステムがある（例えば、特許文献３参照）。このシステムを使うことで、自分が持つコンテンツを再生するときに、同じコンテンツを持つ他の利用者が作成したメタデータ（たとえば、時刻ｔから時刻ｓの間に「選手Ａが活躍している」などという情報）を利用することが可能となる。
【００１０】
その他、映像や音声からメタデータを自動的に抽出する方法はさまざまな方式が開発されている。また、メタデータの保存形式は、独自形式も含めさまざまな形式が使われている。標準化されたメタデータの記述方式としては、ＭＰＥＧ（Ｍｏｖｉｎｇ Ｐｉｃｔｕｒｅ Ｅｘｐｅｒｔｓ Ｇｒｏｕｐ）−７（ＩＳＯ／ＩＥＣ  １５９３８）がある。ＭＰＥＧ−７ではメタデータをＸＭＬ（ｅｘｔｅｎｓｉｂｌｅ ｍａｒｋｕｐ ｌａｎｇｕａｇｅ）形式のファイルとして保管する記述方法が標準化されている。ＭＰＥＧ−７も含め一般にメタデータは音声ファイルや動画像ファイルなどのファイルに対してそのメタデータが１つのメタデータファイルとして保存される。そのため、動画像検索や、動画像間のハイパーリンクなど、複数の動画像のメタデータを利用するには、関連する多くのメタデータファイルを統一的に扱うことが必要となる。
【００１１】
また、大量の文書の中からキーワードを使った検索技術が開発されている。例えば、非特許文献３には、インターネット上の検索サービスで使われている検索技術について述べられている。この検索サービスを含め多くの検索技術は次のような構造をしている。まず、文書を収集し一意の文書ＩＤ（ｄｏｃＩＤ）を付与する。次に、各文書内のキーワードを抽出する。これにより、ｄｏｃＩＤからその文書に含まれるキーワードが検索可能なデータベースが構築できる。次に、このデータベースから転置インデックスと呼ばれるデータベースを構築する。転置インデックスとは、キーワードからそのキーワードが含まれるｄｏｃＩＤのリストを取得できる表である。この転置インデックスのデータベースを使うことで、利用者が探しているキーワードを含んだ文書の一覧を取得することができる。さらに、非特許文献３に記載の検索サービス等のインターネット検索では、キーワードを含む文書の数が多いため、ランキングを付けて利用者に提示している。以上説明したように、大量の文書の中から利用者が求めるキーワードを含む文書を高速に検索するため、転置インデックスによるデータベースを構築している。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２０１０−１３０４０９号公報
【特許文献２】特表２００３−５０４９５２号公報
【特許文献３】特開２００４−１９３８７１号公報
【非特許文献】
【００１３】
【非特許文献１】竹内真也、他３名、「タイムシフトザッピング視聴サービスのためのキャッシング制御手法の検討」、２０１２年電子情報通信学会総合大会、平成２０１２年３月、通信講演論文集２、Ｂ−６−９、ｐ．９
【非特許文献２】金子豊、他３名、「放送時刻を使ってフレームデータにアクセス可能な分散ファイルシステム」、ＦＩＴ２０１２（第１１回情報科学技術フォーラム）、平成２４年８月、講演論文集、第４分冊、Ｌ−０２３、ｐ．１７３−１７４
【非特許文献３】西田圭介、「Googleを支える技術」、技術評論社、２００８年、ｐ．２４−３３
【発明の概要】
【発明が解決しようとする課題】
【００１４】
記録装置の大容量化により、今後放送されるすべての放送番組を記録し続け、いつでも過去の放送番組を閲覧することが可能となりつつある。興味対象を絞って、大量にある過去の放送番組を閲覧する場合、同じ興味対象に関連した放送番組が大量に見つかることが想定される。閲覧者はこの見つかった中から見たい放送番組を選択するには、見つかった放送番組の一覧を確認しながら選択するよりも、ザッピングにより放送番組の映像を見ながら選択することが有効な手段と考えられる。また、これまでに説明したように、テキスト文書をもとにしたＷＷＷを除き、映像や音声などのハイパーリンクを使った閲覧技術は古くから提案されているものの、未だに一般的な技術としては実現されていない。
【００１５】
本発明は、このような事情を考慮してなされたもので、記録された大量の過去の放送番組の中から閲覧者が興味対象を絞って高速にザッピングしながら放送番組を閲覧することができる放送番組管理装置、放送番組再生装置、及びプログラムを提供する。
【課題を解決するための手段】
【００１６】
［１］  本発明の一態様は、放送番組のデータを記憶する番組データ記憶部と、放送時刻の時刻範囲に対応したタグ名のリストを記憶する時刻データベース記憶部と、タグ名に対応した放送時刻の時刻範囲のリストを記憶するタグデータベース記憶部と、検索対象と放送時刻の情報を受信し、前記検索対象が放送番組のデータである場合には、受信した前記放送時刻における前記放送番組のデータを前記番組データ記憶部から読み出して出力し、前記検索対象がタグリストを示す場合には、受信した前記放送時刻が含まれる前記時刻範囲に対応して前記時刻データベース記憶部に記憶されている前記タグ名のリストを読み出して出力し、前記検索対象がタグ名を示す場合には、前記タグ名に対応して前記タグデータベース記憶部に記憶されている前記時刻範囲のリストのうち、受信した前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出して出力する読み出しインタフェース部と、を備えることを特徴とする放送番組管理装置である。
この態様によれば、放送番組管理装置は、検索対象が放送番組のデータを示す場合には、指定された放送時刻における放送番組のデータを番組データ記憶部から読み出して出力し、検索対象がタグリストを示す場合には、指定された放送時刻が含まれる時刻範囲に対応したタグ名のリストを時刻データベース記憶部から読み出して出力する。また、放送番組管理装置は、検索対象がタグ名を示すときには、タグ名に対応してタグデータベース記憶部に記憶されている放送時刻の時刻範囲のリストの中から、指定された放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出して出力する。
これにより、放送番組管理装置は、閲覧者が放送番組を閲覧するために使用する放送番組再生装置へ、指定された放送時刻の放送番組の映像等のデータを提供するとともに、その放送時刻におけるタグ名のリストを提供する。そして、提供したタグ名のリストの中から閲覧者がタグ名を指定した場合、放送番組管理装置は、指定されたタグ名に関連した時刻範囲のうち、現在閲覧者が閲覧中の放送番組の部分が含まれる時刻範囲と時間的に隣接した過去の、あるいは、未来の時刻範囲を放送番組再生装置に提供する。放送番組管理装置は、提供した時刻範囲に基づく放送時刻を放送番組再生装置から受信することにより、指定されたタグ名に関連した他の放送番組の部分の映像等のデータを放送番組再生装置に提供する。よって、放送番組管理装置は、閲覧者が、タグ名により指定した興味対象に関連する放送番組を時間的に隣接した順にザッピングしながら閲覧することを可能とする。
【００１７】
［２］  本発明の一態様は、上述した放送番組管理装置であって、前記番組データ記憶部は、前記放送番組のデータをチャンネルごとに蓄積し、前記時刻データベース記憶部は、放送時刻の時刻範囲に対応したタグ名のリストをチャンネルごとに記憶し、前記タグデータベース記憶部は、タグ名に対応した放送時刻の時刻範囲のリストをチャンネルごとに記憶し、前記読み出しインタフェース部は、チャンネル、検索対象、及び放送時刻の情報を受信し、前記検索対象が放送番組のデータである場合には、前記チャンネルの前記放送時刻における前記放送番組のデータを前記番組データ記憶部から読み出して出力し、前記検索対象がタグリストを示す場合には、前記チャンネルと前記放送時刻が含まれる前記時刻範囲とに対応して前記時刻データベース記憶部に記憶されている前記タグ名のリストを読み出して出力し、前記検索対象がタグ名を示す場合には、前記チャンネル及び前記タグ名に対応して前記タグデータベース記憶部に記憶されている前記時刻範囲のリストのうち、受信した前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出して出力する、ことを特徴とする。
この態様によれば、放送番組管理装置は、検索対象が放送番組のデータを示す場合には、指定されたチャンネルの指定された放送時刻における放送番組のデータを番組データ記憶部から読み出して出力し、検索対象がタグリストを示す場合には、指定されたチャンネルと指定された放送時刻が含まれる時刻範囲とに対応したタグ名のリストを時刻データベース記憶部から読み出して出力する。また、放送番組管理装置は、検索対象がタグ名を示すときには、指定されたチャンネル及び指定されたタグ名に対応してタグデータベース記憶部に記憶されている時刻範囲のリストの中から、指定された放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出して出力する。
この態様によれば、放送番組管理装置は、放送番組再生装置へ、指定されたチャンネルの指定された放送時刻の放送番組の映像等のデータを提供するとともに、そのチャンネル及び放送時刻におけるタグ名のリストを提供する。そして、提供したタグ名のリストの中から閲覧者がタグ名を指定した場合、放送番組管理装置は、検索対象のチャンネルの指定タグ名に関連した時刻範囲のうち、現在閲覧者が閲覧している放送番組における指定タグ名に関連した部分よりも過去の、あるいは、未来の時刻範囲を放送番組再生装置に提供する。
【００１８】
［３］  本発明の一態様は、上述した放送番組管理装置であって、タグ名及び時刻範囲を示すタグ情報と、追加または削除の指示とを受信し、前記指示が追加である場合には、前記タグ情報が示す前記タグ名に対応付けて前記タグデータベース記憶部に前記タグ情報が示す前記時刻範囲を登録し、前記指示が削除である場合には、前記タグ情報が示す前記タグ名に対応付けて前記タグデータベース記憶部に記憶されている前記時刻範囲のリストから前記タグ情報が示す前記時刻範囲を削除するタグデータベース更新部と、前記指示が追加である場合には、前記タグ情報が示す前記時刻範囲に対応付けて前記時刻データベース記憶部に前記タグ情報が示す前記タグ名を登録し、前記指示が削除である場合には、前記タグ情報が示す前記時刻範囲に対応付けて前記時刻データベース記憶部に記憶されている前記タグ名のリストから前記タグ情報が示す前記タグ名を削除する時刻データベース更新部と、をさらに備えることを特徴とする。
この態様によれば、放送番組管理装置は、タグ情報の追加指示を受けた場合、当該タグ情報が示すタグ名に対応付けて、当該タグ情報が示す時刻範囲をタグデータベース記憶部に登録し、さらに、当該タグ情報が示す時刻範囲に対応付けて当該タグ情報が示すタグ名を時刻データベース記憶部に登録する。また、放送番組管理装置は、タグ情報の削除指示を受けた場合、当該タグ情報が示すタグ名に対応付けてタグデータベース記憶部に記憶されている時刻範囲のリストから当該タグ情報が示す時刻範囲を削除し、さらに、当該タグ情報が示す時刻範囲に対応付けて時刻データベース記憶部に記憶されているタグ名のリストから当該タグ情報が示すタグ名を削除する。
これにより、放送番組管理装置は、削除あるいは追加対象のタグ情報の入力を受け、タグデータベース記憶部に記憶されているデータ、及び時刻データベース記憶部に記憶されているデータを更新することができる。
【００１９】
［４］  本発明の一態様は、放送時刻の情報を記憶する記憶部と、映像を表示する表示部と、所定の時間毎に、放送番組のデータを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを放送番組管理装置に出力し、前記放送番組管理装置から返送された放送番組のデータを前記表示部に表示させる放送番組データ取得部と、前記放送番組データ取得部が取得した前記放送番組のデータの表示が終了した場合に前記記憶部に記憶されている前記放送時刻の情報を前記放送番組のデータの表示が終了した放送時刻に更新する放送時刻更新部と、タグリストを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記放送番組管理装置から返送された前記放送時刻におけるタグ名のリストを前記表示部に表示させるタグリスト取得部と、前記タグリスト取得部が前記表示部に表示させた前記タグ名のリストの中から閲覧者が選択したタグ名を示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信し、受信した前記時刻範囲から得られる表示移動先の放送時刻により前記記憶部が記憶している前記放送時刻の情報を更新する時刻リスト取得部と、を備えることを特徴とする放送番組再生装置である。
この態様によれば、放送番組再生装置は、記憶部に記憶している放送時刻における放送番組のデータを放送番組管理装置から読み出して表示部に表示させ、取得した放送番組のデータの表示が終了した場合には、記憶している放送時刻の情報を表示が終了した放送時刻により更新する。さらに、放送番組再生装置は、記憶している放送時刻の情報に基づいて放送番組管理装置から読み出したタグ名のリストを表示部に表示させる。放送番組再生装置は、表示させたタグ名のリストから閲覧者が選択したタグ名を受けると、選択されたタグ名に対応して放送番組管理装置に記憶されている時刻範囲の中から、放送時刻の情報が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出す。放送番組再生装置は、この読み出した時刻範囲に基づいて、記憶している放送時刻の情報を更新する。
これにより、放送番組再生装置は、放送時刻に対応した放送番組の映像等のデータを放送番組管理装置から読み出して表示するとともに、その表示させている放送番組の部分に対応したタグ名のリストを放送番組管理装置から読み出して表示する。そして、表示したタグ名のリストの中から閲覧者がタグ名を選択した場合、放送番組再生装置は、選択されたタグ名に関連した時刻範囲のうち、現在閲覧者が閲覧中の放送番組の部分が含まれる時刻範囲と時間的に隣接した過去の、あるいは、未来の時刻範囲を放送番組管理装置から読み出す。放送番組再生装置は、読み出した時刻範囲に基づいて放送時刻を更新し、更新された放送時刻に対応した放送番組の映像等のデータを放送番組管理装置から読み出して表示する。よって、閲覧者は、タグ名で特定される興味対象に関連した放送番組の部分を時間的に隣接した順にザッピングしながら閲覧することができる。
【００２０】
［５］  本発明の一態様は、上述した放送番組再生装置であって、前記時刻リスト取得部は、受信した前記時刻範囲から得られる表示移動先の放送時刻が前記表示部にデータを表示させている前記放送番組の番組放送時刻の範囲内に含まれる間は、閲覧者が選択した前記タグ名を示す検索対象の情報と、前記表示移動先の放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記表示移動先の放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信することを繰り返す、ことを特徴とする。
この態様によれば、放送番組再生装置は、放送番組管理装置から受信した時刻範囲が現在表示部にデータを表示させている放送番組の番組放送時刻の範囲内に含まれる場合、受信した時刻範囲に含まれる時刻を用いて再び放送番組管理装置から、選択されたタグ名に対応した時刻範囲を読み出す。
これにより、放送番組管理装置は、現在閲覧者が閲覧中の放送番組とは異なる放送番組を対象として、選択されたタグ名に対応した部分の時刻範囲を取得し、その時刻範囲の放送番組のデータを放送番組管理装置から読み出して表示させることができる。よって、閲覧者は、タグ名で特定される興味対象に関連した異なる放送番組を時間的に隣接した順にザッピングしながら閲覧することができる。
【００２１】
［６］  本発明の一態様は、上述した放送番組再生装置であって、前記放送番組データ取得部が前記表示部にデータを表示させた前記放送番組の再生開始の放送時刻及び再生終了の放送時刻を記録する視聴履歴記録部をさらに備え、前記時刻リスト取得部は、受信した前記時刻範囲から得られる表示移動先の放送時刻が前記視聴履歴記録部により記録された前記再生開始の放送時刻から前記再生終了の放送時刻までに含まれる間、あるいは、含まれない間は、閲覧者が選択した前記タグ名を示す検索対象の情報と、前記表示移動先の放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記表示移動先の放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信することを繰り返す、ことを特徴とする。
この態様によれば、放送番組再生装置は、放送番組管理装置から受信した時刻範囲が、閲覧者が過去に閲覧した放送番組に含まれる場合、あるいは、閲覧者がまだ閲覧していない放送番組に含まれる場合に、受信した時刻範囲に含まれる時刻を用いて再び放送番組管理装置から、選択されたタグ名に対応した時刻範囲を読み出す。
これにより、放送番組管理装置は、選択されたタグ名に対応し、過去に閲覧者が閲覧していない放送番組の部分の時刻範囲、あるいは、過去に閲覧者が閲覧した放送番組の部分の時刻範囲を放送番組管理装置から取得し、その時刻範囲の放送番組のデータを放送番組管理装置から読み出して表示させることができる。よって、閲覧者は、過去に閲覧した放送番組に限って、あるいは、過去に閲覧したことがない放送番組に限って、タグ名で特定される興味対象に関連した放送番組の部分を時間的に隣接した順にザッピングしながら閲覧することができる。
【００２２】
［７］  本発明の一態様は、上述した放送番組再生装置であって、前記記憶部は、閲覧対象のチャンネルの情報をさらに記憶し、放送番組データ取得部は、所定の時間毎に、放送番組のデータを示す検索対象の情報と、前記記憶部から読み出した前記閲覧対象のチャンネルの情報及び前記放送時刻の情報とを放送番組管理装置に出力し、前記閲覧対象のチャンネルの前記放送時刻における放送番組のデータを前記放送番組管理装置から受信して前記表示部に表示させ、前記タグリスト取得部は、タグリストを示す検索対象の情報と、前記記憶部から読み出した前記閲覧対象のチャンネルの情報及び前記放送時刻の情報とを前記放送番組管理装置に出力し、前記閲覧対象のチャンネルの前記放送時刻におけるタグ名のリストを前記放送番組管理装置から受信して前記表示部に表示させ、前記時刻リスト取得部は、前記閲覧者が選択したタグ名を示す検索対象の情報と、検索対象のチャンネルの情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記検索対象のチャンネルと前記タグ名とに対応した放送時刻の時刻範囲のうち前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信し、受信した前記時刻範囲から得られる表示移動先の放送時刻により、前記記憶部が記憶している前記放送時刻の情報を更新するとともに、受信した前記時刻範囲に対応する前記検索対象のチャンネルの情報により、前記記憶部が記憶している前記閲覧対象のチャンネルの情報を更新する、ことを特徴とする。
この態様によれば、放送番組再生装置は、記憶部に記憶している閲覧対象のチャンネル及び放送時刻の情報に対応した放送番組のデータを放送番組管理装置から読み出して表示部に表示させ、取得した放送番組のデータの表示が終了した場合には、記憶している放送時刻の情報を表示が終了した放送時刻により更新する。さらに、放送番組再生装置は、記憶している閲覧対象のチャンネル及び放送時刻の情報に基づいて放送番組管理装置から読み出したタグ名のリストを表示部に表示させる。放送番組再生装置は、表示させたタグ名のリストから閲覧者が選択したタグ名を受けると、検索対象のチャンネルと選択されたタグ名に対応して放送番組管理装置に記憶されている時刻範囲の中から、放送時刻の情報が含まれる時刻範囲と時間的に隣接した時刻範囲を読み出す。放送番組再生装置は、この読み出した時刻範囲に基づいて、記憶している放送時刻の情報と、閲覧対象のチャンネルを更新する。
これにより、放送番組再生装置は、閲覧対象のチャンネルの放送番組の映像等のデータを放送番組管理装置から読み出して表示するとともに、閲覧している放送番組の部分に対応したタグ名のリストを放送番組管理装置から読み出して表示する。そして、表示したタグ名のリストの中から閲覧者がタグ名を選択した場合、放送番組再生装置は、検索対象のチャンネルの選択されたタグ名に関連した時刻範囲のうち、現在閲覧者が閲覧している放送番組のそのタグ名に関連した部分よりも過去の、あるいは、未来の時刻範囲を放送番組管理装置から読み出す。放送番組再生装置は、読み出した時刻範囲に基づいて放送時刻を更新し、更新された放送時刻に対応した検索対象のチャンネルの放送番組の映像等のデータを放送番組管理装置から読み出して表示する。よって、閲覧者は、タグ名により指定した興味対象に関連した放送番組を、チャンネル間を移動しながらザッピングにより閲覧することができる。
【００２３】
［８］  本発明の一態様は、映像を表示する表示部を備えた放送番組再生装置に用いられるコンピュータを、放送時刻の情報を記憶する記憶部、所定の時間毎に、放送番組のデータを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを放送番組管理装置に出力し、前記放送番組管理装置から返送された放送番組のデータを前記表示部に表示させる放送番組データ取得部、前記放送番組データ取得部が取得した前記放送番組のデータの表示が終了した場合に前記記憶部に記憶されている前記放送時刻の情報を前記放送番組のデータの表示が終了した放送時刻に更新する放送時刻更新部、タグリストを示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記放送番組管理装置から返送された前記放送時刻におけるタグ名のリストを前記表示部に表示させるタグリスト取得部、前記タグリスト取得部が前記表示部に表示させた前記タグ名のリストの中から閲覧者が選択したタグ名を示す検索対象の情報と、前記記憶部から読み出した前記放送時刻の情報とを前記放送番組管理装置に出力し、前記タグ名に対応した放送時刻の時刻範囲のうち前記放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲を前記放送番組管理装置から受信し、受信した前記時刻範囲から得られる表示移動先の放送時刻により前記記憶部が記憶している前記放送時刻の情報を更新する時刻リスト取得部、として機能させるプログラムである。
【発明の効果】
【００２４】
本発明によれば、記録された大量の過去の放送番組の中から閲覧者が興味対象を絞って高速にザッピングしながら放送番組を閲覧することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態による放送番組管理装置の機能ブロック図である。
【図２】同実施形態によるタグ情報のデータ構造を示す図である。
【図３】同実施形態による時刻情報のデータ構造を示す図である。
【図４】同実施形態によるタグ情報とタグＤＢ及び時刻ＤＢとの関係を示す図である。
【図５】同実施形態によるタグ情報追加時のＤＢ更新例を示す図である。
【図６】同実施形態によるタグ情報削除時のＤＢ更新例を示す図である。
【図７】同実施形態によるファイル蓄積部に蓄積されるファイルの例を示す図である。
【図８】同実施形態によるｐｒｅａｄ関数を説明するための図である。
【図９】同実施形態によるｐｒｅａｄ関数により読み出されたデータを格納する際のデータ構造を示す図である。
【図１０】同実施形態によるタグＤＢ更新部のタグＤＢ更新処理の動作を示す流れ図である。
【図１１】同実施形態による時刻ＤＢ更新部の時刻ＤＢ更新処理の動作を示す流れ図である。
【図１２】同実施形態による読み出しインタフェース部により提供されるファイルの例を示す図である。
【図１３】同実施形態による読み出しインタフェース部のデータ読み出し処理の動作を示す流れ図である。
【図１４】同実施形態による放送番組管理装置を利用した放送番組閲覧システムの構成を示す図である。
【図１５】同実施形態による操作インタフェースが備える操作入力部を示す図である。
【図１６】同実施形態による放送番組閲覧システムの動作例を説明するための図である。
【図１７】同実施形態による放送番組再生装置の表示例を示す図である。
【図１８】同実施形態による再生処理部の再生処理の動作を示す流れ図である。
【図１９】同実施形態による再生処理部のジャンプ先放送時刻取得処理の動作を示す流れ図である。
【図２０】同実施形態による再生処理部のジャンプ先放送時刻取得処理の動作を示す流れ図である。
【図２１】同実施形態による再生処理部のジャンプ先放送時刻取得処理の動作を示す流れ図である。
【図２２】同実施形態による再生処理部のジャンプ先放送時刻取得処理の動作を示す流れ図である。
【発明を実施するための形態】
【００２６】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
【００２７】
［放送番組管理装置の全体の説明］
図１は、本発明の一実施形態による放送番組管理装置１の機能ブロック図である。同図に示すように、放送番組管理装置１は、タグデータベース記憶部１１、時刻データベース記憶部１２、ファイル蓄積部１３（番組データ記憶部）、タグデータベース更新部１４、時刻データベース更新部１５、及び読み出しインタフェース部１６から構成される。以下、「データベース」を「ＤＢ」と記載する。
【００２８】
タグＤＢ記憶部１１は、タグ名と時刻範囲のリストとを対応付けたデータからなるタグＤＢを記憶する。時刻範囲は、タグ名と関連した放送番組の部分を、その部分の開始の放送時刻（以下、「開始時刻」と記載する。）と終了の放送時刻（以下、「終了時刻」と記載する。）によって示す。時刻ＤＢ記憶部１２は、時刻範囲と、その時刻範囲における放送番組の部分に関連したタグ名のリストとを対応付けたデータからなる時刻ＤＢを記憶する。ファイル蓄積部１３は、放送番組の閲覧に必要となる映像のデータや音声のデータなどのファイルを記憶する。
【００２９】
放送番組管理装置１には、タグＤＢ更新部１４を介して、放送番組のタグ情報が追加命令または削除命令とともに入力される。タグＤＢ更新部１４は、入力されたタグ情報に基づいて、タグＤＢ記憶部１１に記憶されているタグＤＢを更新する。時刻ＤＢ更新部１５は、タグＤＢ更新部１４に入力されたタグ情報に基づいて、時刻ＤＢ記憶部１２に記憶されている時刻ＤＢを更新する。読み出しインタフェース部１６は、タグＤＢ記憶部１１、時刻ＤＢ記憶部１２、ファイル蓄積部１３から共通のインタフェースによりデータを読み出す。
【００３０】
［タグ情報のデータ構造の説明］
本実施形態の放送番組管理装置１に入力されるタグ情報には、少なくとも、開始時刻、終了時刻、タグ名の３つのデータが含まれる。つまり、タグ情報は、開始時刻から終了時刻までの範囲の放送時刻が、「タグ名」に関連付けられていることを示している。換言すれば、開始時刻から終了時刻までの時刻範囲における放送番組の部分は、タグ名で示される内容に関連する。
なお、タグ情報は、例えば、特許文献３に記載のように利用者によって作成されたものでもよく、すでに開発されている様々なメタデータ自動抽出方法によって作成されたものでもよい。このように、本実施形態では、任意の方法によって生成されたタグ情報を用いることができるため、タグ情報の生成方法に関しては特に関知しないこととする。
【００３１】
図２は、本実施形態におけるタグ情報のデータ構造を示す図である。同図に示すように、タグ情報は、６４ビット長の開始時刻と、６４ビット長の終了時刻と、可変長のテキストデータのタグ名との情報を含む。以下の説明においては、タグ名を識別するために、先頭に「＃」（シャープ記号）を付けてタグ名を表記し、タグ情報を「（開始時刻、終了時刻、＃タグ名）」と表記する。
【００３２】
［時刻情報のデータ構造の説明］
図３は、本実施形態で用いる時刻情報のデータ構造を示す図である。本実施形態では、時刻情報のデータ構造として、同図に示すように、非特許文献２で使われている６４ビット長からなるデータを用いる。同図に示す時刻情報は、２０ビット長の修正ユリウス日（ＭＪＤ）、６ビット長のタイムゾーン（ＴＺ）、３３ビット長のＰＴＳ（Presentation Time Stamp）の情報を含む。ＭＪＤは、修正ユリウス日で数値化された日付情報を表し、タイムゾーンは、地球上における地域を表し、ＰＴＳは、１日の００時００分００秒を０とした９０ＫＨｚのカウンタ値を表す。タグ情報において放送時刻（開始時刻及び終了時刻）を示す情報、タグＤＢにおいて放送時刻（開始時刻及び終了時刻）を示す情報、時刻ＤＢにおいて放送時刻を示す情報、読み出しインタフェース部１６が用いるインタフェースに設定される放送時刻の情報などに、同図に示すデータ構造の時刻情報が使用される。これにより、９０ＫＨｚ（約１１ナノ秒）の精度でタイムゾーンごとの日時を指定することができる。
【００３３】
［ＤＢの説明］
放送番組管理装置１の内部には、タグＤＢと時刻ＤＢが構築されている。これらのＤＢは、外部から放送番組管理装置１に入力されたタグ情報に基づいて、タグＤＢ更新部１４、及び時刻ＤＢ更新部１５によって構築される。
【００３４】
図４は、タグ情報と、タグＤＢ記憶部１１に記憶されるタグＤＢ及び時刻ＤＢ記憶部１２に記憶される時刻ＤＢとの関係を示す図である。
図４（ａ）は、放送番組管理装置１に入力されたタグ情報の関連を示す図である。同図では、放送番組管理装置１に入力されたタグ名Ａ（＃Ａ）に関する３つのタグ情報（ｔ１、ｔ３、＃Ａ）、（ｔ４、ｔ５、＃Ａ）、（ｔ７、ｔ１１、＃Ａ）と、タグ名Ｂ（＃Ｂ）に関する２つのタグ情報（ｔ１、ｔ２、＃Ｂ）、（ｔ６、ｔ９、＃Ｂ）と、タグ名Ｃ（＃Ｃ）に関する１つのタグ情報（ｔ８、ｔ９、＃Ｃ）との関連を示している。
【００３５】
図４（ｂ）は、図４（ａ）に示すタグ情報に基づいてタグＤＢ記憶部１１に構築されるタグＤＢを示す図である。図４（ａ）に示すタグ情報が放送番組管理装置１に入力された場合、図４（ｂ）に示すように、タグＤＢには、各タグ名＃Ａ、＃Ｂ、＃Ｃに対する時刻範囲（開始時刻と終了時刻の組）のリストが、時刻の重複がないように、時刻が古い（時刻情報が小さい）順に記録される。このタグＤＢを用いることで、タグ名から、そのタグ名がどの時刻範囲に関連付けられているかを高速に検索することができる。
【００３６】
図４（ｃ）は、図４（ａ）に示すタグ情報に基づいて時刻ＤＢ記憶部１２に構築される時刻ＤＢを示す図である。図４（ｃ）に示すように、時刻ＤＢ記憶部１２には、時刻が古い（時刻情報が小さい）順に、各時刻範囲におけるタグ名のリストが記録されている。同図においては、時刻ｔ１から時刻ｔ２の前までの時刻範囲には＃Ａ及び＃Ｂが関連づけられており、時刻ｔ２から時刻ｔ３の前までの時刻範囲には＃Ａが関連づけられており、時刻ｔ３から時刻ｔ４の前までの時刻範囲にはタグが関連づけられていないことを示す。この時刻ＤＢを用いることで、ある放送時刻にどのようなタグが関連付けられているか、つまり、ある放送時刻における放送番組の部分がどのようなタグに関連しているかを高速に検索することができる。
【００３７】
［ファイル蓄積部１３の説明］
ファイル蓄積部１３は、放送番組の閲覧に必要となる映像、音声などのデータのファイルを記憶している装置である。また、ファイル蓄積部１３は、字幕データや番組表などの関連するデータのファイルも記憶する。
【００３８】
本実施形態では、ファイル蓄積部１３として、非特許文献２に記載の分散ファイルシステムを利用する。この分散ファイルシステムでは、保管された複数のファイルを、論理的に１つのファイルとして扱うことができ、その論理的なファイルに対して、時刻によりフレーム単位のデータの読み出しが可能である。この論理的なファイルは、通常のパーソナルコンピュータ等に実装されるＯＳ（オペレーションシステム）のファイルシステムがファイルへアクセスする際に用いるインタフェースと同じインタフェース（例えば、後述のｐｒｅａｄ関数など）を使ってアクセスできる。
【００３９】
図７は、ファイル蓄積部１３により蓄積される番組ファイルの論理的なファイルの例を示す図である。同図では、ディレクトリ（フォルダ）名が「＠ｃｈ１」である場合、「＠ｃｈ２」である場合のそれぞれについて、ディレクトリ内のファイルの一覧の例を示している。なお、「＠ｃｈ１」および「＠ｃｈ２」は放送チャンネルを表し、「＠ｃｈ１」ディレクトリには「チャンネル１」の放送番組に関連するファイル、「＠ｃｈ２」ディレクトリには「チャンネル２」の放送番組に関連するファイルが存在するものとして説明する。同図に示す例では、「＠ｃｈ１」ディレクトリ内に、映像ファイル「ｖｉｄｅｏ．ｈ２６４」、音声ファイル「ａｕｄｉｏ.ａａｃ」、副音声ファイル「ａｕｄｉｏ＿ｓｕｂ.ａａｃ」、字幕ファイル「ｃａｐｔｉｏｎ．ｔｘｔ」、番組表ファイル「ｐｒｏｇｒａｍ．ｔｘｔ」の５つのファイルが存在しており、「＠ｃｈ２」ディレクトリ内に、映像ファイル「ｖｉｄｅｏ．ｈ２６４」、音声ファイル「ａｕｄｉｏ.ａａｃ」、字幕ファイル「ｃａｐｔｉｏｎ．ｔｘｔ」、番組表ファイル「ｐｒｏｇｒａｍ．ｔｘｔ」の４つのファイルが存在している。
【００４０】
図８は、データの読み出しに用いられるｐｒｅａｄ関数を説明するための図である。同図に示すｐｒｅａｄ関数により、図７に示すファイルからデータを読み出すことができる。ｐｒｅａｄ関数は、ｆｉｌｅ、ｂｕｆ、ｓｉｚｅ、ｔｓｔの４つの引数を持つ。
引数ｆｉｌｅは、読み出したいファイルのファイル名であり、例えば、チャンネル１の映像ファイルのデータを読み出したい場合には、放送番組や放送時刻等にかかわらず、チャンネル１を表すディレクトリと、映像ファイルの名称とを組み合わせ、「／＠ｃｈ１／ｖｉｄｅｏ．ｈ２６４」を指定する。引数ｂｕｆは、読み出したデータを格納するためのメモリ領域の先頭アドレスを示し、引数ｓｉｚｅは、引数ｂｕｆで指定されるメモリ領域のために確保したメモリの領域サイズを指定する。引数ｔｓｔは、引数ｆｉｌｅにより指定したファイルからデータ読み出し対象の放送時刻を指定する。引数ｔｓｔには、図３に示す時刻情報が用いられる。
【００４１】
図９は、図８に示すｐｒｅａｄ関数により読み出されたデータを格納する際のデータ構造を示す図である。読み出しインタフェース部１６は、ｐｒｅａｄ関数により読み出したデータを、引数ｂｕｆにより先頭アドレスが指定されたメモリ領域に格納する。同図に示すように、引数ｂｕｆで指定されたメモリ領域の先頭３２バイトには、読み出されたデータに対応するファイルの部分の開始時刻、終了時刻、読み出されたデータのデータ長が格納され、それらに続いて、読み出されたファイルのデータが格納される。
このように、本実施形態では、ｐｒｅａｄ関数を用いることで、ファイル蓄積部１３に蓄積されている放送番組に関連するファイルから、指定した時刻のデータを読み出すことができる。
【００４２】
なお、本実施形態のファイル蓄積部１３は、非特許文献２の分散ファイルシステムに限定されるものではなく、指定時刻における指定チャンネルの映像ファイル、音声ファイル、副音声ファイル、字幕ファイル、番組表ファイルなど、放送番組に関連するファイルを読み出すことができれば、一般的なパーソナルコンピュータ等で利用されているファイルシステムであってもよい。
【００４３】
［タグＤＢ更新部１４の動作の説明］
次に、放送番組管理装置１に、タグ情報の追加命令または、すでに入力されているタグ情報の削除命令が入力された場合のタグＤＢの更新動作について説明する。タグＤＢの更新は、タグＤＢ更新部１４によって実行される。なお、タグＤＢ記憶部１１は、タグＤＢをチャンネル毎に記憶しており、タグＤＢ更新部１４は、チャンネル毎に以下の処理を行う。
【００４４】
図１０は、タグＤＢ更新部１４のタグＤＢ更新処理の動作の流れ図を示す。また、図５、図６は、タグＤＢ更新部１４の具体的な動作を説明するための図である。図１０に示すタグＤＢ更新部１４の動作を、図５および図６を使って説明する。
【００４５】
放送番組管理装置１に、追加命令または削除命令とともにタグ情報が入力されると、タグＤＢ更新部１４は、その入力された命令がタグ情報の追加命令であるか削除命令であるかを判断する（ステップＳ１０１）。タグＤＢ更新部１４は、追加命令であると判断した場合（ステップＳ１０１：ＹＥＳ）、入力されたタグ情報が示す時刻範囲をタグＤＢに追加登録する（ステップＳ１０２）。すなわち、タグＤＢ更新部１４は、入力されたタグ情報のタグ名と同じタグ名がタグＤＢにすでに登録されている場合には、タグ情報の開始時刻及び終了時刻で示される時刻範囲を、すでに登録されている同じタグ名の時刻範囲のリストに追加する。同じタグ名が登録されていない場合、タグＤＢ更新部１４は、入力されたタグ情報のタグ名を新規のタグ名としてタグＤＢに追加し、追加したタグ名に対応した時刻範囲のリストに、入力されたタグ情報の開始時刻及び終了時刻で示される時刻範囲を登録する。
【００４６】
図５は、図４の状態から放送番組管理装置１にタグ情報の追加命令が入力された場合のタグＤＢの更新例を示す図である。図５（ａ）に示すように、放送番組管理装置１にタグ情報（ｔ４、ｔ６、＃Ｂ）の追加命令が入力されたとする。この場合、タグＤＢにはすでにタグ名「Ｂ」が登録されているので、タグＤＢ更新部１４は、タグ情報が示す時刻範囲ｔ４−ｔ６を、＃Ｂに対応した時刻範囲のリストに追加する。図５（ｂ）の左側の図は、ステップＳ１０２の処理が終了したときのタグＤＢの状態を示している。
【００４７】
図１０に戻り説明を続ける。次に、タグＤＢ更新部１４は、ステップＳ１０２において時刻範囲を追加する前にすでに登録済みであった前後の時刻範囲を参照し、追加した時刻範囲が、登録済みの時刻範囲と重複があるかを判断する（ステップＳ１０３）。タグＤＢ更新部１４は、重複がないと判断した場合（ステップＳ１０３：ＮＯ）、処理を終了し、重複があると判断した場合（ステップＳ１０３：ＹＥＳ）、時刻範囲のマージ処理を行う（ステップＳ１０４）。
【００４８】
図５（ｂ）の左側の図では、＃Ｂに対応して新規に追加された時刻範囲ｔ４−ｔ６は、すでに登録済みであった時刻範囲ｔ６−ｔ９と連続するため、タグＤＢ更新部１４は、これらの時刻範囲をマージしてｔ４−ｔ９としている。結果として、ステップＳ１０４の処理が終了したときのタグＤＢは、図５（ｂ）の右側の図で示される状態となる。
【００４９】
タグ情報の追加命令が入力された場合、タグＤＢ更新部１４は、以上の動作によりタグＤＢの更新処理を実行する。
【００５０】
ステップＳ１０１において、タグＤＢ更新部１４は、入力された命令が削除命令であると判断した場合（ステップＳ１０１：ＮＯ）、以下の処理を行う。すなわち、タグＤＢ更新部１４は、入力されたタグ情報のタグ名に対応付けてタグＤＢに登録されている時刻範囲のリストから、入力されたタグ情報の開始時刻及び終了時刻で示される時刻範囲を削除する（ステップＳ１０５）。
【００５１】
図６は、図５の状態から、放送番組管理装置１にタグ情報の削除命令が入力された場合のタグＤＢの更新例を示している。図６（ａ）に示すように、放送番組管理装置１にタグ情報（ｔ８、ｔ９、＃Ｃ）の削除命令が入力されたとする。図６（ｂ）は、ステップＳ１０５の処理後のタグＤＢ記憶部１１の状態を示している。すなわち、図５（ｂ）において、タグ名＃Ｃの時刻範囲は、ｔ８−ｔ１０であったが、タグＤＢ更新部１４は、削除命令によりタグ情報が示す時刻範囲ｔ８−ｔ９を削除し、結果として時刻範囲はｔ９−ｔ１０となっている。
タグ情報の削除命令が入力された場合、タグＤＢ更新部１４は、以上の動作によりタグＤＢの更新処理を実行する。
【００５２】
［時刻ＤＢ更新部１５の動作の説明］
放送番組管理装置１に、タグ情報の追加命令または、すでに入力されているタグ情報の削除命令が入力された場合、タグＤＢ更新部１４が図１０に示すタグＤＢ更新処理を実行する一方、時刻ＤＢ更新部１５は、時刻ＤＢ更新処理を実行する。なお、時刻ＤＢ記憶部１２は、時刻ＤＢをチャンネル毎に記憶しており、時刻ＤＢ更新部１５は、チャンネル毎に以下の処理を行う。
【００５３】
図１１は、時刻ＤＢ更新部１５の時刻ＤＢ更新処理の動作の流れ図を示す。以下では、図５および図６を使って図１１に示す時刻ＤＢ更新部１５の具体的な動作の例を説明する。
【００５４】
放送番組管理装置１に、追加命令または削除命令とともにタグ情報が入力されると、時刻ＤＢ更新部１５は、その入力された命令がタグ情報の追加命令であるか削除命令であるかを判断する（ステップＳ２０１）。時刻ＤＢ更新部１５は、追加命令であると判断した場合（ステップＳ２０１：ＹＥＳ）、入力されたタグ情報に設定されている開始時刻及び終了時刻で示される時刻ＤＢの時刻範囲に、この入力されたタグ情報に設定されているタグ名を対応付けて追加する（ステップＳ２０２）。
【００５５】
図５に示す例では、図４の状態から放送番組管理装置１にタグ情報（ｔ４、ｔ６、＃Ｂ）の追加命令が入力されたので、時刻ＤＢ更新部１５は、図５（ｃ）の左側の図に示すように、時刻ＤＢの時刻ｔ４−ｔ６の時刻範囲にタグ名＃Ｂを追加している。すなわち、時刻ＤＢ更新部１５は、すでに時刻ＤＢに登録されている時刻ｔ４および時刻ｔ５に対応したタグ名のリストに＃Ｂを追加している。なお、この例では、追加命令の対象である新規のタグ情報の開始時刻ｔ４と終了時刻ｔ６が時刻ＤＢに登録されていたが、登録されていない場合には、それらの時刻に対応したタグ名リストを追加し、タグ名を設定する。
【００５６】
図１１に戻り説明を続ける。次に、時刻ＤＢ更新部１５は、追加の時刻範囲ｔ４−ｔ６で、タグ名のリストが重複しているか否かを判断する（ステップＳ２０３）。時刻ＤＢ更新部１５は、重複がないと判断した場合（ステップＳ２０３：ＮＯ）、処理を終了し、重複があると判断した場合（ステップＳ２０３：ＹＥＳ）、時刻ＤＢの時刻範囲のリストのマージ処理を実行する（ステップＳ２０４）。
【００５７】
図５（ｃ）の左側の図に示す例では、時刻ｔ５に登録されているタグ名のリスト＃Ｂと、時刻ｔ５に隣接した時刻ｔ６に登録されているタグ名のリスト＃Ｂとが同じであるため、時刻ＤＢ更新部１５は、時刻範囲のマージ処理をして１つにしている。結果として、ステップＳ２０４の処理が終了したときの時刻ＤＢは、図５（ｃ）の右側の図で示される状態となる。
タグ情報の追加命令が入力された場合、時刻ＤＢ更新部１５は、以上の動作により時刻ＤＢの更新処理を実行する。
【００５８】
一方、時刻ＤＢ更新部１５は、入力された命令が削除命令であると判断した場合（ステップＳ２０１：ＹＥＳ）、入力されたタグ情報に設定されている開始時刻及び終了時刻で示される時刻範囲に対応して時刻ＤＢに記憶されているタグ名のリストから、この入力されたタグ情報に設定されているタグ名を削除する（ステップＳ２０５）。
【００５９】
図６に示す例では、タグ情報（ｔ８、ｔ９、＃Ｃ）の削除命令が入力されたため、時刻ＤＢ更新部１５は、時刻ｔ８に対応して時刻ＤＢに設定されているタグ名のリストからタグ名＃Ｃを削除している。削除後の状態を図６（ｃ）の左側の図に示している。
【００６０】
削除処理（ステップＳ２０５）の実行後、時刻ＤＢ更新部１５は、追加処理の場合と同様に、タグ名のリストが重複していないかによりマージ処理が必要か否かを判断する（ステップＳ２０３）。時刻ＤＢ更新部１５は、マージ処理が不要と判断した場合（ステップＳ２０３：ＮＯ）、処理を終了し、マージ処理が必要と判断した場合（ステップＳ２０３：ＹＥＳ）、マージ処理（ステップＳ２０４）を実行する。これは、すでに説明した追加処理と同じである。例えば、図６（ｃ）の左側の例では、時刻ｔ７に登録されているタグ名のリストと、時刻ｔ７に隣接した時刻ｔ８に登録されているタグ名のリストが、「＃Ａ、＃Ｂ」と同一であるため、時刻ＤＢ更新部１５は、マージ処理を行う。図６（ｃ）の右側の図は、マージ処理（ステップＳ１０４）後の結果を示している。
タグ情報の削除命令が入力された場合、時刻ＤＢ更新部１５は、以上の動作により時刻ＤＢの更新処理を実行する。
【００６１】
［読み出しインタフェース部１６の動作の説明］
読み出しインタフェース部１６は、ファイル蓄積部１３からのファイルの読み出し、および、タグＤＢ記憶部１１、時刻ＤＢ記憶部１２からのデータの読み出しを、図８に示すｐｒｅａｄ関数を用い、共通化したインタフェースにより実行する。
【００６２】
図１２は、ファイル蓄積部１３のファイルが図７の状態の場合に、読み出しインタフェース部１６により提供されるファイルの例を示す図である。同図に示すように、読み出しインタフェース部１６により提供されるファイルとして、「＠ｃｈ１」ディレクトリについては、「％ｔａｇｌｉｓｔ」、「＃Ａ」、「＃Ｂ」、「＃Ｃ」の４つのファイルが追加され、「＠ｃｈ２」ディレクトリについては、「％ｔａｇｌｉｓｔ」、「＃Ａ」、「＃Ｂ」、「＃Ｋ」、「＃Ｌ」の５つのファイルが追加される。
なお、ファイル「＃Ａ」、「＃Ｂ」、「＃Ｃ」、「＃Ｋ」、「＃Ｌ」はそれぞれ、タグ名＃Ａ、＃Ｂ、＃Ｃ、＃Ｋ、＃Ｌを表しており、読み出しインタフェース部１６にこれらの論理的なファイルへのアクセスを要求することで、タグＤＢ内の情報を取得することができる。同様に、読み出しインタフェース部１６に、「％ｔａｇｌｉｓｔ」として示される論理的なファイルへのアクセスを要求することで時刻ＤＢ内の情報を取得することができる。
【００６３】
図１３は、読み出しインタフェース部１６のデータ読み出し処理の動作を示す流れ図である。
読み出しインタフェース部１６は、外部からｐｒｅａｄ関数によるアクセスを受けると、はじめに引数ｆｉｌｅのファイル名から、ファイル蓄積部１３内の放送番組に関するファイル、タグＤＢ記憶部１１内のタグＤＢ、時刻ＤＢ記憶部１２内の時刻ＤＢのいずれのデータへのアクセスが必要かを判断する。すなわち、読み出しインタフェース部１６は、引数ｆｉｌｅのファイル名がタグ名（＃で始まるファイル名）を含むファイルである場合（ステップＳ３０１：ＹＥＳ）、タグＤＢからのデータの読み出し要求と判断し、以下に示すステップＳ３０２の処理を実行する。また、読み出しインタフェース部１６は、引数ｆｉｌｅのファイル名が％ｔａｇｌｉｓｔである場合（ステップＳ３０１：ＮＯかつステップＳ３０３：ＹＥＳ）、時刻ＤＢからのデータの読み出し要求と判断し、以下に示すステップＳ３０４の処理を実行する。読み出しインタフェース部１６は、引数ｆｉｌｅのファイル名がタグ名（＃で始まるファイル名）を含むファイルでもなく、％ｔａｇｌｉｓｔでもない場合（ステップＳ３０１：ＮＯかつステップＳ３０３：ＮＯ）、放送番組に関するファイルへのアクセス要求であると判断し、以下に示すステップＳ３０５の処理を実行する。
【００６４】
＜ステップＳ３０２の処理の説明＞
ｐｒｅａｄ関数の引数ｆｉｌｅで指定されたファイル名にタグ名が含まれる場合、読み出しインタフェース部１６は、ステップＳ３０２の処理を実行する。読み出しインタフェース部１６は、タグＤＢ記憶部１１から、引数ｆｉｌｅで指定されたファイル名で特定されるタグ名に対応してタグ名対応時刻範囲データに登録されている時刻範囲のリストの中から、ｐｒｅａｄ関数の引数ｔｓｔで指定された時刻が含まれる時刻範囲の前後の時刻範囲を読み出し、引数ｂｕｆで先頭アドレスが指定されたメモリ領域に書き込む。
【００６５】
例えば、「@ｃｈ１」のタグＤＢが図４（ｂ）の状態のときに、読み出しインタフェース部１がｐｒｅａｄ（”／@ｃｈ１／＃Ａ”，ｂｕｆ，ｓｉｚｅ，ｔ４）の実行要求を受けたとする。読み出しインタフェース部１６は、「@ｃｈ１」で示されるチャンネルのタグＤＢに#Ａと対応付けて登録されている時刻範囲リストから、指定時刻ｔ４が含まれる「ｔ４−ｔ５」の前の時刻範囲として「ｔ１−ｔ３」を読み出し、後の時刻範囲として「ｔ７−ｔ１１」を読み出す。したがって、放送番組管理装置１が外部からのアクセスを受け、ｐｒｅａｄ（”／@ｃｈ１／＃Ａ”，ｂｕｆ，ｓｉｚｅ，ｔ４）を実行した場合、読み出しインタフェース部１６は、引数ｂｕｆの先頭３２バイトに続くデータ（図９参照）に、「ｔ１−ｔ３」、「ｔ７−ｔ１１」を示す時刻範囲のデータを格納する。さらに、読み出しインタフェース部１６は、「＠ｃｈ１」で示されるチャンネルのタグＤＢに＃Ａに対応して記憶されている時刻範囲リストから、指定時刻ｔ４が含まれる時刻範囲「ｔ４−ｔ５」を読み出し、引数ｂｕｆで示されるメモリ領域の先頭（図９参照）の開始時刻に、読み出した時刻範囲の開始時刻である「ｔ４」を、終了時刻には読み出した時刻範囲の終了時刻である「ｔ５」を格納する。これにより、アクセス元は、指定された時刻を現在として、指定されたタグ名が関連付けられた、過去（ｔ１−ｔ３）、現在（ｔ４−ｔ５）、未来（ｔ７−ｔ１１）の３つの時刻範囲を取得することができる。
【００６６】
＜ステップＳ３０４の処理の説明＞
ｐｒｅａｄ関数のファイル名に％ｔａｇｌｉｓｔが含まれる場合、読み出しインタフェース部１６は、ステップＳ３０４の処理を実行する。読み出しインタフェース部１６は、時刻ＤＢ記憶部１２から、ｐｒｅａｄ関数の引数ｔｓｔで指定された時刻が含まれる時刻範囲に対応して時刻ＤＢに登録されているタグ名のリストを読み出し、引数ｂｕｆで先頭アドレスが指定されたメモリ領域に書き込む。
【００６７】
例えば、「@ｃｈ１」の時刻ＤＢが図４（ｃ）の状態のときに、読み出しインタフェース部１がｐｒｅａｄ（”／＠ｃｈ１／％ｔａｇｌｉｓｔ”，ｂｕｆ，ｓｉｚｅ，ｔ８）の実行要求を受けたとする。読み出しインタフェース部１６は、「＠ｃｈ１」で示されるチャンネルの時刻ＤＢから時刻ｔ８が含まれる時刻範囲「ｔ８−ｔ９」と、この時刻範囲に対応付けて登録されているタグ名のリスト「＃Ａ、＃Ｂ、＃Ｃ」を読み出す。したがって、放送番組管理装置１が外部からのアクセスを受け、ｐｒｅａｄ（”／＠ｃｈ１／％ｔａｇｌｉｓｔ”，ｂｕｆ，ｓｉｚｅ，ｔ８）を実行した場合、読み出しインタフェース部１６は、引数ｂｕｆの先頭３２バイトに続くデータ（図９参照）に、読み出したタグ名のリスト「＃Ａ，＃Ｂ，＃Ｃ」を格納する。また、読み出しインタフェース部１６は、引数ｂｕｆで示されるメモリ領域の先頭（図９参照）の開始時刻に、読み出した時刻範囲の開始時刻である「ｔ８」を、終了時刻には読み出した時刻範囲の終了時刻である「ｔ９」を格納する。これにより、アクセス元は、時刻範囲ｔ８−ｔ９に関連付けられている３つのタグ名＃Ａ，＃Ｂ，＃Ｃを取得することができる。
【００６８】
＜ステップＳ３０５の処理の説明＞
ｐｒｅａｄ関数のファイル名が通常のファイルの場合、読み出しインタフェース部１６は、ステップＳ３０５の処理を実行する。読み出しインタフェース部１６は、従来と同様の動作によってファイル蓄積部１３からファイルを読み出す。すなわち、読み出しインタフェース部１６は、ｐｒｅａｄ関数の引数ｆｉｌｅによって指定されたファイルにおける引数ｔｓｔで指定された時刻のデータをファイル蓄積部１３から読み出し、引数ｂｕｆで先頭アドレスが指定されたメモリ領域に格納する。
【００６９】
［放送番組管理装置１のまとめ］
以上説明したように、本実施形態による放送番組管理装置１により、汎用的なＯＳ（Ｏｐｅｒａｔｉｏｎ Ｓｙｓｔｅｍ）と同じ読み出し関数を使って、過去の放送番組の閲覧に必要となる映像ファイルや音声ファイルのデータとともに、タグに関するデータを読み出すことが可能となる。つまり、放送番組管理装置１から、番組の閲覧に必要なデータと時刻情報により同期して、関連付けられたタグの情報を取得することが可能となる。
【００７０】
［放送番組閲覧システムの概要］
次に、上述した放送番組管理装置１を利用した放送番組閲覧システムについて説明する。
【００７１】
図１４は、本発明の一実施形態による放送番組閲覧システム５の構成を示す図である。同図に示すように、放送番組閲覧システム５は、放送番組管理装置１、放送番組再生装置２、及び操作インタフェース３を備えて構成される。
【００７２】
放送番組再生装置２は、再生処理部２１、操作受信部２２、表示部２３、及び視聴履歴記録部２４を備えて構成される。
再生処理部２１は、放送番組管理装置１とインターネット網などの公衆網を介して通信してもよく、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの私設網やケーブルなどを介して通信してもよい。再生処理部２１は、記憶部２１１、放送番組データ取得部２１２、放送時刻更新部２１３、タグリスト取得部２１４、時刻リスト取得部２１５を備えて構成される。
【００７３】
記憶部２１１は、放送番組を閲覧する対象の放送時刻を示すデータ、閲覧対象のチャンネルの情報を示すデータ、放送番組管理装置１から読み出したデータなどの各種データを記憶する。
放送番組データ取得部２１２は、記憶部２１１に記憶されている放送時刻のデータが更新された場合に、記憶部２１１に記憶されているチャンネル及び放送時刻に基づき、ｐｒｅａｄ関数を用いて放送番組管理装置１に放送番組に関するデータを要求する。放送番組データ取得部２１２は、放送番組管理装置１から返送された放送番組のデータを表示部２３に表示させる。また、放送番組データ取得部２１２は、放送番組のデータに含まれる音声のデータについては、図示しない音声出力部（例えば、スピーカー）により出力する。
放送時刻更新部２１３は、放送番組データ取得部２１２が表示部２３に表示させている放送番組のデータの表示が終了した場合に、記憶部２１１に記憶されている放送時刻を示すデータを、表示が終了した時点の放送時刻に更新する。
【００７４】
タグリスト取得部２１４は、表示部２３に表示させている放送番組の部分に対応したタグのリストを放送番組管理装置１から読み出して表示部２３に表示させる。具体的には、タグリスト取得部２１４は、記憶部２１１に記憶されているチャンネル及び放送時刻に基づき、ｐｒｅａｄ関数により放送番組管理装置１にタグ名のリストを要求する。タグリスト取得部２１４は、放送番組管理装置１から返送されたタグ名のリストを表示部２３に表示させる。
【００７５】
時刻リスト取得部２１５は、タグリスト取得部２１４が表示させたタグのリストの中から閲覧者が選択したタグに対応した時刻範囲を放送番組管理装置１から読み出す。具体的には、時刻リスト取得部２１５は、検索対象のチャンネルと、タグリスト取得部２１４が表示させたタグ名のリストの中から閲覧者が選択したタグ名とに対応し、かつ、記憶部２１１に記憶されている放送時刻が含まれる時刻範囲と時間的に隣接した時刻範囲のリストを、ｐｒｅａｄ関数により放送番組管理装置１に要求する。時刻リスト取得部２１５は、放送番組管理装置１から返送された時刻範囲に含まれる時刻（例えば、開始時刻）により記憶部２１１が記憶している放送時刻のデータを更新する。
【００７６】
操作受信部２２は、操作インタフェース３からデータを受信する。具体的には、操作受信部２２は、閲覧者が操作インタフェース３に行った操作を示す操作情報を受信する。操作受信部２２と操作インタフェース３との間の通信は、赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（ｗｉｒｅｌｅｓｓ  ｆｉｄｅｌｉｔｙ）（登録商標）などの無線通信を利用してもよく、ＲＳ２３２Ｃ（Ｒｅｃｏｍｍｅｎｄｅｄ  Ｓｔａｎｄａｒｄ  ２３２  Ｃ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、イーサネット（登録商標）などの有線通信を利用してもよい。
表示部２３は、例えば、ディスプレイ装置であり、画像を表示する。
視聴履歴記録部２４は、閲覧者が閲覧した放送番組の履歴を示す視聴履歴データを記録する。閲覧者が閲覧した放送番組の履歴は、再生処理部２１が表示部２３にデータを表示させた放送番組の放送時刻により示される。
【００７７】
操作インタフェース３は、操作入力部３１、及び操作通知部３２を備えて構成される。操作入力部３１は、閲覧者による操作を受ける。操作通知部３２は、操作入力部３１が閲覧者による操作を受けるとただちに、その操作内容を示す操作情報を放送番組再生装置２に出力する。
【００７８】
［操作インタフェース３の説明］
図１５は、操作インタフェース３が備える操作入力部３１を示す図である。同図に示すように、本実施形態の操作インタフェース３が備える操作入力部３１には、通常のテレビやハードディスクレコーダーなどのリモートコントローラが備える操作ボタン３１１に加え、ホイールスイッチ３１２および選択スイッチ３１３がある。ホイールスイッチ３１２は、回転すると同時に、押しボタンとしても動作するスイッチである。ホイールスイッチ３１２の回転操作は、放送番組再生装置２の表示部２３に表示されているタグのリストに対するカーソル移動の指示である。ホイールスイッチ３１２を押す操作は、カーソル位置のタグの選択である。選択スイッチ３１３は、トグルスイッチであり、過去方向の放送番組へのジャンプ、あるいは、未来方向の放送番組へのジャンプを選択する。選択スイッチ３１３は、過去方向または未来方向のいずれかの選択状態を常に保持している。
【００７９】
［放送番組閲覧システム５の動作概要］
図１６は、放送番組閲覧システム５の動作例を説明するための図である。放送番組の閲覧者は、操作インタフェース３を用いて放送番組再生装置２を操作し、放送番組再生装置２の再生処理部２１は、操作に従って放送番組を表示部２３に表示する。
【００８０】
閲覧者が操作インタフェース３のホイールスイッチ３１２を回転させると、放送番組再生装置２の操作受信部２２は、その操作内容を示す操作情報を受信する。放送番組再生装置２の再生処理部２１は、表示部２３に現在表示させている放送番組の部分に対応して放送番組管理装置１から取得したタグのリストを表示部２３に表示させる。なお、ホイールスイッチ３１２がしばらく操作されないと、放送番組再生装置２の再生処理部２１は、表示部２３からタグのリストの表示を消去する。
【００８１】
同図では、放送番組再生装置２の表示部２３に現在表示されている画面（放送番組の部分）に関連するタグとして、タグ名「歌謡ショー」（番組タイトル）、「Ａさん」（出演者名）、「Ｂさん」（出演者名）、「Ｃさん」（出演者名）、「夢であいましょう」（曲名）、「歌謡太郎」（作曲者名）、「青空花子」（作詞者名）が表示されている。
【００８２】
閲覧者が操作インタフェース３のホイールスイッチ３１２を前後に回転させると、放送番組再生装置２の操作受信部２２は、その操作内容を示す操作情報を受信する。放送番組再生装置２の再生処理部２１は、回転の方向に合わせて、タグ名の選択を表すカーソルを移動させて表示部２３に表示する。放送番組再生装置２の再生処理部２１は、現在表示されていないタグ名がある場合には、それらをスクロールして表示させる。閲覧者は、ホイールスイッチ３１２を押すことによって、カーソル位置のタグ名を選択する。
このように、閲覧者は、放送番組再生装置２の表示部２３により番組を閲覧し、興味を惹く対象があった場合、操作インタフェース３のホイールスイッチ３１２を回転させてタグのリストを表示させ、目的のタグ名にカーソルを合わせてホイールスイッチ３１２を押す。
【００８３】
タグ名が選択されると、放送番組再生装置２の再生処理部２１は、選択されたタグ名と同じタグ名を持つ別の放送時刻を放送番組管理装置１から読み出し、読み出した放送時刻にジャンプする。つまり、再生処理部２１は、読み出した放送時刻の放送番組のデータを放送番組管理装置１から読み出し、表示部２３に表示させて放送番組の再生を開始する。このとき、タグ名が選択されたときに再生していた放送時刻よりも過去方向にジャンプするか、未来方向にジャンプするかは、選択スイッチ３１３により指定される。
【００８４】
図１７は、タグ選択後の放送番組再生装置２の表示例を示す図である。画面Ｇ１は、放送時刻「２０１２年１０月９日（火）２０時１２分１０秒」の放送番組の画面が表示さているときに、閲覧者が操作インタフェース３のホイールスイッチ３１２を押すことによって、タグ名のリストを表示させたときの画面である。閲覧者が、操作インタフェース３のホイールスイッチ３１２を回転させて目的のタグ名「Ｃさん」にカーソルを合わせ、ホイールスイッチ３１２を押すと、選択スイッチ３１３が過去方向になっている場合には画面Ｇ２が、未来方向になっている場合には画面Ｇ３が表示される。
【００８５】
選択スイッチ３１３が過去方向になっている場合、放送番組再生装置２の再生処理部２１は、タグ名「Ｃさん」のタグがついており、画面Ｇ１により閲覧していた放送番組の放送時刻に最も近い過去の別の放送番組の放送時刻にジャンプする。つまり、放送番組再生装置２の再生処理部２１は、ジャンプ先である過去の放送時刻における放送番組のデータを放送番組管理装置１から取得して表示部２３に表示させ、再生を開始する。
同様に、選択スイッチ３１３が未来方向になっている場合、放送番組再生装置２の再生処理部２１は、タグ名「Ｃさん」のタグがついており、画面Ｇ１により閲覧していた放送番組の放送時刻に最も近い未来の別の放送番組の放送時刻にジャンプする。つまり、放送番組再生装置２の再生処理部２１は、ジャンプ先である未来の放送時刻における放送番組のデータを放送番組管理装置１から取得して表示部２３に表示させ、再生を開始する。
【００８６】
ジャンプ先の放送番組の再生開始後、閲覧者は、さらに、操作インタフェース３のホイールスイッチ３１２によってタグ名の選択を行うことができる。放送番組再生装置２は、選択されたタグ名がついており、再生中の放送時刻に最も近い過去または未来の放送時刻にジャンプし、放送番組を再生する。
このように、閲覧者は、放送番組閲覧システム５００により、タグ名をハイパーリンクとして用い、動画間を移動しながら放送番組を閲覧することができる。
【００８７】
［放送番組再生装置２の動作の説明］
図１８は、放送番組再生装置２の再生処理部２１の再生処理の動作の流れを示している。放送番組の閲覧においては、放送番組再生装置２の再生処理部２１が中心となって動作する。
【００８８】
はじめに、再生処理部２１は、再生を開始するチャンネルと時刻をそれぞれ、記憶部２１１内のメモリｃｈ、メモリｔｓｔに設定する（ステップＳ４０１）。これらの設定値は、前回再生したときの状態を記録したものを使ってもよいし、あらかじ利用者が設定する方法などでもよく、特にその方法は限定されない。
ステップＳ４０２以降の処理は、ループによる繰り返し処理である。再生処理部２１は、このループを、例えば、再生する放送番組の映像や音声のフレーム単位で繰り返す。本実施形態では、映像の再生のフレーム時間（約３３ミリ秒）のループであるとして説明する。
【００８９】
＜閲覧者がホイールスイッチ３１２を操作していない場合の動作＞
再生処理部２１の放送番組データ取得部２１２は、操作インタフェース３を使ったチャンネル変更の操作があったかどうかを、操作受信部２２に問い合わせる（ステップＳ４０２）。操作受信部２２は、操作インタフェース３からチャンネルの変更の操作を示す操作情報を受信していた場合、チャンネル変更があった旨と、変更後のチャンネルを示す応答を放送番組データ取得部２１２に通知する。放送番組データ取得部２１２は、チャンネル変更があった旨の応答を操作受信部２２から受信した場合（ステップＳ４０２：ＹＥＳ）、チャンネル設定用のメモリｃｈを、応答により受信した変更先のチャンネルに書き換える（ステップＳ４０３）。再生処理部２１は、ループの最初に戻り、ステップＳ４０２からの処理を行う。
【００９０】
放送番組データ取得部２１２は、チャンネル変更がなかった旨の応答を操作受信部２２から受信した場合（ステップＳ４０２：ＮＯ）、操作インタフェース３のホイールスイッチ３１２が押されたかどうかを操作受信部２２に問い合わせる（ステップＳ４０４）。
【００９１】
放送番組データ取得部２１２は、ホイールスイッチ３１２が押されていない旨の応答を操作受信部２２から受信した場合（ステップＳ４０４：ＮＯ）、放送番組管理装置１の読み出しインタフェース部１６を使って、メモリｃｈ、メモリｔｓｔで示される現在のチャンネル及び放送時刻の映像データ取得する（ステップＳ４０５）。例えば、現在のチャンネルが「＠ｃｈ１」の場合、放送番組データ取得部２１２は、放送番組管理装置１にアクセスし、読み出しインタフェース部１６にｐｒｅａｄ（”／＠ｃｈ１／ｖｉｄｅｏ．ｈ２６４”，ｂｕｆ，ｓｉｚｅ，ｔｓｔ）を実行させ、引数ｂｕｆで指定したメモリ領域に映像のフレームデータを取得する。引数ｆｉｌｅは、メモリｃｈから読み出したチャンネルと、映像データを表すファイル名とに基づいて設定される。引数ｔｓｔには、メモリｔｓｔの内容が設定され、引数ｂｕｆには、読み出したデータの書き込み先となる記憶部２１１内のメモリ領域の先頭アドレスが設定される。引数ｓｉｚｅは、データ書き込み先のメモリ領域の大きさに応じて設定される。放送番組管理装置１は、図１３のステップＳ３０５の処理を行い、指定チャンネルの指定時刻の映像データを放送番組再生装置２に出力する。
【００９２】
次に、放送番組データ取得部２１２は、放送番組管理装置１から取得した映像データを、引数ｂｕｆにより示されるメモリ領域より読み出して表示部２３へ出力し、表示させる（ステップＳ４０６）。なお、一般に、映像データは圧縮方式により符号化されているので、映像データを表示するにはデコード処理が必要であるが、本実施形態には関係しないため、その説明は省略する。また、映像データの圧縮方式にはさまざまな方式があるが、本実施形態は圧縮方式に限定されるものではないので、その説明は省略する。
【００９３】
次に、放送番組データ取得部２１２は、ある一定の決められた時間内にホイールスイッチ３１２の操作がなされたか否かを操作受信部２２に問い合わせる（ステップＳ４０７）。例えば、一定時間を１０秒とすると、タグリスト取得部２１４は、過去１０秒以内にホイールスイッチ３１２に何らかの操作がなされていた場合には、画面にタグを表示し、過去１０秒以内にホイールスイッチ３１２の操作が全くなされなかった場合には、画面にタグ情報を表示しない。
【００９４】
放送番組データ取得部２１２がホイールスイッチ３１２の操作が行われていない旨の応答を操作受信部２２から受信した場合（ステップＳ４０７：ＮＯ）、放送時刻更新部２１３は、メモリｔｓｔに次のフレーム時刻を設定する（ステップＳ４１０）。具体的には、再生処理部２１は、ステップＳ４０５において引数ｂｕｆで指定したメモリ領域に書き込まれたデータの先頭から終了時刻（図９を参照）を読み出し、読み出した終了時刻を次のフレーム時刻としてメモリｔｓｔに設定する。
【００９５】
以上が、閲覧者が操作インタフェース３を特に操作していない場合の、１ループの動作である。なお、本実施形態では、説明を簡単にするため、過去の放送番組の再生処理として、映像の再生のみを説明したが、実際には、音声、字幕データ、番組情報なども必要である。それらのデータは、引数ｆｉｌｅのファイル名「ｖｉｄｅｏ．ｈ２６４」の部分を、「ａｕｄｉｏ．ａａｃ」、「ｃａｐｔｉｏｎ．ｔｘｔ」、「ｐｒｏｇｒａｍ．ｔｘｔ」などに変えることで、ステップＳ４０５で映像ファイルからデータを取得したときと同じ処理によって、必要なこれら各ファイルのデータを放送時刻により同期して取得できる。
【００９６】
＜閲覧者がホイールスイッチ３１２を回転させた場合の動作＞
閲覧者が操作インタフェース３のホイールスイッチ３１２を回転させた場合の動作は以下となる。
ステップＳ４０７において問い合わせを受けた操作受信部２２は、ある一定の決められた時間内に操作インタフェース３からホイールスイッチ３１２の操作がなされたことを示す操作情報を受信していた場合、その操作内容を放送番組データ取得部２１２に通知する。放送番組データ取得部２１２が、ホイールスイッチ３１２が操作された旨の応答を受信すると（ステップＳ４０７：ＹＥＳ）、タグリスト取得部２１４は、表示中の映像に関連するタグ名のリストを取得するため、放送番組管理装置１にアクセスし、読み出しインタフェース部１６にｐｒｅａｄ関数を実行させ、タグ名のリストを取得する（ステップＳ４０８）。
【００９７】
例えば、メモリｃｈで示される現在のチャンネルが「＠ｃｈ１」の場合、タグリスト取得部２１４は、放送番組管理装置１にアクセスし、読み出しインタフェース部１６にｐｒｅａｄ（”／＠ｃｈ１／％ｔａｇｌｉｓｔ”，ｂｕｆ，ｓｉｚｅ，ｔｓｔ）を実行させ、引数ｂｕｆで指定したメモリ領域にタグ名のリストを取得することができる。このように、引数ｆｉｌｅは、メモリｃｈから読み出したチャンネルと、タグリストを表すファイル名とに基づいて設定される。引数ｔｓｔには、メモリｔｓｔの内容が設定され、引数ｂｕｆには、読み出したデータの書き込み先となる記憶部２１１内のメモリ領域の先頭アドレスが設定される。引数ｓｉｚｅは、データ書き込み先のメモリ領域の大きさに応じて設定される。
【００９８】
タグリスト取得部２１４は、取得したタグ名のリストを、図１６で示したように、表示部２３で表示中の映像に上書きして表示させる（ステップＳ４０９）。図１６の例では、引数ｂｕｆにより示されるメモリ領域に、「＃歌謡ショー、＃Ａさん、＃Ｂさん、＃Ｃさん、＃夢であいましょう、＃歌謡太郎、＃青空花子」というタグ名リストが書き込まれる。なお、前のループ処理ですでにタグ名のリストを表示させていた場合、タグリスト取得部２１４は、ホイールスイッチ３１２の回転方向に合わせてカーソル位置を１つ分ずらして表示させる。
【００９９】
＜閲覧者がホイールスイッチ３１２を押してタグを選択した場合の動作＞
続いて、閲覧者が、ホイールスイッチ３１２を押してタグ名を選択した場合の動作を説明する。
操作受信部２２は、ホイールスイッチ３１２が押されたことを示す操作情報を受信していた場合、ステップＳ４０２において、ホイールスイッチ３１２が押された旨を放送番組データ取得部２１２に通知する。放送番組データ取得部２１２が、ホイールスイッチ３１２が押された旨の通知を受けると（ステップＳ４０４：ＹＥＳ）、時刻リスト取得部２１５は、その時点で表示部２３に表示させていたタグ名のリストのうちカーソルがあるタグ名を閲覧者が選択したタグ名とする。時刻リスト取得部２１５は、閲覧者が選択したタグ名に基づいて、メモリｃｈおよびメモリｔｓｔのそれぞれに次のジャンプ先（表示移動先）であるチャンネルおよび放送時刻を設定する（ステップＳ４１１）。
本実施形態による放送番組閲覧システム５では、ステップＳ４１１における次のジャンプ先の設定に、さまざまな方法が考えられる。以下では、それらの方法の一例としてＡ〜Ｄの４つの方法について説明する。
【０１００】
＜ジャンプ先の設定の方法Ａ＞
方法Ａでは、閲覧中の放送チャンネルのうち、選択されたタグに関連した、最も近い過去または未来の放送時刻にジャンプする方法である。
【０１０１】
図１９は、方法Ａによりジャンプを行う場合のステップＳ４１１におけるジャンプ先放送時刻取得処理の詳細な動作を示す流れ図である。
はじめに、時刻リスト取得部２１５は、閲覧者が選択したタグ名を取得する（ステップＳ５０１）。次に、時刻リスト取得部２１５は、ジャンプ先の時刻を取得するため、放送番組管理装置１の読み出しインタフェース部１６にアクセスし、選択されたタグに対応した時刻範囲のリストを取得する（ステップＳ５０２）。すでに説明したように、メモリｃｈが示す現在のチャンネルが「＠ｃｈ１」、選択されたタグ名が「Ｃさん」の場合、時刻リスト取得部２１５は、読み出しインタフェース部１６にアクセスし、ｐｒｅａｄ（”／＠ｃｈ１／#Ｃさん”，ｂｕｆ，ｓｉｚｅ，ｔｓｔ）を実行させる。引数ｔｓｔには、メモリｔｓｔの内容が設定される。これにより、チャンネル「＠ｃｈ１」においてタグ名「Ｃさん」に対応づけられた時刻範囲のうち、メモリｔｓｔが示す放送時刻を含んだ時刻範囲と時間的に隣接する過去及び未来の時刻範囲が、引数ｂｕｆで指定されたメモリ領域に書き込まれる。これより、タグ名「Ｃさん」の前後のジャンプ先を取得できる。
【０１０２】
次に、時刻リスト取得部２１５は、操作インタフェース３の選択スイッチ３１３の状態を操作受信部２２から取得し、過去方向に設定されているか否かを判断する（ステップＳ５０３）。選択スイッチ３１３が過去方向に設定されていると判断した場合（ステップＳ５０３：ＹＥＳ）、時刻リスト取得部２１５は、引数ｂｕｆで指定されるメモリ領域から過去の時刻範囲の先頭時刻を読み出し、メモリｔｓｔに設定する（ステップＳ５０４）。例えば、ｐｒｅａｄ関数により取得した過去の時刻範囲が「ｔ１−ｔ３」、未来の時刻範囲が「ｔ６−ｔ８」であった場合、時刻リスト取得部２１５は、メモリｔｓｔに時刻ｔ１を設定して更新する。一方、選択スイッチ３１３が未来方向に設定されていると判断した場合（ステップＳ５０３：ＮＯ）、時刻リスト取得部２１５は、引数ｂｕｆで指定されるメモリ領域から未来の時刻範囲の開始時刻を読み出し、メモリｔｓｔに設定する（ステップＳ５０５）。すなわち、前述の例の場合には、メモリｔｓｔに時刻ｔ６を設定して更新する。
ステップＳ５０４またはステップＳ５０５の処理の後、再生処理部２１は、図１８のステップＳ４０２からの処理を実行する。
以上の動作により、閲覧者が放送番組を閲覧中のチャンネル内から、同一のタグ名の直近の過去または未来の放送時刻の放送番組へジャンプすることができる。
【０１０３】
＜ジャンプ先の設定の方法Ｂ＞
方法Ｂは、閲覧中の放送チャンネルのうち、閲覧中の番組とは異なる番組の中で、選択されたタグに関連した、最も近い過去または未来の放送時刻にジャンプする方法である。
【０１０４】
図２０は、方法Ｂによりジャンプを行う場合のステップＳ４１１におけるジャンプ先放送時刻取得処理の詳細な動作を示す流れ図である。
はじめに、時刻リスト取得部２１５は、閲覧者が選択したタグ名を取得する（ステップＳ６０１）。次に、時刻リスト取得部２１５は、メモリｔｓｔが示す放送時刻の番組情報を取得し、現在閲覧中の放送番組の開始時刻と終了時刻を取得する（ステップＳ６０２）。番組情報の取得は、映像や音声のフレームデータの取得と同様にｐｒｅａｄ関数により取得できる。すなわち、番組情報のファイル名をｐｒｏｇｒａｍ．ｔｘｔとすると、時刻リスト取得部２１５は、ｐｒｅａｄ（”／＠ｃｈ１／ｐｒｏｇｒａｍ．ｔｘｔ”，ｂｕｆ，ｉｚｅ，ｔｓｔ）を呼び出すことで、放送番組管理装置１の読み出しインタフェース部１６にアクセスし、引数ｔｓｔが示す時刻が含まれる時刻の番組情報を取得する。つまり、引数ｆｉｌｅは、メモリｃｈから読み出したチャンネルと、番組情報のファイル名とに基づいて設定される。また、引数ｔｓｔには、メモリｔｓｔの内容が設定される。放送番組管理装置１から読み出した番組情報には、放送番組の放送開始時刻と放送終了時刻が含まれる。
【０１０５】
次に、時刻リスト取得部２１５は、図１９のステップＳ５０２〜Ｓ５０５と同様の処理を行う。すなわち、時刻リスト取得部２１５は、ジャンプ先の放送時刻を取得するため、放送番組管理装置１の読み出しインタフェース部１６にアクセスし、選択されたタグに対応した時刻範囲のリストをｐｒｅａｄ関数により取得する（ステップＳ６０３）。引数ｆｉｌｅは、メモリｃｈが示すチャンネルと、選択されたタグ名に基づいて設定され、引数ｔｓｔにはメモリｔｓｔの内容が設定される。時刻リスト取得部２１５は、操作インタフェース３の選択スイッチ３１３の状態を操作受信部２２から取得する。時刻リスト取得部２１５は、選択スイッチ３１３が過去方向に設定されている場合には（ステップＳ６０４：ＹＥＳ）、ステップＳ６０３で取得した過去の時刻範囲の先頭時刻をメモリｔｓｔに設定し（ステップＳ６０５）、選択スイッチ３１３が未来方向に設定されている場合には（ステップＳ６０４：ＮＯ）、ステップＳ６０３で取得した未来の時刻範囲の先頭時刻をメモリｔｓｔに設定する（ステップＳ６０６）。
【０１０６】
次に、時刻リスト取得部２１５は、ステップＳ６０５またはステップＳ６０６で新たにメモリｔｓｔに設定した時刻が、ステップＳ６０２において取得した放送開始時刻から放送終了時刻までに含まれるか否かにより、現在閲覧中の放送番組の番組放送時刻の範囲内か否かを判断する（ステップＳ６０７）。時刻リスト取得部２１５は、新しくメモリｔｓｔに設定した時刻が、現在閲覧中の放送番組の番組放送時刻の範囲内であると判断した場合（ステップＳ６０７：ＹＥＳ）、ステップＳ６０３に戻り、再度ジャンプ先の時刻を取得する。
そして、時刻リスト取得部２１５が、新しくメモリｔｓｔに設定した時刻が、現在閲覧中の放送番組の番組放送時刻の範囲外であると判断した場合（ステップＳ６０７：ＮＯ）、再生処理部２１は、図１８のステップＳ４０２からの処理を実行する。
以上の動作により、閲覧者が選択したタグ名と同一のタグ名がついた、現在閲覧中の放送番組とは異なる直近の放送番組にジャンプすることができる。
【０１０７】
＜ジャンプ先の設定の方法Ｃ＞
方法Ｃは、放送番組管理装置１のファイル蓄積部１３に記録されている全チャンネルの中から、選択されたタグに関連した、最も近い過去または未来の放送時刻にジャンプする方法である。
【０１０８】
図２１は、方法Ｃによりジャンプを行う場合のステップＳ４１１におけるジャンプ先放送時刻取得処理の詳細な動作を示す流れ図である。
はじめに、時刻リスト取得部２１５は、閲覧者が選択したタグ名を取得する（ステップＳ７０１）。次に、ジャンプ先の時刻の候補を取得するため、放送番組管理装置１の読み出しインタフェース部１６にアクセスし、全チャンネルについて、選択されたタグに対応した時刻範囲のリストを取得する（ステップＳ７０２）。すなわち、全放送チャンネルが「ｃｈ１」、「ｃｈ２」の２チャンネルである場合、時刻リスト取得部２１５は、ｐｒｅａｄ（”／＠ｃｈ１／#Ｃさん”，ｂｕｆ，ｓｉｚｅ，ｔｓｔ）とｐｒｅａｄ（”／＠ｃｈ２／#Ｃさん”，ｂｕｆ，ｓｉｚｅ，ｔｓｔ）によって２回、読み出しインタフェース部１６にアクセスする。引数ｔｓｔには、メモリｔｓｔの内容が設定される。
【０１０９】
次に、時刻リスト取得部２１５は、操作インタフェース３の選択スイッチ３１３の状態を操作受信部２２から取得し、過去方向に設定されているか否かを判断する。選択スイッチ３１３が過去方向に設定されていると判断した場合（ステップＳ７０３：ＹＥＳ）、時刻リスト取得部２１５は、取得した全チャンネルの過去の時刻範囲が示す先頭時刻の中から、メモリｔｓｔに設定されている時刻に最も近い先頭時刻を選択してメモリｔｓｔに設定し、その先頭時刻を取得したチャンネルをメモリｃｈに設定する（ステップＳ７０４）。一方、選択スイッチ３１３が未来方向に設定されていると判断した場合（ステップＳ７０３：ＮＯ）、時刻リスト取得部２１５は、取得した全チャンネルの未来の時刻範囲が示す先頭時刻の中から、メモリｔｓｔに設定されている時刻に最も近い先頭時刻をメモリｔｓｔに設定し、その先頭時刻を取得したチャンネルをメモリｃｈに設定する（ステップＳ７０５）。ステップＳ７０４またはステップＳ７０５の処理の後、再生処理部２１は、図１８のステップＳ４０２からの処理を実行する。
以上の動作により、閲覧者が選択したタグ名により、放送番組管理装置１のファイル蓄積部１３に保管された全放送チャンネルの放送番組の中から、同一タグ名に対応した直近の放送時刻の放送番組にジャンプすることができる。
【０１１０】
＜ジャンプ先の設定の方法Ｄ＞
方法Ｄは、閲覧者が放送番組再生装置２を使ってこれまでに閲覧した放送番組の中から、選択されたタグに関連した、最も近い過去または未来の放送時刻にジャンプする方法である。
【０１１１】
放送番組再生装置２の視聴履歴記録部２４は、視聴履歴データを記録している。視聴履歴データは、放送番組閲覧システム５がこれまでに再生したことがある放送番組の放送時刻及びチャンネルの情報を含む。すなわち、時刻リスト取得部２１５により再生された放送番組のチャンネル、再生開始時刻、及び再生終了時刻を対応付けたデータのリストが視聴履歴データに記録される。
なお一般には、放送番組再生装置２は複数の閲覧者により共用されるものであるため、視聴履歴データは閲覧者の名前等と関連付けて保管されうる。ただし、閲覧者の管理方法は本実施形態とは関係しないので説明は省略する。
【０１１２】
図２２は、方法Ｄによりジャンプを行う場合のステップＳ４１１におけるジャンプ先放送時刻取得処理の詳細な動作を示す流れ図である。
同図におけるステップＳ８０１からステップＳ８０５までの動作は、方法Ａで説明した図１９におけるステップＳ５０１からステップＳ５０５までの動作と全く同じである。そのため、ここでは説明を省略する。
【０１１３】
方法ＤのステップＳ８０６において、時刻リスト取得部２１５は、視聴履歴記録部２４に保管された視聴履歴データのリストとメモリｃｈが示すチャンネルと基づいて、メモリｔｓｔに設定されている次のジャンプ先候補の時刻が、これまでに再生したことがある放送時刻かどうかを判断する。
時刻リスト取得部２１５は、これまでに再生したことがない放送時刻であると判断した場合（ステップＳ８０６：ＮＯ）、ステップＳ８０２に戻り、次のジャンプ先候補の時刻を取得する。
そして、時刻リスト取得部２１５が、ジャンプ先候補の時刻がこれまでに再生したことがある放送時刻であると判断した場合（ステップＳ８０６：ＮＯ）、再生処理部２１は、図１８のステップＳ４０２からの処理を実行する。
以上の動作により、これまでに閲覧したことがある放送番組の中から、直近の同一タグ名のついた放送時刻にジャンプすることができる。
【０１１４】
＜その他のバリエーション＞
以上、方法Ａ〜Ｄの例を説明したが、本実施形態はこれに限定するものではない。例えば、方法Ｄでは過去に閲覧した放送番組の中から、同一のタグ情報に対応する部分にジャンプしたが、逆に、ジャンプ先をこれまでに見ていない放送番組の放送時刻に限定することもできる。その場合、図２２の処理において、時刻リスト取得部２１５がステップＳ８０６においてＹＥＳと判断した時にステップＳ８０２からの処理を行い、ＮＯと判断したときに図１８のステップＳ４０２からの処理を実行する。
また、方法Ｄの説明では、ジャンプ先を閲覧中の放送番組のチャンネルと同一のチャンネル内で説明したが、方法Ｃと同様に、ジャンプ先の対象を全チャンネルとすることもできる。
また、方法Ｃではジャンプ先の対象を全チャンネルとしたが、閲覧者が対象のチャンネルを設定し、その設定されたチャンネルだけに限定することもできる。
さらに、方法Ｂで現在閲覧中とは異なる他の放送番組をジャンプ先の候補としたが、番組情報を使って特定の番組の放送時間を取得し、その特定の時間帯だけ（例えばシリーズ番組内だけなど）に検索を限定することも可能である。
また、本実施形態では、閲覧者の視聴履歴を放送番組再生装置２内の視聴履歴記録部２４に保持することで説明したが、それに限定されるものではなく、放送番組管理装置１内で視聴履歴を管理してもよい。
また、上記実施形態において、時刻リスト取得部２１５は、放送番組管理装置１から受信した時刻範囲が示す先頭時刻をメモリｔｓｔに設定しているが、時刻範囲における任意の時間をメモリｔｓｔに設定してもよい。
【０１１５】
［本実施形態による放送番組閲覧システム５のまとめ］
以上説明したように、放送番組閲覧システム５を用いることで、時系列に並べられたタグ名をハイパーリンクとして利用し、関連した過去の放送番組を提供することができる。これにより閲覧者は、興味のあるタグに関連した過去の放送番組をザッピングしながら閲覧することが可能となる。
【０１１６】
［本実施形態の効果］
以上説明したように、本実施形態による放送番組管理装置１を用いることで、映像や音声等のファイルの読み出しと、映像や音声の時間的な範囲に関連付けられたタグ情報を、ファイルの読み出しという共通のインタフェースを用いて取得することができるようになる。すなわち、放送番組管理装置１を利用する外部の装置は、タグ情報に関係するデータベースへのアクセスのために、専用のインタフェースを必要とせずに、パーソナルコンピュータ等で使われているオペレーティングシステムが標準的に提供する読み出しインタフェース（例えば、ｐｒｅａｄシステムコール）を使って、タグに関する情報を読み出すことが可能となる。これにより、読み出したタグに関する情報を用いたアプリケーションが容易に作成することができるようになる。
【０１１７】
また、本実施形態による放送番組管理装置１により、時刻情報を利用して、映像、音声などの番組閲覧に必要となるフレームデータ等に同期して、タグ名のリストや、閲覧者により選択したタグ名に対応した放送番組の放送時刻など、タグに関する情報を取得することが可能となる。
【０１１８】
さらに、本実施形態による放送番組再生装置２により、番組の閲覧中に閲覧者が興味をもったタグ名を選択させ、時系列に並べられたタグ名をハイパーリンクとして利用し、選択されたタグ名と同一のタグ名で関連付けられた時間的に近隣の放送番組にジャンプして表示させることができるようになる。これにより、閲覧者は、大量の過去の放送番組をザッピングしながら閲覧することが可能となる。つまり、閲覧者は、興味の対象として選択したタグ名と同じタグ名で関連付けられた放送番組を、次々と移動させながら閲覧することができる。
【０１１９】
［その他］
上述した放送番組管理装置１及び放送番組再生装置２は、内部にコンピュータシステムを有している。そして、放送番組管理装置１のタグＤＢ更新部１４、時刻ＤＢ更新部１５、及び読み出しインタフェース部１６、ならびに、放送番組再生装置２の再生処理部２１、視聴履歴記録部２４の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含むものである。
【０１２０】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶部のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【符号の説明】
【０１２１】
１  放送番組管理装置
２  放送番組再生装置
３  操作インタフェース
５  放送番組閲覧システム
１１  タグデータベース記憶部（タグＤＢ記憶部）
１２  時刻データベース記憶部（時刻ＤＢ記憶部）
１３  ファイル蓄積部（番組データ記憶部）
１４  タグデータベース更新部（タグＤＢ更新部）
１５  時刻データベース更新部（時刻ＤＢ更新部）
１６  読み出しインタフェース部
２１  再生処理部
２２  操作受信部
２３  表示部
２４  視聴履歴記録部
３１  操作入力部
３２  操作通知部
２１１  記憶部
２１２  放送番組データ取得部
２１３  放送時刻更新部
２１４  タグリスト取得部
２１５  時刻リスト取得部
３１１  操作ボタン
３１２  ホイールスイッチ
３１３  選択スイッチ
【図１】
2014178749.tif 000003
【図２】
2014178749.tif 000004
【図３】
2014178749.tif 000005
【図４】
2014178749.tif 000006
【図５】
2014178749.tif 000007
【図６】
2014178749.tif 000008
【図７】
2014178749.tif 000009
【図８】
2014178749.tif 000010
【図９】
2014178749.tif 000011
【図１０】
2014178749.tif 000012
【図１１】
2014178749.tif 000013
【図１２】
2014178749.tif 000014
【図１３】
2014178749.tif 000015
【図１４】
2014178749.tif 000016
【図１５】
2014178749.tif 000017
【図１６】
2014178749.tif 000018
【図１７】
2014178749.tif 000019
【図１８】
2014178749.tif 000020
【図１９】
2014178749.tif 000021
【図２０】
2014178749.tif 000022
【図２１】
2014178749.tif 000023
【図２２】
2014178749.tif 000024