JP2008172629A - コンテンツ統合サーバ - Google Patents

コンテンツ統合サーバ Download PDF

Info

Publication number
JP2008172629A
JP2008172629A JP2007005091A JP2007005091A JP2008172629A JP 2008172629 A JP2008172629 A JP 2008172629A JP 2007005091 A JP2007005091 A JP 2007005091A JP 2007005091 A JP2007005091 A JP 2007005091A JP 2008172629 A JP2008172629 A JP 2008172629A
Authority
JP
Japan
Prior art keywords
content
frame
time code
fast
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2007005091A
Other languages
English (en)
Inventor
Masaaki Aiba
雅彰 相場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2007005091A priority Critical patent/JP2008172629A/ja
Publication of JP2008172629A publication Critical patent/JP2008172629A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】コンテンツデータ、トリックプレイ用のデータを保持する必要がないため、低コストで実現することができるコンテンツ統合サーバを提供する。
【解決手段】トリックプレイのコマンドを受信する受信手段11と、コンテンツ情報を格納するコンテンツ情報格納手段15と、フレームレートを取得するフレームレート取得手段16と、一時停止要求の場合コマンドを受信した時点以降のキーフレームを、早送り又は早戻し要求の場合コマンドを受信した時点以降又は以前のキーフレームを取得するキーフレーム取得手段18と、一時停止要求の場合取得されたキーフレームのタイムコードを変更し、早送り又は早戻し要求の場合、キーフレーム間のフレーム数と早送り又は早戻し速度情報に基づき決定された送信枚数分キーフレームのタイムコードを変更して出力するタイムコード変更手段19と、キーフレームをプレーヤに送信する送信手段12を備える。
【選択図】図1

Description

本発明は、ネットワークを経由して映像・音声などを再生することが可能なコンテンツシステムにおけるコンテンツ統合サーバに関する。
現在、パーソナルコンピュータやネットワーク機器の高速化により、ネットワークを経由してネットワーク越しのサーバに記録されている映像、音声などを再生するネットワークメディアプレーヤが出現している。また、様々なメーカーのサーバ、クライアントの相互接続性を実現するために、DLNA(Digital Living Network Alliance)により標準化が進められており、DLNA準拠のネットワークメディアサーバ/プレーヤが発売されている。このようなネットワークメディアサーバ/プレーヤにおいて、早送りや早戻しのようなトリックプレイを行う場合、プレーヤはサーバのデータに対して飛び飛びにランダムにアクセスしてデータを取得する必要がある。しかし、MPEG(Moving Picture Expert Group)の可変ビットレートのようにデータ量とタイムコードが必ずしも線形でない場合があり、一定の倍速で早送りや早戻しを行うことが困難となる。
これを解決する手段が下記の特許文献1に記載されている。特許文献1では、元の動画データとは別個にトリックプレイ用の動画データを蓄積する方法などが記載されている。この記載された技術は、トリックプレイのための動画符号化データをあらかじめ蓄積しておき、プレーヤがトリックプレイを行う場合、プレーヤはトリックプレイ用のデータを通常の再生と同じように再生するというものである。
特開平8−154230号公報(段落0020)
しかしながら、特許文献1に記載された技術では、トリックプレイを実現するためにトリックプレイ用の動画データを保持するため、1つの動画コンテンツに対して複数の動画データを蓄積する必要があり、データ容量が増大し、動画コンテンツを蓄積する記憶媒体のコストが増すことになる。また、2倍速、4倍速、32倍速など多様なトリックプレイの要求に応じるには、それぞれに専用の動画データが必要となる。
本発明は、上記課題を解決するためのものであり、コンテンツデータ、トリックプレイ用のデータを保持する必要がないため、低コストで実現することができるコンテンツ統合サーバを提供することを目的とする。また、本発明によれば、同一ネットワークに接続されているサーバのコンテンツを統合管理することができる。また、バイトレンジ(ファイルの先頭からのバイト数)によるシーク(探索)のみ実装すればよく、開発が容易になる。
上記目的を達成するために、本発明によれば、フレーム構造を有するデータからなるコンテンツを有するコンテンツサーバから、再生装置の要求に応じて前記コンテンツを取得し、取得された前記コンテンツを前記再生装置に送信するコンテンツ統合サーバであって、前記コンテンツを再生している前記再生装置から、再生している前記コンテンツの一時停止要求、所望の早送り速度情報を含む早送り要求、所望の早戻し速度情報を含む早戻し要求のいずれかを示すコマンドを受信する受信手段と、前記コンテンツサーバが有する前記コンテンツに関する情報を格納するコンテンツ情報格納手段と、再生している前記コンテンツを構成する、フレームごとにタイムコードが付されたコンテンツデータのフレームレートを前記コンテンツ情報格納手段から取得するフレームレート取得手段と、受信された前記コマンドが前記一時停止要求である場合には、前記コマンドを受信した時点以降の送信予定の直近の、前記コンテンツを構成する複数のフレームを所定のグループに分ける際に基準となるフレームであるキーフレームを取得し、受信された前記コマンドが前記早送り要求である場合には、前記コマンドを受信した時点以降の送信予定の、前記コンテンツを構成する複数のフレームを所定のグループに分ける際に基準となるフレームであるキーフレームを取得し、受信された前記コマンドが前記早戻し要求である場合には、前記コマンドを受信した時点以前の送信済みの、前記コンテンツを構成する複数のフレームを所定のグループに分ける際に基準となるフレームであるキーフレームを取得するキーフレーム取得手段と、前記コマンドが前記一時停止要求である場合には、取得された前記キーフレームのタイムコードを、取得された前記フレームレートに応じて逐次変更し、前記タイムコードが逐次変更された前記キーフレームを出力し、前記コマンドが前記早送り要求である場合には、前記コンテンツ情報格納手段に格納されたキーフレーム間のフレーム数及び前記早送り速度情報に基づいて、早送りの際における、取得された前記キーフレームの前記再生装置への送信枚数を決定し、取得された前記キーフレームの前記タイムコードを、取得された前記フレームレートに応じて前記決定された送信枚数分逐次変更し、前記タイムコードが逐次変更された前記キーフレームを出力し、前記コマンドが前記早戻し要求である場合には、前記コンテンツ情報格納手段に格納されたキーフレーム間のフレーム数及び前記早戻し速度情報に基づいて、早戻しの際における、取得された前記キーフレームの前記再生装置への送信枚数を決定し、取得された前記キーフレームの前記タイムコードを、取得された前記フレームレートに応じて前記決定された送信枚数分逐次変更し、前記タイムコードが逐次変更された前記キーフレームを出力するタイムコード変更手段と、出力された前記キーフレームを前記再生装置に送信する送信手段とを、備えるコンテンツ統合サーバが提供される。この構成により、コンテンツデータ、トリックプレイ用のデータを保持する必要がないため、低コストで実現することができる。なお、上述した再生装置はプレーヤとも言う。
また、本発明のコンテンツ統合サーバにおいて、前記一時停止要求、前記早送り要求、前記早戻し要求のいずれか1つの要求に基づいて、前記キーフレームが前記プレーヤに送信されている際に、前記受信手段が前記プレーヤから再生要求を示すコマンドを受信した場合、前記タイムコード変更手段が、前記再生要求を示すコマンドを受信する直前に送信された前記キーフレームのタイムコードと、前記キーフレームが最初に送信された際のタイムコードとの差分値を計算し、計算により得られた前記差分値を前記送信されたキーフレーム以降に送信される予定のフレームのタイムコードに加算して前記タイムコードを逐次変更し、前記タイムコードが逐次変更された前記フレームを出力し、前記送信手段が出力された前記フレームを前記プレーヤに送信することは、本発明の好ましい態様である。この構成により、トリックプレイ後であってもスムーズにコンテンツを再生することができる。
本発明のコンテンツ統合サーバは上記構成を有するので、接続された再生装置(プレーヤ)はトリックプレイをスムーズに行うことが可能となる。また、このコンテンツ統合サーバでは、コンテンツデータ、トリックプレイ用のデータを保持する必要がないため、低コストで実現することができる。
以下、本発明の実施の形態に係るコンテンツ統合サーバについて図1から図18を用いて説明する。図1は本発明の実施の形態に係るコンテンツ統合サーバを含むコンテンツシステムの構成の一例を示す構成図である。図2は本発明の実施の形態におけるディレクトリ情報の一例を示す図である。図3は本発明の実施の形態におけるコンテンツ情報蓄積手段に蓄積されるサーバごとのコンテンツ情報の一例を示す図である。図4は本発明の実施の形態におけるコンテンツ一覧の一例を示す図である。図5は本発明の実施の形態における作成されるコンテンツ情報の構成の一例を示す図である。図6は本発明の実施の形態におけるI、B、Pのフレーム構造で構成されるMPEGデータの一例を示す図である。図7は本発明の実施の形態に係るコンテンツ統合サーバの動作フローの一例について説明するためのフローチャートである。図8は本発明の実施の形態におけるコンテンツ情報収集ステップについて説明するためのフローチャートである。
図9は本発明の実施の形態における再生ステップについて説明するためのフローチャートである。図10は本発明の実施の形態における一時停止ステップについて説明するためのフローチャートである。図11は本発明の実施の形態におけるトリックプレイ(一時停止)の場合の処理について説明するための図である。図12は本発明の実施の形態における早送り/早戻しステップについて説明するためのフローチャートである。図13は本発明の実施の形態におけるトリックプレイ(早送り)の場合の処理について説明するための図である。図14は本発明の実施の形態におけるトリックプレイ(早戻し)の場合の処理について説明するための図である。図15は本発明の実施の形態におけるレジューム再生ステップについて説明するためのフローチャートである。図16は本発明の実施の形態におけるトリックプレイ(一時停止)から再生する場合の処理について説明するための図である。図17は本発明の実施の形態におけるトリックプレイ(早送り)から再生する場合の処理について説明するための図である。図18は本発明の実施の形態におけるトリックプレイ(早戻し)から再生する場合の処理について説明するための図である。
まず、本発明の実施の形態に係るコンテンツ統合サーバを含むコンテンツシステムについて図1を用いて説明する。図1に示すように、コンテンツシステムは、2台のネットワークメディアサーバ(以下、サーバA、サーバBとも言う)と、ネットワークメディアプレーヤ(以下、単にプレーヤ1とも言う)と、コンテンツ統合サーバ(以下、単に統合サーバとも言う)10とから構成され、それぞれが同一のネットワークに接続されている。なお、ここでのコンテンツシステムの構成は一例であり、それぞれの台数などはこれに限られるものではない。
本発明の実施の形態では、サーバA、サーバBが保持しているコンテンツデータ(動画ファイル又は単にコンテンツとも言う)は、例えば図6に示すようなI、B、Pピクチャフレームで構成されるMPEGデータであるものとする。ここで、Iピクチャフレーム(Iフレームとも言う)は、後述するキーフレームに相当し、コンテンツを構成する複数のフレーム(I、B、Pピクチャフレーム)を所定の(編集単位の)グループ(GOP(Group Of Picture):MPEGにおいて定められている動画を構成している最小の単位構造)に分ける際に基準となるフレームである。また、プレーヤ1はサーバA、サーバBがあらかじめ保持しているMPEGデータをデコードする不図示のMPEGデコーダを有しており、コンテンツを受信・再生することができるものとする。
ここで、まず統合サーバ10の概要について説明する。統合サーバ10は、ネットワーク内のサーバA、サーバBが有するコンテンツの情報(コンテンツ情報)を収集・蓄積する。その際、コンテンツそのものは蓄積しない。また、統合サーバ10は、プレーヤ1に対してはサーバA、サーバBと同様に、要求されたコンテンツを配信するサーバとして振舞う。その際、あらかじめ蓄積されたコンテンツ情報に基づいて要求されたコンテンツを有するサーバ(サーバA又はサーバB)を特定し、特定されたサーバからコンテンツを受信し、プレーヤ1へ送信する。また、プレーヤ1からトリックプレイ(一時停止、早送り、早戻し)を要求された場合、統合サーバ10は、プレーヤ1が通常再生を行っている状態で、プレーヤ1の要求するトリックプレイが実現されるようにコンテンツを加工して送信する。トリックプレイの実現に関しては後述する。
次に、統合サーバ10の構成の一例について説明する。なお、統合サーバ10の構成はこれに限られるものではない。図1に示すように、統合サーバ10は複数の構成要素から構成されている。まず、受信手段11について説明する。受信手段11は、プレーヤ1から受信した、プレーヤ1のユーザが所望する処理をさせるためのコマンドデータ102を制御手段106へ、サーバA又はサーバBから受信したコンテンツデータ101をコンテンツ分岐手段13へ、サーバA又はサーバBから受信したディレクトリ情報109をコンテンツ情報取得手段14へそれぞれ出力する。ここで、ディレクトリ情報109の一例を図2に示す。図2に示すディレクトリ情報は、サーバA、サーバBが有するコンテンツを示しており、各サーバのディレクトリ構造も含まれる。図2から、サーバA及びサーバBはビデオ、オーディオ、ピクチャのカテゴリ(フォルダ)ごとにファイル(コンテンツ)をそれぞれ有していることがわかる。
コンテンツ情報取得手段14は、ディレクトリ情報109を用いて各サーバ(サーバA、サーバB)からコンテンツデータを受信し、コンテンツ情報103を作成し、後述するコンテンツ情報蓄積手段15(上述したコンテンツ情報格納手段に相当)に格納する。ここで、コンテンツ情報103について説明する。例えば、図2に示すサーバAのビデオファイルAが、図6に示すフレーム構造を有するフレームレート25fps(フレーム/秒)のMPEGデータであった場合のコンテンツ情報を図5に示す。コンテンツ情報103は、そのコンテンツファイルを保持しているサーバ名、ファイル名、ファイルサイズ、サーバ上のパス(例えば、「ビデオ」のカテゴリ(フォルダ)の配下にあることを示すもの)、フレームレート、キーフレーム(Iフレームとも言う)テーブルからなる。また、キーフレームテーブルは、フレーム番号(キーフレームのフレーム番号)、バイトレンジ(該当するキーフレームのファイルの先頭からのバイト数)、タイムコード(該当するキーフレームのファイルの先頭からの時間)からなる。
このコンテンツ情報103は、コンテンツデータそのものは含まないので、元のコンテンツデータに比べてデータ量は極めて少ない。図5の例では、ビデオファイルAはファイルサイズ52,428,800byte(バイト)、フレームレート25fpsの動画ファイルであり、サーバAのビデオフォルダに格納されている。このようなコンテンツ情報103を、コンテンツ情報取得手段14は、図3に示すようにコンテンツ情報のデータベースとして、サーバごとに後述するコンテンツ情報蓄積手段15に格納する。
コンテンツ分岐手段13は、後述する制御手段16からの指示に基づいて、受信したコンテンツデータ101の出力を、コンテンツ情報取得手段14、後述する映像/音声分離手段17、タイムコード変更手段19、送信手段12のいずれかに対して行う。
映像/音声分離手段17は、コンテンツ分岐手段13から入力されたコンテンツデータ101を映像データ(ビデオデータ)と音声データに分離し、ビデオデータ104をキーフレーム取得手段18及びタイムコード変更手段19へ出力する。
キーフレーム取得手段18は、映像/音声分離手段17から入力されたビデオデータ104から、キーフレームのデータ(キーフレームデータ)106を取得し、タイムコード変更手段19へ出力する。タイムコード変更手段19は、主として後述するようにフレームに付されたタイムコードを変更する。送信手段12は、コンテンツ分岐手段13から入力されたコンテンツデータ101、タイムコード変更手段19で加工された加工済みコンテンツデータ111、又はコンテンツ情報蓄積手段15に蓄積されたコンテンツ情報103に基づいて制御手段16によって作成されたコンテンツ一覧110をプレーヤ1に送信する。
次に、統合サーバ10の動作について図7を用いて説明する。まず、統合サーバ10はプレーヤ1からのアクセスがあるか否かを判断する(ステップS701)。プレーヤ1からのアクセスがない場合にはコンテンツ情報収集ステップS702へ進む。なお、各ステップにおける処理については後述する。一方、プレーヤ1からのアクセスがある場合には、アクセスの際のコマンドがどのようなものかを判断する(ステップS703)。コマンドがコンテンツ一覧要求である場合、コンテンツ一覧送信ステップS704へ進み、コマンドが再生要求である場合、再生ステップS705へ進む。
再生ステップS705へ進み、その後、再生が行われている際にプレーヤ1からコマンドを受けた場合、そのコマンドがどのようなものかを判断する(ステップS706)。受けたコマンドが早送り又は早戻し要求である場合、早送り/早戻しステップS708へ進む。また、受けたコマンドが一時停止要求である場合、一時停止ステップS707へ進み、受けたコマンドが停止要求である場合、ステップS701へ進む。
一時停止ステップS707又は早送り/早戻しステップS708の際に、プレーヤ1からコマンドを受けた場合、そのコマンドがどのようなものかを判断する(ステップS709)。受けたコマンドが再生要求である場合、レジューム再生ステップS710へ進み、受けたコマンドが停止要求である場合、ステップS701へ進む。レジューム再生ステップS710において、再生が終了したか否かを判断する(ステップS711)。再生が終了していない場合にはステップS706に戻り、再生が終了した場合にはそのまま終了となる。以下では図7に示す各ステップの詳細について説明する。
まず、コンテンツ情報収集ステップS702について図8を用いて説明する。まず、コンテンツ分岐変更ステップS801では、制御手段16がコンテンツ分岐手段13の出力をコンテンツ情報取得手段14へ切り換える。そして、サーバ検索ステップS802では、制御手段16がネットワーク内でコンテンツを保持しているサーバ(サーバA、サーバB)を検索する。サーバを発見した場合、制御手段16がそのサーバにそのサーバが有しているコンテンツが認識できるような不図示のコンテンツの一覧を要求する(コンテンツ一覧要求ステップS803)。一方、サーバを発見しない場合には終了となる。コンテンツ情報比較ステップS804では、制御手段16が、サーバに要求した不図示のコンテンツの一覧と、コンテンツ情報蓄積手段15のコンテンツ情報とを比較する。
そして、コンテンツ情報蓄積手段15内のコンテンツ情報に含まれないコンテンツをサーバが保持している場合には、コンテンツ情報取得ステップS805へ進む。コンテンツ情報取得ステップS805では、コンテンツ情報取得手段14が、受信する該当するすべてのコンテンツデータに基づいて、例えば図5に示すコンテンツ情報を作成し、コンテンツ情報蓄積手段15に蓄積する。なお、コンテンツ情報蓄積手段15内のコンテンツ情報に含まれないコンテンツをサーバが保持していない場合には、そのまま終了する。
次に、コンテンツ一覧送信ステップS704について説明する。コンテンツ一覧送信ステップS704では、送信手段12が、コンテンツ情報蓄積手段15内のコンテンツ情報に基づいて制御手段16によって作成されたコンテンツ一覧110をプレーヤ1へ送信する。例えば、コンテンツ情報蓄積手段15に図3に示すようなコンテンツ情報103が蓄積されている場合、制御手段16は、コンテンツ情報に基づいて制御手段16自身が作成した図4に示すコンテンツ一覧110を送信手段12に送信させる。すなわち、統合サーバ10は、コンテンツ情報103の元となるコンテンツデータは保持していないにも関わらず、プレーヤ1に対してコンテンツデータを保持しているかのように振舞う。
次に、再生ステップS705について図9を用いて説明する。まず、コンテンツ分岐変更ステップS901では、制御手段16が、コンテンツ分岐手段13の出力を送信手段12に切り換える。コンテンツ情報取得ステップS902では、制御手段16が、プレーヤ1からの要求(送信して欲しいコンテンツを示す情報)に基づいて、コンテンツ情報蓄積手段15から該当するコンテンツ情報を取得する。コンテンツ検索ステップS903では、制御手段16が、コンテンツ情報取得ステップS902で得られたコンテンツ情報に基づいて、そのコンテンツを保持するサーバを特定し、プレーヤ1が要求するコンテンツデータの有無を特定されたサーバに確認する。
コンテンツデータがある場合にはコンテンツ受信ステップS904へ進み、コンテンツデータがない場合には再生ステップS705は終了する。コンテンツ受信ステップS904では、受信手段11が、コンテンツ検索ステップS903で特定されたサーバからコンテンツデータを受信する。コンテンツ送信ステップS905では、送信手段12が、受信したコンテンツデータをプレーヤ1へ送信する。そして、プレーヤ1から再生停止のコマンドがない場合(再生終了がない)は、コンテンツ受信ステップS904及びコンテンツ送信ステップS905を繰り返し実行する。
一方、再生停止のコマンドがプレーヤ1からあった場合(再生終了があった)は、再生ステップS705は終了する。すなわち、再生ステップS705では、プレーヤ1から再生要求があったコンテンツデータが、ネットワーク上のどのサーバに保持されているかをコンテンツ情報蓄積手段15に蓄積されたコンテンツ情報から特定し、要求されたコンテンツデータを特定されたサーバから受信し、それをそのままプレーヤ1へ送信する。
次に、一時停止ステップS707について図10を用いて説明する。まず、コンテンツ分岐変更ステップS1001では、制御手段16が、受信手段11を介して受信したトリックプレイ(ここでは一時停止)の要求に基づいて、コンテンツ分岐手段13の出力を映像/音声分離手段17に切り換える。フレームレート通知ステップS1002では、制御手段16(上述したフレームレート取得手段に相当)が、コンテンツ情報蓄積手段15のコンテンツ情報から取得したフレームレートの情報(フレームレート情報)105をタイムコード変更手段19へ通知する。キーフレーム取得ステップS1003では、キーフレーム取得手段18が入力されたビデオデータ104からキーフレームを取得する。すなわち、キーフレーム取得手段18は、一時停止のコマンドを受信した時点以降のキーフレーム(例えば、直近のキーフレーム)を取得する。
タイムコード変更ステップS1004では、タイムコード変更手段19が、フレームレート通知ステップ1002で、制御手段16から通知されたフレームレート情報105から、次のタイムコードを求めて、キーフレーム取得手段18から入力されたキーフレームのデータ(キーフレームデータ)106のタイムコードを変更する。送信ステップS1005では、タイムコード変更手段19によってタイムコードが変更されたキーフレームデータ(加工済みコンテンツデータ111)を、送信手段12がプレーヤ1へ送信する。そして、プレーヤ1から一時停止終了の要求があるまでタイムコード変更ステップS1004及び送信ステップS1005が繰り返される。
ここで、具体的に図5、図6、図11を用いて説明する。プレーヤ1への再生中のコンテンツデータが図6に示すフレーム構造を有するフレームレート25fpsのMPEGデータであり、MPEGデータのコンテンツ情報が図5に示されるものであるとする。その際に、図11に示すように、コンテンツデータの73フレーム目(フレーム番号73)を送信中にプレーヤ1から一時停止の要求を受信手段11が受信した場合、キーフレーム取得手段18が送信予定の直近の75フレーム目のIフレームを取得し、タイムコード変更手段19が、そのIフレームのタイムコードを3000[ms]、3040[ms]、3080[ms]、・・・といった具合にフレームレートに応じて(合わせて)逐次変更し、送信手段12が繰り返し送信する。
これにより、プレーヤ1が受信するコンテンツデータのタイムコードが連続するように適宜変更されるため、プレーヤ1は、通常の再生を行う場合と同様に、デコード及び表示処理をするだけで一時停止を実現できる。
次に、早送り/早戻しステップS708について図12を用いて説明する。まず、コンテンツ分岐変更ステップS1201では、制御手段16が、受信手段11を介して受信したトリックプレイ(ここでは、早送り又は早戻し)の要求に基づいて、コンテンツ分岐手段13の出力を映像/音声分離手段17に切り換える。フレームレート通知ステップS1202では、制御手段16が、コンテンツ情報蓄積手段15のコンテンツ情報から取得したフレームレート情報105をタイムコード変更手段19へ出力する。
タイムコード取得ステップS1203では、制御手段16が、タイムコード変更手段19からプレーヤ1へ送信されたビデオデータ104の最終タイムコード(タイムコード情報)107を取得する。バイトレンジ取得ステップS1204では、制御手段16が、コンテンツ情報蓄積手段15内のフレームレート情報と、タイムコード取得ステップS1203で得たタイムコード情報107と、プレーヤ1から要求された再生速度(プレーヤ1から受信したコマンドに含まれる再生速度の情報)と、コンテンツ情報蓄積手段15のコンテンツ情報から得られるキーフレームのテーブルから、適切なキーフレームのバイトレンジを求める。
キーフレーム取得ステップS1205では、制御手段16が、バイトレンジ取得ステップS1204で求めたバイトレンジでサーバにデータを要求し、映像/音声分離手段17が、受信手段11を介して受信された受信データ(コンテンツ)を分離し、ビデオデータ104をキーフレーム取得手段18へ出力し、キーフレーム取得手段18が、入力されたビデオデータ104からキーフレームを取得する。すなわち、キーフレーム取得手段18は、早送り又は早戻しのコマンドを受信した時点以降又は受信した時点以前のキーフレームを取得する。
キーフレーム出力枚数決定ステップS1206では、制御手段16が、コンテンツ情報蓄積手段15のコンテンツ情報から得られるキーフレーム間のフレーム数と、プレーヤ1から要求された再生速度の情報とから、キーフレーム取得ステップS1205で得られたキーフレームを何回プレーヤ1に送信するかを決定し、その回数(キーフレーム出力情報112)をタイムコード変更手段19へ通知する。なお、キーフレーム出力枚数決定ステップS1206におけるプレーヤ1へのキーフレームの送信回数の決定をタイムコード変更手段19が行うようにしてもよい。
タイムコード変更ステップS1207では、キーフレーム取得ステップS1205で得られたキーフレームに、タイムコード変更手段19が適切なタイムコードを付与し、キーフレーム送信ステップS1208では、送信手段12がそのキーフレームをプレーヤ1へ送信する。そして、ステップS1209において、プレーヤ1からトリックプレイの終了コマンドを受信した場合に、早送り/早戻しステップS708が終了し、終了コマンドを受信しない場合にはタイムコード取得ステップS1203へ移行し、処理を繰り返す。
ここで、早送り/早戻しステップS708における早送りの場合ついて具体的に図13を用いて説明する。対象のコンテンツデータが図6に示すフレーム構造を有するフレームレート25fpsのMPEGデータであり、そのデータのコンテンツ情報が図5に示すものであるとする。その際に、統合サーバ10が、73フレーム目のデータを送信した直後にプレーヤ1から3倍速の早送り要求を受信した場合を考える。
上述したように、コンテンツ分岐変更ステップS1201で、制御手段16がコンテンツ分岐手段13の出力を映像/音声分離手段17に切り替え、フレームレート通知ステップS1202で、コンテンツ情報蓄積手段15のコンテンツ情報からフレームレート(25fps)を得る。タイムコード取得ステップS1203では、制御手段16が73フレーム目(フレーム番号73)のコンテンツデータのタイムコード(2920ms)を取得する。
バイトレンジ取得ステップS1204では、制御手段16が、73フレーム目以降であって、コンテンツ情報に基づき、最も近いIフレームのバイトレンジを求める。この例ではフレーム番号75のIフレームが該当し、求められるバイトレンジは図5により25000[ms]となる。キーフレーム取得ステップS1205では、制御手段16が、該当するサーバに対してコンテンツデータを25000[byte]のバイトレンジで要求し、キーフレーム取得手段18がIフレームを取得する。キーフレーム出力枚数決定ステップ1206では、制御手段16(又はタイムコード変更手段19)が、プレーヤ1から要求された再生速度(この例では、3倍速早送り再生)と、受信するMPEGデータのIフレーム間のフレームの枚数(この例では、15枚)からキーフレームの出力枚数を決定する。この例では15枚/3倍速=5枚となる。
タイムコード変更ステップS1207では、プレーヤ1で3倍速によって再生されるように、タイムコード変更手段19が、キーフレーム取得ステップS1205で得られたキーフレームのタイムコードを変更する。この場合、5枚のキーフレームのタイムコードを3000[ms]、3040[ms]、・・・、3160[ms]に変更し、送信手段12がプレーヤ1へ送信する。以上の手順を繰り返し、タイムコードを変更して適切なキーフレームをプレーヤ1へ送信する。これにより、プレーヤ1は通常の再生を行う場合と同様に、デコード及び表示処理を行うだけで早送り/早戻しを実現することができる。
一方、早送り/早戻しステップS708における早戻しの場合ついて具体的に図14を用いて説明する。ここで、上述した早送りの場合と同様、対象のコンテンツデータが図6に示すフレーム構造を有するフレームレート25fpsのMPEGデータであり、そのデータのコンテンツ情報が図5に示すものであるとする。その際に、統合サーバ10が、92フレーム目のデータを送信した直後にプレーヤ1から3倍速の早戻し要求を受信した場合を考える。
上述したように、コンテンツ分岐変更ステップS1201で、制御手段16がコンテンツ分岐手段13の出力を映像/音声分離手段17に切り替え、フレームレート通知ステップS1202で、コンテンツ情報蓄積手段15のコンテンツ情報からフレームレート(25fps)を得る。タイムコード取得ステップS1203では、制御手段16が92フレーム目(フレーム番号92)のコンテンツデータのタイムコード(3680ms)を取得する。
バイトレンジ取得ステップS1204では、制御手段16が、92フレーム目以前であって、コンテンツ情報に基づき、最も近いIフレームのバイトレンジを求める。この例ではフレーム番号90のIフレームが該当し、求められるバイトレンジは図5により30000[ms]となる。キーフレーム取得ステップS1205では、制御手段16が、該当するサーバに対してコンテンツデータを30000[byte]のバイトレンジで要求し、キーフレーム取得手段18がIフレームを取得する。キーフレーム出力枚数決定ステップ1206では、制御手段16(又はタイムコード変更手段19)が、プレーヤ1から要求された再生速度(この例では、3倍速早戻し再生)と、受信するMPEGデータのIフレーム間のフレームの枚数(この例では、15枚)からキーフレームの出力枚数を決定する。この例では15枚/3倍速=5枚となる。
タイムコード変更ステップS1207では、プレーヤ1で3倍速によって再生されるように、タイムコード変更手段19が、キーフレーム取得ステップS1205で得られたキーフレームのタイムコードを変更する。この場合、5枚のキーフレームのタイムコードを3600[ms]、3560[ms]、・・・、3440[ms]に変更し、送信手段12がプレーヤ1へ送信する。以上の手順を繰り返し、タイムコードを変更して適切なキーフレームをプレーヤ1へ送信する。これにより、プレーヤ1は、通常の再生を行う場合と同様に、デコード及び表示処理を行うだけで早送り/早戻しを実現できる。
次に、レジューム再生ステップS710について図15を用いて説明する。図15は、プレーヤ1がトリックプレイ(一時停止、早送り、早戻し)中に通常の再生開始を要求するコマンドを統合サーバ10へ送信した場合における統合サーバ10の動作フローを示すものである。まず、コンテンツ分岐変更ステップS1501では、制御手段16が、受信手段11を介して受信した再生開始の要求に基づいて、コンテンツ分岐変更手段13の出力をタイムコード変更手段19へ切り換える。タイムコード差分値計算ステップS1502では、タイムコード変更手段19が、コンテンツ分岐手段13から入力されたコンテンツ情報のタイムコードと、トリックプレイ中にタイムコード変更手段19から最後のコンテンツデータがプレーヤ1へ送信された際の時点でのタイムコードとの差分値を計算する。すなわち、タイムコード変更手段19は、再生要求を示すコマンドを受信する直前に送信されたキーフレームのタイムコードと、キーフレームが最初に送信された際のタイムコードとの差分値を計算する。
例えば、図16に示すフレーム構造を有するフレームレート25fpsのMPEGデータで、73フレーム目(フレーム番号73)で一時停止の要求を受信し、3秒間の一時停止後、再生を開始する場合を考える。この場合、上述した一時停止処理のように、75フレーム目(フレーム番号75)のIフレームを75回(25fps×3秒間)送信し、レジューム再生ステップS710へ移行する。その際、一時停止ステップS707でプレーヤ1へ送信したコンテンツデータの最後のタイムコードは5960であり、また、コンテンツ分岐手段13から入力されたコンテンツデータの(最初の)タイムコードは3000であるから、求められるタイムコードの差分値は2960となる。
タイムコード変更ステップS1503では、タイムコード変更手段19が、コンテンツ分岐手段13から入力されたコンテンツデータ中のタイムコードに、上述したタイムコード差分値を加算して変更する。すなわち、タイムコード変更手段19は、計算された差分値を送信されたキーフレーム以降に送信される予定のフレームのタイムコードに加算してタイムコードを逐次変更する。図16に示すように、タイムコード差分値計算ステップS1402で求められるタイムコード差分値は2960であるから、統合サーバ10からプレーヤ1に送信されるコンテンツデータのタイムコードは、76フレーム目(フレーム番号76)のタイムコード3040にタイムコード差分値2960を加算した6000となり、それ以降6040、6080、・・・と変更される。プレーヤ1から再生終了のコマンドを受信していなければタイムコード変更ステップS1403を繰り返す。一方、プレーヤ1から再生終了のコマンドを受信した場合にはレジューム再生ステップS710は終了する。
上述したレジューム再生ステップS710は、一時停止から再生をする場合(一時停止ステップS707からレジューム再生ステップS710の場合)についてのものである。以下では、早送りから再生をする場合(早送り/早戻しステップS708からレジューム再生ステップS710の場合)について図17を用い、また、早戻しから再生する場合(早送り/早戻しステップS708からレジューム再生ステップS710の場合)について図18を用いて説明する。まず、早送りから再生する場合について説明する。図17に示すように、統合サーバ10が、73フレーム目で早送り要求(この例では、3倍速早送り再生要求)をプレーヤ1から受信し、図13と同様の状況下において、75フレーム目(フレーム番号75)のIフレーム5枚をプレーヤ1に送信し、その後は90フレーム目(フレーム番号90)のIフレーム5枚をプレーヤ1に送信する。なお、このときも上述したようにタイムコードを変更する。
ここで、90フレーム目(フレーム番号90)のIフレームの5枚目が送信されたときに、再生要求のコマンドをプレーヤ1から受信すると、91フレーム目(フレーム番号91)のBフレームのタイムコードをプレーヤ1側で連続して再生されるようにタイムコードを3640から3400に変更する。そして、それ以降のフレームについてもタイムコードを変更してプレーヤ1へ送信する。
次に、早戻しから再生する場合について説明する。図18に示すように、統合サーバ10が、92フレーム目(フレーム番号92)で早戻し要求(この例では、3倍速早戻し再生要求)をプレーヤ1から受信し、図14と同様の状況下において、90フレーム目(フレーム番号90)のIフレーム5枚をプレーヤ1に送信し、その後は75フレーム目(フレーム番号75)のIフレーム5枚をプレーヤ1に送信する。なお、このときも上述したようにタイムコードを変更する。
ここで、75フレーム目(フレーム番号75)のIフレームの5枚目が送信されたときに、再生要求のコマンドをプレーヤ1から受信すると、76フレーム目(フレーム番号76)のBフレームのタイムコードをプレーヤ1側で連続して再生されるようにタイムコードを3040から3280に変更する。そして、それ以降のフレームについてもタイムコードを変更してプレーヤ1へ送信する。
以上の動作を実現する統合サーバを既存のネットワークメディアサーバ/プレーヤシステム(プレーヤ及びコンテンツを有するサーバからなるもの)に追加することで、プレーヤは統合サーバへアクセスし、コンテンツを受信した場合にサーバの実装によらず、同様のトリックプレイを実現することができる。また、サーバはバイトレンジによるシークのみ実装されていればよく、サーバの開発も容易になる。さらに、統合サーバは、コンテンツデータそのものは保持せず、コンテンツ情報のみを蓄積・管理するため、統合サーバに必要な記憶容量は既存のものに比べ小さくてよく、低コストでの実現が可能である。また、トリックプレイに関しては、再エンコードを行わずに実現しているため、処理コストも少なく、安価なハードウェアで実現することができる。
本発明に係るコンテンツ統合サーバは、コンテンツデータ、トリックプレイ用のデータを保持する必要がないため、低コストで実現することができるため、ネットワークを経由して映像・音声などを再生することが可能なコンテンツシステムにおけるコンテンツ統合サーバなどに有用である。
本発明の実施の形態に係るコンテンツ統合サーバを含むコンテンツシステムの構成の一例を示す構成図である。 本発明の実施の形態におけるディレクトリ情報の一例を示す図である。 本発明の実施の形態におけるコンテンツ情報蓄積手段に蓄積されるサーバごとのコンテンツ情報の一例を示す図である。 本発明の実施の形態におけるコンテンツ一覧の一例を示す図である。 本発明の実施の形態における作成されるコンテンツ情報の構成の一例を示す図である。 本発明の実施の形態におけるI、B、Pのフレーム構造で構成されるMPEGデータの一例を示す図である。 本発明の実施の形態に係るコンテンツ統合サーバの動作フローの一例について説明するためのフローチャートである。 本発明の実施の形態におけるコンテンツ情報収集ステップについて説明するためのフローチャートである。 本発明の実施の形態における再生ステップについて説明するためのフローチャートである。 本発明の実施の形態における一時停止ステップについて説明するためのフローチャートである。 本発明の実施の形態におけるトリックプレイ(一時停止)の場合の処理について説明するための図である。 本発明の実施の形態における早送り/早戻しステップについて説明するためのフローチャートである。 本発明の実施の形態におけるトリックプレイ(早送り)の場合の処理について説明するための図である。 本発明の実施の形態におけるトリックプレイ(早戻し)の場合の処理について説明するための図である。 本発明の実施の形態におけるレジューム再生ステップについて説明するためのフローチャートである。 本発明の実施の形態におけるトリックプレイ(一時停止)から再生する場合の処理について説明するための図である。 本発明の実施の形態におけるトリックプレイ(早送り)から再生する場合の処理について説明するための図である。 本発明の実施の形態におけるトリックプレイ(早戻し)から再生する場合の処理について説明するための図である。
符号の説明
1 プレーヤ
10 統合サーバ
11 受信手段
12 送信手段
13 コンテンツ分岐手段
14 コンテンツ情報取得手段
15 コンテンツ情報蓄積手段(コンテンツ情報格納手段)
16 制御手段(フレームレート取得手段)
17 映像/音声分離手段
18 キーフレーム取得手段
19 タイムコード変更手段
101 コンテンツデータ
102 コマンドデータ
103 コンテンツ情報
104 ビデオデータ
105 フレームレート情報
106 キーフレームデータ
107 タイムコード情報
108 制御情報
109 ディレクトリ情報
110 コンテンツ一覧
111 加工済みコンテンツデータ
112 キーフレーム出力情報

Claims (2)

  1. フレーム構造を有するデータからなるコンテンツを有するコンテンツサーバから、再生装置の要求に応じて前記コンテンツを取得し、取得された前記コンテンツを前記再生装置に送信するコンテンツ統合サーバであって、
    前記コンテンツを再生している前記再生装置から、再生している前記コンテンツの一時停止要求、所望の早送り速度情報を含む早送り要求、所望の早戻し速度情報を含む早戻し要求のいずれかを示すコマンドを受信する受信手段と、
    前記コンテンツサーバが有する前記コンテンツに関する情報を格納するコンテンツ情報格納手段と、
    再生している前記コンテンツを構成する、フレームごとにタイムコードが付されたコンテンツデータのフレームレートを前記コンテンツ情報格納手段から取得するフレームレート取得手段と、
    受信された前記コマンドが前記一時停止要求である場合には、前記コマンドを受信した時点以降の送信予定の直近の、前記コンテンツを構成する複数のフレームを所定のグループに分ける際に基準となるフレームであるキーフレームを取得し、
    受信された前記コマンドが前記早送り要求である場合には、前記コマンドを受信した時点以降の送信予定の、前記コンテンツを構成する複数のフレームを所定のグループに分ける際に基準となるフレームであるキーフレームを取得し、
    受信された前記コマンドが前記早戻し要求である場合には、前記コマンドを受信した時点以前の送信済みの、前記コンテンツを構成する複数のフレームを所定のグループに分ける際に基準となるフレームであるキーフレームを取得するキーフレーム取得手段と、
    前記コマンドが前記一時停止要求である場合には、取得された前記キーフレームのタイムコードを、取得された前記フレームレートに応じて逐次変更し、前記タイムコードが逐次変更された前記キーフレームを出力し、
    前記コマンドが前記早送り要求である場合には、前記コンテンツ情報格納手段に格納されたキーフレーム間のフレーム数及び前記早送り速度情報に基づいて、早送りの際における、取得された前記キーフレームの前記再生装置への送信枚数を決定し、取得された前記キーフレームの前記タイムコードを、取得された前記フレームレートに応じて前記決定された送信枚数分逐次変更し、前記タイムコードが逐次変更された前記キーフレームを出力し、
    前記コマンドが前記早戻し要求である場合には、前記コンテンツ情報格納手段に格納されたキーフレーム間のフレーム数及び前記早戻し速度情報に基づいて、早戻しの際における、取得された前記キーフレームの前記再生装置への送信枚数を決定し、取得された前記キーフレームの前記タイムコードを、取得された前記フレームレートに応じて前記決定された送信枚数分逐次変更し、前記タイムコードが逐次変更された前記キーフレームを出力するタイムコード変更手段と、
    出力された前記キーフレームを前記再生装置に送信する送信手段とを、
    備えるコンテンツ統合サーバ。
  2. 前記一時停止要求、前記早送り要求、前記早戻し要求のいずれか1つの要求に基づいて、前記キーフレームが前記再生装置に送信されている際に、前記受信手段が前記再生装置から再生要求を示すコマンドを受信した場合、
    前記タイムコード変更手段は、前記再生要求を示すコマンドを受信する直前に送信された前記キーフレームのタイムコードと、前記キーフレームが最初に送信された際のタイムコードとの差分値を計算し、計算により得られた前記差分値を前記送信されたキーフレーム以降に送信される予定のフレームのタイムコードに加算して前記タイムコードを逐次変更し、前記タイムコードが逐次変更された前記フレームを出力し、
    前記送信手段は、出力された前記フレームを前記再生装置に送信する請求項1に記載のコンテンツ統合サーバ。
JP2007005091A 2007-01-12 2007-01-12 コンテンツ統合サーバ Withdrawn JP2008172629A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007005091A JP2008172629A (ja) 2007-01-12 2007-01-12 コンテンツ統合サーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007005091A JP2008172629A (ja) 2007-01-12 2007-01-12 コンテンツ統合サーバ

Publications (1)

Publication Number Publication Date
JP2008172629A true JP2008172629A (ja) 2008-07-24

Family

ID=39700284

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007005091A Withdrawn JP2008172629A (ja) 2007-01-12 2007-01-12 コンテンツ統合サーバ

Country Status (1)

Country Link
JP (1) JP2008172629A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010045826A1 (zh) * 2008-10-23 2010-04-29 中兴通讯股份有限公司 流媒体业务中获取关键帧的方法、系统及用户设备
CN107438202A (zh) * 2016-05-26 2017-12-05 中兴通讯股份有限公司 一种实现码率切换的方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010045826A1 (zh) * 2008-10-23 2010-04-29 中兴通讯股份有限公司 流媒体业务中获取关键帧的方法、系统及用户设备
US8813160B2 (en) 2008-10-23 2014-08-19 Zte Corporation Method, system and user device for obtaining a key frame in a streaming media service
CN107438202A (zh) * 2016-05-26 2017-12-05 中兴通讯股份有限公司 一种实现码率切换的方法及装置

Similar Documents

Publication Publication Date Title
US7139470B2 (en) Navigation for MPEG streams
JP5894220B2 (ja) プログレッシブ再生を含む映像分配システム
US9077946B2 (en) Streaming content management apparatus and method
JP5142453B2 (ja) 再生装置
JP2008243367A (ja) 同報通信データを記録するための方法、および、装置
KR20040005919A (ko) 프리젠테이션의 재생 속도 실시간 제어
WO2008095387A1 (fr) Procédé de lecture avant et arrière rapide de données vidéo et serveur multimédia en flux
JP2005525667A (ja) 対話形ネットワーク環境下でデータ記録媒体に記録された情報を再生するためのシステムと方法
KR20140005130A (ko) 미디어 인식 및 움직임 신호와의 동기화
US10848835B2 (en) Video summary information playback device and method and video summary information providing server and method
JP2010538500A (ja) 特殊再生用のビデオデータの生成方法
JP6258168B2 (ja) 配信装置、再生装置および配信システム
JP2009225116A (ja) ネットワーク伝送機能を備えた映像記録装置
JP2008172629A (ja) コンテンツ統合サーバ
CN102215366A (zh) 一种多媒体文件的生成、播放方法和系统
JP2012124748A (ja) ネットワークシステム、サーバ、再生装置及びコンテンツ再生方法
JP4549717B2 (ja) マルチメディアデータ統合装置、マルチメディアデータ統合方法およびマルチメディアデータ統合プログラム
JP2003046928A (ja) ネットワーク映像再生方法および圧縮映像データ復号再生装置
JP2010170592A (ja) 情報再生装置および情報再生方法
JP2006139682A (ja) 映像検索システム、映像検索方法及びプログラム
JP2007067808A (ja) 動画ストリームの画像再生装置及び方法
JP2005197839A (ja) トランスポートストリームの特殊再生方法及びトランスポートストリームの記録再生装置
JP2004171053A (ja) データ処理装置
JP5560999B2 (ja) 映像音声記録再生装置、および映像音声記録再生方法
KR100813957B1 (ko) 확장 검색 및 이벤트 발생 기능을 제공하기 위한 메타정보가 기록된 저장매체, 재생 장치 및 그 재생 방법

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100406