サーバ、再生装置、および再生制御方法
【課題】本発明は、ユーザに対してエラーなくコンテンツを提供する。
【解決手段】実施形態のサーバは、確保手段と、録画手段と、制御手段と、を備える。前記確保手段は、コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する。前記録画手段は、前記確保手段により確保された録画領域に前記コンテンツを録画する。前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する。
【解決手段】実施形態のサーバは、確保手段と、録画手段と、制御手段と、を備える。前記確保手段は、コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する。前記録画手段は、前記確保手段により確保された録画領域に前記コンテンツを録画する。前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、サーバ、再生装置、および再生制御方法に関する。
【背景技術】
【0002】
特許文献1には、DMS(Digital Media Server)より受信したコンテンツをDMP(Digital Media Player)やDMR(Digital Media Renderer)が再生している間に、DMPやDMRからDMSに対してコンテンツの再生のポーズが要求された場合、DMSが再生中のコンテンツをポーズした箇所を記憶し、DMPやDMRからレジュームが要求された際、記憶した箇所からコンテンツの再生を開始する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−85934号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、リングバッファを使用してコンテンツを録画し続けるDMSは、リングバッファ内に空きの録画領域がなくなると、録画済みの録画領域に新たなコンテンツを上書きしていく。そのため、DMSのリングバッファに記憶されたコンテンツがDMPやDMRで再生している間に、リングバッファの録画済みの録画領域に新たなコンテンツが上書きされると、再生中のコンテンツの先頭部分やその全体が無くなる可能性がある。具体的には、DMPやDMRにおけるコンテンツの再生がポーズしている間に、リングバッファに新たなコンテンツが上書きされて、ポーズしている箇所のコンテンツが削除されてしまう。このような場合、レジュームした際にはポーズした箇所からコンテンツの再生を再開しようとするが、ポーズした箇所のコンテンツは削除されているため、DMSは、DLNA(Digital Living Network Alliance)に従ってDMPやDMRに対してエラーを返さなければならない。
【0005】
本発明は、上記に鑑みてなされたものであって、ユーザに対してエラーなくコンテンツを提供することができるサーバ、再生装置、および再生制御方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
実施形態のサーバは、確保手段と、録画手段と、制御手段と、を備える。前記確保手段は、コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する。前記録画手段は、前記確保手段により確保された録画領域に前記コンテンツを録画する。前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生状態の要因となっている再生装置に対し、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する。
【図面の簡単な説明】
【0007】
【図1】図1は、本実施形態にかかるコンテンツ公開システムの構成を示すブロック図である。
【図2】図2は、本実施形態にかかるプレーヤの構成を示すブロック図である。
【図3】図3は、本実施形態にかかるサーバの構成を示すブロック図である。
【図4】図4は、プレーヤのコンテンツ再生時における再生制御部の処理の流れを示すフローチャートである。
【図5】図5は、サーバから再生制御指示を受信した場合の再生制御部の処理の流れを示すフローチャートである。
【図6】図6は、制御告知部によりディスプレイ部に表示されるメッセージの一例を示す図である。
【図7】図7は、コンテンツをリングバッファ部に記憶させる際の録画部の処理の流れを示すフローチャートである。
【図8】図8は、リングバッファ部への新たなコンテンツの記憶を説明するための図である。
【図9】図9は、録画領域の確保処理の流れを示すフローチャートである。
【図10】図10は、コンテンツが記憶された録画領域を開放する処理の流れを示すフローチャートである。
【図11】図11は、DMR制御部によってプレーヤを制御する処理の流れを示すフローチャートである。
【図12】図12は、DMR制御部によるプレーヤの制御を説明するための図である。
【発明を実施するための形態】
【0008】
図1は、本実施形態にかかるコンテンツ公開システムの構成を示すブロック図である。本実施形態にかかるコンテンツ公開システム1は、デジタルコンテンツ(以下、コンテンツとする)をネットワーク4上に公開するDLNA(Digital Living Network Alliance)ガイドラインに対応したDMS(Digital Media Server)として動作するサーバ3、サーバ3がネットワーク4上に公開したコンテンツを再生して表示するDLNAに対応したDMP(Digital Media Player)またはDMR(Digital Media Renderer)として動作するプレーヤ2を備えている。プレーヤ2は、DLNAガイドラインに従うことで、ネットワーク4に接続されたサーバ3に記憶されているコンテンツを検索し、検索したコンテンツを受信して再生することが可能である。なお、本実施形態では、サーバ3は、プレーヤ2におけるコンテンツの再生を制御して、コンテンツの再生のポーズやレジュームを行う。そのため、プレーヤ2は、コンテンツの再生をサーバ3から制御できるようにするDMR部209(図2参照)を実装し、サーバ3は、DMR部209(図2参照)に対して、コンテンツの再生を制御する再生制御指示をUPnP(Universal Plug and Play)アクションとして実行するCP部310(図3参照)を実装する。
【0009】
図2は、本実施形態にかかるプレーヤの構成を示すブロック図である。本実施形態にかかるプレーヤ2は、ネットワークインターフェイス部201、UPnP制御部202、ユーザ操作受付部203、再生制御部204、制御告知部205、ストリーム受信部206、ディスプレイ部207などを備えている。
【0010】
ネットワークインターフェイス部201は、ネットワーク4に接続されたデバイスとの通信を司る。UPnP制御部202は、ネットワークインターフェイス部201を通じてネットワーク4上のデバイスと通信を行うものである。具体的には、UPnP制御部202は、M-Searchなどを利用したネットワーク4に接続されたサーバ3の検索やサーバ4からのUPnPアクションを実行することで再生されるコンテンツの検索を行うCP(Control Point)部208、およびプレーヤ2におけるコンテンツの再生を外部のCP部から制御できるようにするDMR部209を備えている。
【0011】
DMR部209は、AVT(AV Transport)部210、CMS(Connection Manager Service)部211、およびRCS(Rendering Control Service)部212を備えている。AVT部210は、プレーヤ2によるコンテンツの再生状態を取得するとともに、取得したコンテンツの再生状態を外部のCP部に対して提供する。CMS部211は、CP部208により検索したサーバ4内のコンテンツがプレーヤ2で再生可能であるか否かのマッチングを行う。RCS部212は、コンテンツを再生する上で可変な値(例えば、音量、ブライトネスなど)の取得や、外部装置(例えば、サーバ3)からのコンテンツの再生制御指示の受信を行う。なお、外部のCP部からプレーヤ2におけるコンテンツの再生が制御できるように、プレーヤ2とDMR部209とは、同一のIPアドレスである必要がある。
【0012】
ユーザ操作受付部203は、リモコン等からのユーザ操作を受け付けるものである。再生制御部204は、ユーザ操作受付部203により受け付けたユーザ操作を取得し、取得したユーザ操作に従ってストリーム受信部206に対してコンテンツの受信要求を行うものである。また、再生制御部204は、RCS部212によってコンテンツの再生制御指示を受信した場合に、外部のCP部からのUPnPアクションの実行(コンテンツの再生制御指示)の可否を判断し、UPnPアクションを実行できると判断した場合には、ストリーム受信部206に対してコンテンツの受信要求またはコンテンツの受信の中止要求を行う。さらに、再生制御部204は、RCS部212によって受信したコンテンツの再生制御指示に従ってストリーム受信部206によるコンテンツの再生を制御する。制御告知部205は、外部のCP部からUPnPアクションを受けた場合に、OSD(On-Screen Display)によりディスプレイ部207にメッセージを表示したり、図示しないスピーカ等から音を発したりして、UPnPアクションを受けたことをユーザに対して告知する。
【0013】
ストリーム受信部206は、再生制御部204からのコンテンツの受信要求に応じて、サーバ3にHTTP GETコマンドを出力して、サーバ3よりネットワーク上に公開されたコンテンツを受信し、受信したコンテンツを再生してディスプレイ部207に表示する。ディスプレイ部207は、ストリーム受信部206により再生されたコンテンツを表示する液晶ディスプレイである。また、ディスプレイ部207は、制御告知部205により制御されてメッセージを表示する。
【0014】
図3は、本実施形態にかかるサーバの構成を示すブロック図である。本実施形態にかかるサーバ3は、コンテンツ管理部301、録画部302、ネットワークインターフェイス部303、UPnP制御部304、DMR制御部305、ストリーム送信部306、コンテンツ情報管理部307などを備えている。
【0015】
コンテンツ管理部301は、バッファ管理部309およびリングバッファ部308を備えている。リングバッファ部308は、コンテンツを記憶(録画)するための記憶領域である。バッファ管理部309は、コンテンツを録画する前にリングバッファ部308内に録画領域を確保し、確保した録画領域がコンテンツで最後迄録画される前に、過去にコンテンツを録画した領域(コンテンツが既に録画されている領域)に新たな録画領域を確保するものである。本実施形態では、バッファ管理部309は、コンテンツを録画する前にリングバッファ部308の先頭アドレス(始端)の領域から順に録画領域として確保し、確保した録画領域がコンテンツで最後迄録画される前に、当該確保した録画領域に続くアドレスの領域を、新たな録画領域として確保する。そして、バッファ管理部309は、最終アドレス(終端)の領域が録画領域として確保された場合、再び、先頭アドレスの領域を新たな録画領域として確保する。なお、本実施形態では、リングバッファ部308のアドレスの順に録画領域を確保しているが、これに限定するものではなく、リングバッファ部308内にランダムに録画領域を確保しても良い。または、リングバッファ部308が設けられたHDD(Hard Disk Drive)の空き容量が少なくなった場合、一番古いコンテンツが記憶された領域から、録画領域として確保しても良い。
【0016】
また、バッファ管理部309は、リングバッファ部308内におけるコンテンツが記憶された録画領域のアドレスや、リングバッファ部308に記憶されたコンテンツのタイトルやサイズなどのコンテンツ情報を記憶する。また、バッファ管理部309は、既にコンテンツが記憶されている領域を新たな録画領域として確保した場合に、コンテンツが記憶された録画領域のアドレスを変更する。さらに、バッファ管理部309は、コンテンツが記憶された録画領域のアドレスを変更した場合に、DMR制御部305およびコンテンツ情報管理部307に対してコンテンツが記憶された録画領域のアドレスの変更を通知する。
【0017】
録画部302は、バッファ管理部309により確保された新たな録画領域にコンテンツを記憶させるものであり、バッファ管理部309により確保された新たな録画領域に既にコンテンツが記憶されている場合、既に記憶されているコンテンツに新たなコンテンツを上書きする。
【0018】
ネットワークインターフェイス部303は、ネットワーク4に接続されたデバイスとの通信を司るものである。ストリーム送信部306は、ネットワークインターフェイス部303を通じて、プレーヤ2のストリーム受信部206から出力されたHTTP GETコマンドに応じて、リングバッファ部308に記憶されたコンテンツをプレーヤ2に送信する。
【0019】
UPnP制御部304は、ネットワークインターフェイス部303を通じて、ネットワーク4上のデバイスとの通信を行うものである。具体的には、UPnP制御部304は、M-Searchなどを利用したネットワーク4に接続されたプレーヤ2の検索やプレーヤ2のAVT部210により提供されるコンテンツの再生状態の取得などを行うCP部310、コンテンツ情報管理部307からコンテンツ情報を取得し、取得したコンテンツ情報を、ネットワーク4に接続されたデバイスに公開するCDS(Content Directory Service)部312、およびリングバッファ部308に記憶されたコンテンツがプレーヤ2で再生可能であるか否かのマッチングを行うCMS部311を備えている。
【0020】
DMR制御部305は、バッファ管理部309からコンテンツが記憶された録画領域のアドレスの変更が通知される前に(つまり、バッファ管理部309によって既にコンテンツが記憶された新たな録画領域が確保される前に)、UPnP制御部304のCP部310を介して、プレーヤ2のAVT部210により提供されるコンテンツの再生状態を取得する。ここで取得する再生状態は、プレーヤ2のストリーム受信部206による、バッファ管理部309により新たに確保しようとする録画領域内のコンテンツの再生状態(例えば、ポーズ、再生中、停止)である。そして、DMR制御部305は、プレーヤ2のストリーム受信部206が再生状態であると判断した場合、CP部310を介して、再生状態の要因となっている(つまり、新たに確保しようとするコンテンツが再生状態にある)プレーヤ2に対し、バッファ管理部309により新たに確保しようとする録画領域外に記憶されたコンテンツを再生するための再生制御指示を送信する。
【0021】
また、DMR制御部305は、バッファ管理部309からコンテンツが記憶された録画領域のアドレスの変更が通知される前に(つまり、バッファ管理部309によって既にコンテンツが記憶された新たな録画領域が確保される前に)、UPnP制御部304のCP部310を介して、プレーヤ2のAVT部210により提供されるコンテンツの再生状態を取得する。ここで取得する再生状態は、プレーヤ2のストリーム受信部206による、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツの再生状態である。そして、DMR制御部305は、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツがポーズであると判断した場合、CP部310を介して、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツを再生するための再生制御指示をプレーヤ2に対して送信する。
【0022】
コンテンツ情報管理部307は、バッファ管理部309よりコンテンツが記憶された録画領域のアドレスの変更が通知されると、バッファ管理部309からコンテンツ情報を取得し、UPnP制御部304によって外部に公開できるように、取得したコンテンツ情報を記憶する。
【0023】
次に、図4を用いて、プレーヤ2のコンテンツ再生時における再生制御部204における処理について説明する。図4は、プレーヤのコンテンツ再生時における再生制御部の処理の流れを示すフローチャートである。
【0024】
ユーザからリモコン等でコンテンツの再生、停止、一時停止、早送り、巻き戻しなどのプレーヤ2に対する操作をユーザ操作受付部203によって受け付けられると、ユーザ操作として再生制御部204に入力される(ステップS401)。
【0025】
次に、再生制御部204は、入力されたユーザ操作に従って、プレーヤ2を動作させることが可能かどうかの判断を行う(ステップS402)。プレーヤ2の状態(例えば、コンテンツを録画する場合など)によっては、ユーザ操作に従ってプレーヤ2を動作させることが不可能な場合がある。そのため、ユーザ操作に従ってプレーヤ2を動作させることが不可能な場合には(ステップS402:No)、再生制御部204は、ユーザ操作に従ってプレーヤ2を動作させず、処理を終了する。
【0026】
一方、ユーザ操作に従ってプレーヤ2を動作させることができる場合(ステップS402:Yes)、再生制御部204は、ストリーム受信部306に対してコンテンツの受信要求およびコンテンツの受信の中止要求を行うとともに(ステップS403)、DMR部209(AVT部210)により取得されるコンテンツの再生状態を更新する(ステップS404)。例えば、ユーザ操作が「再生」である場合、再生制御部204は、ストリーム受信部206に対してユーザが選択したコンテンツをサーバ3から受信するように要求し、かつDMR部209(AVT部210)により取得されるコンテンツの再生状態を「PLAYING」に更新する。
【0027】
次に、図5および図6を用いて、サーバ3から再生制御指示を受信した場合の再生制御部204の処理について説明する。図5は、サーバから再生制御指示を受信した場合の再生制御部の処理の流れを示すフローチャートである。図6は、制御告知部によりディスプレイ部に表示されるメッセージの一例を示す図である。
【0028】
RCS部212がサーバ3からの再生制御指示として再生、停止、一時停止、早送り、または巻き戻しを受信すると、受信した再生制御指示は再生制御部204に入力される(ステップS501)。
【0029】
再生制御指示が入力されると、再生制御部204は、入力された再生制御指示に従って、プレーヤ2を動作させることが可能かどうかの判断を行う(ステップS502)。プレーヤ2の状態(例えば、リモコン等によってユーザ操作が行われている場合など)によっては、再生制御指示に従ってプレーヤ2を動作させることが不可能な場合がある。そのため、再生制御指示に従ってプレーヤ2を動作させることができない場合には(ステップS502:No)、再生制御部204は、再生制御指示に従ってプレーヤ2を動作させず、処理を終了する。
【0030】
一方、再生制御指示に従ってプレーヤ2を動作させることができる場合(ステップS502:Yes)、再生制御部204は、制御告知部205に対して、再生制御指示を受信したことを通知する(ステップS503)。これにより、制御告知部205は、図6に示すように、ディスプレイ部207にメッセージを表示して、サーバ3から再生制御指示を受けたことをユーザに告知する。なお、制御告知部205は、その他にも音声などを使用して、サーバ3から再生制御指示を受けたことをユーザに告知しても良い。
【0031】
さらに、再生制御部204は、ストリーム受信部306に対してコンテンツの受信要求またはコンテンツの受信の中止要求を行うとともに(ステップS504)、DMR部209(AVT部210)により取得されるコンテンツの再生状態を更新する(ステップS505)。例えば、再生制御指示が「再生」である場合、再生制御部204は、ストリーム受信部206に対してユーザが選択したコンテンツをサーバ3から受信するように要求し、かつDMR部209(AVT部210)により取得されるコンテンツの再生状態を「PLAYING」に更新する。
【0032】
次に、図7を用いて、コンテンツをリングバッファ部308に記憶させる際の録画部302の処理について説明する。図7は、コンテンツをリングバッファ部に記憶させる際の録画部の処理の流れを示すフローチャートである。
【0033】
録画部302は、新たなコンテンツをリングバッファ部308に録画する際、バッファ管理部309によって確保された録画領域が残っているか否か(つまり、確保された録画領域が最後迄録画されたか否か)を判断する(ステップS701)。確保された録画領域が残っている場合(ステップS701:Yes)、録画部302は、確保されている録画領域にコンテンツを記憶させる(ステップS702)。次いで、録画部302は、コンテンツの録画が終了したか否かを判断し(ステップS703)、コンテンツの録画が終了していない場合には(ステップS703:No)、ステップS701に示す処理に戻る。
【0034】
一方、バッファ管理部309によって確保された録画領域が残っていない場合(ステップS701:No)、録画部302は、バッファ管理部309に対して録画領域の確保を要求する(ステップS704)。そして、バッファ管理部309によって録画領域が確保されると、録画部302は、確保された録画領域にコンテンツを記憶させる(ステップS705)。確保された録画領域へのコンテンツの記憶が終了すると、録画部302は、コンテンツを記憶させた録画領域の開放をバッファ管理部309に対して要求し、新たなコンテンツとしてネットワーク4に接続されたプレーヤ2に対して公開する(ステップS706)。
【0035】
図8は、リングバッファ部への新たなコンテンツの記憶を説明するための図である。録画部302は、上述したように、バッファ管理部309によって所定サイズ毎に確保された録画領域にコンテンツを記憶させる。ところで、録画部302は、バッファ管理部309によって確保された録画領域に既にコンテンツが記憶されていた場合、当該既に記憶されているコンテンツに上書きすることになり、当該既に記憶されているコンテンツは消去またはサイズが小さくなる。例えば、図8に示すように、バッファ管理部309によって確保された録画領域にコンテンツAの冒頭が記憶されていた場合、コンテンツAの冒頭には、新たなコンテンツ(コンテンツA以外のコンテンツ)が上書きされてしまい、コンテンツAのサイズが小さくなる。そして、録画部302によりコンテンツの記憶が終了して、コンテンツが記憶された録画領域は開放されると、リングバッファ部308には、新たなコンテンツ(図8に示すコンテンツAまたはコンテンツB以外のコンテンツ)が増えるか、若しくは既に記憶されたコンテンツのサイズが大きくなる(例えば、コンテンツBの終端が延長される)。
【0036】
図8のようにしてリングバッファ部308の録画領域へのコンテンツの上書きが行われた場合、従来のサーバにおいては、上書きされたコンテンツの取得要求をプレーヤ2から受けた際に、プレーヤに対してコンテンツを送信することができず、エラーを返さなければならなかった。そこで、本実施形態では、サーバ3は、以下の処理を実行することにより、プレーヤ3に対してエラーが返されることを防止する。
【0037】
図9は、録画領域の確保処理の流れを示すフローチャートである。録画部302から録画領域の確保要求を受けると、バッファ管理部309は、リングバッファ部308内において既にコンテンツが記憶された録画領域(つまり、過去にコンテンツを録画した領域)を確保するか否かを判断する(ステップS901)。
【0038】
リングバッファ部308内において既にコンテンツが記憶された録画領域を確保しない場合(ステップS901:No)、バッファ管理部309は、既にコンテンツが記憶された録画領域のアドレスに続くアドレスの領域を新たなコンテンツを記憶する録画領域として確保する(ステップS904)。
【0039】
一方、リングバッファ部308内において既にコンテンツが記憶された録画領域を確保する場合(ステップS901:Yes)、バッファ管理部309は、既に記憶されたコンテンツへの新たなコンテンツの上書きによるエラーの発生を防止するため、DMR制御部305に対してプレーヤ2の制御を要求する(ステップS902)。具体的には、プレーヤ2によるコンテンツの再生が新たなコンテンツが上書きされる箇所でポーズされ、その後、ポーズされた箇所からコンテンツがレジュームされた場合、当該箇所には新たなコンテンツが上書きされているため、レジュームが失敗する可能性がある。本実施形態では、レジュームの失敗を防止するために、DMR制御部305によるプレーヤ2の制御が行なわれる。
【0040】
そして、バッファ管理部309は、DMR制御部305に対してプレーヤ2の制御を要求した後、コンテンツ情報管理部307に対して、録画領域に記憶されたコンテンツのサイズの変更を通知するとともに(ステップS903)、既にコンテンツが記憶された録画領域を新たなコンテンツを記憶させる録画領域として確保する(ステップS904)。
【0041】
次に、図10を用いて、コンテンツが記憶された録画領域を開放する処理について説明する。図10は、コンテンツが記憶された録画領域を開放する処理の流れを示すフローチャートである。
【0042】
確保された録画領域へのコンテンツの記憶が終了して、録画部302から録画領域の開放が要求されると、バッファ管理部309は、コンテンツを記憶させた録画領域へのアクセスを許可して、当該コンテンツを記憶させた録画領域を開放する(ステップS1001)。そして、バッファ管理部309は、コンテンツが記憶された録画領域のアドレスの変更をコンテンツ情報管理部307に通知する(ステップS1002)。
【0043】
次に、図11および図12を用いて、DMR制御部305によってプレーヤ2を制御する処理について説明する。図11は、DMR制御部によってプレーヤを制御する処理の流れを示すフローチャートである。図12は、DMR制御部によるプレーヤの制御を説明するための図である。なお、DMR制御部305は、過去にリングバッファ部308に記憶されたコンテンツを取得したプレーヤ2のIPアドレスを記憶しておき、CP部310が発見したDMR部209とIPアドレスが同じプレーヤ2に対して、下記の処理を実行するものとする。
【0044】
DMR制御部305は、バッファ管理部309からプレーヤ2の制御が要求されると、プレーヤ2のAVT部210からコンテンツの再生状態を取得する(ステップS1101)。そして、DMR制御部305は、プレーヤ2においてコンテンツが再生状態であるか否かを判断する(ステップS1102)。プレーヤ2においてコンテンツが再生状態でない場合(ステップS1102:No)、新たに確保しようとする録画領域に既に記憶されたコンテンツに対して新たなコンテンツを上書きしてもエラーは発生しないため、DMR制御部305は、処理を終了する。
【0045】
一方、プレーヤ2においてコンテンツが再生状態である場合(ステップS1102:Yes)、DMR制御部305は、AVT部210を利用してポーズまたは再生中のコンテンツの再生位置を取得する(ステップS1103)。次いで、DMR制御部305は、取得した再生位置のコンテンツが、バッファ管理部309により新たに確保しようとする録画領域に記憶されているか否かを判断する(ステップS1104)。これにより、DMR制御部305は、新たに確保しようとする録画領域内のコンテンツが再生状態かを判断する。
【0046】
そして、取得した再生位置のコンテンツが、新たに確保しようとする録画領域に記憶されている場合(ステップS1104:Yes)、DMR制御部305は、CP部310を介して、新たに確保しようとする録画領域以外の録画領域に記憶されたコンテンツを再生するための再生制御指示をプレーヤ2に対して送信する(ステップS1105)。例えば、図12に示すように、プレーヤ2によるコンテンツの再生が、バッファ管理部309により今回確保される録画領域内に記憶されたコンテンツでポーズされていた場合、今回確保される録画領域内に記憶されたコンテンツは、新たなコンテンツの上書きにより消去されてしまうため、プレーヤ2においてレジュームがされると、エラーが発生してしまう。そこで、本実施形態では、DMR制御部305は、図12に示すように、ポーズしたコンテンツが今回確保される録画領域に記憶されている場合(つまり、バッファ管理部309により確保される録画領域内のコンテンツが再生状態である場合)、プレーヤ2を制御して、新たに確保しようとする録画領域以外の録画領域に記憶されたコンテンツのうち、最も低いアドレスの録画領域に記憶されたコンテンツ(最初に記憶されたコンテンツ)から順に再生させる再生制御指示を送信する。
【0047】
一方、取得した再生位置のコンテンツが、新たに確保しようとする録画領域に記憶されていない場合(ステップS1104:No)、DMR制御部305は、CP部310を介して、取得した再生位置のコンテンツを再生させる通常再生を維持する再生制御指示をプレーヤ2に対して送信する(ステップS1106)。例えば、図12に示すように、プレーヤ2によるコンテンツの再生が、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内においてポーズされていた場合、新たに確保しようとする録画領域の次に新たな録画領域として確保されて新たなコンテンツが上書きされてしまう。しかしながら、上述した処理と同様にして新たに確保しようとする録画領域以外の録画領域に記憶されたコンテンツを再生させると、再生位置がジャンプしたように見えてしまう。そこで、本実施形態では、DMR制御部305は、図12に示すように、ポーズしたコンテンツの再生位置が新たに確保しようとする録画領域の次に確保される録画領域内にある場合(つまり、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツが再生状態である場合)、CP部310を介して、当該次に確保される録画領域内のコンテンツを再生する再生制御指示をプレーヤ2に対して送信して、ユーザに対してシームレスにコンテンツを提供する。
【0048】
このように本実施形態にかかるプレーヤ2が、サーバ3から、ネットワーク4を介して、リングバッファ部308に記憶されたコンテンツを受信し、受信したコンテンツを再生するストリーム受信部206と、サーバ3からコンテンツの再生を制御する再生制御指示を受信するCP部208と、受信した再生制御指示に従ってストリーム受信部206によるコンテンツの再生を制御する再生制御部204と、を備える。また、本実施形態にかかるサーバ3が、コンテンツを記憶するための記憶領域であるリングバッファ部308と、コンテンツを録画する前に録画領域を確保し、確保した録画領域がコンテンツで最後迄録画される前に、過去にコンテンツを録画した新たな録画領域を確保するバッファ管理部309と、バッファ管理部309により確保された録画領域にコンテンツを録画する録画部302と、バッファ管理部309が新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、プレーヤ2に対し、新たに確保しようとする録画領域外に記憶されたコンテンツを再生するための再生制御指示を送信するDMR制御部305と、を備える。これにより、サーバ3からプレーヤ2の制御が可能となり、プレーヤ3によるコンテンツの再生が既に消去された再生位置のコンテンツから行われることを防止できるので、プレーヤ2によるコンテンツの再生がポーズまたは再生中にサーバ3のコンテンツが消去された場合でも、エラーなくユーザにコンテンツを提供することができる。
【0049】
なお、本実施形態のプレーヤ2およびサーバ3で実行されるプログラムは、ROM等に予め組み込まれて提供される。本実施形態のプレーヤ2およびサーバ3で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0050】
さらに、本実施形態のプレーヤ2およびサーバ3で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のプレーヤ2およびサーバ3で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0051】
本実施形態のプレーヤ2およびサーバ3で実行されるプログラムは、上述した各部(UPnP制御部202、再生制御部204、制御告知部205、ストリーム受信部206、録画部302、UPnP制御部304、DMR制御部305、ストリーム送信部306、バッファ管理部309など)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、UPnP制御部202、再生制御部204、制御告知部205、ストリーム受信部206、録画部302、UPnP制御部304、DMR制御部305、ストリーム送信部306、バッファ管理部309などが主記憶装置上に生成されるようになっている。
【0052】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【0053】
2…プレーヤ、3…サーバ、202…UPnP制御部、204…再生制御部、205…制御告知部、206…ストリーム受信部、208…CP部、209…DMR部、210…AVT部、211…CMS部、212…RCS部、301…コンテンツ管理部、302…録画部、304…UPnP制御部、305…DMR制御部、306…ストリーム送信部、308…リングバッファ部、309…バッファ管理部、310…CP部、311…CMS部、312…CDS部。
【技術分野】
【0001】
本発明の実施形態は、サーバ、再生装置、および再生制御方法に関する。
【背景技術】
【0002】
特許文献1には、DMS(Digital Media Server)より受信したコンテンツをDMP(Digital Media Player)やDMR(Digital Media Renderer)が再生している間に、DMPやDMRからDMSに対してコンテンツの再生のポーズが要求された場合、DMSが再生中のコンテンツをポーズした箇所を記憶し、DMPやDMRからレジュームが要求された際、記憶した箇所からコンテンツの再生を開始する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−85934号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、リングバッファを使用してコンテンツを録画し続けるDMSは、リングバッファ内に空きの録画領域がなくなると、録画済みの録画領域に新たなコンテンツを上書きしていく。そのため、DMSのリングバッファに記憶されたコンテンツがDMPやDMRで再生している間に、リングバッファの録画済みの録画領域に新たなコンテンツが上書きされると、再生中のコンテンツの先頭部分やその全体が無くなる可能性がある。具体的には、DMPやDMRにおけるコンテンツの再生がポーズしている間に、リングバッファに新たなコンテンツが上書きされて、ポーズしている箇所のコンテンツが削除されてしまう。このような場合、レジュームした際にはポーズした箇所からコンテンツの再生を再開しようとするが、ポーズした箇所のコンテンツは削除されているため、DMSは、DLNA(Digital Living Network Alliance)に従ってDMPやDMRに対してエラーを返さなければならない。
【0005】
本発明は、上記に鑑みてなされたものであって、ユーザに対してエラーなくコンテンツを提供することができるサーバ、再生装置、および再生制御方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
実施形態のサーバは、確保手段と、録画手段と、制御手段と、を備える。前記確保手段は、コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する。前記録画手段は、前記確保手段により確保された録画領域に前記コンテンツを録画する。前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生状態の要因となっている再生装置に対し、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する。
【図面の簡単な説明】
【0007】
【図1】図1は、本実施形態にかかるコンテンツ公開システムの構成を示すブロック図である。
【図2】図2は、本実施形態にかかるプレーヤの構成を示すブロック図である。
【図3】図3は、本実施形態にかかるサーバの構成を示すブロック図である。
【図4】図4は、プレーヤのコンテンツ再生時における再生制御部の処理の流れを示すフローチャートである。
【図5】図5は、サーバから再生制御指示を受信した場合の再生制御部の処理の流れを示すフローチャートである。
【図6】図6は、制御告知部によりディスプレイ部に表示されるメッセージの一例を示す図である。
【図7】図7は、コンテンツをリングバッファ部に記憶させる際の録画部の処理の流れを示すフローチャートである。
【図8】図8は、リングバッファ部への新たなコンテンツの記憶を説明するための図である。
【図9】図9は、録画領域の確保処理の流れを示すフローチャートである。
【図10】図10は、コンテンツが記憶された録画領域を開放する処理の流れを示すフローチャートである。
【図11】図11は、DMR制御部によってプレーヤを制御する処理の流れを示すフローチャートである。
【図12】図12は、DMR制御部によるプレーヤの制御を説明するための図である。
【発明を実施するための形態】
【0008】
図1は、本実施形態にかかるコンテンツ公開システムの構成を示すブロック図である。本実施形態にかかるコンテンツ公開システム1は、デジタルコンテンツ(以下、コンテンツとする)をネットワーク4上に公開するDLNA(Digital Living Network Alliance)ガイドラインに対応したDMS(Digital Media Server)として動作するサーバ3、サーバ3がネットワーク4上に公開したコンテンツを再生して表示するDLNAに対応したDMP(Digital Media Player)またはDMR(Digital Media Renderer)として動作するプレーヤ2を備えている。プレーヤ2は、DLNAガイドラインに従うことで、ネットワーク4に接続されたサーバ3に記憶されているコンテンツを検索し、検索したコンテンツを受信して再生することが可能である。なお、本実施形態では、サーバ3は、プレーヤ2におけるコンテンツの再生を制御して、コンテンツの再生のポーズやレジュームを行う。そのため、プレーヤ2は、コンテンツの再生をサーバ3から制御できるようにするDMR部209(図2参照)を実装し、サーバ3は、DMR部209(図2参照)に対して、コンテンツの再生を制御する再生制御指示をUPnP(Universal Plug and Play)アクションとして実行するCP部310(図3参照)を実装する。
【0009】
図2は、本実施形態にかかるプレーヤの構成を示すブロック図である。本実施形態にかかるプレーヤ2は、ネットワークインターフェイス部201、UPnP制御部202、ユーザ操作受付部203、再生制御部204、制御告知部205、ストリーム受信部206、ディスプレイ部207などを備えている。
【0010】
ネットワークインターフェイス部201は、ネットワーク4に接続されたデバイスとの通信を司る。UPnP制御部202は、ネットワークインターフェイス部201を通じてネットワーク4上のデバイスと通信を行うものである。具体的には、UPnP制御部202は、M-Searchなどを利用したネットワーク4に接続されたサーバ3の検索やサーバ4からのUPnPアクションを実行することで再生されるコンテンツの検索を行うCP(Control Point)部208、およびプレーヤ2におけるコンテンツの再生を外部のCP部から制御できるようにするDMR部209を備えている。
【0011】
DMR部209は、AVT(AV Transport)部210、CMS(Connection Manager Service)部211、およびRCS(Rendering Control Service)部212を備えている。AVT部210は、プレーヤ2によるコンテンツの再生状態を取得するとともに、取得したコンテンツの再生状態を外部のCP部に対して提供する。CMS部211は、CP部208により検索したサーバ4内のコンテンツがプレーヤ2で再生可能であるか否かのマッチングを行う。RCS部212は、コンテンツを再生する上で可変な値(例えば、音量、ブライトネスなど)の取得や、外部装置(例えば、サーバ3)からのコンテンツの再生制御指示の受信を行う。なお、外部のCP部からプレーヤ2におけるコンテンツの再生が制御できるように、プレーヤ2とDMR部209とは、同一のIPアドレスである必要がある。
【0012】
ユーザ操作受付部203は、リモコン等からのユーザ操作を受け付けるものである。再生制御部204は、ユーザ操作受付部203により受け付けたユーザ操作を取得し、取得したユーザ操作に従ってストリーム受信部206に対してコンテンツの受信要求を行うものである。また、再生制御部204は、RCS部212によってコンテンツの再生制御指示を受信した場合に、外部のCP部からのUPnPアクションの実行(コンテンツの再生制御指示)の可否を判断し、UPnPアクションを実行できると判断した場合には、ストリーム受信部206に対してコンテンツの受信要求またはコンテンツの受信の中止要求を行う。さらに、再生制御部204は、RCS部212によって受信したコンテンツの再生制御指示に従ってストリーム受信部206によるコンテンツの再生を制御する。制御告知部205は、外部のCP部からUPnPアクションを受けた場合に、OSD(On-Screen Display)によりディスプレイ部207にメッセージを表示したり、図示しないスピーカ等から音を発したりして、UPnPアクションを受けたことをユーザに対して告知する。
【0013】
ストリーム受信部206は、再生制御部204からのコンテンツの受信要求に応じて、サーバ3にHTTP GETコマンドを出力して、サーバ3よりネットワーク上に公開されたコンテンツを受信し、受信したコンテンツを再生してディスプレイ部207に表示する。ディスプレイ部207は、ストリーム受信部206により再生されたコンテンツを表示する液晶ディスプレイである。また、ディスプレイ部207は、制御告知部205により制御されてメッセージを表示する。
【0014】
図3は、本実施形態にかかるサーバの構成を示すブロック図である。本実施形態にかかるサーバ3は、コンテンツ管理部301、録画部302、ネットワークインターフェイス部303、UPnP制御部304、DMR制御部305、ストリーム送信部306、コンテンツ情報管理部307などを備えている。
【0015】
コンテンツ管理部301は、バッファ管理部309およびリングバッファ部308を備えている。リングバッファ部308は、コンテンツを記憶(録画)するための記憶領域である。バッファ管理部309は、コンテンツを録画する前にリングバッファ部308内に録画領域を確保し、確保した録画領域がコンテンツで最後迄録画される前に、過去にコンテンツを録画した領域(コンテンツが既に録画されている領域)に新たな録画領域を確保するものである。本実施形態では、バッファ管理部309は、コンテンツを録画する前にリングバッファ部308の先頭アドレス(始端)の領域から順に録画領域として確保し、確保した録画領域がコンテンツで最後迄録画される前に、当該確保した録画領域に続くアドレスの領域を、新たな録画領域として確保する。そして、バッファ管理部309は、最終アドレス(終端)の領域が録画領域として確保された場合、再び、先頭アドレスの領域を新たな録画領域として確保する。なお、本実施形態では、リングバッファ部308のアドレスの順に録画領域を確保しているが、これに限定するものではなく、リングバッファ部308内にランダムに録画領域を確保しても良い。または、リングバッファ部308が設けられたHDD(Hard Disk Drive)の空き容量が少なくなった場合、一番古いコンテンツが記憶された領域から、録画領域として確保しても良い。
【0016】
また、バッファ管理部309は、リングバッファ部308内におけるコンテンツが記憶された録画領域のアドレスや、リングバッファ部308に記憶されたコンテンツのタイトルやサイズなどのコンテンツ情報を記憶する。また、バッファ管理部309は、既にコンテンツが記憶されている領域を新たな録画領域として確保した場合に、コンテンツが記憶された録画領域のアドレスを変更する。さらに、バッファ管理部309は、コンテンツが記憶された録画領域のアドレスを変更した場合に、DMR制御部305およびコンテンツ情報管理部307に対してコンテンツが記憶された録画領域のアドレスの変更を通知する。
【0017】
録画部302は、バッファ管理部309により確保された新たな録画領域にコンテンツを記憶させるものであり、バッファ管理部309により確保された新たな録画領域に既にコンテンツが記憶されている場合、既に記憶されているコンテンツに新たなコンテンツを上書きする。
【0018】
ネットワークインターフェイス部303は、ネットワーク4に接続されたデバイスとの通信を司るものである。ストリーム送信部306は、ネットワークインターフェイス部303を通じて、プレーヤ2のストリーム受信部206から出力されたHTTP GETコマンドに応じて、リングバッファ部308に記憶されたコンテンツをプレーヤ2に送信する。
【0019】
UPnP制御部304は、ネットワークインターフェイス部303を通じて、ネットワーク4上のデバイスとの通信を行うものである。具体的には、UPnP制御部304は、M-Searchなどを利用したネットワーク4に接続されたプレーヤ2の検索やプレーヤ2のAVT部210により提供されるコンテンツの再生状態の取得などを行うCP部310、コンテンツ情報管理部307からコンテンツ情報を取得し、取得したコンテンツ情報を、ネットワーク4に接続されたデバイスに公開するCDS(Content Directory Service)部312、およびリングバッファ部308に記憶されたコンテンツがプレーヤ2で再生可能であるか否かのマッチングを行うCMS部311を備えている。
【0020】
DMR制御部305は、バッファ管理部309からコンテンツが記憶された録画領域のアドレスの変更が通知される前に(つまり、バッファ管理部309によって既にコンテンツが記憶された新たな録画領域が確保される前に)、UPnP制御部304のCP部310を介して、プレーヤ2のAVT部210により提供されるコンテンツの再生状態を取得する。ここで取得する再生状態は、プレーヤ2のストリーム受信部206による、バッファ管理部309により新たに確保しようとする録画領域内のコンテンツの再生状態(例えば、ポーズ、再生中、停止)である。そして、DMR制御部305は、プレーヤ2のストリーム受信部206が再生状態であると判断した場合、CP部310を介して、再生状態の要因となっている(つまり、新たに確保しようとするコンテンツが再生状態にある)プレーヤ2に対し、バッファ管理部309により新たに確保しようとする録画領域外に記憶されたコンテンツを再生するための再生制御指示を送信する。
【0021】
また、DMR制御部305は、バッファ管理部309からコンテンツが記憶された録画領域のアドレスの変更が通知される前に(つまり、バッファ管理部309によって既にコンテンツが記憶された新たな録画領域が確保される前に)、UPnP制御部304のCP部310を介して、プレーヤ2のAVT部210により提供されるコンテンツの再生状態を取得する。ここで取得する再生状態は、プレーヤ2のストリーム受信部206による、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツの再生状態である。そして、DMR制御部305は、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツがポーズであると判断した場合、CP部310を介して、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツを再生するための再生制御指示をプレーヤ2に対して送信する。
【0022】
コンテンツ情報管理部307は、バッファ管理部309よりコンテンツが記憶された録画領域のアドレスの変更が通知されると、バッファ管理部309からコンテンツ情報を取得し、UPnP制御部304によって外部に公開できるように、取得したコンテンツ情報を記憶する。
【0023】
次に、図4を用いて、プレーヤ2のコンテンツ再生時における再生制御部204における処理について説明する。図4は、プレーヤのコンテンツ再生時における再生制御部の処理の流れを示すフローチャートである。
【0024】
ユーザからリモコン等でコンテンツの再生、停止、一時停止、早送り、巻き戻しなどのプレーヤ2に対する操作をユーザ操作受付部203によって受け付けられると、ユーザ操作として再生制御部204に入力される(ステップS401)。
【0025】
次に、再生制御部204は、入力されたユーザ操作に従って、プレーヤ2を動作させることが可能かどうかの判断を行う(ステップS402)。プレーヤ2の状態(例えば、コンテンツを録画する場合など)によっては、ユーザ操作に従ってプレーヤ2を動作させることが不可能な場合がある。そのため、ユーザ操作に従ってプレーヤ2を動作させることが不可能な場合には(ステップS402:No)、再生制御部204は、ユーザ操作に従ってプレーヤ2を動作させず、処理を終了する。
【0026】
一方、ユーザ操作に従ってプレーヤ2を動作させることができる場合(ステップS402:Yes)、再生制御部204は、ストリーム受信部306に対してコンテンツの受信要求およびコンテンツの受信の中止要求を行うとともに(ステップS403)、DMR部209(AVT部210)により取得されるコンテンツの再生状態を更新する(ステップS404)。例えば、ユーザ操作が「再生」である場合、再生制御部204は、ストリーム受信部206に対してユーザが選択したコンテンツをサーバ3から受信するように要求し、かつDMR部209(AVT部210)により取得されるコンテンツの再生状態を「PLAYING」に更新する。
【0027】
次に、図5および図6を用いて、サーバ3から再生制御指示を受信した場合の再生制御部204の処理について説明する。図5は、サーバから再生制御指示を受信した場合の再生制御部の処理の流れを示すフローチャートである。図6は、制御告知部によりディスプレイ部に表示されるメッセージの一例を示す図である。
【0028】
RCS部212がサーバ3からの再生制御指示として再生、停止、一時停止、早送り、または巻き戻しを受信すると、受信した再生制御指示は再生制御部204に入力される(ステップS501)。
【0029】
再生制御指示が入力されると、再生制御部204は、入力された再生制御指示に従って、プレーヤ2を動作させることが可能かどうかの判断を行う(ステップS502)。プレーヤ2の状態(例えば、リモコン等によってユーザ操作が行われている場合など)によっては、再生制御指示に従ってプレーヤ2を動作させることが不可能な場合がある。そのため、再生制御指示に従ってプレーヤ2を動作させることができない場合には(ステップS502:No)、再生制御部204は、再生制御指示に従ってプレーヤ2を動作させず、処理を終了する。
【0030】
一方、再生制御指示に従ってプレーヤ2を動作させることができる場合(ステップS502:Yes)、再生制御部204は、制御告知部205に対して、再生制御指示を受信したことを通知する(ステップS503)。これにより、制御告知部205は、図6に示すように、ディスプレイ部207にメッセージを表示して、サーバ3から再生制御指示を受けたことをユーザに告知する。なお、制御告知部205は、その他にも音声などを使用して、サーバ3から再生制御指示を受けたことをユーザに告知しても良い。
【0031】
さらに、再生制御部204は、ストリーム受信部306に対してコンテンツの受信要求またはコンテンツの受信の中止要求を行うとともに(ステップS504)、DMR部209(AVT部210)により取得されるコンテンツの再生状態を更新する(ステップS505)。例えば、再生制御指示が「再生」である場合、再生制御部204は、ストリーム受信部206に対してユーザが選択したコンテンツをサーバ3から受信するように要求し、かつDMR部209(AVT部210)により取得されるコンテンツの再生状態を「PLAYING」に更新する。
【0032】
次に、図7を用いて、コンテンツをリングバッファ部308に記憶させる際の録画部302の処理について説明する。図7は、コンテンツをリングバッファ部に記憶させる際の録画部の処理の流れを示すフローチャートである。
【0033】
録画部302は、新たなコンテンツをリングバッファ部308に録画する際、バッファ管理部309によって確保された録画領域が残っているか否か(つまり、確保された録画領域が最後迄録画されたか否か)を判断する(ステップS701)。確保された録画領域が残っている場合(ステップS701:Yes)、録画部302は、確保されている録画領域にコンテンツを記憶させる(ステップS702)。次いで、録画部302は、コンテンツの録画が終了したか否かを判断し(ステップS703)、コンテンツの録画が終了していない場合には(ステップS703:No)、ステップS701に示す処理に戻る。
【0034】
一方、バッファ管理部309によって確保された録画領域が残っていない場合(ステップS701:No)、録画部302は、バッファ管理部309に対して録画領域の確保を要求する(ステップS704)。そして、バッファ管理部309によって録画領域が確保されると、録画部302は、確保された録画領域にコンテンツを記憶させる(ステップS705)。確保された録画領域へのコンテンツの記憶が終了すると、録画部302は、コンテンツを記憶させた録画領域の開放をバッファ管理部309に対して要求し、新たなコンテンツとしてネットワーク4に接続されたプレーヤ2に対して公開する(ステップS706)。
【0035】
図8は、リングバッファ部への新たなコンテンツの記憶を説明するための図である。録画部302は、上述したように、バッファ管理部309によって所定サイズ毎に確保された録画領域にコンテンツを記憶させる。ところで、録画部302は、バッファ管理部309によって確保された録画領域に既にコンテンツが記憶されていた場合、当該既に記憶されているコンテンツに上書きすることになり、当該既に記憶されているコンテンツは消去またはサイズが小さくなる。例えば、図8に示すように、バッファ管理部309によって確保された録画領域にコンテンツAの冒頭が記憶されていた場合、コンテンツAの冒頭には、新たなコンテンツ(コンテンツA以外のコンテンツ)が上書きされてしまい、コンテンツAのサイズが小さくなる。そして、録画部302によりコンテンツの記憶が終了して、コンテンツが記憶された録画領域は開放されると、リングバッファ部308には、新たなコンテンツ(図8に示すコンテンツAまたはコンテンツB以外のコンテンツ)が増えるか、若しくは既に記憶されたコンテンツのサイズが大きくなる(例えば、コンテンツBの終端が延長される)。
【0036】
図8のようにしてリングバッファ部308の録画領域へのコンテンツの上書きが行われた場合、従来のサーバにおいては、上書きされたコンテンツの取得要求をプレーヤ2から受けた際に、プレーヤに対してコンテンツを送信することができず、エラーを返さなければならなかった。そこで、本実施形態では、サーバ3は、以下の処理を実行することにより、プレーヤ3に対してエラーが返されることを防止する。
【0037】
図9は、録画領域の確保処理の流れを示すフローチャートである。録画部302から録画領域の確保要求を受けると、バッファ管理部309は、リングバッファ部308内において既にコンテンツが記憶された録画領域(つまり、過去にコンテンツを録画した領域)を確保するか否かを判断する(ステップS901)。
【0038】
リングバッファ部308内において既にコンテンツが記憶された録画領域を確保しない場合(ステップS901:No)、バッファ管理部309は、既にコンテンツが記憶された録画領域のアドレスに続くアドレスの領域を新たなコンテンツを記憶する録画領域として確保する(ステップS904)。
【0039】
一方、リングバッファ部308内において既にコンテンツが記憶された録画領域を確保する場合(ステップS901:Yes)、バッファ管理部309は、既に記憶されたコンテンツへの新たなコンテンツの上書きによるエラーの発生を防止するため、DMR制御部305に対してプレーヤ2の制御を要求する(ステップS902)。具体的には、プレーヤ2によるコンテンツの再生が新たなコンテンツが上書きされる箇所でポーズされ、その後、ポーズされた箇所からコンテンツがレジュームされた場合、当該箇所には新たなコンテンツが上書きされているため、レジュームが失敗する可能性がある。本実施形態では、レジュームの失敗を防止するために、DMR制御部305によるプレーヤ2の制御が行なわれる。
【0040】
そして、バッファ管理部309は、DMR制御部305に対してプレーヤ2の制御を要求した後、コンテンツ情報管理部307に対して、録画領域に記憶されたコンテンツのサイズの変更を通知するとともに(ステップS903)、既にコンテンツが記憶された録画領域を新たなコンテンツを記憶させる録画領域として確保する(ステップS904)。
【0041】
次に、図10を用いて、コンテンツが記憶された録画領域を開放する処理について説明する。図10は、コンテンツが記憶された録画領域を開放する処理の流れを示すフローチャートである。
【0042】
確保された録画領域へのコンテンツの記憶が終了して、録画部302から録画領域の開放が要求されると、バッファ管理部309は、コンテンツを記憶させた録画領域へのアクセスを許可して、当該コンテンツを記憶させた録画領域を開放する(ステップS1001)。そして、バッファ管理部309は、コンテンツが記憶された録画領域のアドレスの変更をコンテンツ情報管理部307に通知する(ステップS1002)。
【0043】
次に、図11および図12を用いて、DMR制御部305によってプレーヤ2を制御する処理について説明する。図11は、DMR制御部によってプレーヤを制御する処理の流れを示すフローチャートである。図12は、DMR制御部によるプレーヤの制御を説明するための図である。なお、DMR制御部305は、過去にリングバッファ部308に記憶されたコンテンツを取得したプレーヤ2のIPアドレスを記憶しておき、CP部310が発見したDMR部209とIPアドレスが同じプレーヤ2に対して、下記の処理を実行するものとする。
【0044】
DMR制御部305は、バッファ管理部309からプレーヤ2の制御が要求されると、プレーヤ2のAVT部210からコンテンツの再生状態を取得する(ステップS1101)。そして、DMR制御部305は、プレーヤ2においてコンテンツが再生状態であるか否かを判断する(ステップS1102)。プレーヤ2においてコンテンツが再生状態でない場合(ステップS1102:No)、新たに確保しようとする録画領域に既に記憶されたコンテンツに対して新たなコンテンツを上書きしてもエラーは発生しないため、DMR制御部305は、処理を終了する。
【0045】
一方、プレーヤ2においてコンテンツが再生状態である場合(ステップS1102:Yes)、DMR制御部305は、AVT部210を利用してポーズまたは再生中のコンテンツの再生位置を取得する(ステップS1103)。次いで、DMR制御部305は、取得した再生位置のコンテンツが、バッファ管理部309により新たに確保しようとする録画領域に記憶されているか否かを判断する(ステップS1104)。これにより、DMR制御部305は、新たに確保しようとする録画領域内のコンテンツが再生状態かを判断する。
【0046】
そして、取得した再生位置のコンテンツが、新たに確保しようとする録画領域に記憶されている場合(ステップS1104:Yes)、DMR制御部305は、CP部310を介して、新たに確保しようとする録画領域以外の録画領域に記憶されたコンテンツを再生するための再生制御指示をプレーヤ2に対して送信する(ステップS1105)。例えば、図12に示すように、プレーヤ2によるコンテンツの再生が、バッファ管理部309により今回確保される録画領域内に記憶されたコンテンツでポーズされていた場合、今回確保される録画領域内に記憶されたコンテンツは、新たなコンテンツの上書きにより消去されてしまうため、プレーヤ2においてレジュームがされると、エラーが発生してしまう。そこで、本実施形態では、DMR制御部305は、図12に示すように、ポーズしたコンテンツが今回確保される録画領域に記憶されている場合(つまり、バッファ管理部309により確保される録画領域内のコンテンツが再生状態である場合)、プレーヤ2を制御して、新たに確保しようとする録画領域以外の録画領域に記憶されたコンテンツのうち、最も低いアドレスの録画領域に記憶されたコンテンツ(最初に記憶されたコンテンツ)から順に再生させる再生制御指示を送信する。
【0047】
一方、取得した再生位置のコンテンツが、新たに確保しようとする録画領域に記憶されていない場合(ステップS1104:No)、DMR制御部305は、CP部310を介して、取得した再生位置のコンテンツを再生させる通常再生を維持する再生制御指示をプレーヤ2に対して送信する(ステップS1106)。例えば、図12に示すように、プレーヤ2によるコンテンツの再生が、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内においてポーズされていた場合、新たに確保しようとする録画領域の次に新たな録画領域として確保されて新たなコンテンツが上書きされてしまう。しかしながら、上述した処理と同様にして新たに確保しようとする録画領域以外の録画領域に記憶されたコンテンツを再生させると、再生位置がジャンプしたように見えてしまう。そこで、本実施形態では、DMR制御部305は、図12に示すように、ポーズしたコンテンツの再生位置が新たに確保しようとする録画領域の次に確保される録画領域内にある場合(つまり、バッファ管理部309により新たに確保しようとする録画領域の次に確保される録画領域内のコンテンツが再生状態である場合)、CP部310を介して、当該次に確保される録画領域内のコンテンツを再生する再生制御指示をプレーヤ2に対して送信して、ユーザに対してシームレスにコンテンツを提供する。
【0048】
このように本実施形態にかかるプレーヤ2が、サーバ3から、ネットワーク4を介して、リングバッファ部308に記憶されたコンテンツを受信し、受信したコンテンツを再生するストリーム受信部206と、サーバ3からコンテンツの再生を制御する再生制御指示を受信するCP部208と、受信した再生制御指示に従ってストリーム受信部206によるコンテンツの再生を制御する再生制御部204と、を備える。また、本実施形態にかかるサーバ3が、コンテンツを記憶するための記憶領域であるリングバッファ部308と、コンテンツを録画する前に録画領域を確保し、確保した録画領域がコンテンツで最後迄録画される前に、過去にコンテンツを録画した新たな録画領域を確保するバッファ管理部309と、バッファ管理部309により確保された録画領域にコンテンツを録画する録画部302と、バッファ管理部309が新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、プレーヤ2に対し、新たに確保しようとする録画領域外に記憶されたコンテンツを再生するための再生制御指示を送信するDMR制御部305と、を備える。これにより、サーバ3からプレーヤ2の制御が可能となり、プレーヤ3によるコンテンツの再生が既に消去された再生位置のコンテンツから行われることを防止できるので、プレーヤ2によるコンテンツの再生がポーズまたは再生中にサーバ3のコンテンツが消去された場合でも、エラーなくユーザにコンテンツを提供することができる。
【0049】
なお、本実施形態のプレーヤ2およびサーバ3で実行されるプログラムは、ROM等に予め組み込まれて提供される。本実施形態のプレーヤ2およびサーバ3で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0050】
さらに、本実施形態のプレーヤ2およびサーバ3で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のプレーヤ2およびサーバ3で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0051】
本実施形態のプレーヤ2およびサーバ3で実行されるプログラムは、上述した各部(UPnP制御部202、再生制御部204、制御告知部205、ストリーム受信部206、録画部302、UPnP制御部304、DMR制御部305、ストリーム送信部306、バッファ管理部309など)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、UPnP制御部202、再生制御部204、制御告知部205、ストリーム受信部206、録画部302、UPnP制御部304、DMR制御部305、ストリーム送信部306、バッファ管理部309などが主記憶装置上に生成されるようになっている。
【0052】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【0053】
2…プレーヤ、3…サーバ、202…UPnP制御部、204…再生制御部、205…制御告知部、206…ストリーム受信部、208…CP部、209…DMR部、210…AVT部、211…CMS部、212…RCS部、301…コンテンツ管理部、302…録画部、304…UPnP制御部、305…DMR制御部、306…ストリーム送信部、308…リングバッファ部、309…バッファ管理部、310…CP部、311…CMS部、312…CDS部。
【特許請求の範囲】
【請求項1】
コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する確保手段と、
前記確保手段により確保された録画領域に前記コンテンツを録画する録画手段と、
前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生状態の要因となっている再生機器に対し、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する制御手段と、
を備えたサーバ。
【請求項2】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生機器に対し、前記新たに確保しようとする録画領域外に録画されたコンテンツのうち、最初に録画された前記コンテンツから順に再生するための前記再生制御指示を送信する請求項1に記載のサーバ。
【請求項3】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域内のコンテンツがポーズされていると判断した場合、前記再生機器に対し、前記再生制御指示を送信する請求項1または2に記載のサーバ。
【請求項4】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域の次に確保しようとする録画領域のコンテンツがポーズされていると判断した場合、前記再生機器に対し、前記次に確保しようとする録画領域に録画された前記コンテンツを再生するための前記再生制御指示を送信する請求項3に記載のサーバ。
【請求項5】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域内のコンテンツが再生中であると判断した場合、前記再生機器に対し、前記再生制御指示を送信する請求項1から4のいずれか一に記載のサーバ。
【請求項6】
ネットワークを介して接続されたサーバから、コンテンツを受信して再生する再生手段と、
前記再生手段による前記コンテンツの再生を制御する再生制御指示を受信する指示受信手段と、
前記指示受信手段により受信した再生制御指示に従って前記再生手段による前記コンテンツの再生を制御する再生制御手段と、
を備えた再生装置。
【請求項7】
前記再生制御手段は、前記再生制御指示に従って自装置を動作させることができるか否かを判断し、前記再生制御指示に従って自装置を動作させることができると判断した場合、前記再生制御指示に従って前記再生手段による前記コンテンツの再生を制御する請求項6に記載の再生装置。
【請求項8】
前記サーバから前記再生制御指示を受信したことをユーザに告知する告知手段をさらに備えたことを特徴とする請求項6または7に記載の再生装置。
【請求項9】
サーバで実行される再生制御方法であって、
前記サーバは、制御部を備え、
前記制御部は、
確保手段が、コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する工程と、
録画手段が、前記確保手段により確保された録画領域に前記コンテンツを録画する工程と、
制御手段が、前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生状態の要因となっている再生機器に対し、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する工程と、
を含む再生制御方法。
【請求項1】
コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する確保手段と、
前記確保手段により確保された録画領域に前記コンテンツを録画する録画手段と、
前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生状態の要因となっている再生機器に対し、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する制御手段と、
を備えたサーバ。
【請求項2】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生機器に対し、前記新たに確保しようとする録画領域外に録画されたコンテンツのうち、最初に録画された前記コンテンツから順に再生するための前記再生制御指示を送信する請求項1に記載のサーバ。
【請求項3】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域内のコンテンツがポーズされていると判断した場合、前記再生機器に対し、前記再生制御指示を送信する請求項1または2に記載のサーバ。
【請求項4】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域の次に確保しようとする録画領域のコンテンツがポーズされていると判断した場合、前記再生機器に対し、前記次に確保しようとする録画領域に録画された前記コンテンツを再生するための前記再生制御指示を送信する請求項3に記載のサーバ。
【請求項5】
前記制御手段は、前記確保手段が前記新たな録画領域を確保する前に、前記新たに確保しようとする録画領域内のコンテンツが再生中であると判断した場合、前記再生機器に対し、前記再生制御指示を送信する請求項1から4のいずれか一に記載のサーバ。
【請求項6】
ネットワークを介して接続されたサーバから、コンテンツを受信して再生する再生手段と、
前記再生手段による前記コンテンツの再生を制御する再生制御指示を受信する指示受信手段と、
前記指示受信手段により受信した再生制御指示に従って前記再生手段による前記コンテンツの再生を制御する再生制御手段と、
を備えた再生装置。
【請求項7】
前記再生制御手段は、前記再生制御指示に従って自装置を動作させることができるか否かを判断し、前記再生制御指示に従って自装置を動作させることができると判断した場合、前記再生制御指示に従って前記再生手段による前記コンテンツの再生を制御する請求項6に記載の再生装置。
【請求項8】
前記サーバから前記再生制御指示を受信したことをユーザに告知する告知手段をさらに備えたことを特徴とする請求項6または7に記載の再生装置。
【請求項9】
サーバで実行される再生制御方法であって、
前記サーバは、制御部を備え、
前記制御部は、
確保手段が、コンテンツを録画する前に録画領域を確保し、前記確保した録画領域が前記コンテンツで最後迄録画される前に、過去に前記コンテンツを録画した領域に新たな録画領域を確保する工程と、
録画手段が、前記確保手段により確保された録画領域に前記コンテンツを録画する工程と、
制御手段が、前記確保手段が前記新たな録画領域を確保する前に、新たに確保しようとする録画領域内のコンテンツが再生状態であると判断した場合、前記再生状態の要因となっている再生機器に対し、前記新たに確保しようとする録画領域外に録画された前記コンテンツを再生するための再生制御指示を送信する工程と、
を含む再生制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−120118(P2012−120118A)
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願番号】特願2010−270682(P2010−270682)
【出願日】平成22年12月3日(2010.12.3)
【特許番号】特許第4920108号(P4920108)
【特許公報発行日】平成24年4月18日(2012.4.18)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願日】平成22年12月3日(2010.12.3)
【特許番号】特許第4920108号(P4920108)
【特許公報発行日】平成24年4月18日(2012.4.18)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]