記録装置、記録方法、転送システム
【課題】それぞれの装置に記録されるコンテンツデータの一致/不一致の判別処理の高速化、及び各装置間のデータ転送時の無駄な転送動作・記録動作の防止を図る。
【解決手段】コンテンツデータのハッシュ値を計算しそのハッシュ値をコンテンツデータと対応づけて記録しておく。これによってデータ内容の比較はそれらハッシュ値の照合結果に基づき行うことができデータ内容同士を照合する従来よりも判別処理の高速化を図ることができる。また照合の結果転送先に同一コンテンツデータがないとされた場合にのみそのコンテンツデータの転送を行うことで、無駄な転送動作・記録動作の防止を図る。
【解決手段】コンテンツデータのハッシュ値を計算しそのハッシュ値をコンテンツデータと対応づけて記録しておく。これによってデータ内容の比較はそれらハッシュ値の照合結果に基づき行うことができデータ内容同士を照合する従来よりも判別処理の高速化を図ることができる。また照合の結果転送先に同一コンテンツデータがないとされた場合にのみそのコンテンツデータの転送を行うことで、無駄な転送動作・記録動作の防止を図る。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツデータを記録する記録装置とその方法に関する。また、複数の記録装置を備えてそれらの間でコンテンツデータの転送を行うデータ転送システムに関する。
【背景技術】
【0002】
従来より、例えばハードディスクなどの比較的大容量の記録媒体を用いて地上波デジタル放送などの放送コンテンツを録画する録画機器が広く普及してきている。
このような録画機器は、例えば地上波放送、衛星放送など放送チャンネルの多様化などに伴い、1家庭で複数台が所有されるといったケースも見受けられるようになっている。そして、近年ではDLNA(Digital Living Network Alliance)に代表されるイーサネット経由での電子機器間のデータ通信規格が確立されるなどして、複数の録画機器をネットワーク経由で接続してコンテンツの移動を行うといったことも実現されている。
【0003】
ここで、このように録画機器をネットワークを介して接続することを想定した場合に、一方の録画機器において記録されるコンテンツを、他方の録画機器に転送する指示が行われたとする。
この場合、指示を受け付けた転送元の録画機器では、指示されたコンテンツを転送先の録画機器に転送した後、自らに記録されているコンテンツについてはそれを消去するようにされる。また、転送先の録画機器では、転送されてきたコンテンツを記録するようにされる。
【0004】
この際、上記のようにして転送元の録画機器で転送対象となったコンテンツを消去するようにされているのは、例えばデジタル放送などで行われているコピーワンス(Copy one generation)制限を考慮しているためである。つまり、デジタル放送の放送コンテンツに対しては、このようなコピーワンスのための著作権保護情報が付加されており、放送コンテンツを録画した時点で、そのコンテンツに対してはノーモアコピー(No more copies)の属性情報が付加されるようになっている。そして、このことから、上記のようにして記録コンテンツを他の録画機器に転送する場合には、コンテンツのいわゆるムーブしか許可されず、転送元の録画機器では転送対象となったコンテンツを消去しなければならいものである。
【0005】
なお、関連する従来技術については以下の特許文献を挙げることができる。
【特許文献1】特開2003−250123号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
ところで、上記説明によれば、従来の録画機器では、コンテンツの外部機器への転送指示が為されたとき、単に転送指示されたコンテンツを指示された外部機器に転送し、そのコンテンツを消去するという動作しか行っていないことがわかる。また、転送先の録画機器では、単に転送されてきたコンテンツを記録するという動作のみを行っている。
【0007】
ここで、仮にそれぞれの録画機器において、同じ録画時間で同じ放送チャンネルの放送コンテンツを記録していたとする。すなわち、全く同一内容のコンテンツがそれぞれの録画機器に記録された状態にあったとする。そして、転送指示としては、このようにして一方の録画機器にも記録される同一内容のコンテンツについて行われたとする。
【0008】
このような状況において、上述したような従来の録画機器間の動作が行われた場合は、転送先に同じコンテンツがあるにも関わらず、転送元は同じコンテンツを転送するようにされることになる。また、転送先では、同じ内容のコンテンツが既に記録されているにも関わらず、そのコンテンツについての記録動作を改めて行うようにされることになる。
このようなことから、従来の録画機器の動作によっては、無駄なデータ転送動作、及び無駄なデータ記録動作が行われてしまう可能性があった。
【0009】
また、一方で、このような無駄なデータ記録・データ転送動作の防止を図るにあたっては、転送先において転送指示されたコンテンツと同一内容のコンテンツがあるか否かを判別することが考えられる。
【0010】
ここで、例えばこのようにしてそれぞれの機器にあるコンテンツが同一であるか否かを判別するにあたっては、データ内容自体が一致しているか否かを判別することが望ましい。すなわち、コンテンツの一致/不一致については例えばEPG(Electric Program Guide)データ等に基づいて取得した番組タイトル等の付加情報に基づいて行うこともできるが、そのような付加情報はデータ内容の一致までを必ずしも保証するものとはならない。具体的に、例えば双方の録画機器で同じコンテンツ(放送番組)を録画したとして、一方の機器では60分、他方の機器では58分だけ録画を行った場合、それらに付される番組タイトルの情報は同じとなるが、実際のデータ内容は完全に一致したものとはならないといった状況等が考えられる。
このようなことを考慮すると、それぞれのコンテンツが同一であるか否かの判別は、上記のようにして実際のデータ内容に基づいて行うことが望ましいものとなる。
【0011】
しかしながら、現状において、それぞれのコンテンツ内容が一致しているか否かを判別するにあたっては、実際にそれぞれのコンテンツのデータ内容自体を照合する以外に有効な手法がない。このことから、現状においてデータ内容が一致しているか否かを判別するためには、相当な時間を浪費してしまうという問題が生じることになる。
特に、放送コンテンツ(ビデオ・オーディオデータ)のような比較的データサイズの大きなコンテンツについて、そのデータ内容の照合を行うにはその分多くの時間を要することになるので、特にその改善が要請される。
【課題を解決するための手段】
【0012】
そこで、本発明では以上のような問題点に鑑み、記録装置として以下のように構成することとした。
つまり、コンテンツデータを記録媒体に記録する記録手段と、上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段とを備える。
そして、上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段を備えるようにしたものである。
【0013】
また、本発明ではデータ転送システムとして以下のように構成することとした。
すなわち、本発明のデータ転送システムは、コンテンツデータを記録媒体に記録する記録手段と、上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段と、上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段と、外部装置との間でデータ通信を行うデータ通信手段と、を備える記録装置を複数備えて構成されたデータ転送システムであって、
先ず、第1の記録装置から第2の記録装置への上記コンテンツデータの転送指示が行われた場合に、上記第1の記録装置に記録される上記転送指示されたコンテンツデータと対応づけられたハッシュ値と、上記第2の記録装置に記録されるコンテンツデータと対応づけられたハッシュ値とを照合する照合手段を備える。
また、上記照合手段による照合結果に基づき、上記第2の記録装置側に上記ハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータが上記第1の記録装置から上記第2の記録装置に転送されるように制御する転送制御手段を備えるものである。
【0014】
上記による本発明の記録装置(及び記録方法)によれば、コンテンツデータに基づき計算されたハッシュ値を、そのコンテンツデータと対応づけて記録することができる。このようにしてコンテンツデータに基づき計算されるハッシュ値としては、コンテンツデータのデータ内容と一対一の関係を有する数値が得られる。すなわち、このようなハッシュ値は、コンテンツデータのデータ内容を表す識別子として機能することができる。このことから本発明の記録装置(及び記録方法)によれば、コンテンツデータに対応づけて、そのデータ内容を表す識別子を記録することができる。
そして、このようにして記録装置において記録されるコンテンツデータに、そのデータ内容を表す識別子としてのハッシュ値を対応づけておくことができれば、例えば上記本発明のデータ転送システムのように、一方の記録装置から他方の記録装置に対しコンテンツデータを転送するといったときに、転送元における転送指示されたコンテンツデータと対応づけられたハッシュ値と、転送先側に記録されるコンテンツデータと対応づけられたハッシュ値とを照合することができ、これによって転送指示されたコンテンツデータとデータ内容が一致するコンテンツデータが転送先においても記録されているか否かについて判別することができる。
【0015】
その上で、上記本発明のデータ転送システムでは、上記のようなハッシュ値の照合結果に基づき、転送先にデータ内容が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータを転送するものとしている。すなわち、これによって転送先にデータ内容的に同じコンテンツデータがある場合には、そのコンテンツデータの転送が行われないようにすることができ、また、データ内容的に同じコンテンツデータがある場合の重複記録が行われてしまうことも回避することができる。
【発明の効果】
【0016】
上記のようにして本発明の記録装置及び記録方法によれば、コンテンツデータに基づき計算されたハッシュ値をそのコンテンツデータと対応づけて記録することで、コンテンツデータに対応づけてそのデータ内容を表す識別子を記録することができる。これによれば、複数のコンテンツデータについてそれらのデータ内容が一致しているか否かの判別は、このようなハッシュ値同士を照合することによって行うことができ、例えば従来のように実際にそれぞれのコンテンツのデータ内容自体を照合する必要がなくなる。これにより、各コンテンツデータのデータ内容の一致/不一致の判別に要する処理時間を、大幅に短縮することができる。
【0017】
また、本発明のデータ転送システムによれば、上記のようなハッシュ値による照合結果に基づき、転送先にデータ内容が一致するコンテンツデータがないとされた場合にのみそのコンテンツデータを転送するようにされるので、転送先に転送指示されたコンテンツデータとデータ内容的に同じコンテンツデータがある場合には、そのコンテンツデータについての転送が行われないようにすることができ、また、データ内容が同じコンテンツデータがある場合の重複記録も避けることができる。
このようにして無駄なデータ転送動作、及び無駄な記録動作を省略することができることで、転送時の処理負担の軽減、及び転送完了までの所要時間の短縮化を図ることができる。また、重複記録が防止されることで、記録容量の節約化も図ることができる。
【発明を実施するための最良の形態】
【0018】
以下、発明を実施するための最良の形態(以下実施の形態とする)について説明していく。
図1は、本発明の実施の形態としてのデータ転送システム(第1の実施の形態の転送システム1、第2の実施の形態の転送システム20)の概要について説明するための図である。
図示するようにして実施の形態の転送システム(1,20)は、複数の記録装置2(この場合は2つとされる)を備えて構成される。これら複数の記録装置2は、例えばイーサネット(Ethernet)などとされるネットワーク4を介してそれぞれ接続されている。
【0019】
記録装置2は、例えば地上波デジタル放送の放送信号について受信復調処理等を行うチューナ部3と、このチューナ部3の処理に基づき得られる放送コンテンツを記録する(録画する)HDD(Hard Disc Drive)14とを備えた、チューナ付き録画機器としての構成を有する。
本実施の形態の場合、この記録装置2は、EPG(Electric Program Guide:電子番組ガイド)データを利用した予約録画動作を行うことが可能とされる。つまり、例えばEPGデータに基づき放送番組の一覧を外部のディスプレイ装置など(図示せず)に表示させ、この一覧からユーザに所望の放送番組を指定させる。そして、指定された放送番組の番組情報を上記EPGデータから取得してそれを録画予約リストに追加し、この録画予約リストの内容に基づき放送番組の受信・選局を行ってそれをHDD14に記録するようにされる。
さらに、記録装置2は、ネットワーク4を介したデータ通信を行うことが可能に構成されており、HDD14に録画されたコンテンツをネットワーク4を介して接続された外部の記録装置2に対して転送することができるようにされている。
【0020】
図2は、図1に示される記録装置2の内部構成を示すブロック図である。
なお、図2においては、説明の便宜上、放送信号に含まれるビデオデータについての復調・選局・記録動作についてのみ説明するものとし、オーディオデータについての説明は省略するものとする。
【0021】
先ず、この図2においては、図1に示したチューナ部3が示されている。
このチューナ部3には、図示するようにして外部に設けられたアンテナ15により受信され所定の高周波信号に変換された地上波デジタル放送による放送信号が入力される。
チューナ部3は、このように所定の周波数に変換された受信信号から後述するCPU(Central Processing Unit)10の指示に基づき決定された所定のキャリアを受信し、また受信したキャリアに対して例えばビタビ復調処理等の復調処理や誤り訂正処理等を施してTS(Transport Stream)を得るようにされる。
【0022】
なお、このチューナ部3を始めとして、以下で説明するデマルチプレクサ4、暗号化/復号化器5、アクセスユニット検出器6、ハッシュ値計算器7、ネットワークコントローラ9、HDD14の各部は、図示するようにしてバス8を介してCPU10と接続されており、CPU10はこのバス8を介して各部との間でデータ通信を行うことが可能とされる。
【0023】
ここで、地上波デジタル放送を始めとしたデジタルテレビジョン放送の規格によるTSは、周知のように、例えばMPEG(Moving Picture Experts Group)−2方式などの符号化方式に従って、複数のプログラム(番組)のビデオ信号を圧縮した圧縮データと、各種の付加情報が多重化されている。上記ビデオ信号を圧縮した圧縮データは、ES(Elementary Stream)として多重化される。また、放送側が挿入する付加情報としては、PAT(Program Association Table)、PMT(Program Map Table)などのテーブルを格納するPSI(Program Specific Information:番組特定情報)や、SI(Service Information:番組配列情報)などが挙げられる。
そして、上記情報の多重化は、TSを所定データサイズのトランスポートストリーム・パケット(TSパケット)により形成するようにして、このTSパケットに対して上記ES及び各種付加情報を格納することにより行われる。
【0024】
デマルチプレクサ4は、チューナ部3から出力されるTSからPSI(Program Specific Information:番組特定情報)のパケットを取得し、その選局情報を更新すると共に、TSにおける各チャンネルのコンポーネントPID(Program ID)を得て、CPU10に供給する。CPU10では、取得したPIDを受信信号処理に利用することになる。
【0025】
また、デマルチプレクサ4は、CPU10により設定されたフィルタ条件に従って、チューナ部3から供給されるTSから必要なTSパケットを分離する。これにより、デマルチプレクサ4においては、目的とする1つのプログラムについてのTSパケットとして、所定の符号化方式(例えばMPEG−2方式)により圧縮されたビデオデータのTSパケットを得ることになる。すなわち、これによって実質的な選局動作が行われたことになる。
なお、このような選局動作により得られた圧縮ビデオデータは、所要の放送局により放送されるコンテンツ(放送コンテンツ)となるものであることから、以下コンテンツデータとも呼ぶこととする。
また、放送方式によってはコンテンツにCA(Conditional Access)がかかっており、そのための暗号の復号化を行う必要があるが、ここではその説明については省略する。
【0026】
また、デマルチプレクサ4は、上記TSから必要に応じてEPGデータを抽出する動作も行う。抽出したEPGデータはCPU10に転送され、例えば電子番組ガイド表としてのオンスクリーンディスプレイ画像データの表示処理や、録画予約リストの生成等に用いられることになる。
【0027】
デマルチプレクサ4は、上記のようにしてTSから取得した圧縮ビデオデータを暗号化/復号化器5に対して供給するようにされる。
暗号化/復号化器5は、必要に応じて圧縮ビデオデータについて暗号化処理を施す。チューナ部3→デマルチプレクサ4を介して得られた放送コンテンツの録画時には、このようにして暗号化/復号化器5により必要に応じて暗号化処理の施された圧縮ビデオデータがバス8を介してHDD14に供給され、記録される。
また、HDD14に録画された放送コンテンツの再生時には、暗号化/復号化器5は、バス8を介してHDD14から供給される圧縮ビデオデータについて必要に応じて暗号化復号処理を施すようにされる。
【0028】
また、デマルチプレクサ4は、上記のようにしてTSから取得した圧縮ビデオデータを、図示するようにしてアクセスユニット検出器6、ハッシュ値計算器7に対しても供給するようにされている。
【0029】
アクセスユニット検出器6は、供給される圧縮ビデオデータの各アクセスユニットのタイミングを検出するようにされる。そして、このようにして検出した各アクセスユニットのタイミングをハッシュ値計算器7に指示するようにされる。
また、このアクセスユニット検出器6では、このようなアクセスユニットごとのタイミング検出の過程で各アクセスユニットを識別するための識別情報が得られる。このようなアクセスユニットごとの識別情報はバス8を介してCPU10に供給される。
【0030】
ハッシュ値計算器7は、デマルチプレクサ4から供給される圧縮ビデオデータについて、上記アクセスユニット検出器6から指示されるタイミングで区切られるデータ部分ごとに、そのデータ値に基づくハッシュ値を計算するようにされる。すなわち、これによってハッシュ値計算器7は、次の図3に模式的に示すようにして、圧縮ビデオデータのアクセスユニットごとに、そのハッシュ値を計算するようにされる。
【0031】
ここで、実施の形態で言う上記「アクセスユニット」とは、その圧縮データをデコード(伸張)することで或る意味のあるデータが得られる最小のデータ単位を指す。具体的に、この場合のMPEG−2方式による圧縮ビデオデータについて言えば、GOP(Group Of Picture)の単位となる。
【0032】
図2に戻り、上記ハッシュ値計算器7は、計算したハッシュ値をバス8を介してCPU10に供給するようにされる。
【0033】
CPU10は、起動されたプログラムに基づいて記録装置2の全体の制御、演算処理を行う。例えばユーザに対する入出力動作、HDD14への各種データの記録や管理情報の作成・更新等を行う。
特に、この場合のCPU10は、先に述べたデマルチプレクサ4により抽出されるEPGデータに基づく予約録画動作のための処理を行うようにされる。具体的には、先ず上記EPGデータに基づき、例えば図示されない外部のディスプレイ装置に電子番組ガイド表としての画像データを表示させる。なお、この番組ガイド表は、番組情報の閲覧、番組の選択などのためのGUI(Graphic User Interface)画像として機能する。
そして、このようなGUIとしての電子番組ガイド表上で番組が指定されることに応じ、EPGデータから指定された番組のタイトル、録画時間(録画開始時刻、録画終了時刻)、放送チャンネルの情報を取得し、それらの情報を録画予約リストに追加する。そして、このような録画予約リストに登録された録画時間に指定放送チャンネルの放送コンテンツがHDD14に記録されるように、必要な各部を制御するようにされる。
なお、このようなEPGデータに基づく予約録画動作については既に公知でありここでの詳細な説明は省略する。また、EPGデータに基づく予約録画動作としては、このような電子番組ガイド表からの番組指定に基づき行われるものに限らず、例えば既に行われているように入力されたキーワードを含む番組や指定されたジャンルに属する番組を自動的に録画することも可能とされているものとする。
【0034】
また、このようなEPGデータに基づく予約録画動作以外にも、録画時間と放送チャンネルとの指定に応じた予約録画動作も可能とされる。この場合、ユーザからは後述するユーザインタフェース11を介した操作入力により、録画時間と放送チャンネルの情報が指示される。なお、このような録画時間・放送チャンネルの指定による録画予約時には、同じくユーザインタフェース11を介した操作入力により録画コンテンツのタイトルの情報も入力することができる。或いは、操作入力された録画時間と放送チャンネルとの情報に基づき、EPGデータから該当するタイトルの情報を自動的に取得するように構成することもできる。
【0035】
ここで、上記のようなEPGデータに基づく予約録画動作が行われた場合は、HDD14に対しては、番組単位のコンテンツデータ(この場合は圧縮ビデオデータ)が記録されることになる。
また、EPGデータに基づかず、上述のような録画時間・放送チャンネルの指定に基づき行われた録画動作が行われた場合には、その指定された録画開始時刻から録画終了時刻までの一連のコンテンツデータが記録される。
なお、これら何れの場合としても、録画動作が行われた場合には、HDD14に対しては録画開始から録画終了までの一連のコンテンツデータが記録されることに変わりはない。以下では、このようにして録画開始から録画終了までで記録された一連のコンテンツデータの単位のことを、「プログラム単位」と呼ぶこととする。
【0036】
また、CPU10は、上記のような予約録画動作時には、EPGデータに基づき生成した録画予約リストに登録される録画時間(録画開始時刻・録画終了時刻)の情報と、放送チャンネルの情報とに基づき、上記録画開始時刻に上記放送チャンネルが受信・選局されるようにチューナ部3、デマルチプレクサ4に対する制御を行う。また、録画時間と放送チャンネルの指定に基づく録画動作時においても、同様に指定された録画開始時刻に指定された放送チャンネルが選局されるようにチューナ部3、デマルチプレクサ4に対する制御を行う。
ここで先の説明によれば、このような選局動作によりデマルチプレクサ4にて得られたコンテンツデータ(圧縮ビデオデータ)は、暗号化/復号化器5に供給され必要に応じて暗号化処理が施されるが、CPU10はこのように暗号化/復号化器5を経たコンテンツデータがHDD14に記録されるように制御する。
図2では、このようにして録画動作によりHDD14に記録されたコンテンツデータを、コンテンツ14aとして示している。
【0037】
また、特に本実施の形態の場合、CPU10は、このような放送コンテンツの録画時において、暗号化/復号化器5より出力されHDD14に記録された圧縮ビデオデータの各アクセスユニットごとに、ハッシュ値計算器7により計算されたハッシュ値が対応づけられるように制御を行うようにされる。
このようにして、各アクセスユニットに対しそのハッシュ値が対応づけられるようにするために、CPU10は、HDD14におけるコンテンツ管理情報14bの生成及びその更新を行うようにされている。
【0038】
図4は、HDD14に格納されるコンテンツ管理情報14bのデータ構造を示すデータ構造図である。
図4において、このコンテンツ管理情報14bとしては、図示する「アクセスユニット」として、HDD14に記録される全てのアクセスユニットの情報が格納される。この「アクセスユニット」の情報としては、例えばHDD14上の各アクセスユニットの記録アドレスの情報が格納される。
そして、これら「アクセスユニット」に対しては、それぞれ同じプログラム単位のコンテンツデータを構成するものごとに、図示するようにして「タイトル」、「録画時間」、「ch」、「その他属性情報」、「有効/無効フラグ」の情報が対応づけられている。
【0039】
上記「タイトル」の情報は、例えば番組のタイトル名の情報であり、そのプログラム単位のコンテンツデータがEPGデータに基づく予約録画動作により記録されたものである場合には、電子番組ガイド表において指定された番組と対応づけられた番組タイトル名の情報が格納されることになる。或いは、そのプログラム単位のコンテンツデータが録画時間・放送チャンネルの指定に基づき行われた録画動作により記録された場合には、それら録画時間・放送チャンネルの情報と共に入力されたタイトルの情報、または録画時間・放送チャンネルの情報に基づきEPGデータから自動的に取得した番組のタイトル名の情報が格納されるものとなる。
【0040】
また、上記「録画時間」の情報は、そのプログラム単位のコンテンツデータについての録画開始時刻、録画終了時刻を示すものであり、また上記「ch」はそのプログラム単位のコンテンツデータを放送した放送チャンネルを示す情報となる。これら「録画時間」、「ch」の情報についても、そのプログラム単位のコンテンツデータがEPGデータに基づく予約録画動作により記録されたものである場合には、電子番組ガイド表において指定された番組と対応づけられた録画時間、放送チャンネルの情報が格納されることになる。また、そのプログラム単位のコンテンツデータが録画時間・放送チャンネルの指定に基づき行われた録画動作により記録された場合には、それら指定された録画時間・放送チャンネルの情報が格納されるものとなる。
【0041】
また、上記「その他属性情報」は、特にそのプログラム単位のコンテンツデータがEPGデータに基づく予約録画動作により記録されたものである場合に付されるものであり、例えば番組出演者名、番組内容の解説情報など、上記タイトル、録画時間(放送時間)、ch以外でEPGデータに含まれる情報を包括的に示したものである。
なお、以下では、このような「その他属性情報」を含め、プログラム単位のコンテンツデータごとに付される上記タイトル、録画時間、chの情報を総称して、「付加情報」と呼ぶこととする。
【0042】
また、さらにこの場合、各プログラム単位のコンテンツデータの区切りごとには、それぞれ図示する有効/無効フラグの情報も対応づけられる。この有効/無効フラグの情報は、デジタル放送において規定されるコピーワンスの制限に対応した動作を行うために付される情報であるが、これについては後述する。
【0043】
そして、コンテンツ管理情報14bにおいて、それぞれの「アクセスユニット」に対しては、図示するようにしてそのハッシュ値の情報が対応づけられたものとなっている。
このハッシュ値の情報は、録画動作時において、ハッシュ値計算器7からバス8を介して供給されるハッシュ値の情報が格納されたものである。
【0044】
ここで、先に述べたように録画動作時には、CPU10に対しては、ハッシュ値計算器7によりアクセスユニットごとに計算されたハッシュ値の情報が供給されるようになっている。そして、先の説明によると、録画動作時には、これと並行してCPU10にはアクセスユニット検出器6にて取得された各アクセスユニットごとの識別情報が順次供給されるようになっている。このことでCPU10は、HDD14に記録される各アクセスユニットと、そのアクセスユニットに基づきハッシュ値計算器7にて計算されたハッシュ値との対応関係を把握することができるようになっている。
【0045】
CPU10は、例えば録画動作の終了に応じて行われるコンテンツ管理情報14bの更新処理時において、このようにして把握された対応関係により「アクセスユニット」の情報とハッシュ値の情報とが対応づけられて格納されるように、コンテンツ管理情報14bの更新処理を実行するようにされている。
これによってHDD14に記録された各アクセスユニットに対し、そのハッシュ値を対応づけることができる。
【0046】
説明を図2に戻す。
上記のようにしてCPU10は、コンテンツ管理情報14bによってプログラム単位のコンテンツデータについてはその付加情報と有効/無効フラグとを対応づけ、さらにプログラム単位のコンテンツデータを構成する各アクセスユニットに対してはそのハッシュ値を対応づけるようにしている。
【0047】
そして、本実施の形態の場合、CPU10は、このようなコンテンツ管理情報14bによるコンテンツデータの管理を行うようにされると共に、図示するHDD14内の在数値管理情報14cにより、各アクセスユニットごとにそれらの記録個数を管理するようにもされている。
【0048】
図5は、上記在数値管理情報14cのデータ構造を示している。
この在数値管理情報14cとしては、図示するようにしてHDD14に記録された各アクセスユニット(例えばこの場合のその記録アドレス)に対し、そのハッシュ値と、さらにその在数値の情報とが対応づけられたものとなっている。
なお、このような在数値の情報としても、先の有効/無効フラグの情報と共にコピーワンスの制限に対応した動作時に用いられる情報となる。これら有効/無効フラグ及び在数値の情報を用いて行われることになるコピーワンス制限に対応した動作については後述する。
【0049】
再び説明を図2に戻す。
CPU10に対しては、図示するROM(Read Only Memory)12、RAM(Random Access Memory)13が備えられている。
上記ROM12には、CPU10の動作プログラム、プログラムローダー等が記憶される。特に本実施の形態の場合、このROM12に対しては、後述する第1の実施の形態または第2の実施の形態としての動作を実現するための処理動作(図12または図17)をCPU10に実行させるためのプログラム12aも格納される。
【0050】
また、上記RAM13には、CPU10がプログラムを実行する上でのデータ領域、タスク領域が一時的に確保される。
【0051】
また、CPU10に対しては、ユーザが当該記録装置2に対して各種の指示や情報入力を行うためのユーザインタフェース11も設けられる。
このユーザインタフェース11は、記録装置2に対して設けられた各種の操作子と、図示されないリモートコマンダからの操作信号を受光するための受光部とを包括的に示している。
ユーザインタフェース11は、上記各操作子ごとの操作情報(操作信号)、又は上記リモートコマンダ上の各種操作子ごとの操作情報をCPU10に供給するようにされる。CPU10はユーザインタフェース11からの操作情報に応じた処理動作を実行し、これによってユーザの指示に応じた動作や情報入力が実現されるようになっている。
【0052】
また、記録装置2には、図示するネットワークコントローラ9が設けられる。このネットワークコントローラ9は、図示するネットワーク端子Tntを介して図1に示したネットワーク4と接続されており、当該ネットワーク4を介して接続された外部装置との間でデータ通信を行う。
ネットワークコントローラ9は、CPU10の制御に基づいて送信データのエンコード処理、受信データのデコード処理を行う。エンコードされた上記送信データについては、ネットワーク4を介して所定の外部装置(特にこの場合は外部の記録装置2)に対して送信する。またネットワーク4を介して外部の記録装置2などの外部装置から送信されてきた信号を受信し、これをCPU10に受け渡すようにされる。
【0053】
ここで、これまでの説明によると、本実施の形態の記録装置2では、コンテンツデータを記録するにあたってはそのハッシュ値を計算し、このハッシュ値をそのコンテンツデータと対応づけて記録するようにしている。
このようにしてコンテンツデータに基づき計算されたハッシュ値は、コンテンツデータのデータ内容と一対一の関係を有する数値が得られる。すなわち、このようなハッシュ値は、コンテンツデータのデータ内容を表す識別子として利用することができる。このことから上記のようにコンテンツデータに対してそのハッシュ値を対応づけて記録する本実施の形態によれば、コンテンツデータに対して、そのデータ内容を表す識別子を対応づけて記録することができる。
【0054】
このようにしてコンテンツデータに対しそのデータ内容を表す識別子として機能するハッシュ値を対応づけて記録しておくことができれば、例えば複数のコンテンツデータについてそれらの内容が一致しているか否かについての判別は、それらに対応づけられたハッシュ値同士を照合した結果に基づき行うことができる。
これによれば、例えば従来のようにコンテンツデータのデータ内容同士を照合するといった手間を省くことができ、各コンテンツデータのデータ内容の一致/不一致の判別処理に要する時間を大幅に短縮することができる。
【0055】
<第1の実施の形態>
[第1の実施の形態としての動作]
続いては、上記により説明した実施の形態としての記録装置2を用いて構成することのできる、第1の実施の形態としての転送システム1の動作について、次の図6〜図11を参照して説明する。
なお、これら図6〜図11においては、先の図1に示したネットワーク4は省略して示しているが、実際には図中2つの記録装置2、2はネットワーク4を介して接続されて互いにデータ通信が可能な状態にあるとする。
また、これらの図においては、図中左側に示す記録装置2が、転送すべきコンテンツデータが記録されている転送元の記録装置2であるものとし、また図中右側に示す記録装置2が、コンテンツデータの転送先となるべき転送先の記録装置2であるとする。
【0056】
図6は、第1の実施の形態の転送システム1の動作について、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを模式的に示した図である。
先ず、この図6においては、説明の簡単のために、転送元の記録装置2に対しては、プログラム単位のコンテンツデータが1つのみ記録されている場合を示している。この場合のプログラム単位のコンテンツデータとしては、図示するようにして4つのアクセスユニットACUより成るものとして例示している。そして、これら各アクセスユニットACUに対しては、それぞれそのハッシュ値HS(H1〜H4)が対応づけられると共に、在数値EXAも対応づけられている。ここでは、在数値EXAは「在」の文字の後に示される数値によりその個数を表している。具体的にこの場合の各アクセスユニットACUに対しては、在数値EXAとして全て「1」を表す情報(「在1」)が対応づけられている。
その上で、これら4つのアクセスユニットACUの全体に対しては、コンテンツ管理情報14bにより、図中の破線で囲うようにしてタイトルI1、録画時間I2、chI3、有効/無効フラグI5の情報が対応づけられて1つのプログラム単位のコンテンツデータとして管理されるものとなっている。
この場合、タイトルI1は「7時のニュース」であり、録画時間は「5/29 7:00〜7:50」、chI3は「ch4」、有効/無効フラグI4は「有効」を示す値が対応づけられているとする。
【0057】
なお、ここでは図示の都合上、コンテンツ管理情報14bによりプログラム単位のコンテンツデータごとに対応づけられる付加情報として、上記のようにしてタイトルI1、録画時間I2、chI3のみを示しているが、実際には先の図4においても示したように「その他付加情報」も対応づけられたものとなる。
このことは図6を始めとして以下で説明する図7〜図11、及び第2の実施の形態における図13〜図16についても同様である。
【0058】
上記のようにして転送元の記録装置2にコンテンツデータが記録されていることを前提として、以下、実際の転送動作について説明していく。
先ず、転送動作が行われるにあたっては、図6中<1>と示すようにして、転送元の記録装置2において、HDD14に記録されるコンテンツの外部の記録装置2(転送先の記録装置2)への転送指示が行われることになる。
この場合、HDD14へのコンテンツデータの記録はプログラム単位により行われるので、このような外部の記録装置2へのコンテンツの転送指示としても、プログラム単位のコンテンツデータを指定して行われるものとなる。
具体的に、このような転送すべきコンテンツデータの指定としては、例えば外部のディスプレイ装置にHDD14に記録されるプログラム単位のコンテンツデータの一覧をGUIとして表示(例えばそれぞれに対応づけられるタイトル、録画時間、chを表示)させ、このGUI上にてその受け付けを行うようにされる。
【0059】
このようなコンテンツデータの外部の記録装置2への転送指示が行われたことに応じ、転送元の記録装置2においては、図中<2>と示すようにして指示されたコンテンツの付加情報と全アクセスユニットのハッシュ値を転送先の記録装置2に対して送信するようにされる。
つまり、先に説明したコンテンツ管理情報14bに基づき、転送指示されたコンテンツデータ(プログラム単位)と対応づけられている付加情報(「タイトル」「録画時間」「ch」「その他付加情報」)と、同コンテンツデータを構成する全てのアクセスユニットのハッシュ値とを取得し、図2に示したネットワークコントローラ9によりそれらをネットワーク4を介して転送先の記録装置2に対して送信する。
【0060】
転送先の記録装置2では、このような転送元の記録装置2からの付加情報とハッシュ値とが受信されることに応じ、図中<3>と示すようにして、一致するコンテンツの有無を判別するようにされる。
すなわち、先ずは転送元の記録装置2から受信された上記付加情報と、自らが保持するコンテンツ管理情報14bにより管理される全ての付加情報とを照合することで、プログラム単位で一致するコンテンツデータがHDD14内に記録されているか否かを判別するようにされる。
【0061】
次の図7〜図11では、この図6<3>の判別により、転送先の記録装置2に転送指示されたコンテンツデータと同じコンテンツデータがないとされた場合と、一致するコンテンツデータがあるとされた場合(全く同じコンテンツのとき)と、一致するコンテンツデータがあるとされた場合(完全一致ではない場合)との、それぞれの場合に対応して行われる動作について模式的に示している。
【0062】
図7は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示している。
具体的に、この場合における転送先の記録装置2(図中右側)に対しては、図7(a)に示すようにしてタイトルI1が「月9ドラマ」、録画時間I2が「5/29 21:00〜22:00」、chI3が「ch8」の付加情報により特定されるプログラム単位のコンテンツデータが1つのみ記録されている場合を例示している。この「月9ドラマ」としてのプログラム単位のコンテンツデータを構成する各アクセスユニットACUは4つであるが、それぞれのハッシュ値HSとしては、図示するようにして「H8〜H11」と、転送元の記録装置2に記録される「7時のニュース」によるプログラムを構成するアクセスユニットACUのハッシュ値HS(H1〜H4)とは異なるものとなっている。
なお、この場合、各アクセスユニットACUに対応づけられる各在数値EXAの値は全て「1」であり、当該「月9ドラマ」としてのコンテンツデータは1つのみが記録されていることが示されている。また、このようにしてコンテンツデータが記録されているもとして管理されていることに応じ、有効/無効フラグI4の値としては「有効」を示す値が対応づけられている。
【0063】
このようにして、転送先の記録装置2において、転送元で転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがないとされた場合、転送先の記録装置2では、先ずは図7(a)中の<4>と示すようにして、転送指示コンテンツの全アクセスユニットの送信要求を転送元の記録装置2に対して行うようにされる。
【0064】
この送信要求を受け、転送元の記録装置2では、図7(a)中<5>と示すようにして転送指示コンテンツの全アクセスユニットを転送先の記録装置2に対して送信するようにされる。つまり、HDD14に記録されるアクセスユニットACUのうち、要求された全てのアクセスユニットを転送先の記録装置2に対して送信するようにされる。
【0065】
このようにして先の送信要求に応じて転送元から送信されたアクセスユニットが受信されることに応じ、転送先の記録装置2では、図7(a)中<6>と示すようにして、受信したアクセスユニットとそのハッシュ値・付加情報を対応づけて記録するようにされる。つまり、先ずは受信したアクセスユニットをHDD14に対して記録する。そして、これら記録したアクセスユニットに対し、先の図6<2>の動作により転送元の記録装置2から受信したハッシュ値がそれぞれ対応づけられ、且つ記録されたアクセスユニット全体に対しては同じく先の図6<2>の動作により転送元の記録装置2から受信した付加情報が対応づけられるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
【0066】
この<6>の動作が行われることにより、転送先の記録装置2におけるコンテンツデータの管理状態は、図7(b)に示すものとなる。
つまり、図示するようにしてこれまで「月9ドラマ」のタイトルによるプログラムのみが記録されていた状態から、転送元にあった「7時のニュース」のタイトルを有するプログラムが新たに追加記録された状態となる。換言すれば、転送元にあった「7時のニュース」のタイトルを有するプログラムがそのまま転送先に移動してきた状態となる。
なお、このようにして転送先にコンテンツデータが転送されてきたときには、そのコンテンツデータが存在しているものとして扱われるべきであるので、図示するようにして各在数値EXAとしては「1」の値が対応づけられるようにする。また、有効/無効フラグI4としても「有効」を示す値が対応づけられるようにする。
【0067】
一方、転送元の記録装置2では、先の図7(a)<5>により転送指示コンテンツの全アクセスユニットを送信すると、図7(b)の<7>と示すようにして、送信した全てのアクセスユニットの在数値を「−1」する(デクリメントする)ようにされる。
その上で、在数値がすべて「0」であるなら、有効/無効フラグを「無効」に更新するようにされる。
【0068】
ここで、実施の形態の記録装置2としては、地上波デジタル放送についての録画を行うように構成されているが、先にも述べたようにデジタル放送においてはコピーワンスの制限が課せられている。コピーワンスの制限がある場合には、一度HDD14に放送コンテンツが記録されると、そのコンテンツはいわゆるムーブしか許可されない状態となる。このことから、転送元の記録装置2では、転送対象となったコンテンツが消去されたものとして扱われるようにしなければならない。
【0069】
このことを考慮し、本実施の形態では、上記のようにして転送先の記録装置2に送信したコンテンツデータについては、転送元でその在数値EXAをデクリメントするようにされ、これに応じ各アクセスユニットの在数値がすべて「0」となれば、有効/無効フラグI4を「無効」に更新するようにしている。
このようにしてプログラム単位のコンテンツデータを構成する各アクセスユニットの在数値を管理し、それが「0」となった場合に有効/無効フラグを「無効」とすることで、転送先に指定コンテンツを転送(この場合はムーブ)し、転送元にそのコンテンツが無くなったとされた場合に対応して、当該コンテンツが消去されたものとして扱うことができるものとなる。
【0070】
なお、確認のために述べておくと、実施の形態の転送システムにおいては、記録装置2には同じ内容のプログラム単位のコンテンツデータが複数記録される場合も想定できる。例えば、各記録装置2にて同じ放送コンテンツについての録画を行って、一方の記録装置2から他方の記録装置2にそのコンテンツデータを転送した場合などがこれに該当する。
このように同じプログラムが一方の記録装置2に複数記録されていた場合に、そのうちの一方を他方の記録装置2に転送した場合、転送元の記録装置2では、上記と同様にそのプログラムを構成するアクセスユニットの在数値をデクリメントするようにされる。このようにして転送指示されたコンテンツデータについてはそれを構成する全てのアクセスユニットの在数値をデクリメントするようにされていることで、コピーワンス制限に対応して、HDD14に記録されるアクセスユニットの個数を適正に管理することができる。
【0071】
続いて、図8は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示している。
すなわち、図8(a)において示すように、転送先の記録装置2においても、転送元に記録されるものと全く同内容のプログラム単位のコンテンツデータが記録されている場合である。
【0072】
このようにして全く同じコンテンツデータが記録されていた場合、転送先の記録装置2では、図8(a)の<8>と示すようにして全一致通知を転送元の記録装置2に対して行うようにされる。
【0073】
そして、この全一致通知を受けた転送元の記録装置2では、<9>と示すようにして、転送指示されたコンテンツの全アクセスユニットの在数値をデクリメント(「−1」)するようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされる。
このような動作に応じた転送元の記録装置2の状態は、次の図8(b)の左側に示すものとなる。
【0074】
また、上記全一致通知を行った転送先の記録装置2では、図8(a)の<10>と示すようにして、該当コンテンツの全アクセスユニットの在数値を「+1」(インクリメント)するようにされる。つまり、先の図6<3>の判別により転送指示コンテンツと一致するとされたプログラム単位のコンテンツデータを構成する全てのアクセスユニットの在数値EXAをインクリメントするものである。
【0075】
そして、この場合、転送先の記録装置2において記録されていた、上記転送指示されたコンテンツデータと一致するとされたコンテンツデータの有効/無効フラグは、図示するようにして「有効」となっている。このことに応じ、転送先の記録装置2では、転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新するようにされる。
すなわち、次の図8(b)に示されるようにして、転送指示コンテンツと一致するとされたプログラム単位のコンテンツデータ(ハッシュ値HS=H1、H2、H3、H4によるアクセスユニット)に対し、同じ内容の付加情報が二重に対応づけられて、あたかも同一のプログラム単位のコンテンツデータが2つ存在しているように管理されるように、コンテンツ管理情報14bの内容を更新するようにされる。
このようなコンテンツ管理情報14bの更新処理が行われることで、例えばHDD14に記録されるプログラム単位のコンテンツデータの一覧をユーザに提示するといったときに、同一のコンテンツが2つ存在しているものとして提示することができるようになる。
【0076】
なお、この図8では、転送先において転送元で転送指示されたコンテンツデータと一致するコンテンツデータが「有効」であるものとして記録されている場合を例示したが、転送先において転送指示されたコンテンツデータと一致するコンテンツデータが「無効」とされている場合も想定され得る。例えば、先に例示したように各記録装置2において同じ放送コンテンツについて録画を行った後に、一方の記録装置2が他方の記録装置2に対してそのコンテンツデータを転送したことを想定した場合の、転送元の記録装置2の状態がこれに該当する。
【0077】
このようにして、転送先の記録装置2において転送指示されたコンテンツデータと一致するコンテンツデータが「無効」とされていた場合、転送先の記録装置2では、先の<8>による全一致通知を行った後、次の図9(a)の<10>と示すように全アクセスユニットの在数値をインクリメントした後、有効/無効フラグを「有効」に更新する動作のみを行うようにされる。
つまり、これによって在数が「0」個で「無効」であるとして管理されていた該当コンテンツが、「1」個存在する「有効」なコンテンツデータとして管理されるように更新されたことになる。
【0078】
また、次の図10は、一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示している。
具体的にこの場合、転送先の記録装置2(図中右側)に記録されるコンテンツデータとしては、図10(a)に示すようにしてタイトルI1が「7時のニュース」、chI3が「ch4」であり、タイトルI1とchI3とが転送元に記録されるコンテンツデータと一致したものとなっているが、録画時間I2が「5/29 7:00〜7:30」となっており、転送元に記録されるコンテンツデータの録画時間I2「5/29 7:00〜7:50」と比較して20分短いものとなっている。
また、これに伴い、転送先の記録装置2に記録されるアクセスユニットとしては、転送元に記録されるハッシュ値HS=H4によるアクセスユニットが存在しないものとなっている。
例えばこのような各記録装置2におけるコンテンツの記録状態は、転送元の記録装置2では電子番組ガイド表から「7時のニュース」の番組を指定した録画が行われ、転送先の記録装置2では録画時間「7:00〜7:30」と「ch4」とを指定した録画が行われた場合などが想定される。
【0079】
なお、ここでは20分の時間長に対応したアクセスユニットの個数が1つであるかのように説明しているが、これは実際における1アクセスユニットの時間長を示しているものではない。
【0080】
このようにして、プログラム単位では一致するコンテンツデータがあるが、そのデータ内容は完全一致しないとされた場合、転送先の記録装置2では、図10(a)の<11>と示すようにして、先ずは一致しないアクセスユニットの送信要求を転送元の記録装置2に対して行うようにされる。
【0081】
この送信要求を受けた転送元の記録装置2では、<12>と示すように、要求されたアクセスユニットを転送先の記録装置2に対して送信するようにされる。
【0082】
転送先の記録装置2では、<13>と示すように、先ずは転送元から受信したアクセスユニットを記録するようにされる。そして、次の<14>と示すように、一致するアクセスユニットの在数値をインクリメント(「+1」)するようにされる。すなわち、この場合はハッシュ値HS=H1、H2、H3によるアクセスユニットACUが転送元に記録されるものと一致するので、これらのアクセスユニットACUの在数値EXAをインクリメントするようにされる。
【0083】
その上で、<15>と示されるように、転送指示されたコンテンツが新たに記録されたものとして管理されるように、管理情報を更新するようにされる。つまり、この場合は、次の図10(b)に一点鎖線で囲うように、転送先において元々記録されていたハッシュ値HS=H1、H2、H3によるアクセスユニットに加えて、さらに転送元から転送され記録されたハッシュ値HS=H4によるアクセスユニットを加えたコンテンツデータに対し、転送元から転送された転送指示されたコンテンツデータの付加情報(図6<2>参照)が対応づけられるようにコンテンツ管理情報14bの内容を更新するようにされる。
これによって転送元で転送指示されたコンテンツデータが、転送先に新たに記録されたものとして管理されるようにすることができる。
【0084】
なお、転送元の記録装置2側では、先の<12>により要求されたアクセスユニットを転送先に送信すると、図10(b)の<16>と示すように転送指示コンテンツの全てのアクセスユニットの在数値をデクリメントするようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされる。
【0085】
ここで、この図10でも、転送先においては転送元で転送指示されたコンテンツデータと一致するコンテンツデータが「有効」であるものとして記録されている場合を例示したが、転送先のコンテンツデータが転送元と完全一致していない場合としても、転送先の該当するコンテンツデータが「無効」とされていた場合も考えられ得る。
【0086】
図11では、このような完全一致ではない場合で転送先の該当するコンテンツデータが「無効」とされていた場合に対応した動作を示しているが、この図11と先の図10とを比較してわかるように、このように転送先の該当するコンテンツデータが「無効」とされていた場合としても、転送先の記録装置2では、「有効」とされていた場合と同様の動作を行うようにされている。
すなわち、この場合も転送先の記録装置2では、図11(a)中<13>と示すように転送元から転送要求したアクセスユニットを受信・記録すると、一致するアクセスユニットの在数値をインクリメントする(<14>)と共に、転送指示されたコンテンツが新たに記録されたものとして管理されるように管理情報を更新する(<15>)ようにされている。
【0087】
このような動作が行われることにより、転送先の記録装置2における状態は図11(b)に示すものとなる。
すなわち、この場合もハッシュ値HS=H1、H2、H3によるアクセスユニットACUと転送元から受信・記録したハッシュ値HS=H4によるアクセスユニットACUに対し、転送指示コンテンツの付加情報が対応づけられて新たなコンテンツデータが記録されたものとして管理されるようになる。
そして、このような動作のみとされることで、一方の転送先に元々記録されていたコンテンツデータ(録画時間「7:00〜7:30」)としては、図示するように付加情報が対応づけられた状態は維持されるが、有効/無効フラグI4が「無効」のままの状態となる。このことにより、この場合において2つのコンテンツで共通する部分となるハッシュ値HS=H1、H2、H3のアクセスユニットは、実質的には新たに生成(転送)されたコンテンツ側のみに属するものとして管理されるものとなる。
【0088】
これまでの説明から理解されるように、第1の実施の形態の転送システム1では、一方の記録装置2に記録されるコンテンツデータを他方の記録装置2に転送する際に、転送指示されたコンテンツデータと対応づけられたハッシュ値と、転送先に記録されるコンテンツデータに対応づけられているハッシュ値とを照合し、その照合結果に基づき転送先の記録装置2に転送指示されたコンテンツデータとデータ内容の一致するコンテンツデータがあるか否かを判別するようにしている。その上で、転送先の記録装置2にデータ内容が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータを転送先に対して転送するものとしている。
これにより、データ内容的に同じコンテンツデータがある場合には、そのコンテンツデータの転送が行われないようにすることができ、また、同じコンテンツデータがある場合の重複記録も避けることができる。すなわちこの結果、無駄なデータ転送動作、及び無駄な記録動作を省略することができる。
このように無駄なデータ転送動作、及び無駄な記録動作を省略することができることで、転送時の処理負担の軽減、及び転送完了までの所要時間の短縮化を図ることができる。また、重複記録が防止されることで、記録容量の節約化も図られる。
【0089】
また、本実施の形態の転送システム1では、コンテンツデータをプログラム単位により管理するようにした上で、さらに各プログラム単位のコンテンツデータについては、例えばGOPの単位なるアクセスユニットごとに分けて管理するものとしている。その上で、それらアクセスユニットごとにそのハッシュ値を対応づけるものとしている。
このようにして、プログラム単位のコンテンツデータをアクセスユニットごとに分け、各アクセスユニットにそのハッシュ値を対応づけるものとしておけば、例えば先の図10、図11で例示したようにしてプログラム単位のコンテンツデータとしては一致するが、一方のコンテンツが他方のコンテンツに対し録画時間が短いとされるような場合にも、適正に無駄なデータ転送動作・記録動作の防止を図ることができる。
【0090】
ここで、例えば本実施の形態の如くアクセスユニットごとに分けず、プログラム単位のコンテンツデータ全体で1つのハッシュ値を対応づけておくとした場合を想定しみると、先の図10の例では、転送先のコンテンツデータは転送指示されたコンテンツデータと一致しないものとして判別されることになる。つまり、実際にはほぼ同じデータ部分から成るコンテンツデータについて、それらがデータ内容的に一致していないと判別されてしまう。
このようにそれぞれのコンテンツデータが一致していないとされた場合、先の図7の動作を参照してわかるように、転送元の記録装置2に記録されるコンテンツデータが転送先の記録装置2に対して送信され、新たに記録されてしまうこととなる。すなわち、実際にはほぼ同じデータ部分から成るコンテンツデータであるにも関わらず、別内容のコンテンツデータとしてデータ転送及び記録動作が行われてしまうことになる(具体的に図10の例で言えばHS=H1、H2、H3のアクセスユニットが無駄な転送・記録部分となる)。
このようなことを考慮すると、実施の形態の如くプログラム単位のコンテンツデータをアクセスユニットごとに分け、各アクセスユニットにそのハッシュ値を対応づけるものとすることによっては、無駄なデータ転送動作・記録動作の防止をより確実に図ることができることになる。
【0091】
また、実施の形態では、一方の記録装置2から他方の記録装置2へのコンテンツデータの転送指示が行われたことに応じ、先ずはプログラム単位で付加される付加情報に基づいて、プログラム単位で一致するコンテンツデータが転送先の記録装置2側に存在するか否かを判別するものとしている。
これにより、例えば始めからアクセスユニット単位でハッシュ値の照合を行って転送指示コンテンツとプログラム単位で一致するコンテンツがあるか否かについて判別を行うとした場合と比較すれば、転送先に転送指示コンテンツとプログラム単位で一致するコンテンツデータがあるか否かの判別処理をより高速化することができる。
【0092】
また、本実施の形態の転送システム1では、転送元となった記録装置2において、転送先に転送したコンテンツデータを消去してしまうのでなく、有効/無効フラグにより「無効」とすることで、あくまで消去されたものとして扱われるようにしている。
このことで、再度そのコンテンツデータが外部の記録装置2から転送されるといった場合には、そのコンテンツデータと対応づけられる在数値のインクリメントと有効/無効フラグの「有効」への更新を行うのみで、実質的にコンテンツデータが転送・記録されたものとすることができ、実際のコンテンツデータの転送動作及び記録動作を省略することができる。
【0093】
[処理動作]
次の図12のフローチャートは、上記により説明した第1の実施の形態としての動作を実現するために、記録装置2において実行されるべき処理動作について示している。
この図12に示す処理動作は、図2に示したCPU10がROM12に格納されるプログラム12aに基づいて実行するものである。
【0094】
なお、この図に示す処理動作が行われるにあたっては、先の図1にて示したようにして既に各記録装置2がネットワーク4を介してデータ通信可能に接続されている状態にあるものとする。この場合も、転送元となるべき記録装置2は図中左側に示し、転送先となるべき記録装置2は図中右側に示している。
また、特に転送元となるべき記録装置2では、例えば外部の記録装置2に対して転送すべきコンテンツデータの指定を受け付けるためのGUI画面を、外部のディスプレイ装置などに表示させている状態にあるとする。すなわち、逆を言えば、このようにして転送コンテンツの指定受け付け状態にある記録装置2の方が、転送元となるべき記録装置2となるものである。
【0095】
図12において、先ず、上記のようにして転送コンテンツの指定受け付けのための画面表示状態にある転送元の記録装置2では、ステップS101において、外部記録装置へのコンテンツ転送指示が行われるのを待機するようにされる。つまり、例えば上記のようにして外部のディスプレイ装置などに表示させたGUI上において、外部の記録装置2(転送先の記録装置2)に転送すべきコンテンツデータが指定される操作が行われるのを待機するようにされる。
【0096】
そして、例えば上記GUI上にてコンテンツデータを指定する操作が行われたとして、外部の記録装置2への転送指示が行われたとされた場合は、ステップS102において、転送指示コンテンツの付加情報と全アクセスユニットのハッシュ値を送信するようにされる。
つまり、先ずはHDD14に格納されるコンテンツ管理情報14bに基づき、転送指示されたコンテンツデータと対応づけられている付加情報とそのコンテンツデータを構成する全てのアクセスユニットのハッシュ値とを取得する。そして、それらがネットワーク4を介して転送先の記録装置2に対して送信されるように、ネットワークコントローラ9を制御する。
【0097】
このステップS102の処理を実行すると、後述するステップS103に処理を進めるようにされる。
【0098】
一方で、転送先の記録装置2では、このような転送元の記録装置2からの付加情報とハッシュ値とが受信されるのを、図中ステップS201にて待機するようにされる。
そして、これら付加情報とハッシュ値とがネットワークコントローラ9により受信された場合は、ステップS202において、一致するコンテンツの検索を行う。すなわち、受信された付加情報と、当該転送先の記録装置2側に記録されるコンテンツ管理情報14bにより管理される全てのコンテンツデータの付加情報とを照合した結果に基づき、先ずは転送指示されたコンテンツデータとプログラム単位で一致しているコンテンツデータを検索するものである。
【0099】
ここで、このステップS202の検索処理において、それぞれのコンテンツデータがプログラム単位で一致しているか否かの判別は、上記付加情報のうちの「タイトル」「録画時間」「ch」のみを用いて行うものとされる。
具体的に、この場合においてそれぞれのコンテンツデータがプログラム単位で一致しているか否かの判別は、上記「タイトル」と「ch」の情報については各情報の完全一致を条件とする。一方で「録画時間」の情報については、少なくともそれらが示す時間帯が重なっているか否かを判別するようにされる。
このような判別基準とされていることにより、先の図10にて例示した転送元で転送指示された「7時のニュース」「5/29 7:00〜7:50」「ch4」によるコンテンツと、転送先の「7時のニュース」「5/29 7:00〜7:30」「ch4」によるコンテンツとが、プログラム単位で一致するコンテンツであると判別されるようになっている。
【0100】
続くステップS203では、一致するコンテンツがあるか否かについて判別処理を行うようにされる。
上記ステップS202による検索の結果、プログラム単位で一致するコンテンツデータがないとされて、当該ステップS203にて否定結果が得られた場合は、ステップS204に進み、全アクセスユニットの転送要求を行うようにされる。すなわち、転送指示されたコンテンツデータを構成する全てのアクセスユニットについての転送要求が転送元の記録装置2に対して行われるようにネットワークコントローラ9を制御する。
このステップS204の処理を実行すると、後述するステップS209に処理を進めるようにされる。
【0101】
一方、上記ステップS203において、プログラム単位で一致するコンテンツデータがあるとして肯定結果が得られた場合は、ステップS205に進み、アクセスユニットごとにハッシュ値を照合するようにされる。つまり、上記プログラム単位で一致するとされたコンテンツデータを構成する全アクセスユニットのハッシュ値と、先のステップS201において受信されたハッシュ値とをそれぞれ照合するようにされる。
【0102】
そして、続くステップS206においては、全部一致か否かについて判別処理を行う。すなわち、上記ステップS205の照合結果に基づき、全てのハッシュ値が一致しているか否かについて判別処理を行うことで、上記プログラム単位で一致するとされたコンテンツデータを構成するアクセスユニットと、転送元で転送指示されたコンテンツデータを構成するアクセスユニットとが全て一致しているか否かについて判別するようにされる。
【0103】
上記ステップS206において、全てのハッシュ値が一致してはいないとして否定結果が得られた場合は、ステップS207において、一致しないアクセスユニットの転送要求を行うようにされる。つまり、上記受信されたハッシュ値のうち、上記照合の結果一致しないとされたハッシュ値を指定した転送要求を、転送元の記録装置2に対して行うようにされる。
【0104】
そして、続くステップS208においては、一致するアクセスユニットの在数値を「+1」(インクリメント)するための処理を行うようにされる。つまり、上記照合の結果より、上記受信したハッシュ値と一致するとされたハッシュ値を特定し、在数値管理情報14cにおいてその特定したハッシュ値と対応づけられている在数値がインクリメントされるように、在数値管理情報14cの情報内容を更新するようにされる。
これにより、先のステップS203にてプログラム単位で一致するとされたコンテンツデータを構成するアクセスユニットのうちの、転送指示されたコンテンツデータ側と一致するアクセスユニットの在数値がインクリメントされるものとなる(先の図10<14>を参照)。
このステップS208の処理を行うと、ステップS209に処理を進めるようにされる。
【0105】
なお、ここでは図示の都合上、一致しないアクセスユニットの記録処理(後のステップS210)よりも先に、一致するアクセスユニットの在数値のインクリメント処理(上記ステップS208)が行われるものとして示しているが、このように一致するアクセスユニットの在数値のインクリメント処理を先に行うものとしても、結果的には先の図10にて説明した動作を実現できることに変わりはない。
【0106】
また、上記ステップS206において、全てのハッシュ値が一致するとして肯定結果が得られた場合は、ステップS212に進み、転送元の記録装置2に対し全一致通知を行うようにされる。
【0107】
ここで、転送元の記録装置2では、上述した転送先の記録装置2からの全アクセスユニットの転送要求(S204)、一致しないアクセスユニットの転送要求(S207)、全一致通知(S212)の何れかを、図中ステップS103とステップS104とのループ処理によって待機するようにされる。
つまり、転送元の記録装置2側では、上記ステップS103により、上記全アクセスユニットの転送要求、上記一致しないアクセスユニットの転送要求の何れかがあったか否かについて判別処理を実行するようにされる。そして、これら何れの転送要求もなかったとして否定結果が得られた場合は、ステップS104において、全一致通知があったか否かについて判別処理を行うようにされる。そして、全一致通知がなく否定結果が得られた場合には上記ステップS103に戻り、再度何れかの転送要求があったか否かについて判別処理を行うようにされている。
【0108】
これらステップS103とステップS104とのループ処理において、ステップS103により上記何れかの転送要求があったとして肯定結果が得られた場合は、図示するようにしてステップS105に進み、要求されたアクセスユニットの送信処理を実行する。
すなわち、転送先の記録装置2から全アクセスユニットの転送要求が行われた場合であれば、その要求に応じ、転送指示されたコンテンツデータを構成する全てのアクセスユニットがネットワーク4を介して転送先の記録装置2に対して送信されるように、HDD14とネットワークコントローラ9とに対する制御を行うようにされる。また、転送先から一致しないアクセスユニットの転送要求が行われた場合であれば、当該一致しないアクセスユニットの転送要求により指定されるハッシュ値によって特定されるアクセスユニットがネットワーク4を介して転送先の記録装置2に対して送信されるように、HDD14とネットワークコントローラ9とに対する制御を行うようにされる。
【0109】
そして、続くステップS106においては、転送指示されたコンテンツの全アクセスユニットの在数値を「−1」(デクリメント)するための処理を実行するようにされる。すなわち、転送指示されたコンテンツデータを構成するアクセスユニットと対応づけられる在数値が全てデクリメントされるように、在数値管理情報14cの情報内容を更新する。
【0110】
さらに、次のステップS107においては、在数値が「0」であるなら有効/無効フラグを「無効」に更新するための処理を行うようにされる。つまり、先ずは上記のようにして更新した在数値管理情報14cの情報内容に基づき、転送指示されたコンテンツデータを構成する全てのアクセスユニットの在数値が「0」であるか否かを判別した上で、それらが「0」であった場合にのみ、転送指示されたコンテンツデータと対応づけられる有効/無効フラグの値が「無効」を示す値となるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
【0111】
一方、上述したステップS104において、転送先からの全一致通知があったとして肯定結果が得られた場合は、そのまま上記ステップS106に処理を進めるようにされ、これによって全一致通知であった場合は転送指示されたコンテンツデータの全アクセスユニットの在数値のデクリメント処理(S106)と、在数値が「0」であるなら転送指示されたコンテンツデータの有効/無効フラグを「無効」に更新するための処理(S107)のみが実行されることになる。
【0112】
説明を転送先の記録装置2側に戻す。
転送先の記録装置2では、上述した転送元でのステップS105の処理によって送信されたアクセスユニットが受信されるのを、ステップS209にて待機するようにされている。
そして、転送元からのアクセスユニットが受信された場合は、ステップS210において、先ずは受信されたアクセスユニットの記録処理を実行するようにされる。つまり、受信されたアクセスユニットがHDD14に対して記録されるように制御する。
【0113】
その上で、続くステップS211では、転送指示されたコンテンツが新たに記録されたものとして管理されるように、管理情報を更新する処理を実行するようにされる。
ここで、当該ステップS211が、先のステップS203にてプログラム単位で一致するコンテンツデータがないと判別された以降に実行されるものであるときは、ステップS204にて全アクセスユニットの転送要求を行っていることになる。また、この全アクセスユニットの転送要求に応じ、上記ステップS210の記録処理では、転送指示されたコンテンツデータの全てのアクセスユニットがHDD14に新たに記録されることになる。従ってこの場合、当該ステップS211では、このようにしてHDD14に記録された全てのアクセスユニットに対し、先のステップS201にて転送元より受信した付加情報が対応づけられるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
これによって、転送指示コンテンツとプログラム単位で一致するコンテンツがないとされた場合に対応して、HDD14に新たに記録された全アクセスユニットを対象として、それらが新たに記録されたプログラム単位によるコンテンツデータとして管理されるようにすることができる(先の図7を参照)。
【0114】
一方で、当該ステップS211が、先のステップS203にてプログラム単位で一致するとされたがステップS206にて全てのアクセスユニットが一致するものではないとされた以降に実行されるものであるときは、ステップS207にて一致しないアクセスユニットの転送要求を行っているものとなる。また、この転送要求に応じ、上記ステップS210の記録処理では、転送指示されたコンテンツデータ側と一致しないアクセスユニットのみがHDD14に新たに記録されるものとなる。さらには、これと共に、上述したステップS208の処理によって、転送指示されたコンテンツデータ側と一致するアクセスユニットが特定された状態にある。
これらのことに応じ、この場合のステップS211では、上記ステップS210にて新たに記録されたアクセスユニットと、上記のようにしてステップS208にて転送指示されたコンテンツデータ側と一致するとして特定されたアクセスユニットとに対し、先のステップS201にて受信した付加情報が対応づけられるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
これにより、プログラム単位では一致するが全てのアクセスユニットが一致するものではないとされた場合に対応して、転送先に元々ある転送指示コンテンツ側と一致するとされたアクセスユニットと、転送指示コンテンツ側のみにあって新たに転送先のHDD14に記録されたアクセスユニットとを合わせて、それらが新たに記録されたプログラム単位のコンテンツデータとして管理されるようにすることができる(先の図10、図11を参照)。
【0115】
また、転送先の記録装置2側では、先に説明したステップS212における転送元への全一致通知を行った後には、図示するようにしてステップS213に処理を進めるようにされている。
このステップS213においては、先ずは該当コンテンツの全てのアクセスユニットの在数値をインクリメント(「+1」)する処理を実行するようにされる。すなわち、先のステップS205の処理結果より一致するとされた全アクセスユニットの在数値がインクリメントされるように、在数値管理情報14cの情報内容を更新するようにされる。
【0116】
そして、続くステップS214では、該当コンテンツの有効/無効フラグが「有効」であるか否かについて判別処理を実行するようにされる。つまり、コンテンツ管理情報14bを参照し、先のステップS203の処理結果より転送指示されたコンテンツデータと一致するとされたコンテンツデータと対応づけられている有効/無効フラグの値が「有効」を示す値であるか否かについて判別処理を行う。
【0117】
ステップS214において、上記有効/無効フラグが「有効」であったとして肯定結果が得られた場合は、ステップS215に進み、転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新する処理を実行するようにされる。つまり、このようにして該当コンテンツのフラグが「有効」である場合としては、転送指示されたコンテンツデータとアクセスユニットも全て一致するコンテンツデータが既に記録されたものとして扱われているものとなっている。従ってこのステップS215では、先の図8(b)にて例示したように2つの同一コンテンツが存在するものとして扱われるように、先のステップS205の処理結果より転送指示されたコンテンツ側と一致するとされた全アクセスユニットに対して、さらに先のステップS201にて受信した付加情報も対応づけられるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
【0118】
一方、上記ステップS214において、有効/無効フラグが「有効」ではなかったとして否定結果が得られた場合は、ステップS216において、該当コンテンツの有効/無効フラグを「有効」に更新するための処理を実行するようにされる。すなわち、転送指示されたコンテンツデータと一致するとされたコンテンツデータと対応づけられている有効/無効フラグの値が「有効」を示す値に更新されるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
なお、確認のために述べておくと、本実施の形態では在数値が「0」となったコンテンツデータを有効/無効フラグ=「無効」としてあくまで消去扱いとし、データ自体の消去は行わないので、先の図9にて例示したように全一致するコンテンツデータが「無効」により存在している場合がある。ステップS216としてはこのようなケースに対応して行われる処理である。
【0119】
<第2の実施の形態>
[第2の実施の形態としての動作]
続いては、第2の実施の形態の転送システム20について説明する。
第2の実施の形態の転送システム20としては、転送指示されたコンテンツデータと一致するコンテンツデータがあるか否かの判別処理を、転送元の記録装置2側で行うようにしたものである。すなわち、先の第1の実施の形態の転送システム1では、転送先の記録装置2が、転送元が送信した転送指示コンテンツの付加情報・ハッシュ値を用いて転送指示コンテンツ側と一致するコンテンツデータがあるか否かの判別処理を行っていたが、第2の実施の形態では、転送元の記録装置2が転送先に記録されるコンテンツデータの付加情報・ハッシュ値を取得してこれを行うようにしたものである。
【0120】
なお、第2の実施の形態の転送システム20において、記録装置2の構成は先の図2に示したものと同様となるので図示による説明は省略する。但し、後に明らかとなるように、第2の実施の形態の記録装置2としては、CPU10が転送動作時に行うべき処理内容が異なるものとなるので、これに応じてROM12内に格納されるプログラム12aの内容が第1の実施の形態の場合と異なるものとなる。
【0121】
図13〜図16は、第2の実施の実施としての転送システム20にて行われる動作を模式的に示している。なお、これら図13〜図16においても、先の図6〜図11と同様に図1に示したネットワーク4は省略して示しているが、実際には図中の2つの記録装置2、2はネットワーク4を介して接続されて互いにデータ通信が可能な状態にあるとする。
また、この場合もこれらの図においては、図中左側に示す記録装置2が転送元の記録装置2であるものとし、また図中右側に示す記録装置2が転送先の記録装置2であるとする。
【0122】
また、これら図13〜図16において、各図において示す転送元の記録装置2におけるコンテンツデータの格納状態とのその遷移、及び転送先の記録装置2におけるコンテンツデータの格納状態とその遷移は、それぞれ図13が図6、図14が図7、図15が図8、図16が図10と同様となるので、再度の説明は省略する。
【0123】
図14は、第2の実施の形態の転送システム20の動作として、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを模式的に示している。
先ず、この場合も転送動作が行われるにあたっては、図中<1>と示すようにして、転送元の記録装置2において、プログラム単位によるコンテンツデータの外部の記録装置2(転送先の記録装置2)への転送指示が行われることになる。
この場合も転送すべきコンテンツデータの指定は、例えば外部のディスプレイ装置にHDD14に記録されるプログラム単位のコンテンツデータの一覧をGUI画面として表示させてその受け付けを行うようにされる。
【0124】
このようなコンテンツデータの外部の記録装置2への転送指示が行われたことに応じ、この場合における転送元の記録装置2では、図中<2>と示すようにして、先ずは付加情報・ハッシュ値の送信要求を転送先の記録装置2に対して行う。
つまり、転送先の記録装置2において記録される各コンテンツデータと対応づけられている付加情報とハッシュ値との送信要求を行うようにされる。
【0125】
このような転送元の記録装置2側からの転送要求を受け、転送先の記録装置2では、図中<3>と示すようにして付加情報・ハッシュ値を転送元の記録装置2に対して送信する。つまり、コンテンツ管理情報14bによって各コンテンツデータごとに管理されている付加情報とハッシュ値とを全て取得し、それらを転送元の記録装置2に対して送信するようにされる。
なお、後に説明されるように、この場合において転送先の記録装置2から送信する付加情報は、転送元においてプログラム単位で一致するコンテンツデータの有無を判別するために用いられるものであり、従ってここで転送先の記録装置2が送信すべき付加情報としては、少なくとも「タイトル」「録画時間」「ch」の情報のみが送信されるものとされていればよい。
【0126】
転送元の記録装置2では、このように転送先から送信された全てのコンテンツデータについての付加情報とハッシュ値とを受信すると、<4>と示すようにして、一致するコンテンツデータの有無を判別するようにされる。
すなわち、転送先の記録装置2から受信された全ての付加情報と、転送指示されたコンテンツデータと対応づけられている付加情報とを照合することで、転送先の記録装置2側のHDD14内に、転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータが記録されているか否かを判別するようにされる。
この場合も、各コンテンツデータがプログラム単位で一致しているか否かの判別としては、付加情報における「タイトル」「ch」については完全一致を条件とし、「録画時間」についてはそれぞれが示す時間帯が重なっていることを条件としているものとする。
【0127】
続いて、図14〜図16は、図13の<4>の判別により、転送先の記録装置2に転送指示されたコンテンツデータと同じコンテンツデータがないとされた場合と、一致するコンテンツデータがあるとされた場合(全く同じコンテンツのとき)と、一致するコンテンツデータがあるとされた場合(完全一致ではない場合)の、各場合に対応して行われる動作について模式的に示している。
【0128】
図14は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示している。
このように転送先の記録装置2に転送元において転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがないとされた場合、転送元の記録装置2では、先ずは図14(a)において<5>と示すように、転送先の記録装置2に対し、一致コンテンツ不在通知を行うようにされる。
【0129】
その上で転送元の記録装置2は、図14(a)中の<6>と示すようにして、転送指示コンテンツの全アクセスユニット・付加情報を転送先の記録装置2に対して送信するようにされる。すなわち、転送指示されたコンテンツデータを構成する全てのアクセスユニットと、当該コンテンツデータと対応づけられている付加情報とを転送先の記録装置2に送信するものである。
【0130】
これら転送元の<5><6>の動作に伴い、上記一致コンテンツ不在通知と上記全アクセスユニット・付加情報とが受信された転送先の記録装置2では、図14(a)の<7>と示すように、受信したアクセスユニットと付加情報とを対応づけて記録するようにされる。
つまり、次の図14(b)の右側に示すように、転送元から受信したアクセスユニット(この場合はハッシュ値HS=H1〜H4によるアクセスユニットACU)と、同じく転送元から受信した付加情報(この場合は「7時のニュース」「5/29 7:00〜7:50」「ch4」)とを対応づけて、新たなコンテンツとして記録するようにされる。具体的には、受信したアクセスユニットをHDD14に記録した上で、それらに対し受信した付加情報が対応づけられるようにコンテンツ管理情報14bを更新するようにされる。
このような動作により、この場合も転送先の記録装置2では、一致するコンテンツデータがないとされた場合には、転送元で転送指示されたコンテンツデータとその付加情報とが実際に転送されて、これらが新たに追加記録されるものとなる。
【0131】
なお、この場合としても、上記のようにして転送先にコンテンツデータが転送されてきたときには、そのコンテンツデータが存在しているものとして扱われるべきであるので、図示するようにして各在数値EXAとしては「1」の値が対応づけられるようにする。また、有効/無効フラグI4としても「有効」を示す値が対応づけられるようにする。
【0132】
また一方で、転送元の記録装置2としては、先の図14(a)<6>により全アクセスユニット・付加情報の送信を行うと、図14(b)の<8>と示すようにして、送信した全てのアクセスユニットの在数値をデクリメントするようにされる。
その上で、在数値がすべて「0」であるなら、有効/無効フラグを「無効」に更新するようにされる。
【0133】
また、次の図15は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示している。
このようにして全く同じコンテンツデータが記録されていた場合、転送元の記録装置2では、図15(a)の<9>と示すようにして、転送先の記録装置2に対して全一致通知を行うようにされる。
第2の実施の形態の場合、転送元の記録装置2側において、転送先に記録されるコンテンツデータの付加情報に基づいて一致コンテンツの有無を判別するので、このように転送元の記録装置2が転送先に対して行う全一致通知としては、全一致するコンテンツの通知も合わせて行うようにされる。具体的に、この場合の転送元の記録装置2としては、転送指示コンテンツと一致するとされたコンテンツデータの付加情報を含ませた全一致通知を、転送先の記録装置2に対して行うようにされる。
【0134】
なお、この場合も転送元の記録装置2では、このような全一致通知を行った後には、<10>と示すようにして転送指示されたコンテンツの全アクセスユニットの在数値をデクリメントするようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされる。
このような動作に応じた転送元の記録装置2の状態は、次の図15(b)に示すものとなる。
【0135】
一方、上記全一致通知を受けた転送先の記録装置2では、図15(a)の<11>と示すようにして、該当コンテンツの全アクセスユニットの在数値をインクリメントするようにされる。つまり、先ずは上記全一致通知を受信して得られる付加情報に基づき、転送指示コンテンツとプログラム単位で一致するとされたコンテンツデータを特定する。その上で、この特定されたコンテンツデータを構成する全てのアクセスユニットの在数値をインクリメントするものである。
【0136】
そして、この場合としても、完全に一致するコンテンツが転送先にある場合には、元々転送先に記録されていたその一致するとされたコンテンツデータの有効/無効フラグが、「有効」か「無効」かに応じ、転送先において行われるべき動作が異なってくる。
具体的に、一致するとされたコンテンツデータの有効/無効フラグが「有効」であった場合は、図示もしているように、転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新するようにされる。すなわち、次の図15(b)に示されるようにして、転送指示コンテンツと一致するとされたプログラム単位のコンテンツデータ(ハッシュ値HS=H1、H2、H3、H4によるアクセスユニット)に対して同じ付加情報が二重に対応づけられて、あたかも同一のプログラム単位のコンテンツデータが2つ存在しているように管理されるように、コンテンツ管理情報14bの内容を更新するようにされる。
【0137】
また、図示による説明は省略するが、一致するとされたコンテンツデータの有効/無効フラグが「無効」とされていたときには、この場合も有効/無効フラグを「有効」に更新する動作のみを行うようにされる。
つまり、これによって在数が「0」個で「無効」であるとして管理されていた該当コンテンツデータが、「1」個存在する「有効」なコンテンツデータとして管理されるように更新することができる。
【0138】
また、図16は、一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示している。
先ず、このようにプログラム単位では一致するコンテンツデータがあるが、そのデータ内容は完全一致しないとされた場合、転送元の記録装置2では、転送先の記録装置2に対して部分一致通知を行うようにされる。
この部分一致通知としては、図示するように一致コンテンツ・一致アクセスユニットの通知も行うようにされる。すなわち、当該部分一致通知としては、プログラム単位で一致するとされたコンテンツデータを示すための情報と、当該一致するとされたコンテンツデータを構成するアクセスユニットのうち一致するとされたアクセスユニットのハッシュ値とを含んだ通知を行うようにされる。
【0139】
さらに、転送元の記録装置2では、次の<13>と示すように、転送先の記録装置2に対して一致しないアクセスユニットと付加情報の送信を行う。
確認のために述べておくと、上記一致しないアクセスユニットとは、転送元の記録装置2において記録される転送指示されたコンテンツデータを構成するアクセスユニットのうちで、転送先に記録される転送指示コンテンツとプログラム単位で一致するとされたコンテンツデータ側にはなかったアクセスユニットのことである。具体的に図の例で言えば、ハッシュ値HS=H4によるアクセスユニットACUのことである。
また、上記付加情報は、転送指示されたコンテンツデータと対応づけられている付加情報である。
【0140】
これら<12><13>による転送元からの部分一致通知、及び一致しないアクセスユニットと付加情報とを受信した転送先の記録装置2では、図16(b)中<14>と示すようにして、先ずは転送元から受信したアクセスユニットを記録するようにされる。そして、次の<15>と示すように、通知コンテンツにおける一致アクセスユニットの在数値をインクリメント(「+1」)するようにされる。つまり、上記部分一致通知により通知されたプログラム単位で一致するとされたコンテンツデータのうちの、同じく上記部分一致通知により通知された一致アクセスユニットの在数値をインクリメントするようにされる。
具体的に図の例では、この場合もハッシュ値HS=H1、H2、H3によるアクセスユニットACUが転送元に記録されるものと一致するので、これらのアクセスユニットACUの在数値EXAをインクリメントするようにされるものである。
【0141】
その上で、転送先の記録装置2では、次の<16>と示されるように、転送指示されたコンテンツが新たに記録されたものとして管理されるように、管理情報を更新するようにされる。つまり、この場合としても、次の図16(b)にて一点鎖線で囲うように、転送先において元々記録されていたハッシュ値HS=H1、H2、H3によるアクセスユニットACUに加え、さらに転送元から転送され記録されたハッシュ値HS=H4によるアクセスユニットACUも含めたコンテンツデータに対し、同じく転送元から転送された転送指示コンテンツの付加情報が対応づけられるように、コンテンツ管理情報14bの内容を更新するようにされる。
これによって、転送元で転送指示されたコンテンツデータが、転送先に新たに記録されたものとして管理されるようにすることができる。
【0142】
ここで、この図16でも、転送先においては転送元で転送指示されたコンテンツデータと一致するコンテンツデータが「有効」であるものとして記録されている場合を例示したが、第2の実施の形態としても、転送先のコンテンツデータが「無効」として記録されていた場合は、この図に示す「有効」とされていた場合と同じ動作が行われれば良い。
つまり、このように「無効」とされていた場合も、先の<16>により単に転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新する動作を行うことで、元々転送先に記録されていた当該「無効」によるコンテンツデータは、そのまま「無効」のままとして扱われるようにすることができる。
【0143】
なお、一方の転送元の記録装置2側において、先の<13>により一致しないアクセスユニットを転送先に送信した後は、図16(b)の<17>と示すように、転送指示コンテンツの全てのアクセスユニットの在数値をデクリメントするようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされることになる。
【0144】
上記のようにして、第2の実施の形態の転送システム20は、転送指示されたコンテンツデータと一致するコンテンツデータが転送先の記録装置2において記録されているか否かの判別を、転送先の記録装置2側で行うのではなく、転送元の記録装置2側で行うようにしたものである。
第2の実施の形態の転送システム20としては、この点のみが第1の実施の形態の転送システム1と異なるのみであり、従って先に述べた第1の実施の形態の転送システム1により得られる効果は、この第2の実施の形態の転送システム20によっても同様に得ることができる。
【0145】
[処理動作]
図17のフローチャートは、上記により説明した第2の実施の形態の転送システム20としての動作を実現するために、記録装置2において実行されるべき処理動作について示している。
なお、この図に示す処理動作としても、図2に示したCPU10がROM12内に格納されるプログラム12aに基づいて実行するものである。先にも述べたが、第2の実施の形態の場合、第1の実施の形態の場合とプログラム12aの内容が異なるものとなっている。
また、この図17に示す処理動作が行われるにあたっても、先の図1にて示したようにして既に各記録装置2がネットワーク4を介してデータ通信可能に接続されている状態にあるものとする。またこの場合も、転送元となるべき記録装置2は図中左側に示し、転送先となるべき記録装置2は図中右側に示している。
また、この場合としても、転送元となるべき記録装置2では、例えば外部の記録装置2に対して転送すべきコンテンツデータの指定を受け付けるためのGUI画面を、外部のディスプレイ装置などに表示させている状態にあるとする。
【0146】
図17において、先ず、上記のようにして転送コンテンツの指定受け付けのための画面表示状態にある転送元の記録装置2では、ステップS301において、外部記録装置へのコンテンツ転送指示が行われるのを待機するようにされる。つまり、例えば上記のようにして外部のディスプレイ装置などに表示させたGUI上において、外部の記録装置2(転送先の記録装置2)に転送すべきコンテンツデータを指定する操作が行われるのを待機するようにされる。
【0147】
そして、例えば上記のようなコンテンツデータを指定する操作が行われたとして、外部の記録装置2への転送指示が行われたとした場合は、ステップS302において、付加情報・ハッシュ値の送信要求を行うための処理を実行する。
つまり、転送先の記録装置2において記録される各コンテンツデータと対応づけられている付加情報とハッシュ値との送信要求が転送先の記録装置2に対して行われるようにネットワークコントローラ9に対する制御を行う。
このステップS302の処理を実行すると、後のステップS303に処理を進めるようにされる。
【0148】
転送先の記録装置2側では、このような転送元の記録装置2側からの転送要求の受信を、図中ステップS401にて待機するようにされている。そして、転送元から転送要求が受信された場合は、ステップS402において、付加情報・ハッシュ値を送信するための処理を実行するようにされる。つまり、コンテンツ管理情報14bによって各コンテンツデータごとに管理されている付加情報とハッシュ値とを全て取得した上で、それらの情報がネットワーク4を介して転送元の記録装置2に対して送信されるようにネットワークコントローラ9を制御するようにされる。
このステップS402の処理を実行すると、後述するステップS403に処理を進めるようにされる。
【0149】
なお、このステップS402において、上記のように全てのコンテンツデータについての付加情報・ハッシュ値を転送元の記録装置2側に対して送信するにあたっては、プログラム単位での付加情報・ハッシュ値の対応関係がそれぞれ保たれた状態で転送元に送信されるように制御する。
例えば、「A」という付加情報が対応づけられたコンテンツデータについては、そのコンテンツデータを構成する各アクセスユニットのハッシュ値に対し、上記付加情報「A」が対応づけられた状態で送信するといったものである。
【0150】
転送元の記録装置2では、このように転送先から送信された全てのコンテンツデータについての付加情報とハッシュ値とが受信されるのを、図中ステップS303にて待機するようにされている。
そして、これら付加情報とハッシュ値とが受信されると、ステップS304において、一致コンテンツの検索処理を実行するようにされる。このステップS304における検索処理としては、上記のようにして受信した全ての付加情報と、先のステップS301にて転送指示されたコンテンツデータと対応づけられている付加情報とを照合した結果に基づいて、転送先の記録装置2側のHDD14内に記録されるコンテンツデータのうちから、転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータを検索するようにされる。
【0151】
続くステップS305においては、一致するコンテンツがあったか否かについて判別処理を実行する。つまり、上記ステップS304の検索処理の結果により、転送先の記録装置2側のHDD14内に転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがあったか否かについて判別処理を行うようにされる。
転送先の記録装置2側のHDD14内にプログラム単位で一致するコンテンツデータがないとされて否定結果が得られた場合は、ステップS306に進み、一致コンテンツ不在通知を行うようにされる。つまり、この一致コンテンツ不在通知としては、プログラム単位で一致するコンテンツデータがない旨を示す通知が転送先の記録装置2に対して行われるようにする。
【0152】
その上で、続くステップS307においては、転送指示コンテンツの全アクセスユニットと付加情報とを送信するための処理を実行するようにされる。つまり、コンテンツ管理情報14bに基づき、先のステップS301にて転送指示されたコンテンツデータを構成する全てのアクセスユニットと、当該コンテンツデータと対応づけられている付加情報とを取得し、それらが転送先の記録装置2に対して送信されるようにネットワークコントローラ9を制御する。
【0153】
また、上記ステップS305において、プログラム単位で一致するコンテンツデータがないとされて否定結果が得られた場合は、ステップS308に進み、アクセスユニットごとにハッシュ値を照合するようにされる。つまり、先ずはコンテンツ管理情報14bに基づき、転送指示されたコンテンツデータを構成するアクセスユニットのハッシュ値(転送元側ハッシュ値とする)を取得する。さらに、先のステップS303にて転送先より受信した各プログラムの付加情報ごとに対応づけられているハッシュ値のうち、上記ステップS305にて転送指示コンテンツの付加情報と一致するとされた付加情報と対応づけられているハッシュ値(転送先側ハッシュ値とする)を特定する。その上で、これら特定した転送先側ハッシュ値と上記転送元側ハッシュ値とをそれぞれ照合するようにされる。
【0154】
そして、続くステップS309では、上記照合の結果、ハッシュ値が全て一致しているか否かについて判別処理を行うようにされる。
このステップS309において、全てのハッシュ値が一致してはいないとして否定結果が得られた場合は、ステップS310に進んで部分一致通知を行うようにされる。
先の図16においても説明したように、この部分一致通知としては、一致コンテンツと一致アクセスユニットの通知も行うようにされている。つまり、このステップS310の部分一致通知としては、先のステップS305にてプログラム単位で一致するとされたコンテンツデータを示すための情報(例えばその付加情報)と、先のステップS308の照合の結果一致しているとされたハッシュ値とを含んだ通知を、転送先の記録装置2に対して行うようにする。
【0155】
その上で、次のステップS311では、転送先の記録装置2に対し、一致しないアクセスユニットと転送指示コンテンツの付加情報を送信するための処理を行う。
先にも述べたように、上記一致しないアクセスユニットとは、転送指示されたコンテンツデータを構成するアクセスユニットのうち、転送指示コンテンツとプログラム単位で一致するとされた転送先のコンテンツデータ側にはないとされたアクセスユニットである。
この一致しないアクセスユニットを特定するために、先ずステップS311では、先のステップS308の照合処理の結果に基づき、上述した転送元側ハッシュ値のうち、上述した転送先側ハッシュ値の何れとも一致しなかったハッシュ値を特定する。このハッシュ値により特定されるアクセスユニットが、上記一致しないアクセスユニットとなる。
その上で、ステップS311では、先のステップS301にて転送指示されたコンテンツデータと対応づけられている付加情報を取得し、上記のようにして特定された一致しないアクセスユニットとこの付加情報とが転送先の記録装置2に対して送信されるようにネットワークコントローラ9を制御する。
【0156】
また、先のステップS309において、全てのハッシュ値が一致しているとして肯定結果が得られた場合は、ステップS312に進んで全一致通知を行うようにされる。すなわち、この全一致通知として、先のステップS301にて転送指示されたコンテンツデータと対応づけられている付加情報を含んだ通知が転送先の記録装置2に対して行われるように、ネットワークコントローラ9を制御するようにされる。
【0157】
ここで、転送元の記録装置2では、このステップS312による全一致通知、または上述したステップS307による全アクセスユニット・付加情報の送信処理、または上述したステップS311による一致しないアクセスユニット・付加情報の送信処理を実行した後は、図示されるように先の図12におけるステップS106に処理を進めるようにされる。すなわち、このステップS106により転送指示されたコンテンツの全アクセスユニットの在数値をデクリメントする処理を実行した後に、続くステップS107において在数値が「0」であるなら有効/無効フラグを「無効」に更新するための処理を実行するようにされる。
【0158】
続いて、説明を転送先の記録装置2側に移す。
転送先の記録装置2では、転送元における先のステップS301による一致コンテンツ不在通知、ステップS310による部分一致通知、ステップS312による全一致通知の何れかが受信されるのを、ステップS403、ステップS404、ステップS405によるループ処理により待機するようにされている。
【0159】
先ず、上記ステップS403により、上記一致コンテンツ不在通知が受信されたとした場合は、ステップS406に進み、先のステップS307により転送元から送信される全アクセスユニットと転送指示コンテンツの付加情報が受信されるのを待機するようにされる。
このステップS406において、上記全アクセスユニットと付加情報とが受信されたとした場合は、図示されるように先の図12におけるステップS210に処理を進めるようにされ、このステップS210の記録処理と、続くステップS211による管理情報の更新処理とを実行するようにされる。
具体的に、上記ステップS210では、上記ステップS406にて受信された全アクセスユニット(転送指示コンテンツの全アクセスユニットである)をHDD14に記録するための処理を実行するようにされる。
その上で、上記ステップS211によっては、転送指示されたコンテンツが新たに記録されたものとして管理されるように、コンテンツ管理情報14bを更新する処理が実行される。
【0160】
ここで、この場合のステップS211としては、プログラム単位で一致するコンテンツデータがないとされて、先のステップS403にて一致コンテンツ不在通知が受信された後に実行されるものであるが、このような不在通知受信後に応じて実行されるステップS211としては、先のステップS406にて受信され上記ステップS210にてHDD14に新たに記録された全アクセスユニットに対し、同じく先のステップS406にて受信された付加情報が対応づけられるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
これによって転送元にて転送指示されたコンテンツデータが、転送先にて新たに記録されたものとして管理されるようになる。
【0161】
続いて、図17に戻り、上述したステップS404において、転送元からの部分一致通知が受信されたとした場合は、ステップS407に進み、一致するアクセスユニットの在数値をインクリメントする処理を実行する。
すなわち、このように転送元から受信した部分一致通知に含まれる、一致するアクセスユニットのハッシュ値により特定されるアクセスユニットについて、それと対応づけられている在数値がインクリメントされるように在数値管理情報14cの情報内容を更新するようにされる。
【0162】
続くステップS408においては、転送元からの一致しないアクセスユニットと転送指示コンテンツの付加情報とが受信されるのを待機するようにされる。そして、これら一致しないアクセスユニットと付加情報とが受信された場合は、図示されるように先の図12におけるステップS210に処理を進めるようにされる。
この場合のステップS210の処理によっては、上記のようにして転送元から受信した一致しないアクセスユニットがHDD14に対して記録されることになる。
そして、続くステップS211では、転送指示されたコンテンツが新たに記録されたものとして管理されるようにコンテンツ管理情報14bを更新するための処理が行われる。
【0163】
ここで、上記のようにしてステップS404にて部分一致通知が受信された場合には、先のステップS407の処理によって、転送指示されたコンテンツデータ側と一致するアクセスユニットが特定された状態にある。また、この場合のステップS210の記録処理では、上記のようにして転送元から受信された一致しないアクセスユニットのみが新たに記録されるものとなる。
これらのことから、上記のようにしてステップS404にて部分一致通知が受信された後の当該ステップS211の処理としては、上記ステップS210にて新たに記録されたアクセスユニットと、上記のようにして既に特定されている転送指示されたコンテンツデータ側と一致するアクセスユニットとに対し、先のステップS404にて受信した付加情報が対応づけられるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
【0164】
なお、ここでも図示の都合上、一致しないアクセスユニットについての記録処理(ステップS210)よりも先に、一致するアクセスユニットの在数値のインクリメント処理(ステップS407)が行われるものとして示したが、このように一致するアクセスユニットの在数値のインクリメント処理を先に行うものとしても、結果的には先の図16にて説明した動作を実現できることに変わりはない。
【0165】
また、図17に戻り、先のループ処理のうちのステップS405において、全一致通知が受信されたとした場合は、ステップS409に進み、該当コンテンツの全てのアクセスユニットの在数値をインクリメントする処理を実行するようにされる。
すなわち、受信された全一致通知に含まれる付加情報に基づき、転送先において記録されるコンテンツデータのうちから転送指示されたコンテンツデータと一致するとされたコンテンツデータを特定し、そのコンテンツデータを構成するアクセスユニットと対応づけられている全ての在数値がインクリメントされるように、在数値管理情報14cの情報内容を更新するようにされる。
【0166】
このステップS409の処理を実行すると、図示されるように先の図12におけるステップS214に処理を進めるようにされる。つまり、この場合も転送先に転送指示されたコンテンツデータと全一致するコンテンツデータがあるとされた場合には、そのコンテンツデータの有効/無効フラグが「有効」であるか否かの判別処理(ステップS214)と、「有効」の場合には管理情報の更新処理(ステップS215)と、「無効」の場合にはそのコンテンツデータの有効/無効フラグを「有効」に更新する処理(ステップS216)が行われるものとなる。
【0167】
以上、各実施の形態の転送システム(1,20)について説明したが、これまでの説明では、簡単のために放送コンテンツがビデオデータのみとされるものとしてきたが、テレビジョン放送のコンテンツデータとしては、ビデオデータと共にオーディオデータも含まれる。すなわち、実際にはこのようなオーディオデータも考慮した動作とすべきものとなる。
【0168】
ここで、このようなビデオデータとオーディオデータとを含んで成る放送コンテンツをHDD14に記録する場合としては、1つに、ビデオデータとオーディオデータとをそれぞれ独立したデータとして分けて記録する場合が考えられる。
先ず、このようにしてビデオデータとオーディオデータとを分けて記録する場合に対応した動作について説明すると、この場合には、オーディオデータ側についても、ビデオデータ側のアクセスユニットと同じ時間長ごとの区切りとなるデータ単位でそれぞれ分けて管理するようにしておく。このとき、当然のことながらビデオデータ側とオーディオデータ側との同期関係が保たれるようにしておくことが必要となるが、実施の形態のようにデジタルテレビジョン放送の放送コンテンツについて録画を行う場合には、圧縮ビデオデータ・圧縮オーディオデータにはそれらの同期をとるためのPTS(Presentation Time Stamp)等の同期情報が付されている。このような場合には特別に対応づけを行う必要はない。
【0169】
そして、転送システム(1,20)の動作として、先ず、転送指示されたコンテンツとプログラム単位で一致するか否か、及びアクセスユニットの単位での一致/不一致の判別処理は、実施の形態の場合と同様にして行われればよい。つまり、アクセスユニットごとの一致/不一致の判別は、ビデオデータ側を基準としてのみ行うものである。
さらに、このような判別処理に基づき、実際に転送すべきとされたビデオデータのアクセスユニットが決定された場合には、その転送すべきビデオデータのアクセスユニットと同期関係にあるオーディオデータを特定し(この場合は上記したPTSに基づき特定することができる)、この特定したオーディオデータも合わせて転送先に転送するものとする。
例えばこのような動作とすることで、ビデオデータと共にオーディオデータについても適正に転送先に転送することができる。
【0170】
なおこの場合、オーディオデータ側についてもハッシュ値を計算してそれを対応づけて記録しておき、アクセスユニットごとの一致/不一致の判別をこのようなオーディオデータに対応づけられたハッシュ値に基づいて行うようにすることもできる。
【0171】
また、この場合、オーディオデータ側の在数値は、ビデオデータ側の在数値と共通であるとして共通管理するようにされればよい。或いは、オーディオデータについても在数値管理情報を設けてその在数値を管理するようにもできる。
【0172】
また、一方で、ビデオデータとオーディオデータとを分けずに一体的なデータとして記録する場合も考えられる。
その場合、このようなビデオデータ・オーディオデータが一体となったコンテンツデータについて、所定のデータ単位ごとのハッシュ値を計算し、これを各データ部分と対応づけて記録するものとする。
そして、以降の転送動作としては、このようなビデオ・オーディオによるコンテンツデータについてこれまでの実施の形態で説明したものと同様の動作を行うようにすることで、ビデオデータと共にオーディオデータも適正に転送先に転送することができるようになる。
【0173】
<変形例>
なお、本発明としてはこれまでに説明した各実施の形態に限定されるべきものではない。
例えば、実施の形態では、GOPなどとされる所定のデータ単位ごとにコンテンツデータのハッシュ値を計算し、この所定のデータ単位ごとにそのハッシュ値を対応づけて記録するものとしたが、ハッシュ値としては、プログラム単位のコンテンツデータごとに計算し、プログラム単位のコンテンツデータごとに対応づけて記録するものとしてもよい。
【0174】
また、実施の形態では、ハッシュ値を対応づけるべきコンテンツデータがテレビジョン放送の放送コンテンツによるビデオデータ・オーディオデータとされる場合を例示したが、例えばラジオ放送によるオーディオデータとすることもできる。或いは、放送コンテンツ以外にも、例えばネットワーク上の所定のサーバ装置からダウンロードされるビデオデータやオーディオデータ、或いは記録媒体から再生したビデオデータやオーディオデータとすることもできる。
【0175】
ここで、記録装置2が、例えばCD(Compact Disc)等の記録媒体に記録されるオーディオデータや、上記サーバ装置からダウンロードされるオーディオデータについてのハッシュ値を計算してそれを対応づけて記録する場合を想定しみると、その場合、上記オーディオデータとしては、トラックと呼ばれる曲単位ごとに分けて管理されていることが予想される。従って、このようなオーディオデータについてのハッシュ値としては、このトラック単位ごとのデータに基づき計算し、それをトラック単位ごとに対応づけて記録するものとすればよい。或いは、トラック単位のオーディオデータをさらに実施の形態のアクセスユニットに相当するような所定のデータ単位ごとに分けて、その所定のデータ単位ごとにハッシュ値を計算してそれを対応づけて記録することもできる。
【0176】
また、本発明おいて、コンテンツデータは上記により例示したビデオデータやオーディオデータに限らず、例えば画像データやテキストデータ等とすることもでき、そのデータ種類について特に限定するものではない。
【0177】
また、実施の形態では、コピーワンスの制限がある場合に対応した動作を行う場合を例示したが、例えばこのようなコピーワンス制限を考慮する必要がなく、転送元では転送したコンテンツデータを消去扱いする必要がない場合には、転送元での在数値のデクリメント処理は特に行う必要はない。また、有効/無効フラグも不要である。
【0178】
また、実施の形態のようにコピーワンス制限に対応した動作を行うとした場合、その実現のために必要な情報として、コンテンツ管理情報14b(特に有効/無効フラグ)、在数値管理情報14cを生成・更新するものとしたが、例えばこれらの情報が改竄されてしまった場合には、コピーワンス制限に対応した適切な動作を行うことができなくなってしまう虞がある。
そこで、これらコンテンツ管理情報14b及び在数値管理情報14cについては、このような情報改竄を困難とすべく、例えばCPU14が暗号化してHDD14に記録するようにすることもできる。
【0179】
また、実施の形態では、プログラム単位で一致するコンテンツデータがあるか否かについての判別処理は、転送指示されたコンテンツデータ側と転送先に記録されるコンテンツデータ側とで、それぞれの付加情報のみを照合して行うものとしたが、これに代えて、ハッシュ値の照合によって行うようにすることもできる。
ここで、例えば転送元と転送先の双方の記録装置2においてプログラム単位で一致するコンテンツデータが記録されている場合として、一方の記録装置2では、初回に放送された番組を録画し、他方の記録装置2ではその再放送の番組を録画した場合を想定しみる。この場合、実施の形態のように付加情報のみに基づく判別処理を行うと、それぞれの「タイトル」「ch」は同じだが、録画時間帯が重ならないことによって別のコンテンツであると判別されてしまう虞がある。すなわち、この場合の2つのコンテンツデータはデータ内容的にはほぼ同じであるにも関わらず、プログラム単位で一致してしないと判別されてしまうものである。
例えばこのようなことを考慮して、プログラム単位でコンテンツ同士が一致しているか否かの判別については、各プログラム単位のコンテンツデータごとに、それを構成するアクセスユニットのハッシュ値を照合して行うようにすることもできる。具体的には、転送指示されたコンテンツデータ側のハッシュ値と、比較対象となるプログラム単位のコンテンツデータを構成するそれぞれのアクセスユニットのハッシュ値とを照合し、例えばハッシュ値が一致するアクセスユニット数が所定割合以上となる場合にそれぞれのコンテンツデータがプログラム単位で一致していると判別するといったものである。
これによれば、データ内容に基づいてそれぞれのコンテンツデータがプログラム単位で一致するか否かを判別することができ、より確実に同一内容のコンテンツデータについての不要な転送動作及び重複記録動作を防止することができる。
【0180】
また、実施の形態では、転送システム(1,20)が2つの記録装置2のみで構成される場合を例示したが、3つ以上の記録装置2がネットワーク4を介して接続される構成とすることもできる。このように3つ以上の記録装置2で構成される場合にも、転送動作としてはあくまで転送元と転送先との2つの記録装置2の動作により実現されるので、それらの記録装置2において、実施の形態で説明した転送元と転送先としての動作が実行されれば、各実施の形態で説明したものと同様の効果を得ることができる。
【0181】
また、実施の形態では、本発明の記録装置及び記録方法が録画装置に適用される場合を例示したが、本発明の記録装置及び記録方法としては、少なくとも記録媒体に対するデータ記録が可能に構成されたものであれば、各種の電子機器に対して好適に適用することができる。
【0182】
また、本発明のデータ転送システムとしても、それを構成する記録装置としては、実施の形態で例示した録画装置としての記録装置2に限らず、少なくとも記録媒体に対するデータ記録が可能な記録手段と、外部装置とのデータ通信が可能な通信手段とを備えるものであれば、他の電子機器とすることができる。
【図面の簡単な説明】
【0183】
【図1】本発明の実施の形態としてのデータ転送システムの概要について説明するための図である。
【図2】実施の形態の記録装置の内部構成を示すブロック図である。
【図3】コンテンツデータとそれに基づき計算されるハッシュ値との関係を例示した図である。
【図4】コンテンツ管理情報のデータ構造を示すデータ構造図である。
【図5】在数値管理情報のデータ構造を示すデータ構造図である。
【図6】第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを示した図である。
【図7】第1の実施の形態のデータ転送システムの動作について説明するための図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示した図である。
【図8】第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示した図である。
【図9】同じく、第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示した図である。
【図10】第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示した図である。
【図11】同じく、第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示した図である。
【図12】第1の実施の形態のデータ転送システムとしての動作を実現するための処理動作について示したフローチャートである。
【図13】第2の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを示した図である。
【図14】第2の実施の形態のデータ転送システムの動作について説明するための図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示した図である。
【図15】第2の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示した図である。
【図16】第2の実施の形態のデータ転送システムの動作について説明するための模式図として、特に一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示した図である。
【図17】第2の実施の形態のデータ転送システムとしての動作を実現するための処理動作について示したフローチャートである。
【符号の説明】
【0184】
1,20 転送システム、2 記録装置、3 チューナ部、4 ネットワーク、5 暗号化/復号化器、6 アクセスユニット検出器、7 ハッシュ値計算器、8 バス、9 ネットワークコントローラ、10 CPU、11 ユーザインタフェース、12 ROM、13 RAM、14 HDD、14a コンテンツ、14b コンテンツ管理情報、14c 在数値管理情報、15 アンテナ
【技術分野】
【0001】
本発明は、コンテンツデータを記録する記録装置とその方法に関する。また、複数の記録装置を備えてそれらの間でコンテンツデータの転送を行うデータ転送システムに関する。
【背景技術】
【0002】
従来より、例えばハードディスクなどの比較的大容量の記録媒体を用いて地上波デジタル放送などの放送コンテンツを録画する録画機器が広く普及してきている。
このような録画機器は、例えば地上波放送、衛星放送など放送チャンネルの多様化などに伴い、1家庭で複数台が所有されるといったケースも見受けられるようになっている。そして、近年ではDLNA(Digital Living Network Alliance)に代表されるイーサネット経由での電子機器間のデータ通信規格が確立されるなどして、複数の録画機器をネットワーク経由で接続してコンテンツの移動を行うといったことも実現されている。
【0003】
ここで、このように録画機器をネットワークを介して接続することを想定した場合に、一方の録画機器において記録されるコンテンツを、他方の録画機器に転送する指示が行われたとする。
この場合、指示を受け付けた転送元の録画機器では、指示されたコンテンツを転送先の録画機器に転送した後、自らに記録されているコンテンツについてはそれを消去するようにされる。また、転送先の録画機器では、転送されてきたコンテンツを記録するようにされる。
【0004】
この際、上記のようにして転送元の録画機器で転送対象となったコンテンツを消去するようにされているのは、例えばデジタル放送などで行われているコピーワンス(Copy one generation)制限を考慮しているためである。つまり、デジタル放送の放送コンテンツに対しては、このようなコピーワンスのための著作権保護情報が付加されており、放送コンテンツを録画した時点で、そのコンテンツに対してはノーモアコピー(No more copies)の属性情報が付加されるようになっている。そして、このことから、上記のようにして記録コンテンツを他の録画機器に転送する場合には、コンテンツのいわゆるムーブしか許可されず、転送元の録画機器では転送対象となったコンテンツを消去しなければならいものである。
【0005】
なお、関連する従来技術については以下の特許文献を挙げることができる。
【特許文献1】特開2003−250123号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
ところで、上記説明によれば、従来の録画機器では、コンテンツの外部機器への転送指示が為されたとき、単に転送指示されたコンテンツを指示された外部機器に転送し、そのコンテンツを消去するという動作しか行っていないことがわかる。また、転送先の録画機器では、単に転送されてきたコンテンツを記録するという動作のみを行っている。
【0007】
ここで、仮にそれぞれの録画機器において、同じ録画時間で同じ放送チャンネルの放送コンテンツを記録していたとする。すなわち、全く同一内容のコンテンツがそれぞれの録画機器に記録された状態にあったとする。そして、転送指示としては、このようにして一方の録画機器にも記録される同一内容のコンテンツについて行われたとする。
【0008】
このような状況において、上述したような従来の録画機器間の動作が行われた場合は、転送先に同じコンテンツがあるにも関わらず、転送元は同じコンテンツを転送するようにされることになる。また、転送先では、同じ内容のコンテンツが既に記録されているにも関わらず、そのコンテンツについての記録動作を改めて行うようにされることになる。
このようなことから、従来の録画機器の動作によっては、無駄なデータ転送動作、及び無駄なデータ記録動作が行われてしまう可能性があった。
【0009】
また、一方で、このような無駄なデータ記録・データ転送動作の防止を図るにあたっては、転送先において転送指示されたコンテンツと同一内容のコンテンツがあるか否かを判別することが考えられる。
【0010】
ここで、例えばこのようにしてそれぞれの機器にあるコンテンツが同一であるか否かを判別するにあたっては、データ内容自体が一致しているか否かを判別することが望ましい。すなわち、コンテンツの一致/不一致については例えばEPG(Electric Program Guide)データ等に基づいて取得した番組タイトル等の付加情報に基づいて行うこともできるが、そのような付加情報はデータ内容の一致までを必ずしも保証するものとはならない。具体的に、例えば双方の録画機器で同じコンテンツ(放送番組)を録画したとして、一方の機器では60分、他方の機器では58分だけ録画を行った場合、それらに付される番組タイトルの情報は同じとなるが、実際のデータ内容は完全に一致したものとはならないといった状況等が考えられる。
このようなことを考慮すると、それぞれのコンテンツが同一であるか否かの判別は、上記のようにして実際のデータ内容に基づいて行うことが望ましいものとなる。
【0011】
しかしながら、現状において、それぞれのコンテンツ内容が一致しているか否かを判別するにあたっては、実際にそれぞれのコンテンツのデータ内容自体を照合する以外に有効な手法がない。このことから、現状においてデータ内容が一致しているか否かを判別するためには、相当な時間を浪費してしまうという問題が生じることになる。
特に、放送コンテンツ(ビデオ・オーディオデータ)のような比較的データサイズの大きなコンテンツについて、そのデータ内容の照合を行うにはその分多くの時間を要することになるので、特にその改善が要請される。
【課題を解決するための手段】
【0012】
そこで、本発明では以上のような問題点に鑑み、記録装置として以下のように構成することとした。
つまり、コンテンツデータを記録媒体に記録する記録手段と、上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段とを備える。
そして、上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段を備えるようにしたものである。
【0013】
また、本発明ではデータ転送システムとして以下のように構成することとした。
すなわち、本発明のデータ転送システムは、コンテンツデータを記録媒体に記録する記録手段と、上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段と、上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段と、外部装置との間でデータ通信を行うデータ通信手段と、を備える記録装置を複数備えて構成されたデータ転送システムであって、
先ず、第1の記録装置から第2の記録装置への上記コンテンツデータの転送指示が行われた場合に、上記第1の記録装置に記録される上記転送指示されたコンテンツデータと対応づけられたハッシュ値と、上記第2の記録装置に記録されるコンテンツデータと対応づけられたハッシュ値とを照合する照合手段を備える。
また、上記照合手段による照合結果に基づき、上記第2の記録装置側に上記ハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータが上記第1の記録装置から上記第2の記録装置に転送されるように制御する転送制御手段を備えるものである。
【0014】
上記による本発明の記録装置(及び記録方法)によれば、コンテンツデータに基づき計算されたハッシュ値を、そのコンテンツデータと対応づけて記録することができる。このようにしてコンテンツデータに基づき計算されるハッシュ値としては、コンテンツデータのデータ内容と一対一の関係を有する数値が得られる。すなわち、このようなハッシュ値は、コンテンツデータのデータ内容を表す識別子として機能することができる。このことから本発明の記録装置(及び記録方法)によれば、コンテンツデータに対応づけて、そのデータ内容を表す識別子を記録することができる。
そして、このようにして記録装置において記録されるコンテンツデータに、そのデータ内容を表す識別子としてのハッシュ値を対応づけておくことができれば、例えば上記本発明のデータ転送システムのように、一方の記録装置から他方の記録装置に対しコンテンツデータを転送するといったときに、転送元における転送指示されたコンテンツデータと対応づけられたハッシュ値と、転送先側に記録されるコンテンツデータと対応づけられたハッシュ値とを照合することができ、これによって転送指示されたコンテンツデータとデータ内容が一致するコンテンツデータが転送先においても記録されているか否かについて判別することができる。
【0015】
その上で、上記本発明のデータ転送システムでは、上記のようなハッシュ値の照合結果に基づき、転送先にデータ内容が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータを転送するものとしている。すなわち、これによって転送先にデータ内容的に同じコンテンツデータがある場合には、そのコンテンツデータの転送が行われないようにすることができ、また、データ内容的に同じコンテンツデータがある場合の重複記録が行われてしまうことも回避することができる。
【発明の効果】
【0016】
上記のようにして本発明の記録装置及び記録方法によれば、コンテンツデータに基づき計算されたハッシュ値をそのコンテンツデータと対応づけて記録することで、コンテンツデータに対応づけてそのデータ内容を表す識別子を記録することができる。これによれば、複数のコンテンツデータについてそれらのデータ内容が一致しているか否かの判別は、このようなハッシュ値同士を照合することによって行うことができ、例えば従来のように実際にそれぞれのコンテンツのデータ内容自体を照合する必要がなくなる。これにより、各コンテンツデータのデータ内容の一致/不一致の判別に要する処理時間を、大幅に短縮することができる。
【0017】
また、本発明のデータ転送システムによれば、上記のようなハッシュ値による照合結果に基づき、転送先にデータ内容が一致するコンテンツデータがないとされた場合にのみそのコンテンツデータを転送するようにされるので、転送先に転送指示されたコンテンツデータとデータ内容的に同じコンテンツデータがある場合には、そのコンテンツデータについての転送が行われないようにすることができ、また、データ内容が同じコンテンツデータがある場合の重複記録も避けることができる。
このようにして無駄なデータ転送動作、及び無駄な記録動作を省略することができることで、転送時の処理負担の軽減、及び転送完了までの所要時間の短縮化を図ることができる。また、重複記録が防止されることで、記録容量の節約化も図ることができる。
【発明を実施するための最良の形態】
【0018】
以下、発明を実施するための最良の形態(以下実施の形態とする)について説明していく。
図1は、本発明の実施の形態としてのデータ転送システム(第1の実施の形態の転送システム1、第2の実施の形態の転送システム20)の概要について説明するための図である。
図示するようにして実施の形態の転送システム(1,20)は、複数の記録装置2(この場合は2つとされる)を備えて構成される。これら複数の記録装置2は、例えばイーサネット(Ethernet)などとされるネットワーク4を介してそれぞれ接続されている。
【0019】
記録装置2は、例えば地上波デジタル放送の放送信号について受信復調処理等を行うチューナ部3と、このチューナ部3の処理に基づき得られる放送コンテンツを記録する(録画する)HDD(Hard Disc Drive)14とを備えた、チューナ付き録画機器としての構成を有する。
本実施の形態の場合、この記録装置2は、EPG(Electric Program Guide:電子番組ガイド)データを利用した予約録画動作を行うことが可能とされる。つまり、例えばEPGデータに基づき放送番組の一覧を外部のディスプレイ装置など(図示せず)に表示させ、この一覧からユーザに所望の放送番組を指定させる。そして、指定された放送番組の番組情報を上記EPGデータから取得してそれを録画予約リストに追加し、この録画予約リストの内容に基づき放送番組の受信・選局を行ってそれをHDD14に記録するようにされる。
さらに、記録装置2は、ネットワーク4を介したデータ通信を行うことが可能に構成されており、HDD14に録画されたコンテンツをネットワーク4を介して接続された外部の記録装置2に対して転送することができるようにされている。
【0020】
図2は、図1に示される記録装置2の内部構成を示すブロック図である。
なお、図2においては、説明の便宜上、放送信号に含まれるビデオデータについての復調・選局・記録動作についてのみ説明するものとし、オーディオデータについての説明は省略するものとする。
【0021】
先ず、この図2においては、図1に示したチューナ部3が示されている。
このチューナ部3には、図示するようにして外部に設けられたアンテナ15により受信され所定の高周波信号に変換された地上波デジタル放送による放送信号が入力される。
チューナ部3は、このように所定の周波数に変換された受信信号から後述するCPU(Central Processing Unit)10の指示に基づき決定された所定のキャリアを受信し、また受信したキャリアに対して例えばビタビ復調処理等の復調処理や誤り訂正処理等を施してTS(Transport Stream)を得るようにされる。
【0022】
なお、このチューナ部3を始めとして、以下で説明するデマルチプレクサ4、暗号化/復号化器5、アクセスユニット検出器6、ハッシュ値計算器7、ネットワークコントローラ9、HDD14の各部は、図示するようにしてバス8を介してCPU10と接続されており、CPU10はこのバス8を介して各部との間でデータ通信を行うことが可能とされる。
【0023】
ここで、地上波デジタル放送を始めとしたデジタルテレビジョン放送の規格によるTSは、周知のように、例えばMPEG(Moving Picture Experts Group)−2方式などの符号化方式に従って、複数のプログラム(番組)のビデオ信号を圧縮した圧縮データと、各種の付加情報が多重化されている。上記ビデオ信号を圧縮した圧縮データは、ES(Elementary Stream)として多重化される。また、放送側が挿入する付加情報としては、PAT(Program Association Table)、PMT(Program Map Table)などのテーブルを格納するPSI(Program Specific Information:番組特定情報)や、SI(Service Information:番組配列情報)などが挙げられる。
そして、上記情報の多重化は、TSを所定データサイズのトランスポートストリーム・パケット(TSパケット)により形成するようにして、このTSパケットに対して上記ES及び各種付加情報を格納することにより行われる。
【0024】
デマルチプレクサ4は、チューナ部3から出力されるTSからPSI(Program Specific Information:番組特定情報)のパケットを取得し、その選局情報を更新すると共に、TSにおける各チャンネルのコンポーネントPID(Program ID)を得て、CPU10に供給する。CPU10では、取得したPIDを受信信号処理に利用することになる。
【0025】
また、デマルチプレクサ4は、CPU10により設定されたフィルタ条件に従って、チューナ部3から供給されるTSから必要なTSパケットを分離する。これにより、デマルチプレクサ4においては、目的とする1つのプログラムについてのTSパケットとして、所定の符号化方式(例えばMPEG−2方式)により圧縮されたビデオデータのTSパケットを得ることになる。すなわち、これによって実質的な選局動作が行われたことになる。
なお、このような選局動作により得られた圧縮ビデオデータは、所要の放送局により放送されるコンテンツ(放送コンテンツ)となるものであることから、以下コンテンツデータとも呼ぶこととする。
また、放送方式によってはコンテンツにCA(Conditional Access)がかかっており、そのための暗号の復号化を行う必要があるが、ここではその説明については省略する。
【0026】
また、デマルチプレクサ4は、上記TSから必要に応じてEPGデータを抽出する動作も行う。抽出したEPGデータはCPU10に転送され、例えば電子番組ガイド表としてのオンスクリーンディスプレイ画像データの表示処理や、録画予約リストの生成等に用いられることになる。
【0027】
デマルチプレクサ4は、上記のようにしてTSから取得した圧縮ビデオデータを暗号化/復号化器5に対して供給するようにされる。
暗号化/復号化器5は、必要に応じて圧縮ビデオデータについて暗号化処理を施す。チューナ部3→デマルチプレクサ4を介して得られた放送コンテンツの録画時には、このようにして暗号化/復号化器5により必要に応じて暗号化処理の施された圧縮ビデオデータがバス8を介してHDD14に供給され、記録される。
また、HDD14に録画された放送コンテンツの再生時には、暗号化/復号化器5は、バス8を介してHDD14から供給される圧縮ビデオデータについて必要に応じて暗号化復号処理を施すようにされる。
【0028】
また、デマルチプレクサ4は、上記のようにしてTSから取得した圧縮ビデオデータを、図示するようにしてアクセスユニット検出器6、ハッシュ値計算器7に対しても供給するようにされている。
【0029】
アクセスユニット検出器6は、供給される圧縮ビデオデータの各アクセスユニットのタイミングを検出するようにされる。そして、このようにして検出した各アクセスユニットのタイミングをハッシュ値計算器7に指示するようにされる。
また、このアクセスユニット検出器6では、このようなアクセスユニットごとのタイミング検出の過程で各アクセスユニットを識別するための識別情報が得られる。このようなアクセスユニットごとの識別情報はバス8を介してCPU10に供給される。
【0030】
ハッシュ値計算器7は、デマルチプレクサ4から供給される圧縮ビデオデータについて、上記アクセスユニット検出器6から指示されるタイミングで区切られるデータ部分ごとに、そのデータ値に基づくハッシュ値を計算するようにされる。すなわち、これによってハッシュ値計算器7は、次の図3に模式的に示すようにして、圧縮ビデオデータのアクセスユニットごとに、そのハッシュ値を計算するようにされる。
【0031】
ここで、実施の形態で言う上記「アクセスユニット」とは、その圧縮データをデコード(伸張)することで或る意味のあるデータが得られる最小のデータ単位を指す。具体的に、この場合のMPEG−2方式による圧縮ビデオデータについて言えば、GOP(Group Of Picture)の単位となる。
【0032】
図2に戻り、上記ハッシュ値計算器7は、計算したハッシュ値をバス8を介してCPU10に供給するようにされる。
【0033】
CPU10は、起動されたプログラムに基づいて記録装置2の全体の制御、演算処理を行う。例えばユーザに対する入出力動作、HDD14への各種データの記録や管理情報の作成・更新等を行う。
特に、この場合のCPU10は、先に述べたデマルチプレクサ4により抽出されるEPGデータに基づく予約録画動作のための処理を行うようにされる。具体的には、先ず上記EPGデータに基づき、例えば図示されない外部のディスプレイ装置に電子番組ガイド表としての画像データを表示させる。なお、この番組ガイド表は、番組情報の閲覧、番組の選択などのためのGUI(Graphic User Interface)画像として機能する。
そして、このようなGUIとしての電子番組ガイド表上で番組が指定されることに応じ、EPGデータから指定された番組のタイトル、録画時間(録画開始時刻、録画終了時刻)、放送チャンネルの情報を取得し、それらの情報を録画予約リストに追加する。そして、このような録画予約リストに登録された録画時間に指定放送チャンネルの放送コンテンツがHDD14に記録されるように、必要な各部を制御するようにされる。
なお、このようなEPGデータに基づく予約録画動作については既に公知でありここでの詳細な説明は省略する。また、EPGデータに基づく予約録画動作としては、このような電子番組ガイド表からの番組指定に基づき行われるものに限らず、例えば既に行われているように入力されたキーワードを含む番組や指定されたジャンルに属する番組を自動的に録画することも可能とされているものとする。
【0034】
また、このようなEPGデータに基づく予約録画動作以外にも、録画時間と放送チャンネルとの指定に応じた予約録画動作も可能とされる。この場合、ユーザからは後述するユーザインタフェース11を介した操作入力により、録画時間と放送チャンネルの情報が指示される。なお、このような録画時間・放送チャンネルの指定による録画予約時には、同じくユーザインタフェース11を介した操作入力により録画コンテンツのタイトルの情報も入力することができる。或いは、操作入力された録画時間と放送チャンネルとの情報に基づき、EPGデータから該当するタイトルの情報を自動的に取得するように構成することもできる。
【0035】
ここで、上記のようなEPGデータに基づく予約録画動作が行われた場合は、HDD14に対しては、番組単位のコンテンツデータ(この場合は圧縮ビデオデータ)が記録されることになる。
また、EPGデータに基づかず、上述のような録画時間・放送チャンネルの指定に基づき行われた録画動作が行われた場合には、その指定された録画開始時刻から録画終了時刻までの一連のコンテンツデータが記録される。
なお、これら何れの場合としても、録画動作が行われた場合には、HDD14に対しては録画開始から録画終了までの一連のコンテンツデータが記録されることに変わりはない。以下では、このようにして録画開始から録画終了までで記録された一連のコンテンツデータの単位のことを、「プログラム単位」と呼ぶこととする。
【0036】
また、CPU10は、上記のような予約録画動作時には、EPGデータに基づき生成した録画予約リストに登録される録画時間(録画開始時刻・録画終了時刻)の情報と、放送チャンネルの情報とに基づき、上記録画開始時刻に上記放送チャンネルが受信・選局されるようにチューナ部3、デマルチプレクサ4に対する制御を行う。また、録画時間と放送チャンネルの指定に基づく録画動作時においても、同様に指定された録画開始時刻に指定された放送チャンネルが選局されるようにチューナ部3、デマルチプレクサ4に対する制御を行う。
ここで先の説明によれば、このような選局動作によりデマルチプレクサ4にて得られたコンテンツデータ(圧縮ビデオデータ)は、暗号化/復号化器5に供給され必要に応じて暗号化処理が施されるが、CPU10はこのように暗号化/復号化器5を経たコンテンツデータがHDD14に記録されるように制御する。
図2では、このようにして録画動作によりHDD14に記録されたコンテンツデータを、コンテンツ14aとして示している。
【0037】
また、特に本実施の形態の場合、CPU10は、このような放送コンテンツの録画時において、暗号化/復号化器5より出力されHDD14に記録された圧縮ビデオデータの各アクセスユニットごとに、ハッシュ値計算器7により計算されたハッシュ値が対応づけられるように制御を行うようにされる。
このようにして、各アクセスユニットに対しそのハッシュ値が対応づけられるようにするために、CPU10は、HDD14におけるコンテンツ管理情報14bの生成及びその更新を行うようにされている。
【0038】
図4は、HDD14に格納されるコンテンツ管理情報14bのデータ構造を示すデータ構造図である。
図4において、このコンテンツ管理情報14bとしては、図示する「アクセスユニット」として、HDD14に記録される全てのアクセスユニットの情報が格納される。この「アクセスユニット」の情報としては、例えばHDD14上の各アクセスユニットの記録アドレスの情報が格納される。
そして、これら「アクセスユニット」に対しては、それぞれ同じプログラム単位のコンテンツデータを構成するものごとに、図示するようにして「タイトル」、「録画時間」、「ch」、「その他属性情報」、「有効/無効フラグ」の情報が対応づけられている。
【0039】
上記「タイトル」の情報は、例えば番組のタイトル名の情報であり、そのプログラム単位のコンテンツデータがEPGデータに基づく予約録画動作により記録されたものである場合には、電子番組ガイド表において指定された番組と対応づけられた番組タイトル名の情報が格納されることになる。或いは、そのプログラム単位のコンテンツデータが録画時間・放送チャンネルの指定に基づき行われた録画動作により記録された場合には、それら録画時間・放送チャンネルの情報と共に入力されたタイトルの情報、または録画時間・放送チャンネルの情報に基づきEPGデータから自動的に取得した番組のタイトル名の情報が格納されるものとなる。
【0040】
また、上記「録画時間」の情報は、そのプログラム単位のコンテンツデータについての録画開始時刻、録画終了時刻を示すものであり、また上記「ch」はそのプログラム単位のコンテンツデータを放送した放送チャンネルを示す情報となる。これら「録画時間」、「ch」の情報についても、そのプログラム単位のコンテンツデータがEPGデータに基づく予約録画動作により記録されたものである場合には、電子番組ガイド表において指定された番組と対応づけられた録画時間、放送チャンネルの情報が格納されることになる。また、そのプログラム単位のコンテンツデータが録画時間・放送チャンネルの指定に基づき行われた録画動作により記録された場合には、それら指定された録画時間・放送チャンネルの情報が格納されるものとなる。
【0041】
また、上記「その他属性情報」は、特にそのプログラム単位のコンテンツデータがEPGデータに基づく予約録画動作により記録されたものである場合に付されるものであり、例えば番組出演者名、番組内容の解説情報など、上記タイトル、録画時間(放送時間)、ch以外でEPGデータに含まれる情報を包括的に示したものである。
なお、以下では、このような「その他属性情報」を含め、プログラム単位のコンテンツデータごとに付される上記タイトル、録画時間、chの情報を総称して、「付加情報」と呼ぶこととする。
【0042】
また、さらにこの場合、各プログラム単位のコンテンツデータの区切りごとには、それぞれ図示する有効/無効フラグの情報も対応づけられる。この有効/無効フラグの情報は、デジタル放送において規定されるコピーワンスの制限に対応した動作を行うために付される情報であるが、これについては後述する。
【0043】
そして、コンテンツ管理情報14bにおいて、それぞれの「アクセスユニット」に対しては、図示するようにしてそのハッシュ値の情報が対応づけられたものとなっている。
このハッシュ値の情報は、録画動作時において、ハッシュ値計算器7からバス8を介して供給されるハッシュ値の情報が格納されたものである。
【0044】
ここで、先に述べたように録画動作時には、CPU10に対しては、ハッシュ値計算器7によりアクセスユニットごとに計算されたハッシュ値の情報が供給されるようになっている。そして、先の説明によると、録画動作時には、これと並行してCPU10にはアクセスユニット検出器6にて取得された各アクセスユニットごとの識別情報が順次供給されるようになっている。このことでCPU10は、HDD14に記録される各アクセスユニットと、そのアクセスユニットに基づきハッシュ値計算器7にて計算されたハッシュ値との対応関係を把握することができるようになっている。
【0045】
CPU10は、例えば録画動作の終了に応じて行われるコンテンツ管理情報14bの更新処理時において、このようにして把握された対応関係により「アクセスユニット」の情報とハッシュ値の情報とが対応づけられて格納されるように、コンテンツ管理情報14bの更新処理を実行するようにされている。
これによってHDD14に記録された各アクセスユニットに対し、そのハッシュ値を対応づけることができる。
【0046】
説明を図2に戻す。
上記のようにしてCPU10は、コンテンツ管理情報14bによってプログラム単位のコンテンツデータについてはその付加情報と有効/無効フラグとを対応づけ、さらにプログラム単位のコンテンツデータを構成する各アクセスユニットに対してはそのハッシュ値を対応づけるようにしている。
【0047】
そして、本実施の形態の場合、CPU10は、このようなコンテンツ管理情報14bによるコンテンツデータの管理を行うようにされると共に、図示するHDD14内の在数値管理情報14cにより、各アクセスユニットごとにそれらの記録個数を管理するようにもされている。
【0048】
図5は、上記在数値管理情報14cのデータ構造を示している。
この在数値管理情報14cとしては、図示するようにしてHDD14に記録された各アクセスユニット(例えばこの場合のその記録アドレス)に対し、そのハッシュ値と、さらにその在数値の情報とが対応づけられたものとなっている。
なお、このような在数値の情報としても、先の有効/無効フラグの情報と共にコピーワンスの制限に対応した動作時に用いられる情報となる。これら有効/無効フラグ及び在数値の情報を用いて行われることになるコピーワンス制限に対応した動作については後述する。
【0049】
再び説明を図2に戻す。
CPU10に対しては、図示するROM(Read Only Memory)12、RAM(Random Access Memory)13が備えられている。
上記ROM12には、CPU10の動作プログラム、プログラムローダー等が記憶される。特に本実施の形態の場合、このROM12に対しては、後述する第1の実施の形態または第2の実施の形態としての動作を実現するための処理動作(図12または図17)をCPU10に実行させるためのプログラム12aも格納される。
【0050】
また、上記RAM13には、CPU10がプログラムを実行する上でのデータ領域、タスク領域が一時的に確保される。
【0051】
また、CPU10に対しては、ユーザが当該記録装置2に対して各種の指示や情報入力を行うためのユーザインタフェース11も設けられる。
このユーザインタフェース11は、記録装置2に対して設けられた各種の操作子と、図示されないリモートコマンダからの操作信号を受光するための受光部とを包括的に示している。
ユーザインタフェース11は、上記各操作子ごとの操作情報(操作信号)、又は上記リモートコマンダ上の各種操作子ごとの操作情報をCPU10に供給するようにされる。CPU10はユーザインタフェース11からの操作情報に応じた処理動作を実行し、これによってユーザの指示に応じた動作や情報入力が実現されるようになっている。
【0052】
また、記録装置2には、図示するネットワークコントローラ9が設けられる。このネットワークコントローラ9は、図示するネットワーク端子Tntを介して図1に示したネットワーク4と接続されており、当該ネットワーク4を介して接続された外部装置との間でデータ通信を行う。
ネットワークコントローラ9は、CPU10の制御に基づいて送信データのエンコード処理、受信データのデコード処理を行う。エンコードされた上記送信データについては、ネットワーク4を介して所定の外部装置(特にこの場合は外部の記録装置2)に対して送信する。またネットワーク4を介して外部の記録装置2などの外部装置から送信されてきた信号を受信し、これをCPU10に受け渡すようにされる。
【0053】
ここで、これまでの説明によると、本実施の形態の記録装置2では、コンテンツデータを記録するにあたってはそのハッシュ値を計算し、このハッシュ値をそのコンテンツデータと対応づけて記録するようにしている。
このようにしてコンテンツデータに基づき計算されたハッシュ値は、コンテンツデータのデータ内容と一対一の関係を有する数値が得られる。すなわち、このようなハッシュ値は、コンテンツデータのデータ内容を表す識別子として利用することができる。このことから上記のようにコンテンツデータに対してそのハッシュ値を対応づけて記録する本実施の形態によれば、コンテンツデータに対して、そのデータ内容を表す識別子を対応づけて記録することができる。
【0054】
このようにしてコンテンツデータに対しそのデータ内容を表す識別子として機能するハッシュ値を対応づけて記録しておくことができれば、例えば複数のコンテンツデータについてそれらの内容が一致しているか否かについての判別は、それらに対応づけられたハッシュ値同士を照合した結果に基づき行うことができる。
これによれば、例えば従来のようにコンテンツデータのデータ内容同士を照合するといった手間を省くことができ、各コンテンツデータのデータ内容の一致/不一致の判別処理に要する時間を大幅に短縮することができる。
【0055】
<第1の実施の形態>
[第1の実施の形態としての動作]
続いては、上記により説明した実施の形態としての記録装置2を用いて構成することのできる、第1の実施の形態としての転送システム1の動作について、次の図6〜図11を参照して説明する。
なお、これら図6〜図11においては、先の図1に示したネットワーク4は省略して示しているが、実際には図中2つの記録装置2、2はネットワーク4を介して接続されて互いにデータ通信が可能な状態にあるとする。
また、これらの図においては、図中左側に示す記録装置2が、転送すべきコンテンツデータが記録されている転送元の記録装置2であるものとし、また図中右側に示す記録装置2が、コンテンツデータの転送先となるべき転送先の記録装置2であるとする。
【0056】
図6は、第1の実施の形態の転送システム1の動作について、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを模式的に示した図である。
先ず、この図6においては、説明の簡単のために、転送元の記録装置2に対しては、プログラム単位のコンテンツデータが1つのみ記録されている場合を示している。この場合のプログラム単位のコンテンツデータとしては、図示するようにして4つのアクセスユニットACUより成るものとして例示している。そして、これら各アクセスユニットACUに対しては、それぞれそのハッシュ値HS(H1〜H4)が対応づけられると共に、在数値EXAも対応づけられている。ここでは、在数値EXAは「在」の文字の後に示される数値によりその個数を表している。具体的にこの場合の各アクセスユニットACUに対しては、在数値EXAとして全て「1」を表す情報(「在1」)が対応づけられている。
その上で、これら4つのアクセスユニットACUの全体に対しては、コンテンツ管理情報14bにより、図中の破線で囲うようにしてタイトルI1、録画時間I2、chI3、有効/無効フラグI5の情報が対応づけられて1つのプログラム単位のコンテンツデータとして管理されるものとなっている。
この場合、タイトルI1は「7時のニュース」であり、録画時間は「5/29 7:00〜7:50」、chI3は「ch4」、有効/無効フラグI4は「有効」を示す値が対応づけられているとする。
【0057】
なお、ここでは図示の都合上、コンテンツ管理情報14bによりプログラム単位のコンテンツデータごとに対応づけられる付加情報として、上記のようにしてタイトルI1、録画時間I2、chI3のみを示しているが、実際には先の図4においても示したように「その他付加情報」も対応づけられたものとなる。
このことは図6を始めとして以下で説明する図7〜図11、及び第2の実施の形態における図13〜図16についても同様である。
【0058】
上記のようにして転送元の記録装置2にコンテンツデータが記録されていることを前提として、以下、実際の転送動作について説明していく。
先ず、転送動作が行われるにあたっては、図6中<1>と示すようにして、転送元の記録装置2において、HDD14に記録されるコンテンツの外部の記録装置2(転送先の記録装置2)への転送指示が行われることになる。
この場合、HDD14へのコンテンツデータの記録はプログラム単位により行われるので、このような外部の記録装置2へのコンテンツの転送指示としても、プログラム単位のコンテンツデータを指定して行われるものとなる。
具体的に、このような転送すべきコンテンツデータの指定としては、例えば外部のディスプレイ装置にHDD14に記録されるプログラム単位のコンテンツデータの一覧をGUIとして表示(例えばそれぞれに対応づけられるタイトル、録画時間、chを表示)させ、このGUI上にてその受け付けを行うようにされる。
【0059】
このようなコンテンツデータの外部の記録装置2への転送指示が行われたことに応じ、転送元の記録装置2においては、図中<2>と示すようにして指示されたコンテンツの付加情報と全アクセスユニットのハッシュ値を転送先の記録装置2に対して送信するようにされる。
つまり、先に説明したコンテンツ管理情報14bに基づき、転送指示されたコンテンツデータ(プログラム単位)と対応づけられている付加情報(「タイトル」「録画時間」「ch」「その他付加情報」)と、同コンテンツデータを構成する全てのアクセスユニットのハッシュ値とを取得し、図2に示したネットワークコントローラ9によりそれらをネットワーク4を介して転送先の記録装置2に対して送信する。
【0060】
転送先の記録装置2では、このような転送元の記録装置2からの付加情報とハッシュ値とが受信されることに応じ、図中<3>と示すようにして、一致するコンテンツの有無を判別するようにされる。
すなわち、先ずは転送元の記録装置2から受信された上記付加情報と、自らが保持するコンテンツ管理情報14bにより管理される全ての付加情報とを照合することで、プログラム単位で一致するコンテンツデータがHDD14内に記録されているか否かを判別するようにされる。
【0061】
次の図7〜図11では、この図6<3>の判別により、転送先の記録装置2に転送指示されたコンテンツデータと同じコンテンツデータがないとされた場合と、一致するコンテンツデータがあるとされた場合(全く同じコンテンツのとき)と、一致するコンテンツデータがあるとされた場合(完全一致ではない場合)との、それぞれの場合に対応して行われる動作について模式的に示している。
【0062】
図7は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示している。
具体的に、この場合における転送先の記録装置2(図中右側)に対しては、図7(a)に示すようにしてタイトルI1が「月9ドラマ」、録画時間I2が「5/29 21:00〜22:00」、chI3が「ch8」の付加情報により特定されるプログラム単位のコンテンツデータが1つのみ記録されている場合を例示している。この「月9ドラマ」としてのプログラム単位のコンテンツデータを構成する各アクセスユニットACUは4つであるが、それぞれのハッシュ値HSとしては、図示するようにして「H8〜H11」と、転送元の記録装置2に記録される「7時のニュース」によるプログラムを構成するアクセスユニットACUのハッシュ値HS(H1〜H4)とは異なるものとなっている。
なお、この場合、各アクセスユニットACUに対応づけられる各在数値EXAの値は全て「1」であり、当該「月9ドラマ」としてのコンテンツデータは1つのみが記録されていることが示されている。また、このようにしてコンテンツデータが記録されているもとして管理されていることに応じ、有効/無効フラグI4の値としては「有効」を示す値が対応づけられている。
【0063】
このようにして、転送先の記録装置2において、転送元で転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがないとされた場合、転送先の記録装置2では、先ずは図7(a)中の<4>と示すようにして、転送指示コンテンツの全アクセスユニットの送信要求を転送元の記録装置2に対して行うようにされる。
【0064】
この送信要求を受け、転送元の記録装置2では、図7(a)中<5>と示すようにして転送指示コンテンツの全アクセスユニットを転送先の記録装置2に対して送信するようにされる。つまり、HDD14に記録されるアクセスユニットACUのうち、要求された全てのアクセスユニットを転送先の記録装置2に対して送信するようにされる。
【0065】
このようにして先の送信要求に応じて転送元から送信されたアクセスユニットが受信されることに応じ、転送先の記録装置2では、図7(a)中<6>と示すようにして、受信したアクセスユニットとそのハッシュ値・付加情報を対応づけて記録するようにされる。つまり、先ずは受信したアクセスユニットをHDD14に対して記録する。そして、これら記録したアクセスユニットに対し、先の図6<2>の動作により転送元の記録装置2から受信したハッシュ値がそれぞれ対応づけられ、且つ記録されたアクセスユニット全体に対しては同じく先の図6<2>の動作により転送元の記録装置2から受信した付加情報が対応づけられるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
【0066】
この<6>の動作が行われることにより、転送先の記録装置2におけるコンテンツデータの管理状態は、図7(b)に示すものとなる。
つまり、図示するようにしてこれまで「月9ドラマ」のタイトルによるプログラムのみが記録されていた状態から、転送元にあった「7時のニュース」のタイトルを有するプログラムが新たに追加記録された状態となる。換言すれば、転送元にあった「7時のニュース」のタイトルを有するプログラムがそのまま転送先に移動してきた状態となる。
なお、このようにして転送先にコンテンツデータが転送されてきたときには、そのコンテンツデータが存在しているものとして扱われるべきであるので、図示するようにして各在数値EXAとしては「1」の値が対応づけられるようにする。また、有効/無効フラグI4としても「有効」を示す値が対応づけられるようにする。
【0067】
一方、転送元の記録装置2では、先の図7(a)<5>により転送指示コンテンツの全アクセスユニットを送信すると、図7(b)の<7>と示すようにして、送信した全てのアクセスユニットの在数値を「−1」する(デクリメントする)ようにされる。
その上で、在数値がすべて「0」であるなら、有効/無効フラグを「無効」に更新するようにされる。
【0068】
ここで、実施の形態の記録装置2としては、地上波デジタル放送についての録画を行うように構成されているが、先にも述べたようにデジタル放送においてはコピーワンスの制限が課せられている。コピーワンスの制限がある場合には、一度HDD14に放送コンテンツが記録されると、そのコンテンツはいわゆるムーブしか許可されない状態となる。このことから、転送元の記録装置2では、転送対象となったコンテンツが消去されたものとして扱われるようにしなければならない。
【0069】
このことを考慮し、本実施の形態では、上記のようにして転送先の記録装置2に送信したコンテンツデータについては、転送元でその在数値EXAをデクリメントするようにされ、これに応じ各アクセスユニットの在数値がすべて「0」となれば、有効/無効フラグI4を「無効」に更新するようにしている。
このようにしてプログラム単位のコンテンツデータを構成する各アクセスユニットの在数値を管理し、それが「0」となった場合に有効/無効フラグを「無効」とすることで、転送先に指定コンテンツを転送(この場合はムーブ)し、転送元にそのコンテンツが無くなったとされた場合に対応して、当該コンテンツが消去されたものとして扱うことができるものとなる。
【0070】
なお、確認のために述べておくと、実施の形態の転送システムにおいては、記録装置2には同じ内容のプログラム単位のコンテンツデータが複数記録される場合も想定できる。例えば、各記録装置2にて同じ放送コンテンツについての録画を行って、一方の記録装置2から他方の記録装置2にそのコンテンツデータを転送した場合などがこれに該当する。
このように同じプログラムが一方の記録装置2に複数記録されていた場合に、そのうちの一方を他方の記録装置2に転送した場合、転送元の記録装置2では、上記と同様にそのプログラムを構成するアクセスユニットの在数値をデクリメントするようにされる。このようにして転送指示されたコンテンツデータについてはそれを構成する全てのアクセスユニットの在数値をデクリメントするようにされていることで、コピーワンス制限に対応して、HDD14に記録されるアクセスユニットの個数を適正に管理することができる。
【0071】
続いて、図8は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示している。
すなわち、図8(a)において示すように、転送先の記録装置2においても、転送元に記録されるものと全く同内容のプログラム単位のコンテンツデータが記録されている場合である。
【0072】
このようにして全く同じコンテンツデータが記録されていた場合、転送先の記録装置2では、図8(a)の<8>と示すようにして全一致通知を転送元の記録装置2に対して行うようにされる。
【0073】
そして、この全一致通知を受けた転送元の記録装置2では、<9>と示すようにして、転送指示されたコンテンツの全アクセスユニットの在数値をデクリメント(「−1」)するようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされる。
このような動作に応じた転送元の記録装置2の状態は、次の図8(b)の左側に示すものとなる。
【0074】
また、上記全一致通知を行った転送先の記録装置2では、図8(a)の<10>と示すようにして、該当コンテンツの全アクセスユニットの在数値を「+1」(インクリメント)するようにされる。つまり、先の図6<3>の判別により転送指示コンテンツと一致するとされたプログラム単位のコンテンツデータを構成する全てのアクセスユニットの在数値EXAをインクリメントするものである。
【0075】
そして、この場合、転送先の記録装置2において記録されていた、上記転送指示されたコンテンツデータと一致するとされたコンテンツデータの有効/無効フラグは、図示するようにして「有効」となっている。このことに応じ、転送先の記録装置2では、転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新するようにされる。
すなわち、次の図8(b)に示されるようにして、転送指示コンテンツと一致するとされたプログラム単位のコンテンツデータ(ハッシュ値HS=H1、H2、H3、H4によるアクセスユニット)に対し、同じ内容の付加情報が二重に対応づけられて、あたかも同一のプログラム単位のコンテンツデータが2つ存在しているように管理されるように、コンテンツ管理情報14bの内容を更新するようにされる。
このようなコンテンツ管理情報14bの更新処理が行われることで、例えばHDD14に記録されるプログラム単位のコンテンツデータの一覧をユーザに提示するといったときに、同一のコンテンツが2つ存在しているものとして提示することができるようになる。
【0076】
なお、この図8では、転送先において転送元で転送指示されたコンテンツデータと一致するコンテンツデータが「有効」であるものとして記録されている場合を例示したが、転送先において転送指示されたコンテンツデータと一致するコンテンツデータが「無効」とされている場合も想定され得る。例えば、先に例示したように各記録装置2において同じ放送コンテンツについて録画を行った後に、一方の記録装置2が他方の記録装置2に対してそのコンテンツデータを転送したことを想定した場合の、転送元の記録装置2の状態がこれに該当する。
【0077】
このようにして、転送先の記録装置2において転送指示されたコンテンツデータと一致するコンテンツデータが「無効」とされていた場合、転送先の記録装置2では、先の<8>による全一致通知を行った後、次の図9(a)の<10>と示すように全アクセスユニットの在数値をインクリメントした後、有効/無効フラグを「有効」に更新する動作のみを行うようにされる。
つまり、これによって在数が「0」個で「無効」であるとして管理されていた該当コンテンツが、「1」個存在する「有効」なコンテンツデータとして管理されるように更新されたことになる。
【0078】
また、次の図10は、一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示している。
具体的にこの場合、転送先の記録装置2(図中右側)に記録されるコンテンツデータとしては、図10(a)に示すようにしてタイトルI1が「7時のニュース」、chI3が「ch4」であり、タイトルI1とchI3とが転送元に記録されるコンテンツデータと一致したものとなっているが、録画時間I2が「5/29 7:00〜7:30」となっており、転送元に記録されるコンテンツデータの録画時間I2「5/29 7:00〜7:50」と比較して20分短いものとなっている。
また、これに伴い、転送先の記録装置2に記録されるアクセスユニットとしては、転送元に記録されるハッシュ値HS=H4によるアクセスユニットが存在しないものとなっている。
例えばこのような各記録装置2におけるコンテンツの記録状態は、転送元の記録装置2では電子番組ガイド表から「7時のニュース」の番組を指定した録画が行われ、転送先の記録装置2では録画時間「7:00〜7:30」と「ch4」とを指定した録画が行われた場合などが想定される。
【0079】
なお、ここでは20分の時間長に対応したアクセスユニットの個数が1つであるかのように説明しているが、これは実際における1アクセスユニットの時間長を示しているものではない。
【0080】
このようにして、プログラム単位では一致するコンテンツデータがあるが、そのデータ内容は完全一致しないとされた場合、転送先の記録装置2では、図10(a)の<11>と示すようにして、先ずは一致しないアクセスユニットの送信要求を転送元の記録装置2に対して行うようにされる。
【0081】
この送信要求を受けた転送元の記録装置2では、<12>と示すように、要求されたアクセスユニットを転送先の記録装置2に対して送信するようにされる。
【0082】
転送先の記録装置2では、<13>と示すように、先ずは転送元から受信したアクセスユニットを記録するようにされる。そして、次の<14>と示すように、一致するアクセスユニットの在数値をインクリメント(「+1」)するようにされる。すなわち、この場合はハッシュ値HS=H1、H2、H3によるアクセスユニットACUが転送元に記録されるものと一致するので、これらのアクセスユニットACUの在数値EXAをインクリメントするようにされる。
【0083】
その上で、<15>と示されるように、転送指示されたコンテンツが新たに記録されたものとして管理されるように、管理情報を更新するようにされる。つまり、この場合は、次の図10(b)に一点鎖線で囲うように、転送先において元々記録されていたハッシュ値HS=H1、H2、H3によるアクセスユニットに加えて、さらに転送元から転送され記録されたハッシュ値HS=H4によるアクセスユニットを加えたコンテンツデータに対し、転送元から転送された転送指示されたコンテンツデータの付加情報(図6<2>参照)が対応づけられるようにコンテンツ管理情報14bの内容を更新するようにされる。
これによって転送元で転送指示されたコンテンツデータが、転送先に新たに記録されたものとして管理されるようにすることができる。
【0084】
なお、転送元の記録装置2側では、先の<12>により要求されたアクセスユニットを転送先に送信すると、図10(b)の<16>と示すように転送指示コンテンツの全てのアクセスユニットの在数値をデクリメントするようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされる。
【0085】
ここで、この図10でも、転送先においては転送元で転送指示されたコンテンツデータと一致するコンテンツデータが「有効」であるものとして記録されている場合を例示したが、転送先のコンテンツデータが転送元と完全一致していない場合としても、転送先の該当するコンテンツデータが「無効」とされていた場合も考えられ得る。
【0086】
図11では、このような完全一致ではない場合で転送先の該当するコンテンツデータが「無効」とされていた場合に対応した動作を示しているが、この図11と先の図10とを比較してわかるように、このように転送先の該当するコンテンツデータが「無効」とされていた場合としても、転送先の記録装置2では、「有効」とされていた場合と同様の動作を行うようにされている。
すなわち、この場合も転送先の記録装置2では、図11(a)中<13>と示すように転送元から転送要求したアクセスユニットを受信・記録すると、一致するアクセスユニットの在数値をインクリメントする(<14>)と共に、転送指示されたコンテンツが新たに記録されたものとして管理されるように管理情報を更新する(<15>)ようにされている。
【0087】
このような動作が行われることにより、転送先の記録装置2における状態は図11(b)に示すものとなる。
すなわち、この場合もハッシュ値HS=H1、H2、H3によるアクセスユニットACUと転送元から受信・記録したハッシュ値HS=H4によるアクセスユニットACUに対し、転送指示コンテンツの付加情報が対応づけられて新たなコンテンツデータが記録されたものとして管理されるようになる。
そして、このような動作のみとされることで、一方の転送先に元々記録されていたコンテンツデータ(録画時間「7:00〜7:30」)としては、図示するように付加情報が対応づけられた状態は維持されるが、有効/無効フラグI4が「無効」のままの状態となる。このことにより、この場合において2つのコンテンツで共通する部分となるハッシュ値HS=H1、H2、H3のアクセスユニットは、実質的には新たに生成(転送)されたコンテンツ側のみに属するものとして管理されるものとなる。
【0088】
これまでの説明から理解されるように、第1の実施の形態の転送システム1では、一方の記録装置2に記録されるコンテンツデータを他方の記録装置2に転送する際に、転送指示されたコンテンツデータと対応づけられたハッシュ値と、転送先に記録されるコンテンツデータに対応づけられているハッシュ値とを照合し、その照合結果に基づき転送先の記録装置2に転送指示されたコンテンツデータとデータ内容の一致するコンテンツデータがあるか否かを判別するようにしている。その上で、転送先の記録装置2にデータ内容が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータを転送先に対して転送するものとしている。
これにより、データ内容的に同じコンテンツデータがある場合には、そのコンテンツデータの転送が行われないようにすることができ、また、同じコンテンツデータがある場合の重複記録も避けることができる。すなわちこの結果、無駄なデータ転送動作、及び無駄な記録動作を省略することができる。
このように無駄なデータ転送動作、及び無駄な記録動作を省略することができることで、転送時の処理負担の軽減、及び転送完了までの所要時間の短縮化を図ることができる。また、重複記録が防止されることで、記録容量の節約化も図られる。
【0089】
また、本実施の形態の転送システム1では、コンテンツデータをプログラム単位により管理するようにした上で、さらに各プログラム単位のコンテンツデータについては、例えばGOPの単位なるアクセスユニットごとに分けて管理するものとしている。その上で、それらアクセスユニットごとにそのハッシュ値を対応づけるものとしている。
このようにして、プログラム単位のコンテンツデータをアクセスユニットごとに分け、各アクセスユニットにそのハッシュ値を対応づけるものとしておけば、例えば先の図10、図11で例示したようにしてプログラム単位のコンテンツデータとしては一致するが、一方のコンテンツが他方のコンテンツに対し録画時間が短いとされるような場合にも、適正に無駄なデータ転送動作・記録動作の防止を図ることができる。
【0090】
ここで、例えば本実施の形態の如くアクセスユニットごとに分けず、プログラム単位のコンテンツデータ全体で1つのハッシュ値を対応づけておくとした場合を想定しみると、先の図10の例では、転送先のコンテンツデータは転送指示されたコンテンツデータと一致しないものとして判別されることになる。つまり、実際にはほぼ同じデータ部分から成るコンテンツデータについて、それらがデータ内容的に一致していないと判別されてしまう。
このようにそれぞれのコンテンツデータが一致していないとされた場合、先の図7の動作を参照してわかるように、転送元の記録装置2に記録されるコンテンツデータが転送先の記録装置2に対して送信され、新たに記録されてしまうこととなる。すなわち、実際にはほぼ同じデータ部分から成るコンテンツデータであるにも関わらず、別内容のコンテンツデータとしてデータ転送及び記録動作が行われてしまうことになる(具体的に図10の例で言えばHS=H1、H2、H3のアクセスユニットが無駄な転送・記録部分となる)。
このようなことを考慮すると、実施の形態の如くプログラム単位のコンテンツデータをアクセスユニットごとに分け、各アクセスユニットにそのハッシュ値を対応づけるものとすることによっては、無駄なデータ転送動作・記録動作の防止をより確実に図ることができることになる。
【0091】
また、実施の形態では、一方の記録装置2から他方の記録装置2へのコンテンツデータの転送指示が行われたことに応じ、先ずはプログラム単位で付加される付加情報に基づいて、プログラム単位で一致するコンテンツデータが転送先の記録装置2側に存在するか否かを判別するものとしている。
これにより、例えば始めからアクセスユニット単位でハッシュ値の照合を行って転送指示コンテンツとプログラム単位で一致するコンテンツがあるか否かについて判別を行うとした場合と比較すれば、転送先に転送指示コンテンツとプログラム単位で一致するコンテンツデータがあるか否かの判別処理をより高速化することができる。
【0092】
また、本実施の形態の転送システム1では、転送元となった記録装置2において、転送先に転送したコンテンツデータを消去してしまうのでなく、有効/無効フラグにより「無効」とすることで、あくまで消去されたものとして扱われるようにしている。
このことで、再度そのコンテンツデータが外部の記録装置2から転送されるといった場合には、そのコンテンツデータと対応づけられる在数値のインクリメントと有効/無効フラグの「有効」への更新を行うのみで、実質的にコンテンツデータが転送・記録されたものとすることができ、実際のコンテンツデータの転送動作及び記録動作を省略することができる。
【0093】
[処理動作]
次の図12のフローチャートは、上記により説明した第1の実施の形態としての動作を実現するために、記録装置2において実行されるべき処理動作について示している。
この図12に示す処理動作は、図2に示したCPU10がROM12に格納されるプログラム12aに基づいて実行するものである。
【0094】
なお、この図に示す処理動作が行われるにあたっては、先の図1にて示したようにして既に各記録装置2がネットワーク4を介してデータ通信可能に接続されている状態にあるものとする。この場合も、転送元となるべき記録装置2は図中左側に示し、転送先となるべき記録装置2は図中右側に示している。
また、特に転送元となるべき記録装置2では、例えば外部の記録装置2に対して転送すべきコンテンツデータの指定を受け付けるためのGUI画面を、外部のディスプレイ装置などに表示させている状態にあるとする。すなわち、逆を言えば、このようにして転送コンテンツの指定受け付け状態にある記録装置2の方が、転送元となるべき記録装置2となるものである。
【0095】
図12において、先ず、上記のようにして転送コンテンツの指定受け付けのための画面表示状態にある転送元の記録装置2では、ステップS101において、外部記録装置へのコンテンツ転送指示が行われるのを待機するようにされる。つまり、例えば上記のようにして外部のディスプレイ装置などに表示させたGUI上において、外部の記録装置2(転送先の記録装置2)に転送すべきコンテンツデータが指定される操作が行われるのを待機するようにされる。
【0096】
そして、例えば上記GUI上にてコンテンツデータを指定する操作が行われたとして、外部の記録装置2への転送指示が行われたとされた場合は、ステップS102において、転送指示コンテンツの付加情報と全アクセスユニットのハッシュ値を送信するようにされる。
つまり、先ずはHDD14に格納されるコンテンツ管理情報14bに基づき、転送指示されたコンテンツデータと対応づけられている付加情報とそのコンテンツデータを構成する全てのアクセスユニットのハッシュ値とを取得する。そして、それらがネットワーク4を介して転送先の記録装置2に対して送信されるように、ネットワークコントローラ9を制御する。
【0097】
このステップS102の処理を実行すると、後述するステップS103に処理を進めるようにされる。
【0098】
一方で、転送先の記録装置2では、このような転送元の記録装置2からの付加情報とハッシュ値とが受信されるのを、図中ステップS201にて待機するようにされる。
そして、これら付加情報とハッシュ値とがネットワークコントローラ9により受信された場合は、ステップS202において、一致するコンテンツの検索を行う。すなわち、受信された付加情報と、当該転送先の記録装置2側に記録されるコンテンツ管理情報14bにより管理される全てのコンテンツデータの付加情報とを照合した結果に基づき、先ずは転送指示されたコンテンツデータとプログラム単位で一致しているコンテンツデータを検索するものである。
【0099】
ここで、このステップS202の検索処理において、それぞれのコンテンツデータがプログラム単位で一致しているか否かの判別は、上記付加情報のうちの「タイトル」「録画時間」「ch」のみを用いて行うものとされる。
具体的に、この場合においてそれぞれのコンテンツデータがプログラム単位で一致しているか否かの判別は、上記「タイトル」と「ch」の情報については各情報の完全一致を条件とする。一方で「録画時間」の情報については、少なくともそれらが示す時間帯が重なっているか否かを判別するようにされる。
このような判別基準とされていることにより、先の図10にて例示した転送元で転送指示された「7時のニュース」「5/29 7:00〜7:50」「ch4」によるコンテンツと、転送先の「7時のニュース」「5/29 7:00〜7:30」「ch4」によるコンテンツとが、プログラム単位で一致するコンテンツであると判別されるようになっている。
【0100】
続くステップS203では、一致するコンテンツがあるか否かについて判別処理を行うようにされる。
上記ステップS202による検索の結果、プログラム単位で一致するコンテンツデータがないとされて、当該ステップS203にて否定結果が得られた場合は、ステップS204に進み、全アクセスユニットの転送要求を行うようにされる。すなわち、転送指示されたコンテンツデータを構成する全てのアクセスユニットについての転送要求が転送元の記録装置2に対して行われるようにネットワークコントローラ9を制御する。
このステップS204の処理を実行すると、後述するステップS209に処理を進めるようにされる。
【0101】
一方、上記ステップS203において、プログラム単位で一致するコンテンツデータがあるとして肯定結果が得られた場合は、ステップS205に進み、アクセスユニットごとにハッシュ値を照合するようにされる。つまり、上記プログラム単位で一致するとされたコンテンツデータを構成する全アクセスユニットのハッシュ値と、先のステップS201において受信されたハッシュ値とをそれぞれ照合するようにされる。
【0102】
そして、続くステップS206においては、全部一致か否かについて判別処理を行う。すなわち、上記ステップS205の照合結果に基づき、全てのハッシュ値が一致しているか否かについて判別処理を行うことで、上記プログラム単位で一致するとされたコンテンツデータを構成するアクセスユニットと、転送元で転送指示されたコンテンツデータを構成するアクセスユニットとが全て一致しているか否かについて判別するようにされる。
【0103】
上記ステップS206において、全てのハッシュ値が一致してはいないとして否定結果が得られた場合は、ステップS207において、一致しないアクセスユニットの転送要求を行うようにされる。つまり、上記受信されたハッシュ値のうち、上記照合の結果一致しないとされたハッシュ値を指定した転送要求を、転送元の記録装置2に対して行うようにされる。
【0104】
そして、続くステップS208においては、一致するアクセスユニットの在数値を「+1」(インクリメント)するための処理を行うようにされる。つまり、上記照合の結果より、上記受信したハッシュ値と一致するとされたハッシュ値を特定し、在数値管理情報14cにおいてその特定したハッシュ値と対応づけられている在数値がインクリメントされるように、在数値管理情報14cの情報内容を更新するようにされる。
これにより、先のステップS203にてプログラム単位で一致するとされたコンテンツデータを構成するアクセスユニットのうちの、転送指示されたコンテンツデータ側と一致するアクセスユニットの在数値がインクリメントされるものとなる(先の図10<14>を参照)。
このステップS208の処理を行うと、ステップS209に処理を進めるようにされる。
【0105】
なお、ここでは図示の都合上、一致しないアクセスユニットの記録処理(後のステップS210)よりも先に、一致するアクセスユニットの在数値のインクリメント処理(上記ステップS208)が行われるものとして示しているが、このように一致するアクセスユニットの在数値のインクリメント処理を先に行うものとしても、結果的には先の図10にて説明した動作を実現できることに変わりはない。
【0106】
また、上記ステップS206において、全てのハッシュ値が一致するとして肯定結果が得られた場合は、ステップS212に進み、転送元の記録装置2に対し全一致通知を行うようにされる。
【0107】
ここで、転送元の記録装置2では、上述した転送先の記録装置2からの全アクセスユニットの転送要求(S204)、一致しないアクセスユニットの転送要求(S207)、全一致通知(S212)の何れかを、図中ステップS103とステップS104とのループ処理によって待機するようにされる。
つまり、転送元の記録装置2側では、上記ステップS103により、上記全アクセスユニットの転送要求、上記一致しないアクセスユニットの転送要求の何れかがあったか否かについて判別処理を実行するようにされる。そして、これら何れの転送要求もなかったとして否定結果が得られた場合は、ステップS104において、全一致通知があったか否かについて判別処理を行うようにされる。そして、全一致通知がなく否定結果が得られた場合には上記ステップS103に戻り、再度何れかの転送要求があったか否かについて判別処理を行うようにされている。
【0108】
これらステップS103とステップS104とのループ処理において、ステップS103により上記何れかの転送要求があったとして肯定結果が得られた場合は、図示するようにしてステップS105に進み、要求されたアクセスユニットの送信処理を実行する。
すなわち、転送先の記録装置2から全アクセスユニットの転送要求が行われた場合であれば、その要求に応じ、転送指示されたコンテンツデータを構成する全てのアクセスユニットがネットワーク4を介して転送先の記録装置2に対して送信されるように、HDD14とネットワークコントローラ9とに対する制御を行うようにされる。また、転送先から一致しないアクセスユニットの転送要求が行われた場合であれば、当該一致しないアクセスユニットの転送要求により指定されるハッシュ値によって特定されるアクセスユニットがネットワーク4を介して転送先の記録装置2に対して送信されるように、HDD14とネットワークコントローラ9とに対する制御を行うようにされる。
【0109】
そして、続くステップS106においては、転送指示されたコンテンツの全アクセスユニットの在数値を「−1」(デクリメント)するための処理を実行するようにされる。すなわち、転送指示されたコンテンツデータを構成するアクセスユニットと対応づけられる在数値が全てデクリメントされるように、在数値管理情報14cの情報内容を更新する。
【0110】
さらに、次のステップS107においては、在数値が「0」であるなら有効/無効フラグを「無効」に更新するための処理を行うようにされる。つまり、先ずは上記のようにして更新した在数値管理情報14cの情報内容に基づき、転送指示されたコンテンツデータを構成する全てのアクセスユニットの在数値が「0」であるか否かを判別した上で、それらが「0」であった場合にのみ、転送指示されたコンテンツデータと対応づけられる有効/無効フラグの値が「無効」を示す値となるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
【0111】
一方、上述したステップS104において、転送先からの全一致通知があったとして肯定結果が得られた場合は、そのまま上記ステップS106に処理を進めるようにされ、これによって全一致通知であった場合は転送指示されたコンテンツデータの全アクセスユニットの在数値のデクリメント処理(S106)と、在数値が「0」であるなら転送指示されたコンテンツデータの有効/無効フラグを「無効」に更新するための処理(S107)のみが実行されることになる。
【0112】
説明を転送先の記録装置2側に戻す。
転送先の記録装置2では、上述した転送元でのステップS105の処理によって送信されたアクセスユニットが受信されるのを、ステップS209にて待機するようにされている。
そして、転送元からのアクセスユニットが受信された場合は、ステップS210において、先ずは受信されたアクセスユニットの記録処理を実行するようにされる。つまり、受信されたアクセスユニットがHDD14に対して記録されるように制御する。
【0113】
その上で、続くステップS211では、転送指示されたコンテンツが新たに記録されたものとして管理されるように、管理情報を更新する処理を実行するようにされる。
ここで、当該ステップS211が、先のステップS203にてプログラム単位で一致するコンテンツデータがないと判別された以降に実行されるものであるときは、ステップS204にて全アクセスユニットの転送要求を行っていることになる。また、この全アクセスユニットの転送要求に応じ、上記ステップS210の記録処理では、転送指示されたコンテンツデータの全てのアクセスユニットがHDD14に新たに記録されることになる。従ってこの場合、当該ステップS211では、このようにしてHDD14に記録された全てのアクセスユニットに対し、先のステップS201にて転送元より受信した付加情報が対応づけられるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
これによって、転送指示コンテンツとプログラム単位で一致するコンテンツがないとされた場合に対応して、HDD14に新たに記録された全アクセスユニットを対象として、それらが新たに記録されたプログラム単位によるコンテンツデータとして管理されるようにすることができる(先の図7を参照)。
【0114】
一方で、当該ステップS211が、先のステップS203にてプログラム単位で一致するとされたがステップS206にて全てのアクセスユニットが一致するものではないとされた以降に実行されるものであるときは、ステップS207にて一致しないアクセスユニットの転送要求を行っているものとなる。また、この転送要求に応じ、上記ステップS210の記録処理では、転送指示されたコンテンツデータ側と一致しないアクセスユニットのみがHDD14に新たに記録されるものとなる。さらには、これと共に、上述したステップS208の処理によって、転送指示されたコンテンツデータ側と一致するアクセスユニットが特定された状態にある。
これらのことに応じ、この場合のステップS211では、上記ステップS210にて新たに記録されたアクセスユニットと、上記のようにしてステップS208にて転送指示されたコンテンツデータ側と一致するとして特定されたアクセスユニットとに対し、先のステップS201にて受信した付加情報が対応づけられるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
これにより、プログラム単位では一致するが全てのアクセスユニットが一致するものではないとされた場合に対応して、転送先に元々ある転送指示コンテンツ側と一致するとされたアクセスユニットと、転送指示コンテンツ側のみにあって新たに転送先のHDD14に記録されたアクセスユニットとを合わせて、それらが新たに記録されたプログラム単位のコンテンツデータとして管理されるようにすることができる(先の図10、図11を参照)。
【0115】
また、転送先の記録装置2側では、先に説明したステップS212における転送元への全一致通知を行った後には、図示するようにしてステップS213に処理を進めるようにされている。
このステップS213においては、先ずは該当コンテンツの全てのアクセスユニットの在数値をインクリメント(「+1」)する処理を実行するようにされる。すなわち、先のステップS205の処理結果より一致するとされた全アクセスユニットの在数値がインクリメントされるように、在数値管理情報14cの情報内容を更新するようにされる。
【0116】
そして、続くステップS214では、該当コンテンツの有効/無効フラグが「有効」であるか否かについて判別処理を実行するようにされる。つまり、コンテンツ管理情報14bを参照し、先のステップS203の処理結果より転送指示されたコンテンツデータと一致するとされたコンテンツデータと対応づけられている有効/無効フラグの値が「有効」を示す値であるか否かについて判別処理を行う。
【0117】
ステップS214において、上記有効/無効フラグが「有効」であったとして肯定結果が得られた場合は、ステップS215に進み、転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新する処理を実行するようにされる。つまり、このようにして該当コンテンツのフラグが「有効」である場合としては、転送指示されたコンテンツデータとアクセスユニットも全て一致するコンテンツデータが既に記録されたものとして扱われているものとなっている。従ってこのステップS215では、先の図8(b)にて例示したように2つの同一コンテンツが存在するものとして扱われるように、先のステップS205の処理結果より転送指示されたコンテンツ側と一致するとされた全アクセスユニットに対して、さらに先のステップS201にて受信した付加情報も対応づけられるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
【0118】
一方、上記ステップS214において、有効/無効フラグが「有効」ではなかったとして否定結果が得られた場合は、ステップS216において、該当コンテンツの有効/無効フラグを「有効」に更新するための処理を実行するようにされる。すなわち、転送指示されたコンテンツデータと一致するとされたコンテンツデータと対応づけられている有効/無効フラグの値が「有効」を示す値に更新されるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
なお、確認のために述べておくと、本実施の形態では在数値が「0」となったコンテンツデータを有効/無効フラグ=「無効」としてあくまで消去扱いとし、データ自体の消去は行わないので、先の図9にて例示したように全一致するコンテンツデータが「無効」により存在している場合がある。ステップS216としてはこのようなケースに対応して行われる処理である。
【0119】
<第2の実施の形態>
[第2の実施の形態としての動作]
続いては、第2の実施の形態の転送システム20について説明する。
第2の実施の形態の転送システム20としては、転送指示されたコンテンツデータと一致するコンテンツデータがあるか否かの判別処理を、転送元の記録装置2側で行うようにしたものである。すなわち、先の第1の実施の形態の転送システム1では、転送先の記録装置2が、転送元が送信した転送指示コンテンツの付加情報・ハッシュ値を用いて転送指示コンテンツ側と一致するコンテンツデータがあるか否かの判別処理を行っていたが、第2の実施の形態では、転送元の記録装置2が転送先に記録されるコンテンツデータの付加情報・ハッシュ値を取得してこれを行うようにしたものである。
【0120】
なお、第2の実施の形態の転送システム20において、記録装置2の構成は先の図2に示したものと同様となるので図示による説明は省略する。但し、後に明らかとなるように、第2の実施の形態の記録装置2としては、CPU10が転送動作時に行うべき処理内容が異なるものとなるので、これに応じてROM12内に格納されるプログラム12aの内容が第1の実施の形態の場合と異なるものとなる。
【0121】
図13〜図16は、第2の実施の実施としての転送システム20にて行われる動作を模式的に示している。なお、これら図13〜図16においても、先の図6〜図11と同様に図1に示したネットワーク4は省略して示しているが、実際には図中の2つの記録装置2、2はネットワーク4を介して接続されて互いにデータ通信が可能な状態にあるとする。
また、この場合もこれらの図においては、図中左側に示す記録装置2が転送元の記録装置2であるものとし、また図中右側に示す記録装置2が転送先の記録装置2であるとする。
【0122】
また、これら図13〜図16において、各図において示す転送元の記録装置2におけるコンテンツデータの格納状態とのその遷移、及び転送先の記録装置2におけるコンテンツデータの格納状態とその遷移は、それぞれ図13が図6、図14が図7、図15が図8、図16が図10と同様となるので、再度の説明は省略する。
【0123】
図14は、第2の実施の形態の転送システム20の動作として、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを模式的に示している。
先ず、この場合も転送動作が行われるにあたっては、図中<1>と示すようにして、転送元の記録装置2において、プログラム単位によるコンテンツデータの外部の記録装置2(転送先の記録装置2)への転送指示が行われることになる。
この場合も転送すべきコンテンツデータの指定は、例えば外部のディスプレイ装置にHDD14に記録されるプログラム単位のコンテンツデータの一覧をGUI画面として表示させてその受け付けを行うようにされる。
【0124】
このようなコンテンツデータの外部の記録装置2への転送指示が行われたことに応じ、この場合における転送元の記録装置2では、図中<2>と示すようにして、先ずは付加情報・ハッシュ値の送信要求を転送先の記録装置2に対して行う。
つまり、転送先の記録装置2において記録される各コンテンツデータと対応づけられている付加情報とハッシュ値との送信要求を行うようにされる。
【0125】
このような転送元の記録装置2側からの転送要求を受け、転送先の記録装置2では、図中<3>と示すようにして付加情報・ハッシュ値を転送元の記録装置2に対して送信する。つまり、コンテンツ管理情報14bによって各コンテンツデータごとに管理されている付加情報とハッシュ値とを全て取得し、それらを転送元の記録装置2に対して送信するようにされる。
なお、後に説明されるように、この場合において転送先の記録装置2から送信する付加情報は、転送元においてプログラム単位で一致するコンテンツデータの有無を判別するために用いられるものであり、従ってここで転送先の記録装置2が送信すべき付加情報としては、少なくとも「タイトル」「録画時間」「ch」の情報のみが送信されるものとされていればよい。
【0126】
転送元の記録装置2では、このように転送先から送信された全てのコンテンツデータについての付加情報とハッシュ値とを受信すると、<4>と示すようにして、一致するコンテンツデータの有無を判別するようにされる。
すなわち、転送先の記録装置2から受信された全ての付加情報と、転送指示されたコンテンツデータと対応づけられている付加情報とを照合することで、転送先の記録装置2側のHDD14内に、転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータが記録されているか否かを判別するようにされる。
この場合も、各コンテンツデータがプログラム単位で一致しているか否かの判別としては、付加情報における「タイトル」「ch」については完全一致を条件とし、「録画時間」についてはそれぞれが示す時間帯が重なっていることを条件としているものとする。
【0127】
続いて、図14〜図16は、図13の<4>の判別により、転送先の記録装置2に転送指示されたコンテンツデータと同じコンテンツデータがないとされた場合と、一致するコンテンツデータがあるとされた場合(全く同じコンテンツのとき)と、一致するコンテンツデータがあるとされた場合(完全一致ではない場合)の、各場合に対応して行われる動作について模式的に示している。
【0128】
図14は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示している。
このように転送先の記録装置2に転送元において転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがないとされた場合、転送元の記録装置2では、先ずは図14(a)において<5>と示すように、転送先の記録装置2に対し、一致コンテンツ不在通知を行うようにされる。
【0129】
その上で転送元の記録装置2は、図14(a)中の<6>と示すようにして、転送指示コンテンツの全アクセスユニット・付加情報を転送先の記録装置2に対して送信するようにされる。すなわち、転送指示されたコンテンツデータを構成する全てのアクセスユニットと、当該コンテンツデータと対応づけられている付加情報とを転送先の記録装置2に送信するものである。
【0130】
これら転送元の<5><6>の動作に伴い、上記一致コンテンツ不在通知と上記全アクセスユニット・付加情報とが受信された転送先の記録装置2では、図14(a)の<7>と示すように、受信したアクセスユニットと付加情報とを対応づけて記録するようにされる。
つまり、次の図14(b)の右側に示すように、転送元から受信したアクセスユニット(この場合はハッシュ値HS=H1〜H4によるアクセスユニットACU)と、同じく転送元から受信した付加情報(この場合は「7時のニュース」「5/29 7:00〜7:50」「ch4」)とを対応づけて、新たなコンテンツとして記録するようにされる。具体的には、受信したアクセスユニットをHDD14に記録した上で、それらに対し受信した付加情報が対応づけられるようにコンテンツ管理情報14bを更新するようにされる。
このような動作により、この場合も転送先の記録装置2では、一致するコンテンツデータがないとされた場合には、転送元で転送指示されたコンテンツデータとその付加情報とが実際に転送されて、これらが新たに追加記録されるものとなる。
【0131】
なお、この場合としても、上記のようにして転送先にコンテンツデータが転送されてきたときには、そのコンテンツデータが存在しているものとして扱われるべきであるので、図示するようにして各在数値EXAとしては「1」の値が対応づけられるようにする。また、有効/無効フラグI4としても「有効」を示す値が対応づけられるようにする。
【0132】
また一方で、転送元の記録装置2としては、先の図14(a)<6>により全アクセスユニット・付加情報の送信を行うと、図14(b)の<8>と示すようにして、送信した全てのアクセスユニットの在数値をデクリメントするようにされる。
その上で、在数値がすべて「0」であるなら、有効/無効フラグを「無効」に更新するようにされる。
【0133】
また、次の図15は、転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示している。
このようにして全く同じコンテンツデータが記録されていた場合、転送元の記録装置2では、図15(a)の<9>と示すようにして、転送先の記録装置2に対して全一致通知を行うようにされる。
第2の実施の形態の場合、転送元の記録装置2側において、転送先に記録されるコンテンツデータの付加情報に基づいて一致コンテンツの有無を判別するので、このように転送元の記録装置2が転送先に対して行う全一致通知としては、全一致するコンテンツの通知も合わせて行うようにされる。具体的に、この場合の転送元の記録装置2としては、転送指示コンテンツと一致するとされたコンテンツデータの付加情報を含ませた全一致通知を、転送先の記録装置2に対して行うようにされる。
【0134】
なお、この場合も転送元の記録装置2では、このような全一致通知を行った後には、<10>と示すようにして転送指示されたコンテンツの全アクセスユニットの在数値をデクリメントするようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされる。
このような動作に応じた転送元の記録装置2の状態は、次の図15(b)に示すものとなる。
【0135】
一方、上記全一致通知を受けた転送先の記録装置2では、図15(a)の<11>と示すようにして、該当コンテンツの全アクセスユニットの在数値をインクリメントするようにされる。つまり、先ずは上記全一致通知を受信して得られる付加情報に基づき、転送指示コンテンツとプログラム単位で一致するとされたコンテンツデータを特定する。その上で、この特定されたコンテンツデータを構成する全てのアクセスユニットの在数値をインクリメントするものである。
【0136】
そして、この場合としても、完全に一致するコンテンツが転送先にある場合には、元々転送先に記録されていたその一致するとされたコンテンツデータの有効/無効フラグが、「有効」か「無効」かに応じ、転送先において行われるべき動作が異なってくる。
具体的に、一致するとされたコンテンツデータの有効/無効フラグが「有効」であった場合は、図示もしているように、転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新するようにされる。すなわち、次の図15(b)に示されるようにして、転送指示コンテンツと一致するとされたプログラム単位のコンテンツデータ(ハッシュ値HS=H1、H2、H3、H4によるアクセスユニット)に対して同じ付加情報が二重に対応づけられて、あたかも同一のプログラム単位のコンテンツデータが2つ存在しているように管理されるように、コンテンツ管理情報14bの内容を更新するようにされる。
【0137】
また、図示による説明は省略するが、一致するとされたコンテンツデータの有効/無効フラグが「無効」とされていたときには、この場合も有効/無効フラグを「有効」に更新する動作のみを行うようにされる。
つまり、これによって在数が「0」個で「無効」であるとして管理されていた該当コンテンツデータが、「1」個存在する「有効」なコンテンツデータとして管理されるように更新することができる。
【0138】
また、図16は、一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示している。
先ず、このようにプログラム単位では一致するコンテンツデータがあるが、そのデータ内容は完全一致しないとされた場合、転送元の記録装置2では、転送先の記録装置2に対して部分一致通知を行うようにされる。
この部分一致通知としては、図示するように一致コンテンツ・一致アクセスユニットの通知も行うようにされる。すなわち、当該部分一致通知としては、プログラム単位で一致するとされたコンテンツデータを示すための情報と、当該一致するとされたコンテンツデータを構成するアクセスユニットのうち一致するとされたアクセスユニットのハッシュ値とを含んだ通知を行うようにされる。
【0139】
さらに、転送元の記録装置2では、次の<13>と示すように、転送先の記録装置2に対して一致しないアクセスユニットと付加情報の送信を行う。
確認のために述べておくと、上記一致しないアクセスユニットとは、転送元の記録装置2において記録される転送指示されたコンテンツデータを構成するアクセスユニットのうちで、転送先に記録される転送指示コンテンツとプログラム単位で一致するとされたコンテンツデータ側にはなかったアクセスユニットのことである。具体的に図の例で言えば、ハッシュ値HS=H4によるアクセスユニットACUのことである。
また、上記付加情報は、転送指示されたコンテンツデータと対応づけられている付加情報である。
【0140】
これら<12><13>による転送元からの部分一致通知、及び一致しないアクセスユニットと付加情報とを受信した転送先の記録装置2では、図16(b)中<14>と示すようにして、先ずは転送元から受信したアクセスユニットを記録するようにされる。そして、次の<15>と示すように、通知コンテンツにおける一致アクセスユニットの在数値をインクリメント(「+1」)するようにされる。つまり、上記部分一致通知により通知されたプログラム単位で一致するとされたコンテンツデータのうちの、同じく上記部分一致通知により通知された一致アクセスユニットの在数値をインクリメントするようにされる。
具体的に図の例では、この場合もハッシュ値HS=H1、H2、H3によるアクセスユニットACUが転送元に記録されるものと一致するので、これらのアクセスユニットACUの在数値EXAをインクリメントするようにされるものである。
【0141】
その上で、転送先の記録装置2では、次の<16>と示されるように、転送指示されたコンテンツが新たに記録されたものとして管理されるように、管理情報を更新するようにされる。つまり、この場合としても、次の図16(b)にて一点鎖線で囲うように、転送先において元々記録されていたハッシュ値HS=H1、H2、H3によるアクセスユニットACUに加え、さらに転送元から転送され記録されたハッシュ値HS=H4によるアクセスユニットACUも含めたコンテンツデータに対し、同じく転送元から転送された転送指示コンテンツの付加情報が対応づけられるように、コンテンツ管理情報14bの内容を更新するようにされる。
これによって、転送元で転送指示されたコンテンツデータが、転送先に新たに記録されたものとして管理されるようにすることができる。
【0142】
ここで、この図16でも、転送先においては転送元で転送指示されたコンテンツデータと一致するコンテンツデータが「有効」であるものとして記録されている場合を例示したが、第2の実施の形態としても、転送先のコンテンツデータが「無効」として記録されていた場合は、この図に示す「有効」とされていた場合と同じ動作が行われれば良い。
つまり、このように「無効」とされていた場合も、先の<16>により単に転送指示されたコンテンツデータが新たに記録されたものとして管理されるように管理情報を更新する動作を行うことで、元々転送先に記録されていた当該「無効」によるコンテンツデータは、そのまま「無効」のままとして扱われるようにすることができる。
【0143】
なお、一方の転送元の記録装置2側において、先の<13>により一致しないアクセスユニットを転送先に送信した後は、図16(b)の<17>と示すように、転送指示コンテンツの全てのアクセスユニットの在数値をデクリメントするようにされる。そして、この場合も在数値がすべて「0」であるなら有効/無効フラグを「無効」に更新するようにされることになる。
【0144】
上記のようにして、第2の実施の形態の転送システム20は、転送指示されたコンテンツデータと一致するコンテンツデータが転送先の記録装置2において記録されているか否かの判別を、転送先の記録装置2側で行うのではなく、転送元の記録装置2側で行うようにしたものである。
第2の実施の形態の転送システム20としては、この点のみが第1の実施の形態の転送システム1と異なるのみであり、従って先に述べた第1の実施の形態の転送システム1により得られる効果は、この第2の実施の形態の転送システム20によっても同様に得ることができる。
【0145】
[処理動作]
図17のフローチャートは、上記により説明した第2の実施の形態の転送システム20としての動作を実現するために、記録装置2において実行されるべき処理動作について示している。
なお、この図に示す処理動作としても、図2に示したCPU10がROM12内に格納されるプログラム12aに基づいて実行するものである。先にも述べたが、第2の実施の形態の場合、第1の実施の形態の場合とプログラム12aの内容が異なるものとなっている。
また、この図17に示す処理動作が行われるにあたっても、先の図1にて示したようにして既に各記録装置2がネットワーク4を介してデータ通信可能に接続されている状態にあるものとする。またこの場合も、転送元となるべき記録装置2は図中左側に示し、転送先となるべき記録装置2は図中右側に示している。
また、この場合としても、転送元となるべき記録装置2では、例えば外部の記録装置2に対して転送すべきコンテンツデータの指定を受け付けるためのGUI画面を、外部のディスプレイ装置などに表示させている状態にあるとする。
【0146】
図17において、先ず、上記のようにして転送コンテンツの指定受け付けのための画面表示状態にある転送元の記録装置2では、ステップS301において、外部記録装置へのコンテンツ転送指示が行われるのを待機するようにされる。つまり、例えば上記のようにして外部のディスプレイ装置などに表示させたGUI上において、外部の記録装置2(転送先の記録装置2)に転送すべきコンテンツデータを指定する操作が行われるのを待機するようにされる。
【0147】
そして、例えば上記のようなコンテンツデータを指定する操作が行われたとして、外部の記録装置2への転送指示が行われたとした場合は、ステップS302において、付加情報・ハッシュ値の送信要求を行うための処理を実行する。
つまり、転送先の記録装置2において記録される各コンテンツデータと対応づけられている付加情報とハッシュ値との送信要求が転送先の記録装置2に対して行われるようにネットワークコントローラ9に対する制御を行う。
このステップS302の処理を実行すると、後のステップS303に処理を進めるようにされる。
【0148】
転送先の記録装置2側では、このような転送元の記録装置2側からの転送要求の受信を、図中ステップS401にて待機するようにされている。そして、転送元から転送要求が受信された場合は、ステップS402において、付加情報・ハッシュ値を送信するための処理を実行するようにされる。つまり、コンテンツ管理情報14bによって各コンテンツデータごとに管理されている付加情報とハッシュ値とを全て取得した上で、それらの情報がネットワーク4を介して転送元の記録装置2に対して送信されるようにネットワークコントローラ9を制御するようにされる。
このステップS402の処理を実行すると、後述するステップS403に処理を進めるようにされる。
【0149】
なお、このステップS402において、上記のように全てのコンテンツデータについての付加情報・ハッシュ値を転送元の記録装置2側に対して送信するにあたっては、プログラム単位での付加情報・ハッシュ値の対応関係がそれぞれ保たれた状態で転送元に送信されるように制御する。
例えば、「A」という付加情報が対応づけられたコンテンツデータについては、そのコンテンツデータを構成する各アクセスユニットのハッシュ値に対し、上記付加情報「A」が対応づけられた状態で送信するといったものである。
【0150】
転送元の記録装置2では、このように転送先から送信された全てのコンテンツデータについての付加情報とハッシュ値とが受信されるのを、図中ステップS303にて待機するようにされている。
そして、これら付加情報とハッシュ値とが受信されると、ステップS304において、一致コンテンツの検索処理を実行するようにされる。このステップS304における検索処理としては、上記のようにして受信した全ての付加情報と、先のステップS301にて転送指示されたコンテンツデータと対応づけられている付加情報とを照合した結果に基づいて、転送先の記録装置2側のHDD14内に記録されるコンテンツデータのうちから、転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータを検索するようにされる。
【0151】
続くステップS305においては、一致するコンテンツがあったか否かについて判別処理を実行する。つまり、上記ステップS304の検索処理の結果により、転送先の記録装置2側のHDD14内に転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがあったか否かについて判別処理を行うようにされる。
転送先の記録装置2側のHDD14内にプログラム単位で一致するコンテンツデータがないとされて否定結果が得られた場合は、ステップS306に進み、一致コンテンツ不在通知を行うようにされる。つまり、この一致コンテンツ不在通知としては、プログラム単位で一致するコンテンツデータがない旨を示す通知が転送先の記録装置2に対して行われるようにする。
【0152】
その上で、続くステップS307においては、転送指示コンテンツの全アクセスユニットと付加情報とを送信するための処理を実行するようにされる。つまり、コンテンツ管理情報14bに基づき、先のステップS301にて転送指示されたコンテンツデータを構成する全てのアクセスユニットと、当該コンテンツデータと対応づけられている付加情報とを取得し、それらが転送先の記録装置2に対して送信されるようにネットワークコントローラ9を制御する。
【0153】
また、上記ステップS305において、プログラム単位で一致するコンテンツデータがないとされて否定結果が得られた場合は、ステップS308に進み、アクセスユニットごとにハッシュ値を照合するようにされる。つまり、先ずはコンテンツ管理情報14bに基づき、転送指示されたコンテンツデータを構成するアクセスユニットのハッシュ値(転送元側ハッシュ値とする)を取得する。さらに、先のステップS303にて転送先より受信した各プログラムの付加情報ごとに対応づけられているハッシュ値のうち、上記ステップS305にて転送指示コンテンツの付加情報と一致するとされた付加情報と対応づけられているハッシュ値(転送先側ハッシュ値とする)を特定する。その上で、これら特定した転送先側ハッシュ値と上記転送元側ハッシュ値とをそれぞれ照合するようにされる。
【0154】
そして、続くステップS309では、上記照合の結果、ハッシュ値が全て一致しているか否かについて判別処理を行うようにされる。
このステップS309において、全てのハッシュ値が一致してはいないとして否定結果が得られた場合は、ステップS310に進んで部分一致通知を行うようにされる。
先の図16においても説明したように、この部分一致通知としては、一致コンテンツと一致アクセスユニットの通知も行うようにされている。つまり、このステップS310の部分一致通知としては、先のステップS305にてプログラム単位で一致するとされたコンテンツデータを示すための情報(例えばその付加情報)と、先のステップS308の照合の結果一致しているとされたハッシュ値とを含んだ通知を、転送先の記録装置2に対して行うようにする。
【0155】
その上で、次のステップS311では、転送先の記録装置2に対し、一致しないアクセスユニットと転送指示コンテンツの付加情報を送信するための処理を行う。
先にも述べたように、上記一致しないアクセスユニットとは、転送指示されたコンテンツデータを構成するアクセスユニットのうち、転送指示コンテンツとプログラム単位で一致するとされた転送先のコンテンツデータ側にはないとされたアクセスユニットである。
この一致しないアクセスユニットを特定するために、先ずステップS311では、先のステップS308の照合処理の結果に基づき、上述した転送元側ハッシュ値のうち、上述した転送先側ハッシュ値の何れとも一致しなかったハッシュ値を特定する。このハッシュ値により特定されるアクセスユニットが、上記一致しないアクセスユニットとなる。
その上で、ステップS311では、先のステップS301にて転送指示されたコンテンツデータと対応づけられている付加情報を取得し、上記のようにして特定された一致しないアクセスユニットとこの付加情報とが転送先の記録装置2に対して送信されるようにネットワークコントローラ9を制御する。
【0156】
また、先のステップS309において、全てのハッシュ値が一致しているとして肯定結果が得られた場合は、ステップS312に進んで全一致通知を行うようにされる。すなわち、この全一致通知として、先のステップS301にて転送指示されたコンテンツデータと対応づけられている付加情報を含んだ通知が転送先の記録装置2に対して行われるように、ネットワークコントローラ9を制御するようにされる。
【0157】
ここで、転送元の記録装置2では、このステップS312による全一致通知、または上述したステップS307による全アクセスユニット・付加情報の送信処理、または上述したステップS311による一致しないアクセスユニット・付加情報の送信処理を実行した後は、図示されるように先の図12におけるステップS106に処理を進めるようにされる。すなわち、このステップS106により転送指示されたコンテンツの全アクセスユニットの在数値をデクリメントする処理を実行した後に、続くステップS107において在数値が「0」であるなら有効/無効フラグを「無効」に更新するための処理を実行するようにされる。
【0158】
続いて、説明を転送先の記録装置2側に移す。
転送先の記録装置2では、転送元における先のステップS301による一致コンテンツ不在通知、ステップS310による部分一致通知、ステップS312による全一致通知の何れかが受信されるのを、ステップS403、ステップS404、ステップS405によるループ処理により待機するようにされている。
【0159】
先ず、上記ステップS403により、上記一致コンテンツ不在通知が受信されたとした場合は、ステップS406に進み、先のステップS307により転送元から送信される全アクセスユニットと転送指示コンテンツの付加情報が受信されるのを待機するようにされる。
このステップS406において、上記全アクセスユニットと付加情報とが受信されたとした場合は、図示されるように先の図12におけるステップS210に処理を進めるようにされ、このステップS210の記録処理と、続くステップS211による管理情報の更新処理とを実行するようにされる。
具体的に、上記ステップS210では、上記ステップS406にて受信された全アクセスユニット(転送指示コンテンツの全アクセスユニットである)をHDD14に記録するための処理を実行するようにされる。
その上で、上記ステップS211によっては、転送指示されたコンテンツが新たに記録されたものとして管理されるように、コンテンツ管理情報14bを更新する処理が実行される。
【0160】
ここで、この場合のステップS211としては、プログラム単位で一致するコンテンツデータがないとされて、先のステップS403にて一致コンテンツ不在通知が受信された後に実行されるものであるが、このような不在通知受信後に応じて実行されるステップS211としては、先のステップS406にて受信され上記ステップS210にてHDD14に新たに記録された全アクセスユニットに対し、同じく先のステップS406にて受信された付加情報が対応づけられるように、コンテンツ管理情報14bの情報内容を更新するようにされる。
これによって転送元にて転送指示されたコンテンツデータが、転送先にて新たに記録されたものとして管理されるようになる。
【0161】
続いて、図17に戻り、上述したステップS404において、転送元からの部分一致通知が受信されたとした場合は、ステップS407に進み、一致するアクセスユニットの在数値をインクリメントする処理を実行する。
すなわち、このように転送元から受信した部分一致通知に含まれる、一致するアクセスユニットのハッシュ値により特定されるアクセスユニットについて、それと対応づけられている在数値がインクリメントされるように在数値管理情報14cの情報内容を更新するようにされる。
【0162】
続くステップS408においては、転送元からの一致しないアクセスユニットと転送指示コンテンツの付加情報とが受信されるのを待機するようにされる。そして、これら一致しないアクセスユニットと付加情報とが受信された場合は、図示されるように先の図12におけるステップS210に処理を進めるようにされる。
この場合のステップS210の処理によっては、上記のようにして転送元から受信した一致しないアクセスユニットがHDD14に対して記録されることになる。
そして、続くステップS211では、転送指示されたコンテンツが新たに記録されたものとして管理されるようにコンテンツ管理情報14bを更新するための処理が行われる。
【0163】
ここで、上記のようにしてステップS404にて部分一致通知が受信された場合には、先のステップS407の処理によって、転送指示されたコンテンツデータ側と一致するアクセスユニットが特定された状態にある。また、この場合のステップS210の記録処理では、上記のようにして転送元から受信された一致しないアクセスユニットのみが新たに記録されるものとなる。
これらのことから、上記のようにしてステップS404にて部分一致通知が受信された後の当該ステップS211の処理としては、上記ステップS210にて新たに記録されたアクセスユニットと、上記のようにして既に特定されている転送指示されたコンテンツデータ側と一致するアクセスユニットとに対し、先のステップS404にて受信した付加情報が対応づけられるようにコンテンツ管理情報14bの情報内容を更新するようにされる。
【0164】
なお、ここでも図示の都合上、一致しないアクセスユニットについての記録処理(ステップS210)よりも先に、一致するアクセスユニットの在数値のインクリメント処理(ステップS407)が行われるものとして示したが、このように一致するアクセスユニットの在数値のインクリメント処理を先に行うものとしても、結果的には先の図16にて説明した動作を実現できることに変わりはない。
【0165】
また、図17に戻り、先のループ処理のうちのステップS405において、全一致通知が受信されたとした場合は、ステップS409に進み、該当コンテンツの全てのアクセスユニットの在数値をインクリメントする処理を実行するようにされる。
すなわち、受信された全一致通知に含まれる付加情報に基づき、転送先において記録されるコンテンツデータのうちから転送指示されたコンテンツデータと一致するとされたコンテンツデータを特定し、そのコンテンツデータを構成するアクセスユニットと対応づけられている全ての在数値がインクリメントされるように、在数値管理情報14cの情報内容を更新するようにされる。
【0166】
このステップS409の処理を実行すると、図示されるように先の図12におけるステップS214に処理を進めるようにされる。つまり、この場合も転送先に転送指示されたコンテンツデータと全一致するコンテンツデータがあるとされた場合には、そのコンテンツデータの有効/無効フラグが「有効」であるか否かの判別処理(ステップS214)と、「有効」の場合には管理情報の更新処理(ステップS215)と、「無効」の場合にはそのコンテンツデータの有効/無効フラグを「有効」に更新する処理(ステップS216)が行われるものとなる。
【0167】
以上、各実施の形態の転送システム(1,20)について説明したが、これまでの説明では、簡単のために放送コンテンツがビデオデータのみとされるものとしてきたが、テレビジョン放送のコンテンツデータとしては、ビデオデータと共にオーディオデータも含まれる。すなわち、実際にはこのようなオーディオデータも考慮した動作とすべきものとなる。
【0168】
ここで、このようなビデオデータとオーディオデータとを含んで成る放送コンテンツをHDD14に記録する場合としては、1つに、ビデオデータとオーディオデータとをそれぞれ独立したデータとして分けて記録する場合が考えられる。
先ず、このようにしてビデオデータとオーディオデータとを分けて記録する場合に対応した動作について説明すると、この場合には、オーディオデータ側についても、ビデオデータ側のアクセスユニットと同じ時間長ごとの区切りとなるデータ単位でそれぞれ分けて管理するようにしておく。このとき、当然のことながらビデオデータ側とオーディオデータ側との同期関係が保たれるようにしておくことが必要となるが、実施の形態のようにデジタルテレビジョン放送の放送コンテンツについて録画を行う場合には、圧縮ビデオデータ・圧縮オーディオデータにはそれらの同期をとるためのPTS(Presentation Time Stamp)等の同期情報が付されている。このような場合には特別に対応づけを行う必要はない。
【0169】
そして、転送システム(1,20)の動作として、先ず、転送指示されたコンテンツとプログラム単位で一致するか否か、及びアクセスユニットの単位での一致/不一致の判別処理は、実施の形態の場合と同様にして行われればよい。つまり、アクセスユニットごとの一致/不一致の判別は、ビデオデータ側を基準としてのみ行うものである。
さらに、このような判別処理に基づき、実際に転送すべきとされたビデオデータのアクセスユニットが決定された場合には、その転送すべきビデオデータのアクセスユニットと同期関係にあるオーディオデータを特定し(この場合は上記したPTSに基づき特定することができる)、この特定したオーディオデータも合わせて転送先に転送するものとする。
例えばこのような動作とすることで、ビデオデータと共にオーディオデータについても適正に転送先に転送することができる。
【0170】
なおこの場合、オーディオデータ側についてもハッシュ値を計算してそれを対応づけて記録しておき、アクセスユニットごとの一致/不一致の判別をこのようなオーディオデータに対応づけられたハッシュ値に基づいて行うようにすることもできる。
【0171】
また、この場合、オーディオデータ側の在数値は、ビデオデータ側の在数値と共通であるとして共通管理するようにされればよい。或いは、オーディオデータについても在数値管理情報を設けてその在数値を管理するようにもできる。
【0172】
また、一方で、ビデオデータとオーディオデータとを分けずに一体的なデータとして記録する場合も考えられる。
その場合、このようなビデオデータ・オーディオデータが一体となったコンテンツデータについて、所定のデータ単位ごとのハッシュ値を計算し、これを各データ部分と対応づけて記録するものとする。
そして、以降の転送動作としては、このようなビデオ・オーディオによるコンテンツデータについてこれまでの実施の形態で説明したものと同様の動作を行うようにすることで、ビデオデータと共にオーディオデータも適正に転送先に転送することができるようになる。
【0173】
<変形例>
なお、本発明としてはこれまでに説明した各実施の形態に限定されるべきものではない。
例えば、実施の形態では、GOPなどとされる所定のデータ単位ごとにコンテンツデータのハッシュ値を計算し、この所定のデータ単位ごとにそのハッシュ値を対応づけて記録するものとしたが、ハッシュ値としては、プログラム単位のコンテンツデータごとに計算し、プログラム単位のコンテンツデータごとに対応づけて記録するものとしてもよい。
【0174】
また、実施の形態では、ハッシュ値を対応づけるべきコンテンツデータがテレビジョン放送の放送コンテンツによるビデオデータ・オーディオデータとされる場合を例示したが、例えばラジオ放送によるオーディオデータとすることもできる。或いは、放送コンテンツ以外にも、例えばネットワーク上の所定のサーバ装置からダウンロードされるビデオデータやオーディオデータ、或いは記録媒体から再生したビデオデータやオーディオデータとすることもできる。
【0175】
ここで、記録装置2が、例えばCD(Compact Disc)等の記録媒体に記録されるオーディオデータや、上記サーバ装置からダウンロードされるオーディオデータについてのハッシュ値を計算してそれを対応づけて記録する場合を想定しみると、その場合、上記オーディオデータとしては、トラックと呼ばれる曲単位ごとに分けて管理されていることが予想される。従って、このようなオーディオデータについてのハッシュ値としては、このトラック単位ごとのデータに基づき計算し、それをトラック単位ごとに対応づけて記録するものとすればよい。或いは、トラック単位のオーディオデータをさらに実施の形態のアクセスユニットに相当するような所定のデータ単位ごとに分けて、その所定のデータ単位ごとにハッシュ値を計算してそれを対応づけて記録することもできる。
【0176】
また、本発明おいて、コンテンツデータは上記により例示したビデオデータやオーディオデータに限らず、例えば画像データやテキストデータ等とすることもでき、そのデータ種類について特に限定するものではない。
【0177】
また、実施の形態では、コピーワンスの制限がある場合に対応した動作を行う場合を例示したが、例えばこのようなコピーワンス制限を考慮する必要がなく、転送元では転送したコンテンツデータを消去扱いする必要がない場合には、転送元での在数値のデクリメント処理は特に行う必要はない。また、有効/無効フラグも不要である。
【0178】
また、実施の形態のようにコピーワンス制限に対応した動作を行うとした場合、その実現のために必要な情報として、コンテンツ管理情報14b(特に有効/無効フラグ)、在数値管理情報14cを生成・更新するものとしたが、例えばこれらの情報が改竄されてしまった場合には、コピーワンス制限に対応した適切な動作を行うことができなくなってしまう虞がある。
そこで、これらコンテンツ管理情報14b及び在数値管理情報14cについては、このような情報改竄を困難とすべく、例えばCPU14が暗号化してHDD14に記録するようにすることもできる。
【0179】
また、実施の形態では、プログラム単位で一致するコンテンツデータがあるか否かについての判別処理は、転送指示されたコンテンツデータ側と転送先に記録されるコンテンツデータ側とで、それぞれの付加情報のみを照合して行うものとしたが、これに代えて、ハッシュ値の照合によって行うようにすることもできる。
ここで、例えば転送元と転送先の双方の記録装置2においてプログラム単位で一致するコンテンツデータが記録されている場合として、一方の記録装置2では、初回に放送された番組を録画し、他方の記録装置2ではその再放送の番組を録画した場合を想定しみる。この場合、実施の形態のように付加情報のみに基づく判別処理を行うと、それぞれの「タイトル」「ch」は同じだが、録画時間帯が重ならないことによって別のコンテンツであると判別されてしまう虞がある。すなわち、この場合の2つのコンテンツデータはデータ内容的にはほぼ同じであるにも関わらず、プログラム単位で一致してしないと判別されてしまうものである。
例えばこのようなことを考慮して、プログラム単位でコンテンツ同士が一致しているか否かの判別については、各プログラム単位のコンテンツデータごとに、それを構成するアクセスユニットのハッシュ値を照合して行うようにすることもできる。具体的には、転送指示されたコンテンツデータ側のハッシュ値と、比較対象となるプログラム単位のコンテンツデータを構成するそれぞれのアクセスユニットのハッシュ値とを照合し、例えばハッシュ値が一致するアクセスユニット数が所定割合以上となる場合にそれぞれのコンテンツデータがプログラム単位で一致していると判別するといったものである。
これによれば、データ内容に基づいてそれぞれのコンテンツデータがプログラム単位で一致するか否かを判別することができ、より確実に同一内容のコンテンツデータについての不要な転送動作及び重複記録動作を防止することができる。
【0180】
また、実施の形態では、転送システム(1,20)が2つの記録装置2のみで構成される場合を例示したが、3つ以上の記録装置2がネットワーク4を介して接続される構成とすることもできる。このように3つ以上の記録装置2で構成される場合にも、転送動作としてはあくまで転送元と転送先との2つの記録装置2の動作により実現されるので、それらの記録装置2において、実施の形態で説明した転送元と転送先としての動作が実行されれば、各実施の形態で説明したものと同様の効果を得ることができる。
【0181】
また、実施の形態では、本発明の記録装置及び記録方法が録画装置に適用される場合を例示したが、本発明の記録装置及び記録方法としては、少なくとも記録媒体に対するデータ記録が可能に構成されたものであれば、各種の電子機器に対して好適に適用することができる。
【0182】
また、本発明のデータ転送システムとしても、それを構成する記録装置としては、実施の形態で例示した録画装置としての記録装置2に限らず、少なくとも記録媒体に対するデータ記録が可能な記録手段と、外部装置とのデータ通信が可能な通信手段とを備えるものであれば、他の電子機器とすることができる。
【図面の簡単な説明】
【0183】
【図1】本発明の実施の形態としてのデータ転送システムの概要について説明するための図である。
【図2】実施の形態の記録装置の内部構成を示すブロック図である。
【図3】コンテンツデータとそれに基づき計算されるハッシュ値との関係を例示した図である。
【図4】コンテンツ管理情報のデータ構造を示すデータ構造図である。
【図5】在数値管理情報のデータ構造を示すデータ構造図である。
【図6】第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを示した図である。
【図7】第1の実施の形態のデータ転送システムの動作について説明するための図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示した図である。
【図8】第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示した図である。
【図9】同じく、第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示した図である。
【図10】第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示した図である。
【図11】同じく、第1の実施の形態のデータ転送システムの動作について説明するための模式図として、特に一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示した図である。
【図12】第1の実施の形態のデータ転送システムとしての動作を実現するための処理動作について示したフローチャートである。
【図13】第2の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送すべきコンテンツの指定から一致するコンテンツの有無の判別動作までを示した図である。
【図14】第2の実施の形態のデータ転送システムの動作について説明するための図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがない場合に対応して行われるべき動作について示した図である。
【図15】第2の実施の形態のデータ転送システムの動作について説明するための模式図として、特に転送先に転送指示されたコンテンツデータと一致するコンテンツデータがある場合(全く同じコンテンツがあるとき)に対応して行われるべき動作について示した図である。
【図16】第2の実施の形態のデータ転送システムの動作について説明するための模式図として、特に一致するコンテンツがある場合(完全一致ではない場合)に対応して行われるべき動作について示した図である。
【図17】第2の実施の形態のデータ転送システムとしての動作を実現するための処理動作について示したフローチャートである。
【符号の説明】
【0184】
1,20 転送システム、2 記録装置、3 チューナ部、4 ネットワーク、5 暗号化/復号化器、6 アクセスユニット検出器、7 ハッシュ値計算器、8 バス、9 ネットワークコントローラ、10 CPU、11 ユーザインタフェース、12 ROM、13 RAM、14 HDD、14a コンテンツ、14b コンテンツ管理情報、14c 在数値管理情報、15 アンテナ
【特許請求の範囲】
【請求項1】
コンテンツデータを記録媒体に記録する記録手段と、
上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段と、
上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段と、
を備えることを特徴とする記録装置。
【請求項2】
さらに、
外部装置との間でデータ通信を行うデータ通信手段と、
上記記録手段と、上記ハッシュ値計算手段と、上記対応づけ制御手段と、上記データ通信手段とを備える外部の記録装置から送信されてきたハッシュ値と、上記記録媒体に記録されるコンテンツデータに対応づけられたハッシュ値とを照合する演算手段と、を備えるようにされる、
ことを特徴とする請求項1に記載の記録装置。
【請求項3】
上記演算手段は、
外部の記録装置における記録媒体に記録されたコンテンツデータについて行われた転送指示に応じて上記外部の記録装置から送信されてきた、上記転送指示されたコンテンツデータと対応づけられたハッシュ値と、上記記録媒体に記録されるコンテンツデータと対応づけられたハッシュ値とを照合すると共に、
上記照合の結果に基づき、上記記録媒体にハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータについての上記外部の記録装置に対する転送要求が行われるように制御する、
ことを特徴とする請求項2に記載の記録装置。
【請求項4】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理されていると共に、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御するようにされると共に、
上記演算手段は、
外部の記録装置にて行われた上記プログラム単位のコンテンツデータについての転送指示に応じて上記外部の記録装置から送信されてきた、上記転送指示されたプログラム単位のコンテンツデータの付加情報と、そのコンテンツデータを構成する上記データ部分ごとのハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録されるコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがあるか否かを判別する処理と、
プログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分についての転送要求を上記外部の記録装置に対して行う処理と、
プログラム単位で一致するコンテンツデータがあるとされた場合は、その一致するとされたコンテンツデータを構成する上記データ部分のハッシュ値と、上記受信されたハッシュ値とをそれぞれ照合して各データ部分が一致しているか否かを判別する処理と、
ハッシュ値が一致しないデータ部分があるとされた場合にのみ、その一致しないとされたデータ部分についての転送要求を上記外部の記録装置に対して行う処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項5】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理され、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御すると共に、
上記コンテンツデータのそれぞれの上記データ部分に対しては、それぞれその個数を表す在数値の情報が対応づけられており、
上記演算手段は、
外部の記録装置にて行われた上記プログラム単位のコンテンツデータについての転送指示に応じて上記外部の記録装置から送信されてきた、上記転送指示されたプログラム単位のコンテンツデータの付加情報と、そのコンテンツデータを構成する上記データ部分ごとのハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録されるコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがあるか否かを判別する処理と、
プログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分についての転送要求を上記外部の記録装置に対して行う処理と、
プログラム単位で一致するコンテンツデータがあるとされた場合は、その一致するとされたコンテンツデータを構成する上記データ部分のハッシュ値と、上記受信されたハッシュ値とをそれぞれ照合して各データ部分が一致しているか否かを判別する処理と、
全てのデータ部分が一致するとされた場合は、それらのデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、
ハッシュ値が一致しないデータ部分があるとされた場合は、その一致しないとされたデータ部分についての転送要求を上記外部の記録装置に対して行うと共に、ハッシュ値が一致するとされたデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項6】
上記演算手段は、
上記記録媒体に記録されるコンテンツデータのうち上記外部の記録装置への転送指示が行われたコンテンツデータと対応づけられたハッシュ値と、上記外部の記録装置に対して行った送信要求に応じて上記外部の記録装置から送信されてきたハッシュ値とを照合すると共に、
上記照合の結果に基づき、上記外部の記録装置にハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータが上記外部の記録装置に対して送信されるように制御する、
ことを特徴とする請求項2に記載の記録装置。
【請求項7】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理されていると共に、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御すると共に、
上記演算手段は、
上記記録媒体に記録された上記プログラム単位のコンテンツデータの上記外部の記録装置への転送指示に応じ、上記外部の記録装置に記録されたコンテンツデータの付加情報とハッシュ値とについての送信要求を行い、当該送信要求に応じて上記外部の記録装置から送信されてきた上記付加情報とハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録される上記転送指示されたコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータが上記外部の記録装置側にあるか否かを判別する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分が上記データ通信手段により上記外部の記録装置に送信されるように制御する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがあるとされた場合は、受信されたハッシュ値のうち、その一致するとされたプログラム単位のコンテンツデータを構成する上記データ部分のハッシュ値と、上記転送指示されたコンテンツデータを構成するデータ部分のハッシュ値とをそれぞれ照合して、各データ部分が一致しているか否かを判別する処理と、
ハッシュ値が一致しないデータ部分があるとされた場合にのみ、その一致しないとされたデータ部分が上記外部の記録装置に対して送信されるように制御する処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項8】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理され、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御する共に、
上記コンテンツデータのそれぞれの上記データ部分に対しては、それぞれその個数を表す在数値の情報が対応づけられており、
上記演算手段は、
上記記録媒体に記録された上記プログラム単位のコンテンツデータの上記外部の記録装置への転送指示に応じ、上記外部の記録装置に記録されたコンテンツデータの付加情報とハッシュ値とについての送信要求を行い、当該送信要求に応じて上記外部の記録装置から送信されてきた上記付加情報とハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録される上記転送指示されたコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータが上記外部の記録装置側にあるか否かを判別する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分が上記データ通信手段により上記外部の記録装置に送信されるように制御する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがあるとされた場合は、受信されたハッシュ値のうち、その一致するとされたプログラム単位のコンテンツデータを構成する上記データ部分のハッシュ値と、上記転送指示されたコンテンツデータを構成するデータ部分のハッシュ値とをそれぞれ照合して、各データ部分が一致しているか否かを判別する処理と、
全てのデータ部分が一致しているとされた場合は、その旨を上記外部の記録装置に通知することで、上記外部の記録装置においてこの一致するとされた全てのデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、
ハッシュ値が一致しないデータ部分があるとされた場合は、その一致しないとされたデータ部分が上記外部の記録装置に対して送信されるように制御すると共に、ハッシュ値が一致するとされたデータ部分についてはそのデータ部分を上記外部の記録装置に通知することで、上記外部の記録装置において上記一致するとされたデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項9】
コンテンツデータを記録媒体に記録する記録手順と、
上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手順と、
上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手順により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手順と、
を備えることを特徴とする記録方法。
【請求項10】
コンテンツデータを記録媒体に記録する記録手段と、
上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段と、
上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段と、
外部装置との間でデータ通信を行うデータ通信手段と、を備える記録装置を複数備えて構成されたデータ転送システムであって、
第1の記録装置から第2の記録装置への上記コンテンツデータの転送指示が行われた場合に、上記第1の記録装置に記録される上記転送指示されたコンテンツデータと対応づけられたハッシュ値と、上記第2の記録装置に記録されるコンテンツデータと対応づけられたハッシュ値とを照合する照合手段と、
上記照合手段による照合結果に基づき、上記第2の記録装置側に上記ハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータが上記第1の記録装置から上記第2の記録装置に転送されるように制御する転送制御手段を備える、
ことを特徴とする転送システム。
【請求項1】
コンテンツデータを記録媒体に記録する記録手段と、
上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段と、
上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段と、
を備えることを特徴とする記録装置。
【請求項2】
さらに、
外部装置との間でデータ通信を行うデータ通信手段と、
上記記録手段と、上記ハッシュ値計算手段と、上記対応づけ制御手段と、上記データ通信手段とを備える外部の記録装置から送信されてきたハッシュ値と、上記記録媒体に記録されるコンテンツデータに対応づけられたハッシュ値とを照合する演算手段と、を備えるようにされる、
ことを特徴とする請求項1に記載の記録装置。
【請求項3】
上記演算手段は、
外部の記録装置における記録媒体に記録されたコンテンツデータについて行われた転送指示に応じて上記外部の記録装置から送信されてきた、上記転送指示されたコンテンツデータと対応づけられたハッシュ値と、上記記録媒体に記録されるコンテンツデータと対応づけられたハッシュ値とを照合すると共に、
上記照合の結果に基づき、上記記録媒体にハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータについての上記外部の記録装置に対する転送要求が行われるように制御する、
ことを特徴とする請求項2に記載の記録装置。
【請求項4】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理されていると共に、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御するようにされると共に、
上記演算手段は、
外部の記録装置にて行われた上記プログラム単位のコンテンツデータについての転送指示に応じて上記外部の記録装置から送信されてきた、上記転送指示されたプログラム単位のコンテンツデータの付加情報と、そのコンテンツデータを構成する上記データ部分ごとのハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録されるコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがあるか否かを判別する処理と、
プログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分についての転送要求を上記外部の記録装置に対して行う処理と、
プログラム単位で一致するコンテンツデータがあるとされた場合は、その一致するとされたコンテンツデータを構成する上記データ部分のハッシュ値と、上記受信されたハッシュ値とをそれぞれ照合して各データ部分が一致しているか否かを判別する処理と、
ハッシュ値が一致しないデータ部分があるとされた場合にのみ、その一致しないとされたデータ部分についての転送要求を上記外部の記録装置に対して行う処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項5】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理され、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御すると共に、
上記コンテンツデータのそれぞれの上記データ部分に対しては、それぞれその個数を表す在数値の情報が対応づけられており、
上記演算手段は、
外部の記録装置にて行われた上記プログラム単位のコンテンツデータについての転送指示に応じて上記外部の記録装置から送信されてきた、上記転送指示されたプログラム単位のコンテンツデータの付加情報と、そのコンテンツデータを構成する上記データ部分ごとのハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録されるコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータがあるか否かを判別する処理と、
プログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分についての転送要求を上記外部の記録装置に対して行う処理と、
プログラム単位で一致するコンテンツデータがあるとされた場合は、その一致するとされたコンテンツデータを構成する上記データ部分のハッシュ値と、上記受信されたハッシュ値とをそれぞれ照合して各データ部分が一致しているか否かを判別する処理と、
全てのデータ部分が一致するとされた場合は、それらのデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、
ハッシュ値が一致しないデータ部分があるとされた場合は、その一致しないとされたデータ部分についての転送要求を上記外部の記録装置に対して行うと共に、ハッシュ値が一致するとされたデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項6】
上記演算手段は、
上記記録媒体に記録されるコンテンツデータのうち上記外部の記録装置への転送指示が行われたコンテンツデータと対応づけられたハッシュ値と、上記外部の記録装置に対して行った送信要求に応じて上記外部の記録装置から送信されてきたハッシュ値とを照合すると共に、
上記照合の結果に基づき、上記外部の記録装置にハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータが上記外部の記録装置に対して送信されるように制御する、
ことを特徴とする請求項2に記載の記録装置。
【請求項7】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理されていると共に、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御すると共に、
上記演算手段は、
上記記録媒体に記録された上記プログラム単位のコンテンツデータの上記外部の記録装置への転送指示に応じ、上記外部の記録装置に記録されたコンテンツデータの付加情報とハッシュ値とについての送信要求を行い、当該送信要求に応じて上記外部の記録装置から送信されてきた上記付加情報とハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録される上記転送指示されたコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータが上記外部の記録装置側にあるか否かを判別する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分が上記データ通信手段により上記外部の記録装置に送信されるように制御する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがあるとされた場合は、受信されたハッシュ値のうち、その一致するとされたプログラム単位のコンテンツデータを構成する上記データ部分のハッシュ値と、上記転送指示されたコンテンツデータを構成するデータ部分のハッシュ値とをそれぞれ照合して、各データ部分が一致しているか否かを判別する処理と、
ハッシュ値が一致しないデータ部分があるとされた場合にのみ、その一致しないとされたデータ部分が上記外部の記録装置に対して送信されるように制御する処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項8】
上記コンテンツデータは、所要のプログラム単位ごとに付加情報が対応づけられて、上記プログラム単位ごとに分けて管理され、
上記ハッシュ値計算手段は、
上記コンテンツデータの所定データ単位によるデータ部分ごとにそのハッシュ値を計算するようにされ、
上記対応づけ制御手段は、
上記記録媒体に記録された上記コンテンツデータの上記データ部分ごとに上記ハッシュ値計算手段により計算されたハッシュ値がそれぞれ対応づけられて記録されるように制御する共に、
上記コンテンツデータのそれぞれの上記データ部分に対しては、それぞれその個数を表す在数値の情報が対応づけられており、
上記演算手段は、
上記記録媒体に記録された上記プログラム単位のコンテンツデータの上記外部の記録装置への転送指示に応じ、上記外部の記録装置に記録されたコンテンツデータの付加情報とハッシュ値とについての送信要求を行い、当該送信要求に応じて上記外部の記録装置から送信されてきた上記付加情報とハッシュ値とが上記データ通信手段により受信された場合に、受信された上記付加情報と、上記記録媒体に記録される上記転送指示されたコンテンツデータと対応づけられた付加情報とに基づき、上記転送指示されたコンテンツデータとプログラム単位で一致するコンテンツデータが上記外部の記録装置側にあるか否かを判別する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがないとされた場合には、上記転送指示されたコンテンツデータの全ての上記データ部分が上記データ通信手段により上記外部の記録装置に送信されるように制御する処理と、
上記外部の記録装置側にプログラム単位で一致するコンテンツデータがあるとされた場合は、受信されたハッシュ値のうち、その一致するとされたプログラム単位のコンテンツデータを構成する上記データ部分のハッシュ値と、上記転送指示されたコンテンツデータを構成するデータ部分のハッシュ値とをそれぞれ照合して、各データ部分が一致しているか否かを判別する処理と、
全てのデータ部分が一致しているとされた場合は、その旨を上記外部の記録装置に通知することで、上記外部の記録装置においてこの一致するとされた全てのデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、
ハッシュ値が一致しないデータ部分があるとされた場合は、その一致しないとされたデータ部分が上記外部の記録装置に対して送信されるように制御すると共に、ハッシュ値が一致するとされたデータ部分についてはそのデータ部分を上記外部の記録装置に通知することで、上記外部の記録装置において上記一致するとされたデータ部分と対応づけられている上記在数値がインクリメントされるようにする処理と、を実行する、
ことを特徴とする請求項2に記載の記録装置。
【請求項9】
コンテンツデータを記録媒体に記録する記録手順と、
上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手順と、
上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手順により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手順と、
を備えることを特徴とする記録方法。
【請求項10】
コンテンツデータを記録媒体に記録する記録手段と、
上記コンテンツデータに基づくハッシュ値を計算するハッシュ値計算手段と、
上記記録媒体に記録された上記コンテンツデータに対して上記ハッシュ値計算手段により計算されたハッシュ値が対応づけられて記録されるように制御する対応づけ制御手段と、
外部装置との間でデータ通信を行うデータ通信手段と、を備える記録装置を複数備えて構成されたデータ転送システムであって、
第1の記録装置から第2の記録装置への上記コンテンツデータの転送指示が行われた場合に、上記第1の記録装置に記録される上記転送指示されたコンテンツデータと対応づけられたハッシュ値と、上記第2の記録装置に記録されるコンテンツデータと対応づけられたハッシュ値とを照合する照合手段と、
上記照合手段による照合結果に基づき、上記第2の記録装置側に上記ハッシュ値が一致するコンテンツデータがないとされた場合にのみ、そのコンテンツデータが上記第1の記録装置から上記第2の記録装置に転送されるように制御する転送制御手段を備える、
ことを特徴とする転送システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2008−27486(P2008−27486A)
【公開日】平成20年2月7日(2008.2.7)
【国際特許分類】
【出願番号】特願2006−196670(P2006−196670)
【出願日】平成18年7月19日(2006.7.19)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
2.ETHERNET
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成20年2月7日(2008.2.7)
【国際特許分類】
【出願日】平成18年7月19日(2006.7.19)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
2.ETHERNET
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]