JP2006295601A - 通信システム、送信装置および方法、受信装置および方法、並びにプログラム - Google Patents
通信システム、送信装置および方法、受信装置および方法、並びにプログラム Download PDFInfo
- Publication number
- JP2006295601A JP2006295601A JP2005114441A JP2005114441A JP2006295601A JP 2006295601 A JP2006295601 A JP 2006295601A JP 2005114441 A JP2005114441 A JP 2005114441A JP 2005114441 A JP2005114441 A JP 2005114441A JP 2006295601 A JP2006295601 A JP 2006295601A
- Authority
- JP
- Japan
- Prior art keywords
- hierarchy
- data
- speed
- transmission
- unit
- 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
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
Abstract
【課題】 コンテンツを保護することができるようにする。
【解決手段】 階層決定部152は、通信部151から供給されてくるストレージの最大書き込み速度のビットレートと、階層情報保持部153が記憶している、階層符号化されたコンテンツにおける階層ごとのビットレートとを比較することで、階層符号化されたコンテンツの階層を決定する。パケタイザ154は、コンテンツ記録部155から取得したコンテンツから、決定された階層に応じた階層のコンテンツを取得し、取得した階層のコンテンツをパケットに格納する。通信部151は、パケタイザ154から供給されてくるパケットを送信して、ストリーミング配信を行うことで、コンテンツを保護することができるようになる。本発明は、通信システムに適用できる。
【選択図】 図4
【解決手段】 階層決定部152は、通信部151から供給されてくるストレージの最大書き込み速度のビットレートと、階層情報保持部153が記憶している、階層符号化されたコンテンツにおける階層ごとのビットレートとを比較することで、階層符号化されたコンテンツの階層を決定する。パケタイザ154は、コンテンツ記録部155から取得したコンテンツから、決定された階層に応じた階層のコンテンツを取得し、取得した階層のコンテンツをパケットに格納する。通信部151は、パケタイザ154から供給されてくるパケットを送信して、ストリーミング配信を行うことで、コンテンツを保護することができるようになる。本発明は、通信システムに適用できる。
【選択図】 図4
Description
本発明は通信システム、送信装置および方法、受信装置および方法、並びにプログラムに関し、特に、コンテンツを保護することができるようにした通信システム、送信装置および方法、受信装置および方法、並びにプログラムに関する。
昨今、インターネットなど、種々の通信媒体を介して、画像データまたは音声データを伝送して提供するサービスが一般に行われている。特に、近年、ダウンロード型の伝送方式のサービスに加えて、ストリーム型の伝送方式のサービスがより多く提供されるようになってきた。
ダウンロード型の伝送方式のサービスにおいては、受信装置が、送信装置から送信された画像データまたは音声データを格納するファイルを受信し、受信したファイルを自分の記憶媒体(ストレージ)に記録する。受信装置は、ファイルの記録が完了した後、記録したファイルを基に、画像または音声を再生する。ダウンロード型の伝送方式のサービスにおいては、ファイルの記録が完了するまでは、再生することができないので、ダウンロード型の伝送方式のサービスは、長時間の再生またはリアルタイムの再生には適さない。
一方、ストリーム型の伝送方式のサービスにおいては、受信装置が、送信装置から送信されてくるデータを受信するとともに、これに平行して、受信されたデータを基に画像または音声を再生する。ストリーム型の伝送方式は、インターネット電話、遠隔テレビ会議、またはビデオオンデマンドなどのインターネットサービスに利用されている。
ストリーミング型の伝送方式において、送信装置から送信されてくるデータを、一般に、ストリーミングデータと称する。
より具体的な例として、ストリーミング型の伝送方式は、画像データにMPEG(Moving Picture Experts Group)符号化処理を適用することにより生成されるMPEGストリームを格納するIP(Internet Protocol)パケットを、インターネットを介して伝送するシステムで使用される。このシステムにおいて、受信装置である、PC(Personal Computer)、PDA(Personal Digital Assistance)、または携帯電話機は、IPパケットを受信し、画像を再生する。
ストリーム型の伝送方式は、ビデオオンデマンド若しくはライブ映像のストリーミング配信、ビデオ会議、またはテレビ電話などのリアルタイム通信に適している。また、ストリーミング型の伝送方式では、タウンロード型と違い、動画などのコンテンツを一度もストレージにファイルとして記録しないため、一般的に、コンテンツの保護の面などからも有用であるとされている。
また、ビデオオンデマンドなどのリアルタイム通信において、例えば、携帯電話機などように解像度の低いディスプレイと処理能力の低いCPU(Central Processing Unit)を有する装置から、デスクトップパソコンのように解像度の高いディスプレイと処理能力の高いCPUを有する装置まで、様々な受信装置において処理能力などに応じた受信処理や表示処理を実行させる1つの手法として、送受信するデータの符号化を階層化させて実行する方法、すなわち、階層符号化された符号化データを利用した通信システムが考えられている。
このような、階層符号化が可能となる圧縮方式としては、例えば、MPEG4(Moving Picture Experts Group phase 4)とJPEG2000によるビデオストリームがある。MPEG4では、Fine Granuality Scalability技術を規格に取り込みプロフィット化する予定であり、この階層符号化技術によりスケーラブルに低いビットレート(Bit Rate)(1秒間に流れるデータ量)から高いビットレートまで配信することが可能となる。また、ウェーブレット(Wavelet)変換をベースとするJPEG2000は、ウェーブレット変換の特徴を生かし、空間解像度をベースにパケット化することや、または画質をベースに階層的にパケット化することが可能である。また、JPEG2000は、静止画だけでなく、動画を扱うことのできるMotion JPEG2000(Part 3)規格により、階層化したデータをファイルフォーマットで保存することが可能である。
従来、送信装置が送信するデータは、受信装置の能力に応じて異なるフォーマットのデータや伝送レートに応じて異なるデータを用意する必要があったが、この階層符号化によって、1つのファイルデータから異なる能力の受信装置に対して、同時にデータ配信が可能となる。
さらに、配信サーバとクライアントPCのそれぞれにおける、システムクロックのクロック差が反映されたデコード時刻を設定することで、バッファオーバフローやバッファアンダフローを抑制する通信システムもある(例えば、特許文献1)。
しかしながら、本来、ストリーミングデータは、受信装置による再生とともに廃棄されるものであるが、受信装置において、ストリーミングデータとして受信したパケットをストレージに記録することで、後から、コンテンツを再構成される可能性があるという問題があった。
また、例えば、特開2005−27209号公報に開示されている通信システムは、受信装置において、バッファオーバフローやバッファアンダフローを抑制することはできるが、ストリーミングデータとして受信したパケットをストレージに記録して、後から、コンテンツとして再構成される可能性があった。
本発明はこのような状況に鑑みてなされたものであり、コンテンツを保護することができるようにするものである。
本発明の通信システムは、受信装置が、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出手段と、算出した第1の速度を送信装置宛に送信する第1の送信手段とを備え、送信装置が、受信装置から送信されてくる、第1の速度を受信する受信手段と、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定手段と、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得手段と、取得した階層のデータを送信する第2の送信手段とを備えることを特徴とする。
本発明の受信装置は、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出手段と、算出した第1の速度を送信装置宛に送信する送信手段とを備えることを特徴とする。
本発明の受信装置は、算出した第1の速度をセッション制御メッセージプロトコルのメッセージに格納することで、セッション制御メッセージプロトコルのメッセージを生成する生成手段を備え、送信手段は、生成したメッセージを送信装置宛に送信することを特徴とする。
本発明の受信方法は、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出ステップと、算出した第1の速度の送信装置宛への送信を制御する送信制御ステップとを含むことを特徴とする。
本発明のプログラムは、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出ステップと、算出した第1の速度の送信装置宛への送信を制御する送信制御ステップとを含むことを特徴とする。
本発明の送信装置は、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度を受信する受信手段と、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定手段と、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得手段と、取得した階層のデータを送信する第2の送信手段とを備えることを特徴とする。
決定手段は、第2の速度が第1の速度よりも速くなるとき、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定することができる。
本発明の送信装置は、第2の速度を、階層符号化されたデータの階層ごとに記憶する記憶手段を備え、決定手段は、受信した第1の速度と、記憶している第2の速度とを比較することで、階層を決定することを特徴とする。
本発明の送信方法は、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度の受信を制御する受信制御ステップと、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定ステップと、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得ステップと、取得した階層のデータの送信を制御する送信制御ステップとを含むことを特徴とする。
本発明のプログラムは、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度の受信を制御する受信制御ステップと、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定ステップと、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得ステップと、取得した階層のデータの送信を制御する送信制御ステップとを含むことを特徴とする。
本発明の通信システムにおいては、受信装置によって、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度が算出され、算出された第1の速度が送信装置宛に送信され、送信装置によって、受信装置から送信されてくる、第1の速度が受信され、受信された第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層が決定され、決定された階層に基づいて、階層符号化されたデータから、階層のデータが取得され、取得された階層のデータが送信される。
本発明の受信装置および方法、並びにプログラムにおいては、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度が算出され、算出された第1の速度が送信装置宛に送信される。
本発明の送信装置および方法、並びにプログラムにおいては、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度が受信され、受信された第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層が決定され、決定された階層に基づいて、階層符号化されたデータから、階層のデータが取得され、取得された階層のデータが送信される。
本発明によれば、コンテンツを保護することができる。また、本発明によれば、より確実に、コンテンツを保護することができる。
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。本明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応していないものであることを意味するものではない。
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加される発明の存在を否定するものではない。
本発明によれば、通信システムが提供される。この通信システム(例えば、図1のストリーミング配信システム1)は、受信装置(例えば、図1のクライアント11)が、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出手段(例えば、図3のレート指定部101)と、算出した第1の速度を送信装置宛に送信する第1の送信手段(例えば、図3の送信部121)とを備え、送信装置(例えば、図1のサーバ13)が、受信装置から送信されてくる、第1の速度を受信する受信手段(例えば、図4の受信部161)と、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定手段(例えば、図4の階層決定部152)と、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得手段(例えば、図4のパケタイザ154)と、取得した階層のデータを送信する第2の送信手段(例えば、図4の送信部162)とを備える。
本発明によれば、受信装置が提供される。この受信装置(例えば、図1のクライアント11)は、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出手段(例えば、図3のレート指定部101)と、算出した第1の速度を送信装置宛に送信する送信手段(例えば、図3の送信部121)とを備える。
送信装置は、算出した第1の速度をセッション制御メッセージプロトコルのメッセージに格納することで、セッション制御メッセージプロトコルのメッセージを生成する生成手段(例えば、図3のパケット生成部103)を備え、送信手段は、生成したメッセージを送信装置宛に送信することができる。
本発明によれば、受信方法が提供される。この受信方法は、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出ステップ(例えば、図5のステップS12の処理)と、算出した第1の速度の送信装置宛への送信を制御する送信制御ステップ(例えば、図5のステップS14の処理)とを含む。
本発明によれば、プログラムが提供される。このプログラムは、それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出ステップ(例えば、図5のステップS12の処理)と、算出した第1の速度の送信装置宛への送信を制御する送信制御ステップ(例えば、図5のステップS14の処理)とを実行させる。
このプログラムは、記憶媒体(例えば、図2の磁気ディスク51)に記憶することができる。
本発明によれば、送信装置が提供される。この送信装置(例えば、図1のサーバ13)は、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度を受信する受信手段(例えば、図4の受信部161)と、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定手段(例えば、図4の階層決定部152)と、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得手段(例えば、図4のパケタイザ154)と、取得した階層のデータを送信する送信手段(例えば、図4の送信手段)とを備える。
決定手段は、第2の速度が第1の速度よりも速くなるとき、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定することができる。
送信装置は、第2の速度を、階層符号化されたデータの階層ごとに記憶する記憶手段(例えば、図4の階層情報保持部153)を備え、決定手段は、受信した第1の速度と、記憶している第2の速度とを比較することで、階層を決定することができる。
本発明によれば、送信方法が提供される。この送信方法は、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度の受信を制御する受信制御ステップ(例えば、図9のステップS111の処理)と、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定ステップ(例えば、図9のステップS114の処理)と、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得ステップ(例えば、図11のステップS131の処理)と、取得した階層のデータの送信を制御する送信制御ステップ(例えば、図11のステップS135の処理)とを含む。
本発明によれば、プログラムが提供される。このプログラムは、受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す第1の速度の受信を制御する受信制御ステップ(例えば、図9のステップS111の処理)と、受信した第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までのデータの階層のうち、送信するデータの最も上位の階層を決定する決定ステップ(例えば、図9のステップS114の処理)と、決定した階層に基づいて、階層符号化されたデータから、階層のデータを取得する取得ステップ(例えば、図11のステップS131の処理)と、取得した階層のデータの送信を制御する送信制御ステップ(例えば、図11のステップS135の処理)とを実行させる。
このプログラムは、記憶媒体(例えば、図2の磁気ディスク51)に記憶することができる。
以下、図面を参照しながら本発明の実施の形態について説明する。
図1は、本発明を適用したストリーミング配信システム1の一実施の形態の構成を示すブロック図である。ストリーミング配信システム1は、本発明の通信システムの一例である。このストリーミング配信システム1においては、インターネットなどのパケット通信網12に、クライアント11およびサーバ13が接続されている。
クライアント11は、例えば、PC、PDA、または携帯電話機などにより構成され、パケット通信網12を介して、サーバ13から送信されてきたパケットを受信する。クライアント11は、本発明の受信装置の一例である。
クライアント11は、受信したパケットから画像データを抽出し、抽出した画像データを出力装置(図示せず)に供給する。出力装置は、例えば、LCD(Liquid Crystal Display)またはCRT(Cathode Ray Tube)などのディスプレイにより構成され、クライアント11に内蔵するようにしてもよいし、クライアント11とは別の装置として設けるようにしてもよい。
画像データは、ストリーミングデータの一例である。ストリーミングデータは、音声のデータ、またはリアルタイム制御データなど、時間の経過に対応して順次送信または受信が要求されるデータであればよい。
サーバ13は、例えば、専用のサーバまたはPCなどにより構成され、クライアント11からストリーミングデータの配信の要求がされた場合、自分が記録している画像データをパケットに格納して、パケットを、パケット通信網12を介して、クライアント11宛てに送信する。サーバ13は、本発明の送信装置の一例である。
パケット通信網12は、有線または無線の通信回線、ネットワーク、またはインターネットなどからなる伝送路であり、所定の遅延時間で、サーバ13から送信されたパケットをクライアント11まで伝送する。
なお、図1で示されるストリーミング配信システム1の例においては、クライアント11およびサーバ13が、それぞれ1台ずつ設けられているが、実際には、サーバ13は、複数のクライアント11に対してストリーミングデータを配信するので、クライアント11は、パケット通信網12を介して、複数台接続されている。また、同様に、複数のサーバ13を設けるようにしてもよい。
図2は、クライアント11の構成の例を示すブロック図である。
サーバ12のCPU31は、ROM(Read Only Memory)32、または記録部38に記録されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)33には、CPU31が実行するプログラムやデータなどが適宜記憶される。これらのCPU31、ROM32、およびRAM33は、バス34により相互に接続されている。
CPU31にはまた、バス34を介して入出力インタフェース35が接続されている。入出力インタフェース35には、キーボード、マウス、マイクロホンなどよりなる入力部36、ディスプレイ、スピーカなどよりなる出力部37が接続されている。CPU31は、入力部36から入力される指令に対応して各種の処理を実行する。そして、CPU31は、処理の結果得られた画像や音声等を出力部37に出力する。
入出力インタフェース35に接続されている記録部38は、例えば、ハードディスクなどで構成され、CPU31が実行するプログラムや各種のデータを記録する。通信部39は、通信網13、インターネット、その他のネットワーク、または通信媒体を介して外部の装置と通信する。
また、通信部39を介してプログラムを取得し、記録部38に記録してもよい。
入出力インタフェース35に接続されているドライブ40は、磁気ディスク51、光ディスク52、光磁気ディスク53、或いは半導体メモリ54などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部38に転送され、記録される。
なお、サーバ13は、クライアント11と同様に構成されるので、その記載および説明は省略する。また、クライアント11およびサーバ13は、図2に示した内部構造に限らず、必要に応じて、機能を追加したり削除したりすることは可能であり、その機能に対応した構成を持つことが可能である。
図3は、クライアント11の機能の構成を示すブロック図である。
クライアント11は、通信部39、レート指定部101、ストレージ102−1、ストレージ102−2、パケット生成部103、バッファ104、およびデコーダ105を含むようにして構成される。
レート指定部101は、クライアント11のストレージの書き込み速度の中で、最も速い書き込み速度である最大書き込み速度を決定する、最大書き込み速度決定の処理を行う。
例えば、レート指定部101は、クライアント11のストレージ102−1およびストレージ102−2の書き込み速度を測定し、測定した書き込み速度のうち、1番速い(大きい)書き込み速度を最大書き込み速度として決定する。レート指定部101は、決定した最大書き込み速度のビットレートをパケット生成部103に供給する。
レート指定部101は、書き込み速度取得部111および最大書き込み速度算出部112を含むように構成される。
書き込み速度取得部111は、クライアント11のストレージの書き込み速度を取得する。書き込み速度取得部111は、取得したストレージの書き込み速度を最大書き込み速度算出部112に供給する。例えば、書き込み速度取得部111は、メインメモリ(例えば、RAM33)以外のストレージ102−1およびストレージ102−2のそれぞれから書き込み速度を取得し、取得したそれぞれの書き込み速度を最大書き込み速度算出部112に供給する。
最大書き込み速度算出部112は、書き込み速度取得部111から供給されたストレージの書き込み速度を基に、最大書き込み速度を算出する。最大書き込み速度算出部112は、算出した最大書き込み速度のビットレートをパケット生成部103に供給する。
ストレージ102−1は、例えば、ハードディスク、磁気テープ、CD-R(Compact Disc Recordable)、DVD-R(Digital Versatile Disc Recordable)、またはMD(Mini-Disc)(商標)などの外部記憶装置から構成される。また、ストレージ102−1は、CPU31が実行するプログラムや各種のデータを記録する。
ストレージ102−2は、ストレージ102−1と同様に、例えば、ハードディスクなどから構成され、CPU31が実行するプログラムや各種のデータを記録する。
パケット生成部103は、最大書き込み速度算出部112から供給された最大書き込み速度のビットレートを、RTSP(Real Time Streaming Protocol)パケットに格納することでRTSPパケットを生成する。パケット生成部103は、生成したRTSPパケットを通信部39に供給する。
ここで、詳細は後述するが、RTSPとは、例えば、インターネットなどのTCP/IP(Transmission Control Protocol/Internet Protocol)ネットワーク上で、音声や動画などをリアルタイムに配信するためのプロトコルである。一般的に、RTSPは、ストリーミング型の伝送方式におけるプロトコルとして使用される。また、本発明においては、クライアント11とサーバ13との間で、RTSPであるプロトコルに従って、送受信されるパケットを、RTSPパケットと称して説明する。
例えば、パケット生成部103は、最大書き込み速度算出部112から供給された最大書き込み速度のビットレートおよび入力部36から供給されてくる、ユーザにより選択されたコンテンツを示す情報(以下、コンテンツ名と称する)を基に、RTSPパケットを生成し、生成したRTSPパケットを通信部39に供給する。
通信部39は、図2の通信部39に対応し、パケット通信網12、インターネット、その他のネットワーク、または通信媒体を介して、外部の装置と通信する。
通信部39は、各種のパケットを送信する送信部121および各種のパケットを受信する受信部122を含むように構成される。
送信部121は、パケット生成部103から供給されてくるRTSPパケットを、パケット通信網12を介して、サーバ13宛に送信する。受信部122は、パケット通信網12を介して、サーバ13から送信されてきたパケットをバッファ104に供給する。
バッファ104は、通信部39から供給されてくるパケットから抽出された画像データを、一時的に記憶する。
デコーダ105は、サーバ13のエンコーダ(図示せず)に対応した復号方式で、バッファ104に記憶されている画像データを復号して、復号して得られた画像データを、例えば、LCDやCRTディスプレイなどからなるクライアント11の出力部37出力することで、出力部37の画面に画像が映し出され、ストリーミングが開始される。
以下、ストレージ102−1およびストレージ102−2を個々に区別する必要がないとき、単に、ストレージ102と称する。
図4は、サーバ13の機能の構成を示すブロック図である。
サーバ13は、通信部151、階層決定部152、階層情報保持部153、パケタイザ154、およびコンテンツ記録部155を含むようにして構成される。
通信部151は、図2の通信部39に対応し、パケット通信網12、インターネット、その他のネットワーク、または通信媒体を介して、外部の装置と通信をする。
通信部151は、各種のパケットを受信する受信部161および各種のパケットを送信する送信部162を含むように構成される。
受信部161は、パケット通信網12を介して、クライアント11から送信されてきたパケットを階層決定部152に供給する。送信部162は、パケタイザ154から供給されたパケットを、パケット通信網12を介して、クライアント11宛に送信させる。
階層決定部152は、階層決定の処理を行う。例えば、階層決定部152は、クライアント11から送信されてきたRTSPパケットに格納されたビットレートであって、通信部151から供給されてくるビットレートを基に、階層Nを決定し、決定した階層Nをパケタイザ154に供給する。階層決定の処理の詳細は後述する。
ここで、階層Nとは、階層符号化における階層を決定するための値を格納するパラメータであり、階層符号化の各階層に対応した数値が格納される。
階層情報保持部153は、階層情報を保持(記憶)し、階層決定部152からの要求に応じて、記憶している階層情報を階層決定部152に供給する。また、階層情報保持部153は、コンテンツ記録部155に記録されている、階層符号で圧縮されたコンテンツ(階層が決定する前の階層符号化されたコンテンツ)を基に、そのコンテンツにおける階層ごとのビットレートを、階層情報として記憶する。
ここで、階層情報とは、階層符号化における各階層のビットレートを示す情報である。例えば、階層情報は、4階層の階層符号化の場合、1番目の階層の符号化データのビットレート、1番目の階層から2番目の階層までの符号化データのビットレート、1番目の階層から3番目の階層までの符号化データのビットレート、および1番目の階層から4番目の階層までの符号化データのビットレートを含む情報となる。
パケタイザ154は、画像データを格納したパケットを通信部151に供給することで、ストリーミングの処理を行う。例えば、パケタイザ154は、コンテンツ記録部155から階層符号化されたコンテンツ(画像データ)を取得する。パケタイザ154は、階層決定部152から供給されてくる階層Nを基に、取得したコンテンツ(画像データ)のうち、階層Nに応じた画像データを所定の方式のパケットに格納し、画像データを格納したパケットを通信部151に供給することで、パケット通信網12を介して、そのパケットをクライアント11宛に送信させる。
コンテンツ記録部155は、階層符号化されたコンテンツ(画像データ)を記録する。コンテンツ記録部155は、パケタイザ154の要求に応じて、記録しているコンテンツを、例えば、1フレームごとに、パケタイザ154に供給する。
次に、図5乃至図12を参照して、本発明のストリーミング配信システム1の処理の一例として、クライアント11が、パケット通信網12を介して、サーバ13から送信されてくるストリーミングデータを受信する処理を説明する。まず、図5乃至図7を参照して、クライアント11が行う処理の詳細を説明し、その後、図8乃至図12を参照して、サーバ13が行う処理の詳細について説明する。
図5は、クライアント11によるデータ送受信の処理について説明するフローチャートである。
ステップS11において、入力部36は、コンテンツの選択を受け付ける。
例えば、入力部36は、ユーザの操作によって、LCDやCRTディスプレイなどからなるクライアント11の出力部37の画面に表示されているコンテンツの中から、“スポーツ サッカー”である(動画の)コンテンツが選択された場合、“スポーツ サッカー”を示す情報であるコンテンツ名をパケット生成部103に供給する。
以下の説明においては、ストリーミング配信システム1の一例として、クライアント11が、パケット通信網12を介して、サーバ13から送信されてくる“スポーツ サッカー”である(動画の)コンテンツのストリーミングデータを受信する処理となる。
ステップS12において、レート指定部101は、最大書き込み速度決定の処理を行う。
例えば、レート指定部101は、クライアント11に備えられたストレージ102−1およびストレージ102−2の書き込み速度を測定し、測定した書き込み速度のうち、1番速い書き込み速度を最大書き込み速度として決定し、決定した最大書き込み速度のビットレートをパケット生成部103に供給する。具体的には、レート指定部101は、最大書き込み速度として、25(Mbps)であるビットレートを決定した場合、25(Mbps)である最大書き込み速度のビットレートをパケット生成部103に供給する。最大書き込み速度決定の処理の詳細は後述する。
ステップS13において、パケット生成部103は、レート指定部101から供給された最大書き込み速度のビットレートを基に、RTSPパケットを生成し、生成したRTSPパケットを通信部39に供給する。
例えば、ステップS13において、パケット生成部103は、最大書き込み速度算出部112から供給された、25(Mbps)である最大書き込み速度のビットレート、および入力部36から供給されてくる、“スポーツ サッカー”を示すコンテンツ名を基に、25(Mbps)である最大書き込み速度のビットレートおよび“スポーツ サッカー”を示すコンテンツ名をRTSPパケットに格納することで、RTSPパケットを生成し、生成したRTSPパケットを通信部39に供給する。
ここで、上述したように、RTSPパケットは、クライアント11とサーバ13との間で、RTSPであるプロトコルに従って、送受信されるパケットであるが、通常のRTSPパケットには、最大書き込み速度のビットレートを示す情報は格納されていないので、最大書き込み速度のビットレートを示すパラメータを、通常のRTSPパケットに付加することで、最大書き込み速度のビットレートをRTSPパケットに格納するようにしている。
図6は、最大書き込み速度のビットレートを格納するRTSPパケット(以下、拡張RTSPパケットとも称する)の例を示す図である。
1行目の「SETUP rtsp://192.168.0.1/home/data/data.avi RTSP/1.0」は、“192.168.0.1”であるIPアドレスのサーバ13によって配信される、“/home/data/data.avi”であるファイル名のコンテンツのストリーミング配信を要求することを示す。
例えば、ユーザの操作によって、クライアント11の出力部37の画面に表示されているコンテンツの中から、“スポーツ サッカー”であるコンテンツが選択された場合、そのコンテンツの配信先のファイル名を示す“rtsp://192.168.0.1/home/data/data.avi”を拡張RTSPパケットに格納する。すなわち、この場合、“スポーツ サッカー”であるコンテンツは、“192.168.0.1”であるIPアドレスのサーバ13の“/home/data/”であるディレクトリに記録されている“data.avi”であるファイル名のコンテンツとなる(以下、このファイル名を、“/home/data/data.avi”と称して説明する)。
2行目の「CSeq:1」は、送信の順番を示すシーケンス番号である。すなわち、シーケンス番号が“1”であるので、拡張RTSPパケットは、クライアント11とサーバ13との間の通信において、最初にやり取りされるパケットであることを示す。
3行目の「Transport: RTP/UDP;unicast;client_port=1234-1235;ssrc=123456」は、クライアント11とサーバ13との間の通信は、リアルタイム配信用のプロトコルであるRTP/UDP(Real-time Transport Protocol/User Datagram Protocol)によって、ユニキャストで通信が行われ、そのときのクライアント11のポート番号が、“1234-1235”であることを示す。
4行目の「DISK: 25Mbps」は、最大書き込み速度のビットレートが“25Mbps”であることを示す。すなわち、RTSPパケットのSETUPメソッドに対して、DISKである拡張パラメータを付加することで、“25Mbps”である最大書き込み速度のビットレートをサーバ13に通知することができる。
なお、上述した例においては、最大書き込み速度のビットレートをサーバ13に通知する方法として、最大書き込み速度のビットレートをRTSPパケットに格納する方法について説明したが、RTSPパケットに格納する方法に限らず、例えば、RTSPパケット以外の、セッションを制御するプロトコルであるセッション制御メッセージプロトコルのメッセージに格納する方法など、最大書き込み速度のビットレートをサーバ13に通知できる方法であればよい。すなわち、RTSPパケットは、セッション制御メッセージプロトコルの一例である。
図5のフローチャートに戻り、ステップS14において、通信部39は、パケット生成部103から供給されてくるRTSPパケットを、パケット通信網12を介して、サーバ13宛に送信する。
ステップS15において、クライアント11は、パケット通信網12を介して、サーバ13から送信されてくる、最大書き込み速度のビットレートにより決定された、ストリーミングデータを受信することで、ストリーミングを開始する。
例えば、通信部39は、パケット通信網12を介して、サーバ13から送信されてくる、最大書き込み速度のビットレートにより決定された、“スポーツ サッカー”である(動画の)コンテンツのストリーミングデータであって、パケットに格納されたストリーミングデータを受信する。通信部39は、受信したパケットから、“スポーツ サッカー”であるコンテンツの画像データを抽出し、抽出した画像データをバッファ104に供給する。バッファ104は、通信部39から供給された画像データを一時的に記憶する。デコーダ105は、サーバ13のエンコーダ(図示せず)に対応した復号方式で、バッファ104に記憶されている画像データを復号して、復号して得られた画像データを、LCDやCRTディスプレイなどからなるクライアント11の出力部37の画面に出力することで“スポーツ サッカー”であるコンテンツのストリーミングが開始される。
ストリーミングは、例えば、入力部36からの指示や、サーバ13から送信されてくるストリーミングデータが終了した場合などに、終了し、これにより、クライアント11におけるデータ送受信の処理は終了する。
このように、クライアント11のストレージの書き込み速度の中で、1番速い書き込み速度を決定して、その決定した書き込み速度のビットレートをサーバ13に通知するので、サーバ13から配信されるストリーミングデータのビットレートが、ストレージ102のビットレートよりも速くなり、クライアント11側で、ストリーミングデータとして受信したパケットをストレージ102に記録することができなくなる。その結果、クライアント11において、ストリーミングデータをキャプチャすることができなくなるので、コンテンツを保護することができるようになる。
次に、図5のステップS12の最大書き込み速度決定の処理の詳細について、図7のフローチャートを参照して説明する。
ステップS31において、書き込み速度取得部111は、ストレージ102の書き込み速度を取得する。書き込み速度取得部111は、取得したストレージ102の書き込み速度を最大書き込み速度算出部112に供給する。
例えば、ステップS31において、書き込み速度取得部111は、メインメモリ(例えば、RAM33)以外の、クライアント11のストレージ102−1およびストレージ102−2のそれぞれの書き込み速度が、25(Mbps)および20(Mbps)のそれぞれである場合、ストレージ102−1およびストレージ102−2のそれぞれから、25(Mbps)および20(Mbps)である書き込み速度を取得し、取得した25(Mbps)および20(Mbps)である書き込み速度を最大書き込み速度算出部112に供給する。
また、書き込み速度取得部111が、書き込み速度を取得する方法であるが、実際に、ストレージ102にデータを書き込み、それに要した時間を計測することで取得する方法や、ストレージ102に予め記憶されている、そのストレージ102の書き込み速度を示すパラメータを読み出すことで取得する方法など、ストレージ102の書き込み速度を取得できる方法であればよい。
ステップS32において、最大書き込み速度算出部112は、書き込み速度取得部111から供給されたストレージの書き込み速度を基に、最大書き込み速度を算出する。最大書き込み速度算出部112は、算出した最大書き込み速度のビットレートを、パケット生成部103に供給して、処理を図5のステップS12に戻し、ステップS13以降の処理を実行させる。
例えば、ステップS32において、最大書き込み速度算出部112は、書き込み速度取得部111から供給された25(Mbps)および20(Mbps)である書き込み速度を基に、25(Mbps)および20(Mbps)である書き込み速度のうち、最も速い書き込み速度である、25(Mbps)である書き込み速度を最大書き込み速度として算出し、算出した25(Mbps)である最大書き込み速度のビットレートをパケット生成部103に供給する。
以上、クライアント11が行う処理の詳細について説明した。次に、図8乃至図12を参照して、サーバ13が行う処理の詳細について説明する。
まず、図8を参照して、サーバ13によるデータ送受信の処理について説明する。
ステップS91において、階層決定部152は、階層決定の処理を行う。例えば、階層決定部152は、クライアント11から送信されてきたビットレートであって、通信部151から供給されてくるビットレートを基に、階層Nを決定し、決定した階層Nをパケタイザ154に供給する。階層決定の処理の詳細は後述する。
ステップ92において、パケタイザ154は、ストリーミングの処理を行う。例えば、パケタイザ154は、コンテンツ記録部155から階層符号化されたコンテンツ(画像データ)を取得する。パケタイザ154は、階層決定部152から供給されてくる階層Nを基に、取得したコンテンツ(画像データ)のうち、階層Nに応じた画像データを所定の方式のパケットに格納して、画像データを格納したパケットを通信部151に供給することで、パケット通信網12を介して、そのパケットをクライアント11宛に送信させる。ストリーミングの処理の詳細は後述する。
このように、クライアント11から送信されてくる、ストレージ102の書き込み速度の中で、1番速い書き込み速度のビットレートに基づいて、ストリーミングデータのビットレートを決定するので、ストリーミングデータのビットレートが、ストレージ102のビットレートよりも速くなり、クライアント11側で、ストリーミングデータとして受信したパケットをストレージ102に記録することができなくなる。その結果、コンテンツを特定の正当な利用者のみに使用させることができるので、コンテンツの不正な使用を防止することができるようになる。
次に、図8のステップS91の階層決定の処理の詳細について、図9のフローチャートを参照して説明する。
ステップS111において、階層決定部152は、ビットレートおよびコンテンツ名を受信したか否かを判定する。例えば、通信部151は、クライアント11から送信されてくるRTSPパケットを受信し、受信したRTSPパケットに格納されたビットレートおよびコンテンツ名を階層決定部152に供給する。階層決定部152は、通信部151から供給されてくるビットレートおよびコンテンツ名を基に、ビットレートおよびコンテンツ名を受信したか否かを判定する。
ステップS111において、ビットレートおよびコンテンツ名を受信していないと判定された場合、ステップS111に戻り、通信部151がビットレートおよびコンテンツ名を格納したRTSPパケットを受信するまで、上述した処理が繰り返される。すなわち、サーバ13は、クライアント11から、パケット通信網12を介して、ビットレートおよびコンテンツ名を格納したRTSPパケットが送信されてくるまで待機していることになる。
一方、ステップS111において、ビットレートおよびコンテンツ名を受信したと判定された場合、ステップS112に進み、階層決定部152は、階層決定の処理の初期値として、階層N=1をセットする。例えば、ステップS112において、階層決定部152は、通信部151から、25(Mbps)であるビットレートおよび“スポーツ サッカー”を示すコンテンツ名が供給されてきた場合、階層決定の処理の初期値として、階層N=1をセットする。
このとき、ビットレートは、クライアント11のストレージ102の最大書き込み速度のビットレートとなる。また、“スポーツ サッカー”を示すコンテンツ名であるが、上述したように、例えば、“スポーツ サッカー”であるコンテンツは、“192.168.0.1”であるIPアドレスのサーバ13が記録している、“/home/data/data.avi”であるファイル名のコンテンツとなるので、“/home/data/data.avi”であるファイル名を含む情報となる。
ステップS113において、階層決定部152は、階層情報保持部153から、階層符号化における各階層のビットレートを示す情報である階層情報を読み出す。
図10は、階層情報の例を示す図である。
図10で示される例において、1行目は項目を示し、2行目以降は各階層におけるそれぞれのビットレートの値を示す。また、1列目は“階層N”、2列目は“ビットレート”を示す。なお、“ビットレート”の単位は、Bps(bits per second)(ビット毎秒)となる。
図10で示される例においては、“1”である階層Nに対して、10(Mbps)であるビットレートが示され、“2”である階層Nに対して、20(Mbps)であるビットレートが示され、“3”である階層Nに対して、30(Mbps)であるビットレートが示され、“4”である階層Nに対して、40(Mbps)であるビットレートが示されている。
すわわち、この階層符号化における各階層のビットレートの例は、あるコンテンツ(例えば、“スポーツ サッカー”)において、例えば、フレームレートが30(fps)である場合の、第1番目の階層の符号化データのビットレートが10(Mbps)であり、第2番目の階層の符号化データのビットレートが20(Mbps)であり、第3番目の階層の符号化データのビットレートが30(Mbps)であり、第4番目の階層の符号化データのビットレートが40(Mbps)であることを示す。
なお、これらの階層情報をテーブルに格納して記憶するようにしてもよい。
図9のフローチャートに戻り、例えば、階層決定部152は、階層情報保持部153から、第1番目乃至第4番目の符号化データのビットレートとして、10(Mbps)、20(Mbps)、30(Mbps)、および40(Mbps)であるビットレートを示す階層情報(図10)を読み出す。
ステップS114において、階層決定部152は、階層Nのビットレートが、クライアント11のストレージ102の最大書き込み速度のビットレートを超えるか否かを判定する。ステップS114において、階層Nのビットレートが、最大書き込み速度のビットレートを超えないと判定された場合、ステップS115に進み、階層決定部152は、階層Nを1インクリメントする。
例えば、ステップS114において、階層決定部152は、階層情報保持部153から読み出したビットレートのうち、階層決定の処理の初期値としてセットされた、階層N=1に対応した10(Mbps)であるビットレートが、通信部151から供給されてくる25(Mbps)であるビットレートを超える否かを判定し、10(Mbps)は25(Mbps)を超えていないので、ステップS115に進み、階層決定部152は、階層Nを1インクリメントして、階層N=2とする。
また、ステップS114において、階層決定部152は、階層情報保持部153から読み出したビットレートのうち、階層決定の処理の初期値としてセットされた、階層N=2に対応した20(Mbps)であるビットレートが、通信部151から供給されてくる25(Mbps)であるビットレートを超える否かを判定し、20(Mbps)は25(Mbps)を超えていないので、ステップS115に進み、階層決定部152は、階層Nを1インクリメントして、階層N=3とする。
さらに、ステップS114において、階層決定部152は、階層情報保持部153から読み出したビットレートのうち、階層決定の処理の初期値としてセットされた、階層N=3に対応した30(Mbps)であるビットレートが、通信部151から供給されてくる25(Mbps)であるビットレートを超える否かを判定し、30(Mbps)は25(Mbps)を超えているので、処理は、ステップS116に進む。
ステップS116において、階層決定部152は、階層Nをパケタイザ154に通知して、処理を図9のステップS91に戻し、ステップS92以降の処理を実行させる。例えば、階層決定部152は、ステップS114の処理において、階層Nのビットレートが、クライアント11のストレージ102の最大書き込み速度のビットレートを超えた階層である、階層N=3を示す情報をパケタイザ154に供給する。
またこのとき、階層決定部152は、通信部151から供給されてきたコンテンツ名をパケタイザ154に供給する。例えば、階層決定部152は、通信部151から供給されてきた“スポーツ サッカー”を示すコンテンツ名(すなわち、“/home/data/data.avi”であるファイル名)をパケタイザ154に供給する。
このように、クライアント11から送信されてくるストレージの最大書き込み速度のビットレートと、階層情報における階層符号化されたデータのビットレートとを順次比較して、階層Nのビットレートがストレージのビットレートを超える場合に、その階層Nのビットレートを、ストリーミングデータのビットレートとするので、コンテンツを保護するとともに、最適なビットレートでストリーミングデータを配信することができる。また、複数のクライアント11に対して、ストリーミング配信をする場合であっても、クライアント11ごとに、最適なビットレートでコンテンツを配信することができる。
次に、図8のステップS92のストリーミングの処理の詳細について、図11のフローチャートを参照して説明する。
ステップS131において、パケタイザ154は、階層Nを取得する。例えば、ステップS131において、パケタイザ154は、階層決定部152から供給されてくる、階層N=3を示す情報を取得する。
ステップS132において、パケタイザ154は、ファイルが終了したか否かを判定する。例えば、ステップS132において、パケタイザ154は、階層決定部152から供給されてくる“スポーツ サッカー”を示すコンテンツ名(“/home/data/data.avi”であるファイル名)を基に、コンテンツ記録部155に記録されている、“スポーツ サッカー”であるコンテンツを、ストリーミングで再生するための“/home/data/data.avi”であるファイル名のファイルが終了したか否かを判定する。
ステップS132において、ファイルが終了していないと判定された場合、ステップS133に進み、パケタイザ154は、コンテンツ記録部155から、階層符号化された1フレーム分のデータを取得する。例えば、ステップS133において、パケタイザ154は、コンテンツ記録部155に記録されている、階層符号化された“スポーツ サッカー”であるコンテンツ(画像データ)のうち、1フレーム分のコンテンツ(画像データ)を取得する。
ところで、一般的に、動画は、静止画(フレーム)の1枚1枚を素早く切り替えることで、動きを表現している。すなわち、動画は、動きを表現できる予め定められたフレームによって表示される。また、階層符号化されたフレームにおいても、同様に動きを表現している。
次に、図12を参照して、階層符号とフレームとの関係の例について説明する。
図12で示される例の上側には、ある時刻に表示されるフレームが示されている。また、図中の水平方向は、時間軸を表しており、図中の矢印に示されるように、時間は、図中左から右に向かって経過するとして説明する。また、図中の四角はフレームを示し、1つの四角が1フレームを示す。さらに、図12で示される例の下側には、階層符号化されたフレーム201−1の例が示されている。
図12で示される例において、コンテンツは、1秒間に、フレーム201−1乃至201−30(30フレーム)を連続して表示させることで、動画としての動きを表現している。
また、1秒間にどれだけのフレームを表示させるかは、使用する機器やアプリケーションプログラムの特性などによって決定することができる。例えば、フレームレート(Frame Rate)(1秒間に表示させるフレームの数)を上げることで、表示する画像の画質をより滑らかにすることができ、フレームレートを下げると、画質が滑らかにならず、コマ落ちする可能性がでてくる。具体的には、図12で示される例においては、フレームレートは、30(FPS(Frame Per Second))となる。すなわち、フレーム201−1乃至201−30のそれぞれは、1/30秒ごとに表示される。
さらに、1秒間にどれだけのデータ量のデータを流れるようにするかによっても、表示する画像の画質が変化する。例えば、ビットレートを上げることで、表示する画像の画質を高画質にすることができ、ビットレートを下げると、画質が悪くなる可能性がでてくる。また、ビットレートと表示する画像の画質とは、トレードオフの関係にあり、ビットレートを上げると、データ量(ファイルサイズ)が増え、ビットレートを下げるとデータ量(ファイルサイズ)が減るようになる。
図12で示される例においては、各フレームが階層符号化されているので、図12の下側のフレーム201−1で示すように、フレーム201が、Laver1,Laver2,Laver3,およびLaver4の4階層に分かれており、Laver1,Laver2,Laver3,およびLaver4の各層のビットレートは、10(Mbps)、20(Mbps)、30(Mbps)、および40(Mbps)となる。
すなわち、図12で示される例は、あるコンテンツにおいて、フレームレートが30(fps)である場合、1番目の階層の階層符号化データのビットレート、1番目の階層から2番目の階層の階層符号化データのビットレート、1番目の階層から3番目の階層の階層符号化データのビットレート、および1番目の階層から4番目の階層の階層符号化データのビットレートのそれぞれは、10(Mbps)、20(Mbps)、30(Mbps)、および40(Mbps)のそれぞれとなることを示している。
このように、ストリーミング配信システム1においては、クライアント11が、例えば、携帯電話機などように解像度の低いディスプレイと処理能力の低いCPUを有する場合に、10(Mbps)である1番目の階層のビットレートを選択して、ビットレートを下げたり、逆に、デスクトップパソコンのように解像度の高いディスプレイと処理能力の高いCPUを有する場合に、40(Mbps)である4番目の階層のビットレートを選択して、ビットレートを上げたりすることで、様々な受信装置において処理能力などに応じた受信処理や表示処理を実行させることができる。換言すれば、この階層符号化によって、1つのファイルデータから異なる能力の受信装置に対して、同時にデータ配信ができるとも言える。
なお、階層符号の符号化には、例えば、MPEG4またはJPEG2000などが用いられる。
図11のフローチャートに戻り、ステップS134において、パケタイザ154は、コンテンツ記録部155から取得した1フレーム分のデータから、取得した階層Nに応じたデータを取得する。パケタイザ154は、取得した階層Nに応じたデータを所定の方式のパケットに格納して、階層Nに応じたデータを格納したパケットを通信部151に供給する。
例えば、パケタイザ154は、コンテンツ記録部155から取得した、“スポーツ サッカー”であるコンテンツの階層符号化された1フレーム分の画像データから、階層決定部152から取得した、階層N=3を示す情報に応じた、30(Mbps)であるビットレートの画像データを取得する。パケタイザ154は、取得した30(Mbps)であるビットレートの画像データを所定の方式のパケットに格納し、30(Mbps)であるビットレートの画像データを格納したパケットを通信部151に供給する。
ステップS135において、通信部151は、パケット通信網12を介して、パケタイザ154から供給されてくるデータ(パケット)をクライアント11宛に送信して、処理は、ステップS132に戻る。例えば、ステップS135において、通信部151は、パケット通信網12を介して、パケタイザ154から供給されてくる、30(Mbps)であるビットレートの“スポーツ サッカー”であるコンテンツの画像データを格納したパケットをクライアント11宛に送信する。
このとき、サーバ13は、パケット通信網12を介して、“スポーツ サッカー”である(動画の)コンテンツのストリーミングデータを、クライアント11に送信することになるので、ストリーミングが開始される。また、コンテンツ記録部155に記録されている、“スポーツ サッカー”であるコンテンツをストリーミングで再生するためのファイル(“/home/data/data.avi”)が終了するまで、ステップS132乃至ステップS135の処理が繰り返される。
ステップS132において、“スポーツ サッカー”であるコンテンツをストリーミングで再生するためのファイルが終了した場合、処理を図8のステップS92に戻し、処理は終了する。
このように、サーバ13は、クライアント11から通知される最大書き込み速度のビットレートを基に、配信するストリーミングデータのビットレートを決定するので、自分が配信するストリーミングデータのビットレートが、クライアント11のストレージ102のビットレートよりも速くなり、クライアント11側で、ストリーミングデータとして受信したパケットをストレージ102に記録することができなくなる。その結果、コンテンツを不正に再生されることを防止することができるので、コンテンツを提供する事業者は安心してコンテンツを配信するサービスを提供することができる。
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
この記録媒体は、図2に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク51(フレキシブルディスクを含む)、光ディスク52(CD-ROM(CD-Read Only Memory)、DVDを含む)、光磁気ディスク53(MD(商標)を含む)、若しくは半導体メモリ54などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM32や、記録部38に含まれるハードディスクなどで構成される。
また、上述した一連の処理を実行させるプログラムは、必要に応じてルータ、モデムなどのインタフェースを介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を介してコンピュータにインストールされ
るようにしてもよい。
るようにしてもよい。
なお、本明細書において、記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
1 ストリーミング配信システム, 11 クライアント, 12 パケット通信網, 13 サーバ, 31 CPU, 38 記録部, 39 通信部, 40 ドライブ, 51 磁気ディスク, 52 光ディスク, 53 光ディスク, 101 レート指定部, 102−1、102−2および102 ストレージ, 103 パケット生成部, 104 バッファ, 105 デコーダ, 111 書き込み速度取得部, 112 最大書き込み速度算出部, 121 送信部, 122 受信部, 151 通信部, 152 階層決定部, 153 階層情報保持部, 154 パケタイザ, 155 コンテンツ記録部, 161 受信部, 162 送信部
Claims (10)
- 受信装置および送信装置から構成される通信システムにおいて、
前記受信装置は、
それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出手段と、
算出した前記第1の速度を前記送信装置宛に送信する第1の送信手段と
を備え、
前記送信装置は、
前記受信装置から送信されてくる、前記第1の速度を受信する受信手段と、
受信した前記第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までの前記データの階層のうち、送信する前記データの最も上位の階層を決定する決定手段と、
決定した前記階層に基づいて、階層符号化されたデータから、前記階層のデータを取得する取得手段と、
取得した前記階層のデータを送信する第2の送信手段と
を備えることを特徴とする通信システム。 - 通信網を介して、送信装置から送信されてきたパケットを受信する受信装置において、
それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出手段と、
算出した前記第1の速度を前記送信装置宛に送信する送信手段と
を備えることを特徴とする受信装置。 - 算出した前記第1の速度をセッション制御メッセージプロトコルのメッセージに格納することで、前記セッション制御メッセージプロトコルのメッセージを生成する生成手段を備え、
前記送信手段は、生成した前記メッセージを前記送信装置宛に送信する
ことを特徴とする請求項2に記載の受信装置。 - 通信網を介して、送信装置から送信されてきたパケットを受信する受信方法において、
それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出ステップと、
算出した前記第1の速度の前記送信装置宛への送信を制御する送信制御ステップと
を含むことを特徴とする受信方法。 - 通信網を介して、送信装置から送信されてきたパケットを受信する受信処理を、コンピュータに行わせるプログラムにおいて、
それぞれの記録媒体への書き込み速度のうち、最も速い書き込み速度を示す第1の速度を算出する算出ステップと、
算出した前記第1の速度の前記送信装置宛への送信を制御する送信制御ステップと
を含むことを特徴とするプログラム。 - 通信網を介して、パケットを受信装置に送信する送信装置において、
前記受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す前記第1の速度を受信する受信手段と、
受信した前記第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までの前記データの階層のうち、送信する前記データの最も上位の階層を決定する決定手段と、
決定した前記階層に基づいて、階層符号化されたデータから、前記階層のデータを取得する取得手段と、
取得した前記階層のデータを送信する送信手段と
を備えることを特徴とする送信装置。 - 前記決定手段は、前記第2の速度が前記第1の速度よりも速くなるとき、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までの前記データの階層のうち、送信する前記データの最も上位の階層を決定する
ことを特徴とする請求項6に記載の送信装置。 - 前記第2の速度を、階層符号化されたデータの階層ごとに記憶する記憶手段を備え、
前記決定手段は、受信した前記第1の速度と、記憶している前記第2の速度とを比較することで、前記階層を決定する
ことを特徴とする請求項6に記載の送信装置。 - 通信網を介して、パケットを受信装置に送信する送信方法において、
前記受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す前記第1の速度の受信を制御する受信制御ステップと、
受信した前記第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までの前記データの階層のうち、送信する前記データの最も上位の階層を決定する決定ステップと、
決定した前記階層に基づいて、階層符号化されたデータから、前記階層のデータを取得する取得ステップと、
取得した前記階層のデータの送信を制御する送信制御ステップと
を含むことを特徴とする送信方法。 - 通信網を介して、パケットを受信装置に送信する送信処理を、コンピュータに行わせるプログラムにおいて、
前記受信装置から送信されてくる、それぞれの記録媒体への書き込み速度の中で、最も速い書き込み速度を示す前記第1の速度の受信を制御する受信制御ステップと、
受信した前記第1の速度と、階層符号化されたデータにおける階層ごとの転送速度を示す第2の速度とを比較することで、復号に欠くことのできない最下位の階層から、より品質の高い復号をするためのより上位の階層までの前記データの階層のうち、送信する前記データの最も上位の階層を決定する決定ステップと、
決定した前記階層に基づいて、階層符号化されたデータから、前記階層のデータを取得する取得ステップと、
取得した前記階層のデータの送信を制御する送信制御ステップと
を含むことを特徴とするプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005114441A JP2006295601A (ja) | 2005-04-12 | 2005-04-12 | 通信システム、送信装置および方法、受信装置および方法、並びにプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005114441A JP2006295601A (ja) | 2005-04-12 | 2005-04-12 | 通信システム、送信装置および方法、受信装置および方法、並びにプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2006295601A true JP2006295601A (ja) | 2006-10-26 |
Family
ID=37415679
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005114441A Withdrawn JP2006295601A (ja) | 2005-04-12 | 2005-04-12 | 通信システム、送信装置および方法、受信装置および方法、並びにプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2006295601A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8019512B2 (en) | 2007-03-01 | 2011-09-13 | Denso Corporation | System for adjusting direction of optical axis of headlight |
| JP2016082498A (ja) * | 2014-10-21 | 2016-05-16 | 三菱電機株式会社 | デジタル放送受信装置及び方法、並びにプログラム及び記録媒体 |
| JP2017069977A (ja) * | 2014-04-25 | 2017-04-06 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
| US9654751B2 (en) | 2006-12-21 | 2017-05-16 | Thomson Licensing | Method, apparatus and system for providing color grading for displays |
| US12296750B2 (en) | 2009-09-01 | 2025-05-13 | Magna Electronics Inc. | Vehicular vision system |
-
2005
- 2005-04-12 JP JP2005114441A patent/JP2006295601A/ja not_active Withdrawn
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9654751B2 (en) | 2006-12-21 | 2017-05-16 | Thomson Licensing | Method, apparatus and system for providing color grading for displays |
| US8019512B2 (en) | 2007-03-01 | 2011-09-13 | Denso Corporation | System for adjusting direction of optical axis of headlight |
| US12296750B2 (en) | 2009-09-01 | 2025-05-13 | Magna Electronics Inc. | Vehicular vision system |
| JP2017069977A (ja) * | 2014-04-25 | 2017-04-06 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
| JP2017069978A (ja) * | 2014-04-25 | 2017-04-06 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
| JP2017073817A (ja) * | 2014-04-25 | 2017-04-13 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
| JP2016082498A (ja) * | 2014-10-21 | 2016-05-16 | 三菱電機株式会社 | デジタル放送受信装置及び方法、並びにプログラム及び記録媒体 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11743519B2 (en) | Fragment server directed device fragment caching | |
| TWI846795B (zh) | 用於經串流媒體資料之多個解碼器介面 | |
| US10263875B2 (en) | Real-time processing capability based quality adaptation | |
| US20210099773A1 (en) | Using gltf2 extensions to support video and audio data | |
| EP1622385B1 (en) | Media transrating over a bandwidth-limited network | |
| JP6339012B2 (ja) | 層状の信号品質階層の再構成データの送信 | |
| CN100420250C (zh) | 通信设备操作方法、数据呈现方法和设备 | |
| US7558760B2 (en) | Real-time key frame generation | |
| US8875208B1 (en) | High quality multimedia transmission from a mobile device for live and on-demand viewing | |
| US9258625B2 (en) | Method and system for load balancing between a video server and client | |
| JP5257367B2 (ja) | 映像配信装置、映像配信システム及び映像配信方法 | |
| CN103210642B (zh) | 在http流送期间发生表达切换时传送用于自然再现的可缩放http流的方法 | |
| US20130117418A1 (en) | Hybrid platform for content delivery and transcoding | |
| KR20040069360A (ko) | 클라이언트 대역폭 또는 성능에 기초한 타겟된 스케일가능한 비디오 멀티캐스트 | |
| KR20170032431A (ko) | 비디오 품질 향상 | |
| JP2003224839A (ja) | ストリーミングシステム及びストリーミング方法、ストリーミングサーバ及びデータ配信方法、クライアント端末及びデータ復号方法、オーサリング装置及びオーサリング方法、並びにプログラム及び記録媒体 | |
| Abdullah et al. | Survey of transportation of adaptive multimedia streaming service in internet | |
| US9060184B2 (en) | Systems and methods for adaptive streaming with augmented video stream transitions using a media server | |
| WO2018187627A1 (en) | Video compression using down-sampling patterns in two phases | |
| JP5151763B2 (ja) | 映像配信システム、映像配信装置、映像受信装置、映像配信方法、映像受信方法及びプログラム | |
| US20110055550A1 (en) | Method and apparatus for preserving security in video multicasting service | |
| JP2006295601A (ja) | 通信システム、送信装置および方法、受信装置および方法、並びにプログラム | |
| JP4283186B2 (ja) | 双方向映像通信品質制御システム、利用者端末、品質管理サーバ及びプログラム | |
| US10356159B1 (en) | Enabling playback and request of partial media fragments | |
| CN119484896A (zh) | 视频数据的播放方法、装置、计算机设备和可读存储介质 |
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: 20080701 |