JP3393143B2 - ビデオデータ配信方法、ビデオデータ配信システム、並びに、そのビデオデータ配信方法 - Google Patents

ビデオデータ配信方法、ビデオデータ配信システム、並びに、そのビデオデータ配信方法

Info

Publication number
JP3393143B2
JP3393143B2 JP53748798A JP53748798A JP3393143B2 JP 3393143 B2 JP3393143 B2 JP 3393143B2 JP 53748798 A JP53748798 A JP 53748798A JP 53748798 A JP53748798 A JP 53748798A JP 3393143 B2 JP3393143 B2 JP 3393143B2
Authority
JP
Japan
Prior art keywords
data
video
video data
picture
lbr
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.)
Expired - Fee Related
Application number
JP53748798A
Other languages
English (en)
Inventor
智久 山口
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP3393143B2 publication Critical patent/JP3393143B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234381Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2405Monitoring of the internal components or processes of the server, e.g. server load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting

Description

【発明の詳細な説明】 技術分野 この発明は、要求に応じてビデオデータを配信するビ
デオデータ配信装置、ビデオデータ配信システム、並び
に、そのビデオデータ配信方法に関するものである。
背景技術 第33図を用いて背景技術を説明する。第33図はネット
ワークを通して、MPEG等の高ビットレートのビデオデー
タをビデオサーバからクライアントへ配信するためのシ
ステム構成を示す機能ブロック図である。第33図におい
て1はビデオデータ配信専用のネットワーク、2は専用
ネットワーク1に接続され、ビデオデータを配信するビ
デオサーバ、3は専用ネットワーク1に接続され、ビデ
オサーバ2から配信されてきたビデオデータを受け取
り、その再生を行うクライアントである。
次に動作について説明する。
ビデオサーバ2はクライアント3からのデータ転送要求
を受け取ると、専用ネットワーク1に要求されたビデオ
データを流しはじめる。専用ネットワーク1を通して配
信されてきたビデオデータをクライアント3が受け取
り、デコードし、ビデオの再生を行う。
第33図のような構成のシステムではネットワークにビデ
オ配信専用のネットワークを使用しているので、ネット
ワークのバンド幅が充分であればほぼフレーム落ち無し
でビデオの再生を行えるが、クライアント3の数が増加
し、配信するビデオデータの量が増加した結果、ネット
ワーク負荷等が増大した場合に、ビデオデータを送信で
きないために長時間に渡ってフレーム落ちが発生する。
また、通常のネットワークのようなバンド幅が十分では
ないビデオ配信専用ネットワーク以外のネットワーク上
でMPEGのような高転送レートのビデオを利用すると、ネ
ットワーク負荷が増大し、安定したビデオ配信が行われ
ないばかりか、ネットワーク上の他のトラフィックにも
悪影響を及ぼす場合がある。
発明の開示 本発明は以上のような問題を解決するため
になされたものであり、ビデオデータの配信にかかるネ
ットワーク負荷を軽減し、ネットワークに接続されたシ
ステム全体の安定化を図るとともに、再生時の乱れが少
ないリアルタイムな表示が行えるビデオデータ配信装
置、ビデオデータ配信システム、並びに、そのビデオデ
ータ配信方法を得ることを目的とする。
この目的を達成するため、ネットワーク又はビデオデー
タ配信装置の負荷状態を測定する負荷測定部と、複数の
フレームデータを含むビデオデータから、上記負荷測定
部の測定結果に応じた数のフレームデータを抽出するデ
ータ抽出部と、このデータ抽出部が抽出したフレームデ
ータを送信する送信部と、を備えることとした。
また、データ抽出部は、負荷測定部の測定結果に基づい
て、負荷が低いときにはビデオデータの全てのフレーム
データを抽出し、負荷が高いときには、上記ビデオデー
タの一部のフレームデータを抽出することとした。
また、データ抽出部は、ビデオデータ内の複数のフレー
ムデータ間のフレームデータを間引くことによって、負
荷測定部の測定結果に基づいた数のフレームデータを抽
出することとした。
また、データ抽出部は、フレーム内圧縮フレームのデー
タ及びフレーム間圧縮フレームのデータを有するビデオ
データから、負荷測定部の測定結果に基づいて、フレー
ム間圧縮フレームのデータを削除したビデオデータを抽
出し、送信部は、データ抽出部が抽出したビデオデータ
を送信することとした。
また、ビデオデータは、MPEGデータであることとした。
また、データ抽出部は、Iピクチヤ及びPピクチャを有
するMPEGデータから、負荷測定部の測定結果に応じて、
Pピクチャを削除したMPEGデータを生成することとし
た。
また、データ抽出部は、Iピクチャ及びBピクチャを有
するMPEGデータから、負荷測定部の測定結果に応じて、
Bピクチャを削除したMPEGデータを生成することとし
た。
また、データ抽出部は、Iピクチャ、Pピクチャ及びB
ピクチャを有するMPEGデータ、から負荷測定部の測定結
果に応じて、Pピクチャ及びPピクチャを削除したMPEG
データを生成することとした。
また、データ抽出部は、複数のIピクチャを有するMPEG
データから、負荷測定部の測定結果に応じた間隔で複数
のIピクチャを抽出することとした。
また、ビデオカメラからの映像信号をリアルタイムにエ
ンコードし、複数のフレームデータを有するビデオデー
タを生成するエンコーダと、このエンコーダが生成した
ビデオデータを一時的に記憶するバッファと、を備え、
データ抽出部は、上記バッファに記憶されたビデオデー
タ内の複数のフレームデータ間のフレームデータを間引
くことによって、上記ビデオデータから負荷測定部の測
定結果に基づいた数のフレームデータを抽出することと
した。
また、ビデオデータ配信システムの負荷状態を測定する
負荷測定部、複数のフレームデータを含むビデオデータ
から、上記負荷測定部の測定結果に応じた数のフレーム
データを抽出するデータ抽出部と、このデータ抽出部が
抽出したフレームデータをネットワークを介して送信す
る送信部と、を備えたビデオデータ配信装置、上記ネッ
トワークから上記ビデオデータ配信装置の送信部から送
信されたフレームデータを受信するとともに、受信した
フレームデータを再生するビデオデータ再生装置、を備
えることとした。
また、負荷測定部は、ビデオデータ再生装置の動作を制
御するプロセッサの負荷を測定することとした。
また、複数のビデオデータ再生装置がネットワークに接
続され、ビデオデータ配信装置の送信部から上記ネット
ワーク上に送信された1つのフレームデータは、上記複
数のビデオデータ再生装置それぞれにおいて受信される
こととした。
また、ビデオデータ再生装置は、それぞれデータ量が指
定されたデータ転送要求を複数回ビデオデータ配信装置
へ送信し、ビデオデータ配信装置は、上記複数回のデー
タ転送要求を受信すると、これらのデータ転送要求それ
ぞれに指定されたデータ量に基づいたフレームデータ
を、上記データ転送要求ごとに送信することとした。
また、ビデオデータ再生装置は、ビデオデータが指定さ
れたデータ転送要求を送信し、ビデオデータ配信装置
は、上記のデータ転送要求を受信すると、上記ビデオデ
ータの一部のフレームデータを有するパケットを所定の
間隔で複数送信することこととした。
また、ビデオデータ配信システムの負荷に応じた送信レ
ベルを決定する送信レベル決定ステップと、複数のフレ
ームデータを含むビデオデータから、上記送信レベル決
定ステップにおいて決定された送信レベルに応じた数の
フレームデータを抽出するデータ抽出ステップと、上記
データ抽出ステップにおいて抽出されたフレームデータ
を送信する送信ステップと、を備えることとした。
また、送信レベル決定ステップは、ビデオデータ再生装
置で実行され、ビデオデータ再生装置の動作を制御する
プロセッサの負荷を測定する負荷測定ステップと、この
負荷測定ステップの測定結果に対応した送信レベルを決
定する決定ステップと、この決定ステップによって決定
した送信レベルをビデオデータ再生装置からビデオデー
タ配信装置へ送信する送信レベル送信ステップと、を備
えることとした。
また、ビデオデータ再生装置が、送信ステップによって
送信されたフレームデータを受信し、受信したフレーム
データを再生する再生ステップを備えることとした。
また、送信レベル決定ステップは、ビデオデータ再生装
置がビデオデータを早送り再生する場合には、ビデオデ
ータに含まれる複数のフレームデータから一部のフレー
ムデータを間引いたビデオデータが抽出されるように送
信レベルを決定し、早送り再生しない場合には、ビデオ
データのフレームデータを間引かないように送信レベル
を決定することとした。
また、データ抽出ステップは、ビデオデータ再生装置が
複数のフレームデータ及び音声データを含むビデオデー
タを早送り再生する場合には、ビデオデータから上記音
声データを削除し、送信レベルに応じた数のフレームデ
ータを抽出したビデオデータを生成し、送信ステップ
は、上記データ抽出ステップが生成したビデオデータを
送信することとした。
図面の簡単な説明 第1図は、本発明の実施例1、2、4にかかるクライ
アント・サーバシステムのシステム構成図である。
第2図は、本発明の実施例1、3、4にかかるLBRデ
ータ配信/再生部分のソフトウェア構成図である。
第3図は、本発明のクライアント主導型の動作を示す
シーケンス図である。
第4図は、本発明の実施例1にかかるクライアントプ
ログラムの処理を説明するフローチャートである。
第5図は、本発明の実施例1にかかるOPEN要求のデー
タ構造示す図である。
第6図は、本発明の実施例1にかかるREAD要求のデー
タ構造示す図である。
第7図は、本発明の実施例1にかかるCPU負荷測定処
理を説明するフローチャートである。
第8図は、本発明の実施例1にかかるネットワーク負
荷測定処理を説明するフローチャートである。
第9図は、本発明の実施例1にかかるオフセットの調
整処理を説明する図である。
第10図は、本発明の実施例1にかかるビデオサーバの
MPEGデータ配信処理を説明するフローチャートである。
第11図は、本発明の実施例1にかかるLBR処理を説明
するフローチャートである。
第12図は、本発明の実施例1にかかるピクチャチェッ
ク処理を説明するフローチャートである。
第13図は、本発明の実施例1にかかるIピクチャチェ
ック処理を説明するフローチャートである。
第14図は、本発明の実施例1にかかるIPピクチャチェ
ック処理を説明するフローチャートである。
第15図は、本発明の実施例1に係るIPBピクチャチェ
ック処理を説明するフローチャートである。
第16図は、本発明の実施例1にかかる間引き間隔と見
つかったピクチャを取り出すか否かの判断とを説明する
表を示す図である。
第17図は、MPEG1システムのデータ構造を示す図であ
る。
第18図は、MPEG1システムのGOP層までのデータ構造を
示す図である。
第19図は、本発明の実施例1にかかるビデオ配信処理
のシーケンス図である。
第20図は、本発明の実施例1にかかるビデオ配信処理
のシーケンス図である。
第21図は、本発明の実施例2にかかるLBRデータ配信
/再生部分のソフトウェア構成図である。
第22図は、本発明のサーバ主導型の動作を示すシーケ
ンス図である。
第23図は、本発明の実施例2にかかるクライアントプ
ログラムの処理を説明するフローチャートである。
第24図は、本発明の実施例2にかかるビデオサーバの
配信処理を説明するフローチャートである。
第25図は、本発明の実施例3にかかるクライアント・
サーバシステムのシステム構成図である。
第26図は、本発明の実施例3にかかるビデオ配信処理
のシーケンス図である。
第27図は、本発明の実施例3にかかるサーバプログラ
ムの処理を説明するフローチャートである。
第28図は、本発明の実施例3にかかるクライアントプ
ログラムの処理を説明するフローチャートである。
第29図は、本発明の実施例4にかかるサーバプログラ
ムの処理を説明するフローチャートである。
第30図は、本発明の実施例4にかかるクライアントプ
ログラムの処理を説明するフローチャートである。
第31図は、本発明にかかるビデオサーバの機能ブロッ
ク図である。
第32図は、本発明に係るLBR処理を説明する機能ブロ
ック図である。
第33図は、背景技術に係るビデオサーバのシステム構
成図である。
発明を実施するための最良の形態 第1図に本発明におけるクライアント・サーバシステ
ムのシステム構成の実施例を示す。以下に説明する実施
例ではビデオデータとしてMPEGデータを使用している。
第1図において、4はビデオデータ以外のデータも流
れている通常のネットワーク、5はネットワーク4を通
してMPEGデータを配信するビデオサーバであり、例え
ば、ネットワークサーバの機能を有する周知のOSが実装
されたコンピュータを用いる。6はMPEGデータを格納し
ておくためのディスク装置、7はディスク装置6からMP
EGデータを読み込むためのサーバ用バッファである。8
はサーバ用バッファ7に読み込まれたMPEGデータをLBR
化したデータ(以下LBRデータ;Low Bit Rate)に変更す
る際に、このLBRデータを書き出すために使用されるLBR
用バッファ、9は配信されてきたLBRデータを受け取
り、その再生を行うクライアントであり、例えば、ネッ
トワーク機能を有するマイクロソフト社のOS、Windows9
5が実装されたコンピュータを用いる。クライアント9
はビデオデータ再生以外のアプリケーションも同時実行
可能である。10はビデオサーバ5から配信されてきたMP
EGデータを一時的に格納しておくためのクライアント用
バッファである。
第31図は、ビデオサーバ5の機能を説明するための機能
ブロック図である。第31図において、第1図と同一の符
号は同一又は相当の部分を表している。18はネットワー
ク4の負荷を測定するネットワーク負荷測定部、19はビ
デオサーバ5のCPUの負荷を測定するCPU負荷測定部であ
る。ビデオサーバ5のCPUは、ビデオサーバ5の動作を
制御するためのプロセッサである。91は、ネットワーク
負荷測定部18、若しくはCPU負荷測定部19が測定した負
荷情報に基づいて、デイスク装置6から受け取ったMPEG
データD1を、送信部92又はLBR処理部12へ選択的に出力
する切替部である。12はディスク装置6から切替部91を
介して受け取ったMPEGデータD1のデータ量を減少させる
処理を行うLBR処理部である。92は、切替部91から受け
とったMPEGデータのフルデータ、またはLBR処理部12か
ら受け取ったデータ量の少ないMPEGデータ(LBRデー
タ)を、ネットワーク4上に送信する送信部である。LB
R処理の詳細については後述する。
ここで、クライアント9はビデオ再生装置である。ネッ
トワーク負荷測定部18、若しくはCPU負荷測定部19は、
負荷測定部である。LBR処理部12は、データ抽出部であ
る。
次に、第31図に基づいて、ビデオサーバ5の動作を説
明する。
ネットワーク負荷測定部18は、ネットワーク4の負荷
を常に監視する。また、CPU負荷測定部19もCPUの負荷を
常に監視している。ビデオサーバ5は、クライアント9
からのデータ転送要求があると、ディスク装置6からMP
EGデータのフルデータD1を読み込む。切替部91は、この
MPEGデータのフルデータD1を受け取り、ネットワーク負
荷測定部18及びCPU負荷測定部19からそれぞれ受け取っ
た負荷情報に基づき、送信部92、又は、LBR処理部12を
選択してフルデータD1を出力する。ここで、フルデータ
とは、LBR処理を行っていないビデオデータをいう。
例えば、ネットワーク4の負荷、及び、CPUの負荷が低
い場合には、切替部91は、送信部92を選択してフルデー
タD2を出力する。このフルデータD2は、フルデータD1と
同じものである。
一方、ネットワーク4の負荷、又は、CPUの負荷が高
い場合には、LBR処理部12を選択して、MPEGデータのフ
ルデータD1を出力する。負荷が高い/低いという判定
は、予め定められたしきい値を基準に行われる。このフ
ルデータD1を受け取ったLBR処理部12は、LBR処理を行
い、フルデータD1から、例えばPピクチャ、Bピクチャ
を削除し、Iピクチャを抽出することによってLBRデー
タD3を作成し、MPEGデータのデータ量を減らす。そし
て、LBR処理部12によってデータ量を減らされたLBRデー
タD3は、送信部92へ出力される。Iピクチャ、Bピクチ
ャ、Pピクチャは、それぞれ1フレームの画像データ、
すなわちフレームデータである。各ピクチャの詳細につ
いては後述する。
切替部91又はLBR処理部12から、フルデータD2又はLBR
データD3を受け取った送信部92は、受け取ったMPEGデー
タD2,D3をネットワーク4上へ送信する。ネットワーク
4へ送信されたMPEGデータD2,D3は、クライアント9に
受信され、クライアント9が受け取ったMPEGデータD2,D
3を再生する。
上述の説明では、Bピクチャ、Pピクチャを間引く実
施例を説明したが、第32図に示されるように、LBR処理
部12は、複数のIピクチャによって構成されるフルデー
タD1から、各Iピクチャの間のIピクチャを間引くこと
によって、LBRデータD3を抽出することもできる。
以上のように、この発明の実施例によれば、ネットワ
ーク4の負荷、CPUの負荷等のシステムの負荷に応じ
て、ネットワーク4上に送信するMPEGデータの量を調整
するため、クライアント9で再生されるビデオが長時間
にわたって更新されないという現象を抑制し、リアルタ
イムな再生を行うことができる。
また、ビデオデータ以外のトラフィックの送受信が行わ
れるネットワークにおいても、ビデオデータがネットワ
ークを長時間占有するために、その他のトラフィックの
送信が長時間にわたって待ち状態にとなることを防止
し、ネットワーク等の負荷に応じてビデオデータの送信
量を減少させるため、他の重要なトラフィックを送信す
ることができる。
実施例1. 次に、本発明にかかる実施例1のビデオサーバ5及び
クライアント9を詳細に説明する。システム全体のハー
ドウェア構成は、第1図に示した通りである。
第2図はビデオサーバ5およびクライアント9のMPEGデ
ータ、LBRデータの配信/再生部分のソフトウェア構成
を示したものである。第2図において、第1図と同一の
符号は同一又は相当の部分を表す。11はMPEG/LBRデータ
を配信するためのサーバプログラム、12はMPEGデータを
LBR化するためのLBR処理部である。13はビデオサーバ5
から送られてくるMPEG/LBRデータの処理を行うクライア
ントプログラム、14は周知の技術であるMPEGデータ再生
アプリケーション、18はネットワーク4の負荷を測定す
るネットワーク負荷測定部、19はクライアントのCPUの
負荷を測定するCPU負荷測定部である。クライアントのC
PUは、クライアント9の動作を制御するためのプロセッ
サである。
本実施例のビデオデータ配信システムは、クライアン
ト9からのデータ転送要求に従って、ビデオサーバ5で
LBRデータをリアルタイムに生成し配信する、クライア
ント主導型で動作する。クライアント主導型とは第3図
にあるように、クライアント9からのデータ転送要求に
従って、ビデオサーバ5が要求されたビデオデータの転
送を行うものである。クライアント9はネットワーク4
の負荷、クライアント9自身の負荷、LBRや特殊再生要
求などによって転送サイズ、オフセット、転送モード
(MPEGデータ要求またはLBRデータ要求)等を決定し、
ビデオサーバ5にビデオデータを要求する。
なおクライアント主導型から実施例2記載のサーバ主
導型に切り替えることも可能である。
本実施例のシステムは以上のような構成であり、以下LB
Rデータ配信/再生を第10図〜第15図に示したサーバプ
ログラム、第4図、第7図、及び第8図に示したクライ
アントプログラムの処理フローチャート、並びに第19
図、及び第20図のクライアントーサーバ間のプロトコル
に基づき、その動作を以下に詳細に説明する。
1.クライアントプログラムの動作 1.1 初期化処理 まず、第4図のステップS101で、クライアントプログ
ラム13は起動直後にサーバプログラム11に対しサーバ確
認要求として、MOUNTリクエストを送る(第19図ステッ
プS241)。これはサーバが起動されているかどうかを確
認するために行うものである。サーバからREPLYが返っ
てこない場合には、サーバ起動されていないとして、エ
ラーメッセージを出力して、動作を終了する。返ってき
た場合には、ステップS103に進む。
次にクライアントプログラム13はネットワーク負荷と
CPU負荷の測定処理を行う(ステップS103、ステップS10
4)。これらの処理を一定間隔で行うように別プロセス
又は別スレッドとして実行する。第7図、第8図を用い
てこれらの処理は後述する。
次に、MPEGデータ再生アプリケーション14から各種の
要求が送られてくるのを待つ(ステップS105)。
MPEGデータ再生アプリケーション14から要求を受け取
ったクライアントプログラム13は、受け取った要求がデ
ータ転送要求か、否かを判断し(ステップS106)、デー
タ転送要求の場合には、ステップS110に進み、データ転
送要求ではない場合には、ステップS107へ進む。
1.2 データ転送要求以外の要求に対する処理 ステップS107からステップS109は、MPEGデータ再生ア
プリケーション14から受け取った要求をサーバへ送信し
(ステップS107)、REPLYが返ってくるのを待ち(ステ
ップS108)、返ってきたREPLYをMPEGデータ再生アプリ
ケーション14へ送信する(ステップS109)処理であり、
ステップS109が終了すると、ステップS105へ戻って、再
び要求を待つ。ここで、ステップS107で送信される要求
の一つとしては、OPEN要求がある(第19図ステップS24
3)。MPEGデータ再生アプリケーション14は、データ転
送要求を行う前に、データ転送の対象となるファイルを
指定する上述のOPEN要求を送信する。
第5図、第6図に例としてサーバプログラム11に渡す
OPEN,READ要求のデータ構造を示す。OPEN要求には、MPE
G再生アプリケーション14が指定した、LBRモード、すな
わちフルデータを転送するか、LBR化したデータを転送
するかを示すデータ(間引き間隔)が含まれているとい
う特徴がある。
1.3 データ転送要求に対する処理 一方、MPEGデータ再生アプリケーション14からの要求
がデータ転送要求であった場合には、ステップS103、ス
テップS104で得られたネットワーク負荷、CPU負荷より
各ピクチャの間引き間隔を決定する(ステップS110)。
このステップS110は、決定ステップである。間引き間隔
は送信レベルである。ここで、各ピクチャの間引き間隔
を決定するとは、例えば、(1)IPB全てのデータを送
信する。
(2)IPのみのデータを送信する。
(3)Iのみのデータを送信する。
(4)Iのみのデータの一部を所定間隔で抽出したデー
タを送信する。
の送信方法の中から、1つの送信方法を選択する処理で
あって、(1)は負荷が軽いときに選択され、(2)は
次に、(3)はまたその次に、負荷が軽いとき、(4)
は負荷が最も重いときに選択される。ここで、P、Bに
ついても所定の間隔でデータを抽出するように指定する
こともできる。従って、間引き間隔は、例えば、どのピ
クチャを抽出するかというピクチャ指定データと、ピク
チャ指定データに指定されたピクチャのそれぞれについ
て、抽出する間隔を指定する間隔指定データとによって
構成することができる。上記(1)〜(4)のいずれの
処理を実行するかは、予め定められたしきい値を基準に
判定される。
次に間引き間隔に変更があったか否かが判断され(ス
テップS111)、変更があった場合には次のステップS112
へ進む。変更がない場合には、ステップS114へ進んで、
ビデオサーバ5へデータ転送要求を送信する。
1.4 変更要求送信処理 変更がある場合には、クライアント9はビデオサーバ
5に対して変更要求を送信する。この変更要求送信処理
は、送信レベル送信ステップである。変更要求には、変
更要求命令を示す識別子及び上述ステップS110で説明し
た(1)〜(4)を示す識別子が含まれる。
サーバプログラム11は、この変更要求を受け取ると、
変更要求に指定されたモードに従って内部に記憶した転
送モードのフラグを書き換え、REPLYを返す。
ビデオサーバ5からREPLYを受け取ると(ステップS11
3)、クライアントプログラム13は、ステップS114へ進
みデータ転送要求の処理に移る。
1.5 データ転送要求処理 クライアントプログラム13は、MPEGデータ再生アプリ
ケーション14から要求されたサイズを指定して、ビデオ
サーバ5へデータ転送要求を送信する(ステップS114、
第19図ステップS245)。次に、ビデオサーバ5からデー
タが送信されるのを待ち(ステップS115)、データを受
信する(第19図ステップS248)と、クライアント用バッ
ファ10に受信したデータを格納し(ステップS116)、受
信したデータについてオフセットの計算を行う。このオ
フセットの計算は、ビデオサーバ5から送信されるデー
タは、LBR化されている場合があり、ステップS114で要
求したデータサイズと異なることがあるため、ステップ
S114〜S117の処理の繰返しによってクライアント用バッ
ファ10に格納された総データ量からオフセットを計算す
る処理である。
続いて、ビデオサーバ5から受け取ったデータがMPEGデ
ータ再生アプリケーション14が要求したサイズに達した
か否かを判断し(ステップS118)、達していない場合に
は、ステップS114へ戻り再びデータ転送要求を送信す
る。達している場合には、クライアント用バッファ10に
格納したデータをMPEGデータ再生アプリケーション14へ
渡す(ステップS119)。具体的には、ステップS117で計
算したオフセットに基づいて判断される。
ステップS119が終了すると、ステップS105へ戻り、再び
MPEGデータ再生アプリケーション14からの要求を待つ処
理を繰り返す。
クライアントプログラム13の動作は以上である。
1.6 CPU負荷測定処理 次に、第7図を用いて、負荷測定ステップたるCPU負
荷測定処理の一例について説明する。CPU負荷測定処理
では、まず現在の時刻(T1)を測定し記憶しておく(ス
テップS121)。次にプライオリティの低い処理を実行し
(ステップS122)、この処理にかかった時間、すなわち
プライオリティが低い処理が実際にCPUを使用した時間
(T2)を測定し、記憶する(ステップS123)。次にもう
一度現在の時刻(T3)を測定する(ステップS124)。こ
れらの時刻情報からCPU使用率を以下のようにして求め
る(ステップS125)。
CPU使用率(%)=100−(T2/(T3−T1)×100) このCPU使用率が高いほど、CPU負荷が高いことになり、
CPU使用率が低いほど、CPU負荷が低いことになる。
1.7 ネットワーク負荷測定処理 次に、第8図を用いて、負荷測定ステップたるネット
ワーク負荷測定処理の一例を説明する。ネットワーク負
荷測定処理では、まず現在の時刻(T1)を測定し記憶し
ておく(ステップS131)。次にビデオサーバ5で使用し
ていないポートに対して一定サイズ(例えば8KB)のデ
ータを送り(ステップS132)、これに費やされた時間
(T2)を測定し、記憶しておく(ステップS133)。次に
もう一度現在の時刻(T3)を測定する(ステップS13
4)。これらの時刻情報からネットワーク負荷を図るた
めの指標を以下のようにして求める(ステップS134)。
ネットワーク負荷= ((転送したデータサイズ/ (T2−T1))/ネットワークの帯域) 1.8 オフセットの調整処理 第9図を用いてオフセットの調整処理の説明を行う。
なお、説明の簡単化のため、LBRモードは、LBR処理を行
う(ON)、LBR処理を行わない(OFF)の2種類とし、ON
のときのピクチャ指定データ及び間隔指定データは固定
値とする。この例では時間T0でLBRモードOFFで始めて、
時間T2でLBRモードON、さらに時間T5でLBRモードOFFに
している。また説明の簡素化のためLBRデータの量がも
ととなるMPEGデータ(フルデータ)の量の半分になると
している。
まずMPEGデータアプリケーション14が時間T0、オフセッ
ト0、サイズ10でデータ要求を出す。この要求がクライ
アントプログラム13→サーバプログラム11→クライアン
トプログラム13を経てサイズ10のデータが送られてく
る。次にMPEGビデオ再生アプリケーション14が時間T1、
オフセット10、サイズ10でデータ要求を出す、先ほどと
同じようにサイズ10のデータが送られてくる。
次にMPEGデータ再生アプリケーション14が時間T2でLB
RモードON要求を行い、オフセット20、サイズ10でデー
タ要求を行う。クライアントプログラム13はLBRモードO
N要求をサーバプログラム11に送るとともに、オフセッ
ト20、サイズ10でデータ要求を行う。サーバプログラム
11はオフセット20、サイズ10のデータを取り出しLBR化
を行い、サイズ5のLBRデータに変換し、これをクライ
アントプログラム13に送る。
クライアントプログラム13はサーバプログラム11から
送られてきたLBRデータのサイズとMPEGデータ再生アプ
リケーション14からの要求サイズを比較し、送られてき
たデータサイズではMPEGデータ再生アプリケーション14
からの要求サイズを満たさないので、サーバプログラム
11に対してオフセット30、サイズ10でデータ要求を行
う。先ほどと同様にサーバプログラム11はLBRデータを
クライアントプログラム13に送る。
クライアントプログラム13はすでに送られてきている
データサイズと今送られてきたデータサイズを合わせ、
MPEGデータ再生アプリケーション14からの要求サイズと
比較する。今度はMPEGデータ再生アプリケーション14か
らの要求サイズを満たしているので、MPEGデータ再生ア
プリケーション14にサーバプログラム11から送られてき
たデータを送る。
クライアントプログラム13はMPEGデータ再生アプリケ
ーション14からのオフセット、サイズと実際に使用され
るビデオファイルのオフセット、サイズの両方を記憶し
ておき、このようなMPEGデータ再生アプリケーション14
からの要求サイズとサーバプログラム11から送られてく
るデータサイズの差異を管理する。
次にMPEGデータ再生アプリケーション14は時間T3で先ほ
どと同様にデータ要求を行う。先ほどと同様にクライア
ントプログラム13はMPEGデータ再生アプリケーション14
からの要求サイズを満たすまでサーバプログラム11にデ
ータ要求を行う。
サーバプログラム11は先ほどと同様にLBRデータをク
ライアントプログラム13に送る。
次にMPEGデータ再生アプリケーション14は時間T4でLB
RモードOFF要求を行い、オフセット40、サイズ10でデー
タ要求を行う。クライアントプログラム13はLBRモードO
FF要求をサーバプログラム11に送るとともにオフセット
60、サイズ10でデータ要求を行う。サーバプログラム11
はオフセット60、サイズ10のデータを取り出し、クライ
アントプログラム13に送る。
以上のようにして送られてきたデータでMPEGデータ再
生アプリケーション14は再生を行っていく。またMPEGデ
ータ再生アプリケーション14が再生位置の変更を行った
場合にはオフセットの値をMPEGデータ再生アプリケーシ
ョン14で要求するオフセットと実際に使用されるビデオ
ファイルのオフセットを同一の値にして初期化する。
1.9 LBRデータの転送か、フルデータの転送かの判断 ここで、MPEGデータ再生アプリケーション14は、ビデ
オデータの再生を通常データまたはLBRデータのどちら
で開始するかを決定し、LBRデータで開始する場合はこ
れをクライアントプログラム13に送ることもできる。
またMPEGデータ再生アプリケーション14は、いつでもサ
ーバプログラム11から送られてくるデータを通常データ
からLBRデータに、またはLBRデータから通常データへ配
信の変更要求を行える。
2.サーバプログラムの動作 2.1 サーバプログラム全体動作 次に、第10図に基づいて、サーバプログラム11の動作
について説明する。サーバプログラム11は、クライアン
ト9からの要求を待ち(ステップS141)、要求を受け取
ると、受け取った要求がデータ転送要求か否かを判断す
る(ステップS142)。データ転送要求ではない場合に
は、要求に応じた処理を行い(ステップS143)、処理結
果をREPLYとしてクライアント9へ送信する(ステップS
144)。ここで、ステップS143で行われる処理は、例え
ば、MPEGデータに係るファイルのOPEN、CLOSE等の処理
である。また、クライアント9からLBRモードの変更が
指示された場合に、LBRモードを変更する処理も、ステ
ップS143で行われる。
一方、データ転送要求である場合には、ディスク装置
6からMPEGデータを読み込み、読み込んだデータをサー
バ用バッファ7へ格納する。このとき、読み込むMPEGデ
ータは、クライアント9から指定された要求サイズ分の
MPEGデータである(ステップS145)。次に、内部に記憶
されたLBRモードを調べ、LBR化が必要か否かを判断する
(ステップS146)。
LBR化が必要な場合には、サーバ用バッファ7に格納
されたMPEGデータをクライアント5へ送信する(ステッ
プS149、第19図ステップS247)。
一方、LBR化が必要な場合には、サーバ用バッファ7
に記憶されたMPEGデータについてLBRモードに応じたLBR
処理を行って、LBR処理後のMPEGデータをLBR用バッファ
8に格納する(ステップS147)。そして、LBR用バッフ
ァ8に格納されたMPEGデータをクライアント9へ送信す
る(ステップS148)。このステップS148は送信ステップ
である。LBR処理については後述する。
2.2 LBR処理 次にデータ抽出ステップたるLBR処理について詳述す
る。
LBR処理は、Iピクチャ、Pピクチャ、Bピクチャを有
するMPEGデータから、所定のピクチャを抽出して、デー
タサイズの小さいMPEGデータを作成する処理である。
2.2.1 MPEG1のデータ構造 まず、MPEG1データの構造について説明する。第17図
にMPEG1システム、第18図にGOP(Group of Pictures)
層までのMPEG1ビデオの各構成を示す。これらのMPEG1デ
ータの構造は、文献ISO/IEC11172−1/2:″Information
technology−Coding of moving pictures and associat
ed audio for digital Storage media at up to about
1.5Mbit/S″,INTERNATIONAL STANDARD,1993に詳細に説
明されているものである。
MPEG1システムはMPEG1ビデオ、MPEG1オーディオを同期
化して、多重化したもので実際にアプリケーションに適
用する場合には、このMPEG1システムが使用される。第1
7図のようにPACK START CODE、Packet Start codeなど
の開始コードは32ビットのデータであり、バイト配置さ
れている。また、これらの開始コードのビットパターン
はMPEG1のビットストリーム中ではそれ以外に決して発
生しないものであり、各種ヘッダの識別に使用される。
System headerにはストリーム全体の概要を記述した情
報グループが入っている(例えば、ビットレートな
ど)。other header dataにはタイムスタンプ(PTS、DT
S)などの情報が入っている。SCR(System Clock Refer
ence)とは、ビデオとオーディオの複合器を含むMPEGシ
ステム復合器において、時刻基準となるSTC(System Ti
me Clock、基本となる同期信号)の値を符号器側で意図
した値にセット・校正する為の情報である。MPEG1ビデ
オのGOPはMPEG1ビデオにおけるランダムアクセス単位で
あり、通常GOPは0.5秒程度の再生時間になる。
第18図は、第17図のPacket dataがビデオデータであ
った場合の内容を詳細に示したものであり、GOP層の
I、P、BはそれぞれIピクチャ、Pピクチャ、Bピク
チャを表している。各ピクチャの内容は以下の通りであ
る。
Iピクチャ:Intra−Picture(フレーム内符号化画像)
Iピクチャは前後のピクチャとは無関係にその情報だけ
から符号化された画面で、フレーム間予測を使わずに生
成されたものである。Iピクチャはフレーム内圧縮フレ
ームのデータの一種である。
Pピクチャ:Predictive−Picture(フレーム間順方向予
測符号化画像) PピクチャはIまたはPピクチャからの予測を行うこと
によってできる画面である。すなわち、前のIまたはP
ピクチャからの差分によって表される。Pピクチャはフ
レーム間圧縮フレームのデータの一種である。
Bピクチャ:Bidirectionally predictive−Picture(双
方向予測符号化画像)BピクチャはMPEGの特徴である双
方向予測によってできる画面である。すなわち、前後の
IまたはPピクチャからの差分によって表される。Bピ
クチャはフレーム間圧縮フレームのデータの一種であ
る。
2.2.2 LBR処理の動作説明 次に、LBR処理部12が行うLBR処理の詳細について第12
図に基づいて説明する。
まず、LBR処理部12は、サーバ用バッファ7に格納され
ているMPEGデータのパックヘッダの位置が確定済みかを
判断する(ステップS151)、確定済みの場合には、ステ
ップS159に進む。確定済みでない場合には、ステップS1
52に進みパックヘッダの位置を確定する処理を行う。
パックヘッダの位置を確定する処理は、まず、サーバ
用バッファ7に記憶されているMPEGデータの内容をデー
タの先頭部分から順次調べていき、パックヘッダのデー
タを探し(ステップS152)、探し出したパックヘッダを
LBR用バッファ8へ複写する(ステップS153)。
次に、パックヘッダに続くデータがシステムヘッダか
を調べる(ステップS154)。システムヘッダであった場
合には、そのシステムヘッダ部分をサーバ用バッファ7
からLBR用バッファ8へ複写する(ステップS155)。シ
ステムヘッダでない場合には、ステップS155の処理を跳
ばして、ステップS156へ進む。
ステップS154もしくはステップS155が終了すると、続く
サーバ用バッファ7内のデータがビデオパケットである
かを調べる(ステップS156)。ビデオパケットである場
合には、ステップS157のピクチャチェックを行う。この
ピクチャチェックによって、所定のピクチャがLBR用バ
ッファ8へ抽出される。ピクチャチェックについては、
第12図を用いて詳細に説明する。一方、ビデオパケット
ではない場合には、ステップS158へ進み、パケットの終
わりまでのデータをサーバ用バッファ7からLBR用バッ
ファ8へコピーする。ビデオパケット以外のパケットと
しては、オーディオパケットがあり、このオーディオパ
ケットがLBR用バッファ8にコピーされる。
次に、次のデータがパックヘッダであるかを調べ(ス
テップS159)、パックヘッダである場合には、そのパッ
クヘッダをサーバ用バッファ7からLBR用バッファ8へ
コピーする。バックヘッダでない場合には、ステップS1
61へ進む。
ステップS159若しくはステップS160が終了すると、次
のデータがシステムヘッダであるかが調べられる(ステ
ップS161)。システムヘッダである場合には、当該シス
テムヘッダをサーバ用バッファ7からLBR用バッファ8
へコピーする(ステップS162)。システムヘッダでない
場合には、ステップS163へ進む。
ステップS161若しくはステップS162が終了すると、続
くデータがビデオパケットであるかを調べ(ステップS1
63)、ビデオパケットである場合には、ピクチャチェッ
クを行う(ステップS165)。このピクチャチェックは、
上述ステップS157と同様の処理である。一方、ビデオパ
ケットではない場合には、パケットの終わりまでのデー
タをサーバ用バッファ7からLBR用バッファ8へコピー
する(ステップS164)。
ステップS164若しくはステップS165が終了すると、サ
ーバ用バッファ7内にあるMPEGデータの終わりまでにつ
いて、上述の処理が終了したかが調べられ(ステップS1
66)、サーバ用バッファ7内にあるMPEGデータの終わり
まで処理が終了していない場合には、ステップS159へ進
み、ステップS159〜ステップS165までの処理を繰り返
す。
一方、サーバ用バッファ7内にあるMPEGデータの終わ
りまで処理が終了した場合には、LBR用バッファ8にLBR
ヘッダをLBR用バッファの先頭、すなわちパケットの先
頭に書き込む(ステップS167)。LBRヘッダは、MPEGデ
ータとLBRデータの区別をするためのヘッダである。こ
のとき、I、P、若しくはBピクチャの取り出しの際
(ピクチャチェックS155、S165の際)にパケットのサイ
ズの変更が発生した場合は、LBR用バッファに書き出さ
れたパケットの長さに基づいて、パケットのヘッダ部に
あるパケット長の変更を行う。ステップS167が終了する
と、LBR処理(ステップS147)が終了する(ステップS16
8)。
LBR処理については以上のような動作を行う。
2.2.3 ピクチャチェック処理 次に、上述ステップS157、及びステップS165で説明し
たピクチャチェック処理について、第12図〜第15図を用
いて詳細に説明する。
第12図は、3種類のピクチャチェック処理を表してお
り、それぞれのピクチャチェック処理の詳細について
は、第13図〜第15図でそれぞれ説明する。
まず、最初に上述第4図のステップS112やMPEGデータ
のOPEN時にサーバ側に通知された間引き間隔に基づき、
I,P及びBピクチャを取り出すか否かを判断する(ステ
ップS171)。取り出すと判断されたときは、IPBピクチ
ャチェック処理(ステップS172)を行なった後、ピクチ
ャチェック処理を終了する。取り出さないと判断された
ときは、I及びPピクチャの取り出しを行うかを判断す
る(ステップS173)。取り出すと判断されたときは、IP
ピクチャチェック処理(ステップS174)を行なった後、
ピクチャチェック処理を終了する。取り出さないと判断
されたときは、Iピクチャの取り出しを行うかを判断す
る(ステップS175)。取り出しを行うと判断されたとき
は、Iピクチャチェック処理(ステップS176)を行った
後、ピクチャチェック処理を終了する。行わないと判断
されたときは、ピクチャチェック処理を終了する。
Iピクチャチェック処理(ステップS176)Iピクチャ
チェック処理とは、MPEGデータ中からIピクチャの一部
又は全部を抽出し、Pピクチャ及びBピクチャを削除し
たデータを生成する処理である。
以下に、第13図を用いて詳細に説明する。
まず、最初にpts、dts、Iピクチャフラグをチェック
する(ステップS181)。Iピクチャフラグとは、現在ポ
インタが指しているデータが、Iピクチャのデータ中に
あるか否かを示すフラグであり、ONのときはIピクチャ
中、OFFのときはIピクチャ中ではないことを表す。こ
こで、ポインタとは、周知の技術であるファイルポイン
タのことであり、サーバ用バッファ7に格納されている
MPEGデータにアクセスするために用いられる。
次に、サーバー用バッファ7のデータ中、現在、ポイ
ンタが示している位置はIピクチャ中であるか、すなわ
ち、IピクチャフラグがONか否かを判断し(ステップS1
82)、Iピクチャ中である場合には、ポインタが示して
いる位置からパケットの終わりまでのデータを、サーバ
ー用バッファ7からLBRバッファ8へコピーして(ステ
ップS190)、Iピクチャチェック処理(ステップS176)
を終了する(ステップS191)。
一方、Iピクチャ中でない場合には、現在ポインタが
示している位置からパケットの終わり方向に向けてIピ
クチャの先頭があるかを検索する(ステップS183)。I
ピクチャの先頭が見つからなかった場合には、Iピクチ
ャチェックを終了する(ステップS191)。
Iピクチャの先頭が見つかった場合には、間引き間隔
に基づいて見つかったピクチャを取り出すかを判断する
(ステップS184)。間引き間隔は、クライアント9より
通知された間隔である。例えば、第16図に示すように判
断する。第16図は、間引き間隔の間隔指定データに対す
るステップS184等の判断を示した表の一例である。指定
された間引き間隔の間隔指定データが「2」の場合、こ
のステップS184の1回目の実行であるときは、Yesと判
断してステップS185に進み、ピクチャを取り出す。ステ
ップS189等を通って再びこのステップS184に戻ってきた
場合、すなわち、2回目の実行である場合には、Noと判
断し、ステップS189に進み、ピクチャを取り出さない。
以下、同様に3回目はYeS、4回目はNoといったように
判断する。他の間引き間隔においても同様に第16図に示
したように判断する。
ステップS184でIピクチャを取り出す、すなわちYesと
判断された場合には、このステップS185に進み、Iピク
チャフラグをONにする。
次に、ポインタの位置からパケットの終わり方向に、
Iピクチャの終わりを検索する(ステップS186)。パケ
ットの終端まで終わりがなかった場合には、全てのデー
タがIピクチャであったと判断し、ステップS186の検索
前のポインタ位置からパケットの終端までのデータを、
サーバ用バッファ7からLBR用バッファ8へコピーし
(ステップS187)、Iピクチャチェック処理(ステップ
S176)を終了する(ステップS191)。
一方、ステップS186でIピクチャの終わりが見つかっ
た場合には、ステップS185でONにしたピクチャフラグを
OFFとし、ステップS186の検索前のポインタ位置から、
見つかったIピクチャの終わりまでのデータを、サーバ
用バッファ7からLBR用バッファ8へコピーする(ステ
ップS188)。
そして、パケットの終わりまでチェック処理が完了し
たかを調べる(ステップS189)。終わりまでチェック処
理が完了した場合には、Iピクチャチェック処理(ステ
ップS176)を終了する(ステップS191)。まだ、パケッ
トの終わりまでチェック処理が終了していない場合に
は、ステップS183に戻り、上述の処理を繰り返す(ステ
ップS189)。
なお、上述の処理において、サーバ用バッファ7から
LBR用バッファ8へデータをコピーした場合には、サー
バ用バッファ7内のパケットデータを指すポインタは、
コピーしたデータの分だけ進む。また、検索を行った場
合にも、検索を行った位置まで移動する。
IPピクチャチェック処理 IPピクチャチェック処理とは、MPEGデータ中からIピ
クチャ及びPピクチャの一部又は全部を抽出し、Bピク
チャを削除したデータを生成する処理である。
以下に、第14図を用いて詳細に説明する。IPピクチャチ
ェックは、抽出するデータの対象が、Iピクチャ及びP
ピクチャである点を除いて、基本的に第13図に示したI
ピクチャチェック処理(ステップS176)と同様である。
まず、最初にpts、dts、Iピクチャフラグ、及びPピ
クチャフラグをチェックする(ステップS201)。Pピク
チャフラグとは、現在ポインタが指しているデータが、
Pピクチャのデータ中にあるか否かを示すフラグであ
り、ONのときはPピクチャ中、OFFのときはPピクチャ
中ではないことを表す。
次に、サーバー用バッファ7のデータ中、現在、ポイ
ンタが示している位置はI若しくはPピクチャ中である
か、すなわち、I若しくはPピクチャフラグがONか否か
を判断し(ステップS202)、I若しくはPピクチャ中で
ある場合には、ポインタが示している位置からパケット
の終わりまでのデータを、サーバー用バッファ7からLB
R用バッファ8へコピーして(ステップS210)、IPピク
チャチェック処理(ステップS174)を終了する(ステッ
プS211)。
一方、I若しくはPピクチャ中でない場合には、現在
位置からパケットの終わり方向に向けてI若しくはPピ
クチャの先頭があるかを検索する(ステップS203)。I
若しくはPピクチャの先頭が見つからなかった場合に
は、IPピクチャチェックを終了する(ステップS211)。
I若しくはPピクチャの先頭が見つかった場合には、
間引き間隔に基づいて見つかったピクチャを取り出すか
を判断する(ステップS204)。間引き間隔は、クライア
ント3よりIピクチャ、Pピクチャのそれぞれについて
通知された間隔である。例えば、第16図に示すように判
断する。ステップS203でIピクチャの先頭が見つかった
場合には、Iピクチャについて指定された間引き間隔
で、第16図に示したような判断を行う。一方、ステップ
S203でPピクチャの先頭が見つかった場合には、Pピク
チャについて指定された間引き間隔で、第16図に示した
ような判断を行う。
ステップS204でピクチャを取り出す、すなわちYesと
判断された場合には、このステップS205に進み、ステッ
プS203で見つかったピクチャの先頭に対応して、Iピク
チャフラグ又はPピクチャフラグをONにする。
次に、ポインタの位置からパケットの終わり方向に、
I若しくはPピクチャの終わりを検索する(ステップS2
06)。パケットの終端まで終わりがなかった場合には、
全てのデータがI若しくはPピクチャであったと判断
し、ステップS206の検索前のポインタ位置からパケット
の終端までのデータを、サーバ用バッファ7からLBR用
バッファ8へコピーし(ステップS207)、IPピクチャチ
ェック処理(ステップS174)を終了する(ステップS21
1)。
一方、ステップS206でI若しくはPピクチャの終わり
が見つかった場合には、ステップS205でONにしたピクチ
ャフラグをOFFとし、ステップS206の検索前のポインタ
位置から、見つかったI若しくはPピクチャの終わりま
でのデータを、サーバ用バッファ7からLBR用バッファ
8へコピーする(ステップS208)。
そして、パケットの終わりまでチェック処理が完了した
かを調べる(ステップS209)。終わりまでチェック処理
が完了した場合には、IPピクチャチェック処理(ステッ
プS174)を終了する(ステップS211)。まだ、パケット
の終わりまでチェック処理が終了していない場合には、
ステップS203に戻り、上述の処理を繰り返す(ステップ
S209)。
なお、上述の処理において、サーバ用バッファ7から
LBR用バッファ8へデータをコピーした場合には、サー
バ用バッファ7内のパケットデータを指すポインタは、
コピーしたデータの分だけ進む。また、検索を行った場
合にも、検索を行った位置まで移動する。
IPBピクチャチェック処理 IPBピクチャチェック処理とは、MPEGデータ中からI
ピクチャ、Pピクチャ、及び、Bピクチャの一部又は全
部を抽出したデータを生成する処理である。
以下に、第15図を用いて詳細に説明する。IPBピクチャ
チェックは、抽出するデータの対象が、Iピクチャ、P
ピクチャ、及びBピクチャである点を除いて、基本的に
第13図に示したIピクチャチェック処理(ステップS17
6)と同様である。
まず、最初にpts、dts、Iピクチャフラグ、Pピクチャ
フラグ、及びBピクチャフラグをチェックする(ステッ
プS221)。Bピクチャフラグとは、現在ポインタが指し
ているデータが、Bピクチャのデータ中にあるか否かを
示すフラグであり、ONのときはBピクチャ中、OFFのと
きはBピクチャ中ではないことを表す。
次に、サーバー用バッファ7のデータ中、現在、ポイン
タが示している位置はI、P若しくはBピクチャ中であ
るか、すなわち、I、P、若しくはBピクチャフラグが
ONか否かを判断し(ステップS222)、I、P、若しくは
Bピクチャ中である場合には、ポインタが示している位
置からパケットの終わりまでのデータを、サーバー用バ
ッファ7からLBR用バッファ8へコピーして(ステップS
230)、IPBピクチャチェック処理(ステップS172)を終
了する(ステップS231)。
一方、I、P、若しくはBピクチャ中でない場合に
は、現在位置からパケットの終わり方向に向けてI、
P、若しくはBピクチャの先頭があるかを検索する(ス
テップS223)。I、P、若しくはBピクチャの先頭が見
つからなかった場合には、IPBピクチャチェックを終了
する(ステップS231)。
I、P、若しくはBピクチャの先頭が見つかった場合
には、間引き間隔に基づいて見つかったピクチャを取り
出すかを判断する(ステップS224)。間引き間隔は、ク
ライアント3よりIピクチャ、Pピクチャ、Bピクチャ
のそれぞれについて通知された間隔である。例えば、第
16図に示すように判断する。ステップS223でIピクチャ
の先頭が見つかった場合には、Iピクチャについて指定
された間引き間隔で、第16図に示したような判断を行
う。一方、ステップS223でPピクチャの先頭が見つかっ
た場合には、Pピクチャについて指定された間引き間隔
で、Bピクチャの先頭が見つかった場合には、Bピクチ
ャについて指定された間引き間隔で第16図に示したよう
な判断を行う。
ステップS224でピクチャを取り出す、すなわちYesと
判断された場合には、このステップS225に進み、ステッ
プS223で見つかったピクチャの先頭に対応して、I、
P、又はBピクチャフラグをONにする。
次に、ポインタの位置からパケットの終わり方向に、
1、P、若しくはBピクチャの終わりを検索する(ステ
ップS226)。パケットの終端まで終わりがなかった場合
には、全てのデータがI、P、若しくはBピクチャであ
ったと判断し、ステップS226の検索前のポインタ位置か
らパケットの終端までのデータを、サーバ用バッファ7
からLBR用バッファ8へコピーし(ステップS227)、TPB
ピクチャチェック処理(ステップS172)を終了する(ス
テップS231)。
一方、ステップS226で、I、P、若しくはBピクチャ
の終わりが見つかった場合には、ステップS225でONにし
たピクチャフラグをOFFとし、ステップS226の検索前の
ポインタ位置から、見つかったI、P、若しくはBピク
チャの終わりまでのデータを、サーバ用バッファ7から
LBR用バッファ8へコピーする(ステップS228)。
そして、パケットの終わりまでチェック処理が完了し
たかを調べる(ステップS229)。終わりまでチェック処
理が完了した場合には、IPBピクチャチェック処理(ス
テップS172)を終了する(ステップS231)。まだ、パケ
ットの終わりまでチェック処理が終了していない場合に
は、ステップS223に戻り、上述の処理を繰り返す(ステ
ップS229)。
なお、上述の処理において、サーバ用バッファ7から
LBR用バッファ8へデータをコピーした場合には、サー
バ用バッファ7内のパケットデータを指すポインタは、
コピーしたデータの分だけ進む。また、検索を行った場
合にも、検索を行った位置まで移動する。
この実施例1によれば、第20図に示されるように、ネ
ットワーク4やCPUの負荷状態に応じて、高品質なフル
データの送受信(ステップS271〜ステップS273)、デー
タ量の少ないLBRデータの送受信(ステップS274〜ステ
ップS277)が切り替わるため、厳しい負荷状態において
も、リアルタイムにMPEGデータを配信することができ
る。特に、MPEGデータを間引いて、所定間隔のフレーム
データを送信しているため、ある時期のフルデータは集
中して再生され、ネットワーク負荷が高くビデオデータ
を送信できないために、MPEGデータの送信がビデオの再
生時刻に間に合わない結果、その他の時期のMPEGデータ
は再生されないという現象を抑制することができる。
また、クライアント9の負荷が高くビデオ再生に十分
なCPU時間を割り当てることができない場合には、フル
データを送信してもフレーム落ちが発生してしまう。こ
の実施例によれば、ビデオ再生装置のCPU負荷を測定
し、CPU負荷に応じたLBR処理を行っているため、上述の
ような場合には、データ量を減少させたLBRデータを送
信し、ネットワーク負荷を軽減することができる。
実施例1ではビデオデータとしてMPEGデータを例として
上げ説明したが、フレーム内圧縮フレームとフレーム間
圧縮フレームを持つビデオデータであれば、他のビデオ
データであっても、フレーム間圧縮フレームまたはフレ
ーム内圧縮フレームとフレーム間圧縮フレームを適切に
間引くことによってLBR化をおこない転送するデータ量
を調節することができる。
ここで、フレーム内圧縮フレームのデータとは、自己
のフレーム内のデータに基づいて、圧縮されたフレーム
データであり、フレーム間圧縮フレームのデータとは、
他のフレームとの差分に基づいて、圧縮されたフレーム
データである。
実施例2. 第1図に本発明の実施例2におけるシステム構成を示
す。第21図はビデオサーバ5およびクライアント9のMP
EGデータ、LBRデータの配信/再生部分のS/W構成を示し
たものである。第21図において、第2図と同一の符号は
同一又は相当の部分を表しており、ネットワーク負荷測
定部18、CPU負荷測定部19がクライアントプログラム13
ではなく、サーバプログラム11にある。
この実施例2は、サーバ主導型で動作するシステムで
ある。サーバ主導型とは、クライアント9からのデータ
転送要求に従って、ビデオサーバ5でフルデータ若しく
はLBRデータをリアルタイムに生成し配信し、第22図に
あるように、クライアント9からのデータ転送要求をト
リガーとして配信を開始し、その後ビデオサーバ5がネ
ットワーク負荷測定部18やCPU負荷測定部19からの情報
を考慮し、ビデオサーバ5側で適切な量のデータをクラ
イアントに配信し続けるものである。クライアント9は
送られてきたデータの受け取りと再生を行う。なお途中
で、サーバ主導型からクライアント主導型に切り替える
ことも可能である。
この実施例2のシステムは以上のような構成であり、
フルデータ若しくはLBRデータ配信/再生を第24図のサ
ーバプログラム、第23図のクライアントプログラムの処
理フローチャートに基づき、以下に詳細に説明する。な
お、第23図において、第4図と同一の符号は同一又は相
当の部分を表し、第24図において、第10図と同一の符号
は同一又は相当の部分を表す。
第23図及び第24図の処理フローチャートにおいて、ま
ずMPEGデータ再生アプリケーション14がデータ転送要求
を送信する(第23図ステップS114)。この要求はクライ
アントプログラム13からネットワーク4を経てサーバプ
ログラム11に渡される。
サーバプログラム11ではプログラム起動時にネットワ
ーク負荷測定部18およびCPU負荷測定処理部19を独立の
プロセスで起動しており、ネットワーク負荷及びCPU負
荷を常時測定している。
LBR開始要求を受け取った(第24図ステップS141、S14
2)サーバプログラム11はLBRデータ生成のためにディス
ク装置6からサーバ用バッファ7へMPEGデータの読み込
みを行う(ステップS145)。
次に、サーバプログラム11は、ネットワーク負荷測定
部18及びCPU負荷測定部19が測定した、ネットワーク負
荷及びCPU負荷に基づき、LBRモードを決定する。
この決定方法は、実施例1で示した方法と同様であ
る。
続いて、ステップS300の決定結果に基づき、LBR処理
を行かを判断し(ステップS146)、行う場合にはステッ
プS147でLBR処理を行う。このLBR処理は、実施例1と同
様な方法で行う。
そして、サーバプログラム11はフルデータ若しくはLB
R用バッファ8に生成されたLBRデータをクライアントプ
ログラム13に配信する(ステップS148若しくはステップ
S149)。
次に、クライアント9からデータ転送要求で指定され
たMPEGデータのファイル終端(EOF)まで、送信が終了
したかが判断される(ステップS301)。送信が終了した
場合には、ステップS141に戻り、次のクライアント9か
らの要求待ち処理を行う。ファイル終端までの送信が終
了していない場合には、ステップS145に戻り、 次のMPEGデータの送信処理を行う。
この実施例2のサーバプログラム11では以上のことを
繰り返し行うことによって、LBRデータの配信をし続け
る。一方クライアントプログラム13は送られてきたLBR
データを受け取り(第23図ステップS115)、これをクラ
イアント用バッファ10に格納し(ステップS116)、MPEG
データ再生アプリケーション14が要求したサイズ分のフ
ルデータ若しくはLBRデータを、MPEGデータ再生アプリ
ケーションに渡す(ステップS119)。MPEGデータ再生ア
プリケーション14はこのデータの再生を行う。
以上のことを繰り返してMPEGデータの再生が行われ
る。
この実施例2においても、ネットワーク負荷、CPU負
荷の状態に応じて、転送するMPEGデータの量を自動的に
調整して配信するため、ビデオデータをリアルタイムに
再生することができる。
なお、この実施例2ではビデオデータとしてMPEGデー
タを例として上げ説明したが、フレーム内圧縮フレーム
とフレーム間圧縮フレームを持つビデオデータであれ
ば、他のビデオデータであっても、フレーム間圧縮フレ
ームまたはフレーム内圧縮フレームとフレーム間圧縮フ
レームを適切に間引くことによってLBR化をおこない転
送するデータ量を調節することができる。
実施例3. 第25図に本発明の実施例3におけるシステム構成を示
す。
第25図において、第1図と同一の符号は同一又は相当
の部分を表している。15はビデオカメラ、16はビデオカ
メラ15からのビデオ信号を入力し、リアルタイムにMPEG
データにエンコードするためのリアルタイムエンコー
ダ、17はリアルタイムエンコーダがエンコードしたMPEG
データを記憶するリアルタイムデータ用バッファであ
る。
また、図示していないが、ビデオサーバ5は、マルチ
キャスト時のMPEGデータの途中再生に使用するMPEGデー
タの各種パラメータ、例えば、フレームレート等を格納
しておくパラメータ記憶バッファを有している。
第2図は本実施例のビデオサーバ5およびクライアント
9のLBRデータの配信/再生部分のS/W構成を示してい
る。
本実施例ではリアルタイムでエンコードされたMPEGデ
ータをビデオサーバ5上でリアルタイムにLBR処理を行
って生成するLBRデータ、または実施例1記載のディス
ク装置6に格納されている通常のMPEGデータから生成す
るLBRデータをマルチキャストで各クライアント9に配
信するものである(以下マルチキャストLBR配信とい
う)。ここで、この実施例3では実施例1と同様にクラ
イアント主導型で動作する。なおクライアント主導型か
ら実施例2記載のサーバ主導型に切り替えることも可能
である。
本実施例のシステムは以上のような構成であり、以下
第26図のシーケンス図、第27図のサーバプログラム、お
よび第28図のクライアントプログラムの処理フローチャ
ートに基づき詳細に説明する。第27図において、第10図
と同一の符号は同一又は相当の部分を表し、第28図にお
いて、第4と同一の符号は同一又は相当の部分を表す。
第26図はデータ転送のマルチキャストモードによる配信
を説明するシーケンス図であり、ビデオサーバ5が2つ
のクライアント9に同時にデータ転送を行う場合を示し
ている。
まず、最初にクライアント9側の動作について説明す
る。MPEG再生アプリケーション14がマルチキャストモー
ドを指定してOPEN要求を行う。このOPEN要求を受け取っ
たクライアントプログラム13は、ネットワーク4を介し
て、ビデオサーバ5へマルチキャストグループ参加要求
を送信する(第28図ステップS107、第26図ステップS32
0)。このマルチキャストグループ参加要求は実施例1
のOPEN要求の役割及びマルチキャストグループへの参加
を要求する役割を持つ要求である。次に、クライアント
プログラム13は、ステップS108〜ステップS113までの処
理を行い、MPEG再生アプリケーション14による指示に基
づき、データ転送要求若しくはリアルタイムデータ転送
要求のいずれかを送信する(第28図ステップS114、第26
図ステップS321)。
以降、実施例1と同様に動作して、ビデオサーバ5か
ら送信されたMPEGデータを再生する。
次に、第27図を用いてビデオサーバ5側の動作につい
て説明する。
ステップS141で、クライアント9からの要求を受け取
ったサーバプログラム11は、受け取った要求が、データ
転送要求若しくはリアルタイムデータ転送要求であるか
を判断する(ステップS310)。
データ転送要求若しくはリアルタイムデータ転送要求
ではない場合には、受け取った要求がマルチキャストグ
ループ参加要求であるか否かを判断する(第27図ステッ
プS311)。マルチキャストグループ参加要求であるとき
には、サーバプログラム11は、マルチキャストグループ
参加要求を送信したクライアント9を、マルチキャスト
グループへ登録し(ステップS312)、登録されたマルチ
キャストグループのIDの情報を含むリプライを返す(ス
テップS144)。マルチキャストグループ参加要求ではな
い場合には、ステップS143に進み、実施例1で説明した
通りの処理を行う。
一方、ステップS310で、受け取った要求が、データ転
送要求若しくはリアルタイムデータ転送要求であると判
断された場合には、受け取った要求が最初のリアルタイ
ムデータ転送要求であるかが判断される(ステップS31
3)、最初のリアルタイムデータ転送要求である場合に
は、リアルタイムエンコーダ16に開始要求を出力し(ス
テップS314)、この開始要求を受け取ったリアルタイム
エンコーダ16がビデオカメラ15から受け取ったビデオ信
号のエンコードを開始する。すなわち、リアルタイムエ
ンコーダ16はビデオカメラ15で撮影しているビデオを入
力し、リアルタイムにMPEGデータにエンコードし、MPEG
データをディスク装置6に書き出すと同時に、リアルタ
イム用データバッファ7にも書き出す。ここでディスク
装置6に書き出されたMPEGデータを使用したマルチキャ
ストも可能である。リアルタイムエンコーダ16は以後、
サーバプログラム11からの停止要求があるまで、リアル
タイムエンコードを行い続ける。
次にサーバプログラム11はリアルタイムエンコード開
始要求を出した直後にリアルタイムエンコーダ16から送
られてきたMPEGデータをパラメータ記憶バッファに格納
しておく。このバッファはマルチキャスト配信中に接続
してくるクライアントがMPEGデータの途中から生成でき
るようにする為に各種MPEGデータのパラメータ、例えば
フレームレート等、を格納する為に使用するものであ
る。
次に、サーバ用バッファ7にMPEGデータを読み込む
(ステップS315)。このMPEGデータの読み込みは、デー
タ転送要求か、リアルタイムデータ転送要求かによって
MPEGデータの読み込み元が異なり、データ転送要求であ
る場合には、第10図のステップS145でも説明したように
ディスク装置6から読み込む。リアルタイムデータ転送
要求の場合には、リアルタイムデータ用バッファ17から
MPEGデータを読み込む。リアルタイムデータ用バッファ
17からMPEGデータを読み込む処理は、読み込み元が異な
る点を除いて、第10図のステップS145で説明した処理と
同様である。
次に、ステップS146〜ステップS149の処理を実施例1
と同様に行い、クライアント9へMPEGデータを配信す
る。ただし、MPEGデータの配信は、ステップS311で登録
されたマルチキャストグループに登録されたクライアン
ト9全部に、マルチキャストで送信される。具体的に
は、データ転送のパケットの出力先に、マルチキャスト
グループのIDを指定して、パケットを送信することによ
って行う。各クライアントは、ステップS144で送信され
たリプライを受け取っており、このリプライに指定され
た自己のマルチキャストグループのIDと、ネットワーク
4上に送信されたIDとが一致するか否かを判定して、一
致した場合には、そのパケットを受け取る。
以上のような処理を行うことによって、複数のクライ
アント9が同時にビデオデータの配信を受け取ることが
できる。この場合には、1回の配信で、複数のクライア
ント9にビデオデータを供給できるので、ネットワーク
負荷が少ないという効果がある。
第26図は、マルチキャストによるビデオデータの配信
を説明するシーケンス図である。
まず、最初にクライアント9の1つであるクライアン
トAが、マルチキャストグループ参加要求を送信する
(ステップS320)。このグループ参加要求を受け取った
ビデオサーバ5は、クライアントAについて、上述のよ
うにマルチキャストグループへの登録を行う。続いて、
クライアントAは、データ転送要求を出力し(ステップ
S321)、ビデオサーバ5よりビデオデータを受け取る
(ステップS322)。このときクライアントBはまだマル
チキャストグループに参加していないのでこのデータを
受け取ることはできない。なお、ここでは、データ転送
要求を出力しているが、リアルタイムデータ転送要求も
同様に送信される。続いて、MPEG再生アプリケーション
14からのデータ転送要求があり、かつクライアント用バ
ッファ10に十分な空き容量ができると、再びデータ転送
要求を出力する(ステップS323)。
次に、クライアント9の1つであるクライアントB
が、マルチキャストグループ参加要求を送信すると(ス
テップS327)、ビデオサーバ5は、クライアントBをマ
ルチキャストグループに登録し、マルチキャストグルー
プのID情報を有するリプライを返送する。
以降、クライアントA若しくはクライアントBからデ
ータ転送要求が出力され(ステップS330等)、このデー
タ転送要求に対応して、ビデオサーバ5がビデオデータ
を配信する(ステップS329等)という処理が繰り返され
る。ここで配信されたビデオデータは、クライアントA
及びクライアントBによって受信され、クライアントA
及びクライアントBでビデオデータが再生される。MPEG
再生アプリケーション14若しくはクライアントプログラ
ム13は、クライアント用バッファ10に所定量のMPEGデー
タが残っている場合にはデータ転送要求を出力しないの
で、どのクライアント9によってデータ転送要求が送信
されるかは、それぞれのクライアント用バッファ10に記
憶されているMPEGデータの量によって決定され、このデ
ータ量が最先に所定量以下になったクライアント9がデ
ータ転送要求を送信する。
なお、この実施例3ではビデオデータとしてMPEGデー
タを例として上げ説明したが、フレーム内圧縮フレーム
とフレーム間圧縮フレームを持つビデオデータであれ
ば、他のビデオデータであっても、フレーム間圧縮フレ
ームまたはフレーム内圧縮フレームとフレーム間圧縮フ
レームを適切に間引くことによってLBR化をおこない転
送するデータ量を調節することができる。
実施例4. 第1図に本発明の実施例4におけるシステム構成を示
す。システム構成は実施例1と同じであるが、LBR用バ
ッファ8は早送り用バッファとして使用される。第2図
はビデオサーバ5及びクライアントプログラム9の早送
りデータの配信/再生部分のS/W構成を示したものであ
り、S/W構成は実施例1と同様であるが、LBR処理部12は
早送り処理部として使用される。
本実施例では実施例1と同様にクライアント主導型で
動作する。また本実施例における早送りデータは実施例
1のLBRデータと同様にIピクチャを取り出すことは同
じであり、LBRデータとの違いはオーディオパケットの
削除、パケット内のPTS、DTSの値を早送り再生用に変更
することである。
本実施例のシステムは以上のような構成であり、以下
早送り配信を第29図のサーバプログラム11、第30図のク
ライアントプログラム13の処理フローチャートに基づき
詳細に説明する。
第29図はビデオサーバ5の早送りデータの配信処理を
説明するフローチャートであり、第29図において、第10
図と同一の符号は同一又は相当の部分を表す。
第30図はクライアントプログラム13の処理を説明する
フローチャートであり、 第30図において、第4図と同一の符号は同一又は相当
の部分を表す。
第29図、第30図の処理フローチャートにおいて、まず
MPEGデータ再生アプリケーション14が早送り要求を行
う。この早送り要求は、早送り要求であることを示す識
別子と、ビデオデータを特定するデータとを含むパケッ
トを送信することによって行われる。早送り要求はビデ
オが再生中であっても停止状態であっても構わない。こ
の要求はクライアントプログラム13が受け取り(ステッ
プS101)、クライアントプログラム13がビデオサーバ5
へ送信する(ステップS350)。このときのビデオサーバ
5の動作については後述する。
ビデオサーバ5から早送りデータが送られてくると
(ステップS115)、そのデータをクライアント用バッフ
ァ10に格納し(ステップS116)、オフセットを計算し
(ステップS117)、クライアント用バッファ10に要求さ
れたサイズのデータが格納されるまでステップS350〜ス
テップS117の処理が繰り返される(ステップS118)。ク
ライアント用バッファ10に要求されたサイズのデータが
格納されると、MPEG再生アプリケーション14へ早送りデ
ータが渡される(ステップS119)。この早送りデータ
は、MPEGデータである。次に、同データ転送処理がクラ
イアントプログラム13とサーバプログラム11との間で繰
り返される。
同データ転送処理は、まず、MPEG再生アプリケーショ
ン14からの早送り要求を待ち(ステップS101)、クライ
アント用バッファ10に要求されたサイズのデータが格納
されると、MPEG再生アプリケーション14へ早送りデータ
が渡され(ステップS119)、オフセットの計算を行う
(ステップS117)、である。同データ転送処理内のステ
ップS119で送信されるデータは、既にMPEG再生アプリケ
ーション14へ送信された早送りデータと同じものであ
る。
クライアントプログラム13はクライアント用バッファ
10に格納された早送りデータを再生アプリケーション14
に渡すとき早送りデータ(1画面分)を1回(通常)だ
け渡してもよいし、同じデータを複数回渡してもよい。
複数回渡すことによって早送りの再生速度を変更でき
る。例えば2回連続して同じデータを渡した場合は1回
だけ渡した場合の再生速度に比べて1/2になる。また当
然ネットワークを流れるデータも1/2になる。このよう
にして渡された早送りデータは再生アプリケーション11
によって再生される。
次に、サーバプログラム11の動作について説明する。
ステップS341で早送り要求を受け取ったサーバプログ
ラム11は、早送りデータ生成のためにディスク装置6か
らサーバ用バッファ7へMPEGデータの読み込みを行う
(ステップS145)。次にこのMPEGデータについてLBR処
理を行い、実施例1と同様な方法で早送りデータを生成
する(ステップS147)。ただし、以下の手順が実施例1
のLBRデータ生成方法と異なる。
・ビデオパケット以外のパケットの取り出し処理 パケットがビデオパケット以外のものであった場合はパ
ケットを早送り用バッファ8に書き出さない。
・パケットの変更処理 パケット内のPTS、DTSの値を早送り再生用に変更する。
次にサーバプログラム11は早送り用バッファ8に生成さ
れた早送りデータをクライアント9に配信する(ステッ
プS148)。
サーバプログラム11では以上のことを繰り返し行うこと
によって、早送りデータの配信を行う。
特に、クライアントでビデオデータを早送り表示する
際には、ビデオデータの全てのフレームデータを送信せ
ずに、送信するフレームを間引いても表示上の支障がな
い。すなわち、通常再生時に1秒間30フレームで再生し
ていた場合には、2倍速再生を行う場合には、単純計算
で1秒間に60フレームの再生を行うこととなる。しかし
ながら、1秒間に30フレームのデータを表示しても、1
秒間に60フレームのデータを表示しても、人間の視覚特
性上、認識できる画質は差がないため、例えば、2倍速
再生においても1秒間30フレームの表示を行えばよい。
したがって、この場合には、ビデオデータ中の複数のフ
レームデータのうち、図32に示したように1フレームデ
ータおきにフレームデータを抽出し、送信すればよい。
このとき、ビデオサーバが送信するデータ量は少なくな
るため、ネットワークにかかる負担を軽減することがで
きる。早送り要求は、2倍速、5倍速といった早送り速
度に応じた送信レベル指定して行ってもよい。
以上のことを繰り返して早送りデータの配信/再生が
行われる。
なお実施例4ではビデオデータとしてMPEGデータで説
明したが、フレーム間圧縮で圧縮されたフレームを持つ
ビデオデータに応用して適用することは容易である。
以上のように、本発明によるビデオデータ配信装置に
よれば、ネットワーク又はビデオデータ配信装置の負荷
状態を測定する負荷測定部と、複数のフレームデータを
含むビデオデータから、上記負荷測定部の測定結果に応
じた数のフレームデータを抽出するデータ抽出部と、こ
のデータ抽出部が抽出したフレームデータを送信する送
信部と、を備えることとしたため、ビデオデータの表示
品質の劣化を抑止しつつ、ネットワーク負荷を軽減する
ことができる。
また、データ抽出部は、負荷測定部の測定結果に基づ
いて、負荷が低いときにはビデオデータの全てのフレー
ムデータを抽出し、負荷が高いときには、上記ビデオデ
ータの一部のフレームデータを抽出するため、ビデオデ
ータの表示品質の劣化を抑止しつつ、ネットワーク負荷
を軽減することができる。
また、データ抽出部は、ビデオデータ内の複数のフレ
ームデータ間のフレームデータを間引くことによって、
負荷測定部の測定結果に基づいた数のフレームデータを
抽出するため、ビデオデータの表示品質の劣化を抑止し
つつ、ネットワーク負荷を軽減することができる。
また、データ抽出部は、フレーム内圧縮フレームのデ
ータ及びフレーム間圧縮フレームのデータを有するビデ
オデータから、負荷測定部の測定結果に基づいて、フレ
ーム間圧縮フレームのデータを削除したビデオデータを
抽出し、送信部は、データ抽出部が抽出したビデオデー
タを送信するため、ビデオデータの表示品質の劣化を抑
止しつつ、ネットワーク負荷を軽減することができる。
また、ビデオデータは、MPEGデータであるため、リアル
タイムな再生が可能なMPEGデータを提供することができ
る。
また、データ抽出部は、Iピクチャ及びPピクチャを
有するMPEGデータから、負荷測定部の測定結果に応じ
て、Pピクチャを削除したMPEGデータを生成するため、
ビデオデータの量を少なくさせても画像の乱れの少ない
ビデオデータを提供することができる。
また、データ抽出部は、Iピクチャ及びBピクチャを
有するMPEGデータから、負荷測定部の測定結果に応じ
て、Bピクチャを削除したMPEGデータを生成するため、
リアルタイムな再生が可能なMPEGデータを提供すること
ができる。
また、データ抽出部は、Iピクチャ、Pピクチャ及び
Bピクチャを有するMPEGデータから、負荷測定部の測定
結果に応じて、Pピクチャ及びBピクチャを削除したMP
EGデータを生成するため、リアルタイムな再生が可能な
MPEGデータを提供することができる。
また、データ抽出部は、複数のIピクチャを有するMP
EGデータから、負荷測定部の測定結果に応じた間隔で複
数のIピクチャを抽出するため、リアルタイムな再生が
可能なMPEGデータを提供することができる。
また、ビデオカメラからの映像信号をリアルタイムに
エンコードし、複数のフレームデータを有するビデオデ
ータを生成するエンコーダと、このエンコーダが生成し
たビデオデータを一時的に記憶するバッファと、を備
え、データ抽出部は、上記バッファに記憶されたビデオ
データ内の複数のフレームデータ間のフレームデータを
間引くことによって、上記ビデオデータから負荷測定部
の測定結果に基づいた数のフレームデータを抽出するた
め、ビデオデータの表示品質の劣化を抑止しつつ、ネッ
トワーク負荷を軽減することができる。
また、この発明のビデオデータ配信システムによれ
ば、ビデオデータ配信システムの負荷状態を測定する負
荷測定部、複数のフレームデータを含むビデオデータか
ら、上記負荷測定部の測定結果に応じた数のフレームデ
ータを抽出するデータ抽出部と、このデータ抽出部が抽
出したフレームデータをネットワークを介して送信する
送信部と、を備えたビデオデータ配信装置、上記ネット
ワークから上記ビデオデータ配信装置の送信部から送信
されたフレームデータを受信するとともに、受信したフ
レームデータを再生するビデオデータ再生装置、を備え
るため、ビデオデータをリアルタイムに再生することが
できる。
また、負荷測定部は、ビデオデータ再生装置の動作を
制御するプロセッサの負荷を測定するため、使用されな
いフレームデータの送信を抑制し、送信するビデオデー
タの量をより少なくすることができる。
また、複数のビデオデータ再生装置がネットワークに
接続され、ビデオデータ配信装置の送信部から上記ネッ
トワーク上に送信された1つのフレームデータは、上記
複数のビデオデータ再生装置それぞれにおいて受信され
るため、一度に複数のビデオデータ再生装置へビデオデ
ータを送信することができ、ネットワークの負荷を軽く
することができる。
また、ビデオデータ再生装置は、データ量が指定され
たデータ転送要求を複数回ビデオデータ配信装置へ送信
し、ビデオデータ配信装置は、上記データ転送要求を受
信すると、このデータ転送要求に指定されたデータサイ
ズに基づいたフレームデータを送信するため、ビデオデ
ータ再生装置の指示に基づいて、ビデオデータをリアル
タイムに再生することができる。
また、ビデオデータ再生装置は、ビデオデータが指定
されたデータ転送要求を送信し、ビデオデータ配信装置
は、上記データ転送要求を受信すると、上記ビデオデー
タの一部のフレームデータを有するパケットを所定の間
隔で複数送信するため、ビデオデータをリアルタイムに
再生することができる。
また、この発明によるビデオデータ配信方法によれ
ば、ビデオデータ配信システムの負荷に応じた送信レベ
ルを決定する送信レベル決定ステップと、複数のフレー
ムデータを含むビデオデータから、上記送信レベル決定
ステップにより決定された送信レベルに応じた数のフレ
ームデータを抽出するデータ抽出ステップと、上記デー
タ抽出ステップにおいて抽出されたフレームデータを送
信する送信ステップと、を備えるため、リアルタイムな
ビデオデータの再生が可能になる。
また、送信レベル決定ステップは、ビデオデータ再生
装置で実行され、ビデオデータ再生装置の動作を制御す
るプロセッサの負荷を測定する負荷測定ステップと、こ
の負荷測定ステップの測定結果に対応した送信レベルを
決定する決定ステップと、この決定ステップによって決
定した送信レベルをビデオデータ再生装置からビデオデ
ータ配信装置へ送信する送信レベル送信ステップと、を
備えるため、リアルタイムなビデオデータの再生が可能
になる。
また、ビデオデータ再生装置が、送信ステップによっ
て送信されたフレームデータを受信し、受信したフレー
ムデータを再生する再生ステップを備えるため、リアル
タイムなビデオデータの再生が可能になる。
また、送信レベル決定ステップは、ビデオデータ再生
装置がビデオデータを早送り再生する場合には、ビデオ
データに含まれる複数のフレームデータから一部のフレ
ームデータを間引いたビデオデータが抽出されるように
送信レベルを決定し、早送り再生しない場合には、ビデ
オデータのフレームデータを間引かないように送信レベ
ルを決定するため、ネットワーク負荷をより少なくする
ことができる。
また、データ抽出ステップは、ビデオデータ再生装置
が複数のフレームデータ及び音声データを含むビデオデ
ータを早送り再生する場合には、ビデオデータから上記
音声データを削除し、送信レベルに応じた数のフレーム
データを抽出したビデオデータを生成し、送信ステップ
は、上記データ抽出ステップが生成したビデオデータを
送信するため、ネットワーク負荷をより少なくすること
ができる。
産業上の利用可能性 以上のように、本発明にかかるビデオデータ配信装
置、ビデオデータ配信システム、並びに、そのビデオデ
ータ配信方法は、例えば、多量のビデオデータを配信す
るビデオデータ配信システムにおいて用いられるのに適
している。
フロントページの続き (56)参考文献 特開 平1−174182(JP,A) 特開 平9−23422(JP,A) 特開 平5−122681(JP,A) 特開 平8−289288(JP,A) 特開 平8−237657(JP,A) 特開 平7−288806(JP,A) 特開 平8−191451(JP,A) 特開 平7−327214(JP,A) 特開 平8−331560(JP,A) 特開 平7−23353(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04N 7/00 - 7/68

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】ビデオ再生装置のプロセッサの負荷に応じ
    た送信レベルを決定する送信レベル決定ステップと、 複数のフレームデータを含むビデオデータから、上記送
    信レベル決定ステップにより決定された送信レベルに応
    じた数のフレームデータを抽出するデータ抽出ステップ
    と、 上記データ抽出ステップにおいて抽出されたフレームデ
    ータを送信する送信ステップと、 を備え、上記送信レベル決定ステップは、上記ビデオデ
    ータ再生装置で実行され、上記ビデオデータ再生装置の
    動作を制御する上記プロセッサの負荷を測定する負荷測
    定ステップと 、この負荷測定ステップの測定結果に対応した送信レベ
    ルを決定する決定ステップと、この決定ステップによっ
    て決定した送信レベルを上記ビデオデータ再生装置から
    ビデオデータ配信装置へ送信する送信レベル送信ステッ
    プと、を備え、 上記送信レベル決定ステップは、上記ビデオデータ再生
    装置がビデオデータを早送り再生する場合には、上記ビ
    デオデータに含まれる複数のフレームデータから一部の
    フレームデータを間引いたビデオデータが抽出されるよ
    うに送信レベルを決定し、早送り再生しない場合には、
    上記ビデオデータのフレームデータを間引かないように
    送信レベルを決定することを特徴とするビデオデータ配
    信方法。
  2. 【請求項2】ビデオ再生装置のプロセッサの負荷に応じ
    た送信レベルを決定する送信レベル決定ステップと、 複数のフレームデータを含むビデオデータから、上記送
    信レベル決定ステップにより決定された送信レベルに応
    じた数のフレームデータを抽出するデータ抽出ステップ
    と、 上記データ抽出ステップにおいて抽出されたフレームデ
    ータを送信する送信ステップと、 備え、上記送信レベル決定ステップは、上記ビデオデー
    タ再生装置で実行され、上記ビデオデータ再生装置の動
    作を制御する上記プロセッサの負荷を測定する負荷測定
    ステップと 、この負荷測定ステップの測定結果に対応した送信レベ
    ルを決定する決定ステップと、この決定ステップによっ
    て決定した送信レベルを上記ビデオデータ再生装置から
    ビデオデータ配信装置へ送信する送信レベル送信ステッ
    プと、を備え、 上記データ抽出ステップは、上記ビデオデータ再生装置
    が複数のフレームデータ及び音声データを含むビデオデ
    ータを早送り再生する場合には、上記ビデオデータから
    上記音声データを削除し、上記送信レベルに応じた数の
    フレームデータを抽出したビデオデータを生成し、 上記送信ステップは、上記データ抽出ステップが生成し
    たビデオデータを送信することを特徴とするビデオデー
    タ配信方法。
JP53748798A 1997-02-26 1997-02-26 ビデオデータ配信方法、ビデオデータ配信システム、並びに、そのビデオデータ配信方法 Expired - Fee Related JP3393143B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1997/000562 WO1998038798A1 (en) 1997-02-26 1997-02-26 Device, system, and method for distributing video data

Publications (1)

Publication Number Publication Date
JP3393143B2 true JP3393143B2 (ja) 2003-04-07

Family

ID=14180110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53748798A Expired - Fee Related JP3393143B2 (ja) 1997-02-26 1997-02-26 ビデオデータ配信方法、ビデオデータ配信システム、並びに、そのビデオデータ配信方法

Country Status (3)

Country Link
EP (1) EP0901285A4 (ja)
JP (1) JP3393143B2 (ja)
WO (1) WO1998038798A1 (ja)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4389323B2 (ja) * 2000-02-29 2009-12-24 ソニー株式会社 シーン記述変換装置及び方法
US20020107988A1 (en) * 2001-02-05 2002-08-08 James Jordan In-line compression system for low-bandwidth client-server data link
US7602847B1 (en) 2001-03-27 2009-10-13 Vixs Systems, Inc. Device and method for compression of a video stream
US8107524B2 (en) * 2001-03-30 2012-01-31 Vixs Systems, Inc. Adaptive bandwidth footprint matching for multiple compressed video streams in a fixed bandwidth network
US6959348B1 (en) 2001-07-30 2005-10-25 Vixs Systems, Inc. Method and system for accessing data
US7675972B1 (en) 2001-07-30 2010-03-09 Vixs Systems, Inc. System and method for multiple channel video transcoding
US7139330B1 (en) 2001-10-31 2006-11-21 Vixs Systems, Inc. System for signal mixing and method thereof
US7596127B1 (en) 2001-10-31 2009-09-29 Vixs Systems, Inc. System for allocating data in a communications system and method thereof
US7106715B1 (en) 2001-11-16 2006-09-12 Vixs Systems, Inc. System for providing data to multiple devices and method thereof
US7403564B2 (en) 2001-11-21 2008-07-22 Vixs Systems, Inc. System and method for multiple channel video transcoding
US7356079B2 (en) 2001-11-21 2008-04-08 Vixs Systems Inc. Method and system for rate control during video transcoding
US7165180B1 (en) 2001-11-27 2007-01-16 Vixs Systems, Inc. Monolithic semiconductor device for preventing external access to an encryption key
US20030135863A1 (en) * 2002-01-17 2003-07-17 Koninklijke Philips Electronics N.V. Targeted scalable multicast based on client bandwidth or capability
US7310679B1 (en) 2002-04-29 2007-12-18 Vixs Systems Inc. Method and system for transmitting video content while preventing other transmissions in a contention-based network
US7120253B2 (en) 2002-05-02 2006-10-10 Vixs Systems, Inc. Method and system for protecting video data
FR2839844A1 (fr) 2002-05-16 2003-11-21 Thomson Licensing Sa Decodeur numerique ayant un mode de fonctionnement dit "revisualisation" et comprenant deux memoires tampon
AU2003241772B2 (en) 2002-05-31 2008-11-06 Onkyo Corporation Network type content reproduction system
US7408989B2 (en) 2003-01-16 2008-08-05 Vix5 Systems Inc Method of video encoding using windows and system thereof
US7133452B1 (en) 2003-02-24 2006-11-07 Vixs Systems, Inc. Method and system for transcoding video data
US7327784B2 (en) 2003-02-24 2008-02-05 Vixs Systems, Inc. Method and system for transcoding video data
US7606305B1 (en) 2003-02-24 2009-10-20 Vixs Systems, Inc. Method and system for transcoding video data
US7130350B1 (en) 2003-02-28 2006-10-31 Vixs Systems, Inc. Method and system for encoding and decoding data in a video stream
EP1633161A4 (en) * 2003-06-11 2011-05-11 Nec Corp MEDIUM SIGNAL RECEPTION DEVICE, TRANSMITTER AND TRANSMIT / RECEIVER SYSTEM
US7739105B2 (en) 2003-06-13 2010-06-15 Vixs Systems, Inc. System and method for processing audio frames
GB2406014B (en) * 2003-09-10 2007-01-31 Thales Uk Plc Video system
US7668396B2 (en) 2003-09-29 2010-02-23 Vixs Systems, Inc. Method and system for noise reduction in an image
US7277101B2 (en) 2003-09-29 2007-10-02 Vixs Systems Inc Method and system for scaling images
JP4497885B2 (ja) * 2003-10-16 2010-07-07 三洋電機株式会社 信号処理装置
JP4114596B2 (ja) 2003-11-19 2008-07-09 オンキヨー株式会社 ネットワークavシステム
US7406598B2 (en) 2004-02-17 2008-07-29 Vixs Systems Inc. Method and system for secure content distribution
JP2005303927A (ja) * 2004-04-15 2005-10-27 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
JP4528022B2 (ja) * 2004-04-28 2010-08-18 株式会社日立製作所 映像配信方法およびシステム
US7571246B2 (en) * 2004-07-29 2009-08-04 Microsoft Corporation Media transrating over a bandwidth-limited network
JP3847764B2 (ja) * 2004-11-12 2006-11-22 オンキヨー株式会社 ネットワーク型コンテンツ再生システム
US7421048B2 (en) 2005-01-20 2008-09-02 Vixs Systems, Inc. System and method for multimedia delivery in a wireless environment
US7609766B2 (en) 2005-02-08 2009-10-27 Vixs Systems, Inc. System of intra-picture complexity preprocessing
US20090122875A1 (en) * 2005-03-07 2009-05-14 Koninklijke Philips Electronics, N.V. Buffering of video stream data
US8949920B2 (en) 2005-03-17 2015-02-03 Vixs Systems Inc. System and method for storage device emulation in a multimedia processing system
US7400869B2 (en) 2005-03-22 2008-07-15 Vixs Systems Inc. System and method for adaptive DC offset compensation in wireless transmissions
US7743183B2 (en) 2005-05-23 2010-06-22 Microsoft Corporation Flow control for media streaming
US7707485B2 (en) 2005-09-28 2010-04-27 Vixs Systems, Inc. System and method for dynamic transrating based on content
US8131995B2 (en) 2006-01-24 2012-03-06 Vixs Systems, Inc. Processing feature revocation and reinvocation
WO2008038757A1 (fr) 2006-09-29 2008-04-03 Sony Corporation Dispositif, procédé et programme de traitement d'informations
JP5034508B2 (ja) * 2007-01-16 2012-09-26 沖電気工業株式会社 コールセンタ装置
US8380790B2 (en) * 2008-12-15 2013-02-19 Microsoft Corporation Video conference rate matching
JP5538843B2 (ja) * 2009-12-03 2014-07-02 三菱電機株式会社 コンテンツ再生装置及び方法
US8947492B2 (en) 2010-06-18 2015-02-03 Microsoft Corporation Combining multiple bit rate and scalable video coding
CN108141565A (zh) * 2015-09-30 2018-06-08 索尼公司 信息处理设备及信息处理方法
US11240540B2 (en) * 2020-06-11 2022-02-01 Western Digital Technologies, Inc. Storage system and method for frame trimming to optimize network bandwidth

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02211787A (ja) * 1989-02-10 1990-08-23 Nec Corp ビデオテックス画像データ送信方式
JP3398916B2 (ja) * 1993-06-30 2003-04-21 キヤノン株式会社 端末装置およびその制御方法
JPH07327214A (ja) * 1994-06-01 1995-12-12 Canon Inc 動画像表示方法及び装置
US5754241A (en) * 1994-11-18 1998-05-19 Sanyo Electric Co., Ltd Video decoder capable of controlling encoded video data
JPH08191451A (ja) * 1995-01-10 1996-07-23 Canon Inc 動画像送信装置
JPH08331514A (ja) * 1995-05-31 1996-12-13 Nec Corp 動画像の早送り再生装置
JP3283159B2 (ja) * 1995-07-07 2002-05-20 日本電信電話株式会社 ソフトウェアによる画像符号化方法
US5659539A (en) * 1995-07-14 1997-08-19 Oracle Corporation Method and apparatus for frame accurate access of digital audio-visual information

Also Published As

Publication number Publication date
EP0901285A4 (en) 2002-05-29
EP0901285A1 (en) 1999-03-10
WO1998038798A1 (en) 1998-09-03

Similar Documents

Publication Publication Date Title
JP3393143B2 (ja) ビデオデータ配信方法、ビデオデータ配信システム、並びに、そのビデオデータ配信方法
WO2023024834A9 (zh) 一种游戏数据处理方法、装置及存储介质
KR102387161B1 (ko) 비디오 스크린 프로젝션 방법과 장치, 컴퓨터 장비, 및 저장 매체
JP4313268B2 (ja) ビデオをオン・デマンドでレンダリングするvcrに似た機能
JP3063859B2 (ja) マルチメディア・ファイルを配信する方法およびファイル・サーバ
US20090252176A1 (en) Gateway Device
US20060168291A1 (en) Interactive multichannel data distribution system
JP3523217B2 (ja) メディアデータプロセッサ
US11109092B2 (en) Synchronizing processing between streams
WO2008061416A1 (fr) Procédé et système permettant d'accepter des données media de divers formats de codage
JPWO2012096372A1 (ja) コンテンツ再生装置、コンテンツ再生方法、配信システム、コンテンツ再生プログラム、記録媒体、およびデータ構造
JP2005204278A (ja) 分散局のネットワークにおけるデータのセクションでの不連続伝送方法、この方法を実行するための要求電化製品としてのネットワーク加入者局、及び、この方法を実行するためのソース電化製品としてのネットワーク加入者局
JP2006314075A (ja) コンテンツ共有装置及びコンテンツ共有方法
CA2908718C (en) System and method for streaming a media file from a server to a client device
US8230468B2 (en) Dynamically creating trick files to hide latency in streaming networks
JP4294933B2 (ja) マルチメディアコンテンツ編集装置およびマルチメディアコンテンツ再生装置
JP2003111048A (ja) コンテンツ再生のためのサーバ及びプログラム
TW201138464A (en) Network device, information processing apparatus, stream switching method, information processing method, program, and content distribution system
JP3809813B2 (ja) コンテンツ配信方法およびこれを用いるコンテンツ配信システム
JP2004507958A (ja) ストリーミング制約の変更に基づく動的品質調整
JP2004040502A (ja) 情報再生装置、情報再生方法および情報再生システム
WO2010057391A1 (zh) 一种流媒体播放控制方法、设备及系统
JP2000083192A (ja) 番組制作・送出システム
WO2012094992A1 (zh) 一种实现数据获取的方法和系统
KR100478933B1 (ko) 대화형 방송 방법 및 그 시스템

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080124

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090124

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100124

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees