JP2003348102A - Server, and program for realizing information distribution method - Google Patents

Server, and program for realizing information distribution method

Info

Publication number
JP2003348102A
JP2003348102A JP2002149978A JP2002149978A JP2003348102A JP 2003348102 A JP2003348102 A JP 2003348102A JP 2002149978 A JP2002149978 A JP 2002149978A JP 2002149978 A JP2002149978 A JP 2002149978A JP 2003348102 A JP2003348102 A JP 2003348102A
Authority
JP
Japan
Prior art keywords
data
information
server
thread
client
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.)
Pending
Application number
JP2002149978A
Other languages
Japanese (ja)
Inventor
Muneaki Yamaguchi
宗明 山口
Junichi Kimura
淳一 木村
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2002149978A priority Critical patent/JP2003348102A/en
Publication of JP2003348102A publication Critical patent/JP2003348102A/en
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a system capable of continuously reproducing data with less errors without keeping a user waiting. <P>SOLUTION: The system decides a prescribed delay and transmits the same data within the time of delay for a plurality of number of times. A receiver side selects data without errors the data received in duplicate and uses the selected data. Since the delay amount is variable but decided in the system, the receiver side can continuously progress the reproduction. <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、マルチメディアデ
ータを配信する場合の、エラーを低減する処理に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a process for reducing errors when distributing multimedia data.

【0002】[0002]

【従来の技術】近年、インターネットに代表されるネッ
トワークの普及がかなりの広まりを見せている。その中
で、ADSL(Asymmetric Digital
Subscriber Line)、FTTH(Fi
ber To The Home)などを使用したブロ
ードバンドネットワークも、拡大を示しており、ネット
ワークを利用したマルチメディアコンテンツのストリー
ミング配信サービスも広がりを見せている。また、無線
LANを使用したホットスポットと呼ばれるサービスも
開始されている。現状では、IEEE802.11bの
規格を使用したものを中心にサービスが行われている。
上記のような無線にてマルチメディアデータの配信を行
う場合、以下の2つの方法が考えられている。まず、T
CP(Transmission Control P
rotocol:IETF RFC 793「Tran
smission Cotrol Protoco
l」)上のHTTP(Hyper Text Tran
sfer Protocol:IETF RFC 26
16「Hypertext Transfer Pro
tocol −−HTTP/1.1」)を用いた方法が
あげられる。この方法では、マルチメディアデータをフ
ァイルとして考えている。まず、HTTP/TCP上
で、サーバよりクライアントにマルチメディアデータの
転送を開始する。データの全てをクライアントに転送終
了後、ユーザに再生を許可する方法である。これは、携
帯電話などに使用されている。次に、UDP(User
Diagram Protocol:IETF RF
C 768「User Datagram Proto
col」)上のRTP(Real Time Prot
ocol:IETF RFC 1889「RTP:A
Transport Protocol for Re
al−TimeApplications」)を用いた
方法がある。これは、HTTPとRTPを使用したもの
で、HTTPにて、マルチメディアデータのコンテンツ
情報、プレゼンテーション記述などのデータを得た後、
クライアントはRTPを用いて、サーバよりマルチメデ
ィアデータを受信しながら、ユーザへ再生を行う、いわ
ゆるストリーミングである。この方法は、インターネッ
トを使用したマルチメディアストリーミングなどに用い
られている。この従来技術に関しては、例えば、「3r
d Generation Partonership
Project; Technical Specif
icationGroup Service and
System Aspects; Transpare
nt end−to―end packet swit
chedstreaming service; RT
P usage model」の規格に使用されてい
る。
2. Description of the Related Art In recent years, the spread of networks represented by the Internet has been considerably widespread. Among them, ADSL (Asymmetric Digital)
Subscriber Line), FTTH (Fi
Broadband networks using “Ber To The Home” have also been expanding, and streaming distribution services for multimedia contents using the networks are also expanding. A service called a hot spot using a wireless LAN has also been started. At present, services are provided mainly on those using the IEEE 802.11b standard.
When multimedia data is distributed by wireless as described above, the following two methods are considered. First, T
CP (Transmission Control P)
rotocol: IETF RFC 793 "Tran
Smith Control Protocol
l ") on HTTP (Hyper Text Tran)
sfer Protocol: IETF RFC 26
16 "Hypertext Transfer Pro
tocol--HTTP / 1.1 "). In this method, multimedia data is considered as a file. First, transfer of multimedia data from the server to the client is started over HTTP / TCP. This is a method in which the user is allowed to reproduce the data after all the data is transferred to the client. It is used in mobile phones and the like. Next, UDP (User
Diagram Protocol: IETF RF
C 768 "User Datagram Proto
col ") on the RTP (Real Time Prot
ocol: IETF RFC 1889 "RTP: A
Transport Protocol for Re
al-Time Applications ”). This uses HTTP and RTP. After obtaining data such as content information and presentation description of multimedia data by HTTP,
The client uses RTP to play multimedia data from the server while receiving the multimedia data from the server. This method is used for multimedia streaming using the Internet. Regarding this prior art, for example, “3r
d Generation Partonership
Project; Technical Specif
icationGroup Service and
System Aspects; Transport
nt end-to-end packet switch
chedstreaming service; RT
It is used in the standard of “P use model”.

【0003】[0003]

【発明が解決しようとする課題】従来の技術では、無線
を対象にしたマルチメディアデータ配信中のエラー処理
に問題があった。まず、HTTP/TCPを使用した方
法であるが、まず、データ全ての転送後に再生をする場
合、クライアントに大きなメモリ容量を必要とさせ、さ
らに、ユーザへは、受信開始後、すぐに再生を開始でき
ないという問題がある。また、HTTP/TCPにて、
受信しながら再生を行う場合では、マルチメディアデー
タ配信中にデータの一部にエラーが生じた場合、データ
パケット中に記述されているCRC(Cyclic R
edancy Check)等のコードを利用した、エ
ラーの発見及び、そのデータの再送を要求する方法があ
る。しかしながら、この方法は、データを完全に訂正可
能であるが、再送が何時送られてくるかを決められない
ため、マルチメディアデータの処理の連続性に問題があ
る。次に、RTP/UDPを使用した方法であるが、こ
の場合は、通信レイヤのエラー処理はエラー訂正コード
のみであり、エラー耐性が非常に低いという問題があ
る。
In the prior art, there was a problem in error processing during distribution of multimedia data for wireless communication. First, a method using HTTP / TCP. First, in the case where reproduction is performed after transferring all data, a large memory capacity is required for the client, and further, reproduction is started immediately after the reception is started. There is a problem that can not be. Also, in HTTP / TCP,
In the case of performing reproduction while receiving data, if an error occurs in a part of data during multimedia data distribution, a CRC (Cyclic R) described in a data packet is used.
There is a method for detecting an error and requesting retransmission of the data by using a code such as an E.C. However, although this method can completely correct data, it cannot determine when a retransmission is sent, and thus has a problem in the continuity of processing of multimedia data. Next, a method using RTP / UDP is used. However, in this case, there is a problem that the error processing of the communication layer is only the error correction code and the error resistance is very low.

【0004】[0004]

【課題を解決するための手段】一定の遅延量をシステム
内で定め、その時間内に、同一のデータを複数回送信す
る。受信側では、重複した受け取ったデータ中のエラー
の無い物を選択して使用する。本願開示の代表的な発明
は、ネットワークインタフェイスと情報処理を制御する
制御手段と情報記憶手段とを有するサーバであって、上
記制御手段が、上記インタフェイスによって取得したス
トリームを複数パケットデータに細分化して該各データ
に連続したシーケンス番号を含むヘッダを付加し、遅延
量若しくは1のパケットデータの転送回数を設定して該
遅延量若しくは転送回数の情報を含むアダプテーション
ションを作成して出力し、上記シーケンス番号に従って
連続する上記データを遅延量の回数上記情報記憶手段に
読み込み、上記読み込んだパケットを多重化して上記イ
ンタフェイスに出力し、上記最初に読み込んだデータの
次のデータから上記データの読み込みを行い多重化する
処理を繰り返して行う処理を制御するするサーバ及びそ
の実現のためのプログラム。
A certain amount of delay is determined in the system, and the same data is transmitted a plurality of times within that time. The receiving side selects and uses the error-free data in the duplicate received data. A typical invention disclosed in the present application is a server having a network interface, control means for controlling information processing, and information storage means, wherein the control means divides a stream acquired by the interface into a plurality of packet data. A header including a continuous sequence number is added to each data, a delay amount or the number of transfers of one packet data is set, and an adaptation including information of the delay amount or the number of transfers is created and output; The data that is continuous according to the sequence number is read into the information storage means the number of times of delay, the read packet is multiplexed and output to the interface, and the data is read from the next data after the first data read. Server that controls the process of repeating and multiplexing Program for the realization of the benefactor.

【0005】[0005]

【発明の実施の形態】実施例1 まず、以下に、本発明第1の実施例について説明する。
本実施例では、無線LANであるIEEE802.11
bを使用した、接続の方法に関して説明する。図1は、
本実施例を適用するシステムの全体構成を示したもので
ある。マルチメディアサーバ(1)、ルータ(2)、無
線LANアクセスポイント(3)、クライアント(4)
で構成されている。サーバ(1)、ルータ(2)、無線
LANアクセスポイント(3)は、有線のネットワーク
で接続され、無線LANアクセスポイント(3)とクラ
イアント(4)は、無線のネットワークで接続されてい
る。サーバ(1)は、格納されているあるいは他の装置
より送られてくるマルチメディアデータをクライアント
の要求により配信する機能を有する。ルータ(2)は、
サーバ(1)と無線LANアクセスポイント間をつなぐ
ものであり、データの送信先を決め、適切に送る機能を
有する。無線アクセスポイント(3)は、ルータより受
け取ったデータを無線LAN中へ送信する機能を有し、
クライアント(4)は、ユーザとのインタフェースを持
ち、無線LANを介してデータを受信する機能を有す
る。図2は、本実施例による配信の、セッション制御を
説明したものである。本実施例は、マルチメディアデー
タを配信するためのサーバ(1)、サーバ(1)から受
け取ったデータを無線LANに送信する無線アクセスポ
イント(3)、配信されたマルチメディアデータを受信
するクライアント(4)で構成される。最初に、クライ
アント(4)は、無線アクセスポイント(3)と無線に
よる接続を行う。無線にIEEE802.11bを利用
した場合、クライアント(4)より、無線スキャンを行
う。すなわち、最初にクライアント(4)よりプローブ
フレームを出し、次にアクセスポイント(3)からのプ
ローブレスポンスフレームを検出し、接続可能なアクセ
スポイント(3)を認識する。最後にアクセスポイント
(3)にACK信号を返すことにより、無線の同期が確
立され、無線スキャン動作が終了する。次に、アクセス
ポイント(3)との間で認証処理を行い、データ通信が
可能な状態となる。無線によるデータ通信が確立された
後、クライアント(4)より、無線アクセスポイント
(3)を通して、サーバ(1)に対し、コンテンツ情報
の配信を要求する。本実施例では、コンテンツ情報の送
信に、HTTPのGETコマンドを使用して、コンテン
ツ情報の配信を要求する。サーバ(1)は、クライアン
ト(4)の要求に応じ、例えば、HTML(Hyper
Text Markup Language)にて記
述されたコンテンツ情報をクライアント(4)に配信す
る。クライアント(4)のユーザは、コンテンツ情報か
ら選択し、クライアント(4)より、サーバ(1)へ、
マルチメディアデータの配信を要求する。例えば、RT
SP(Real Time Streaming Pr
otocol:IETF RFC 2326「Real
Time Streaming Protocol
(RTSP)」)のDESCRIBEコマンドを使用す
る。サーバ(1)より、メディア情報が配信されるの
で、クライアント(4)は、SETUPコマンド、PL
AYコマンドを使用して、マルチメディアデータの配信
開始を要求する。サーバ(1)は、例えばRTPを使用
して、マルチメディアデータの配信を行うこととなる。
ここで、RTPを使用したマルチメディアデータ中に、
遅延情報を含むデータが存在する。ここで、RTPを使
用したマルチメディア配信について説明したが、RTP
を利用しない場合でも、同様に、マルチメディアデータ
中に遅延情報が含まれている。図3、図4、図5を使用
して、本実施例のデータ構成に関して説明する。ネット
ワークを使用したデータ配信では、データを複数のパケ
ットと呼ばれる単位に分割し、配信を行う。また、複数
の通信レイヤに分割し、通信レイヤ毎に、必要な情報を
ヘッダとして付加して送信を行っている。本実施例で
は、図3に示すように、RTPレイヤの上に、本発明
(5)を適用した例である。図4を用いて、サーバ側で
のデータ構成を説明する。図4のストリーム(10)
は、サーバでのエンコーダの出力するマルチメディアデ
ータである。データ(11)は、RTPレイヤが処理を
するデータ列である。本実施例では、ストリーム(1
0)から出力データ(11)へと変換を行う。まず、ス
トリーム(10)を細分化する。細分化されたデータの
大きさは、サイズで定めても良いし、例えば、動画像の
場合にフレーム単位とするなど、ストリームの属性情報
に基づいても良い。引き続いて、細分化されたデータ
(12)にヘッダ(13)を付加する。ヘッダを追加さ
れた細分化データを並べ替えを行いながら、複数回配置
する(18)。本実施例では、4番目のデータ、5番目
のデータ、6番目のデータと3つのデータを連続して配
置し、引き続いて、5番目のデータ、6番目のデータ、
7番目のデータを配置し、同一のデータを合計3回配置
している。配置したデータは、複数のデータごとにまと
められ(本実施例では3データ)、アダプテーションデ
ータ(14)を付加し、たとえば、RTPなどの下位レ
イヤへ渡される。図5を用いて、ヘッダおよびアダプテ
ーションデータの構成を説明する。ヘッダ(13)に記
述する情報は、図5に示すように、ヘッダの先頭である
ことを示すsync(20)、ヘッダのサイズを示すH
−size(21)、ヘッダに引き続いているデータの
サイズを示すD−size(22)、データの属性を示
すpid(23)、データを一連の番号を示すseq
(24)、データの枝番を示すrep(25)をで構成
する。pid(23)は、ヘッダに引き続くデータの属
性を示すのであるが、ここでは、マルチメディアデータ
の場合は、1をアダプテーションデータの場合は、0と
した。枝番は、たとえば、図4のデータ(15)の場合
は0、データ(16)の場合1などとする。アダプテー
ションデータは、先頭にヘッダ(13)を持ち、アダプ
テーションデータのサイズを示すsize(26)、通
信の遅延量を示すdelay(27)、通信の同一デー
タの転送する回数を示すcount(28)にて構成す
る。尚上記の内全ての情報は必須ではなく、少なくと
も、delay(27)あるいはcount(28)の
どちらか一方を有する情報をアダプテーションと言う。 実施例2 以下に、本発明第2の実施例について説明する。本実施
例では、無線LANであるIEEE802.11bとマ
ルチキャストを使用した、接続の方法に関して説明す
る。図6は、本実施例を適用するシステムの全体構成を
示したものである。マルチメディアマルチキャストサー
バ(30)、マルチキャストルータ(31)、無線LA
Nアクセスポイント(3)、クライアント(4)で構成
されている。サーバ(30)、ルータ(31)、無線L
ANアクセスポイント(3)は、有線のネットワークで
接続され、無線LANアクセスポイント(3)とクライ
アント(4)は、無線のネットワークで接続されてい
る。サーバ(30)及びクライアント(4)は、ネット
ワークインタフェイスと情報処理を制御する制御手段と
情報記憶手段とを有し、サーバ(30)は格納されてい
るあるいは他の装置より送られてくるマルチメディアデ
ータをクライアントの要求によりマルチキャスト配信す
る機能を有する。ルータ(31)は、サーバ(30)と
無線LANアクセスポイント間をつなぐものであり、デ
ータの送信先を決め、適切に送る機能に加え、マルチキ
ャストのグループ管理機能を有している。無線アクセス
ポイント(3)は、ルータより受け取ったデータを無線
LAN中へ送信する機能を有し、クライアント(4)
は、ユーザとのインタフェースを持ち、無線LANを介
してデータを受信する機能および、マルチキャス機能を
実現するIGMP(Internet Group M
anagement Protocol:IETF R
FC 2236「Internet Group Ma
nagement Protocol,Version
2」)の機能を有する。図7は、本実施例による配信
の、セッション制御を説明したものである。本実施例
は、マルチメディアデータを配信するためのサーバ(3
0)、サーバ(30)から受け取ったデータを無線LA
Nに送信する無線アクセスポイント(3)、配信された
マルチメディアデータを受信するクライアント(4)で
構成される。最初に、クライアント(4)は、無線アク
セスポイント(3)と無線による接続を行う。無線にI
EEE802.11bを利用した場合、クライアント
(4)より、無線スキャンを行う。すなわち、最初にク
ライアント(4)よりプローブフレームを出し、次にア
クセスポイント(3)からのプローブレスポンスフレー
ムを検出し、接続可能なアクセスポイント(3)を認識
する。最後にアクセスポイント(3)にACK信号を返
すことにより、無線の同期が確立され、無線スキャン動
作が終了する。次に、アクセスポイント(3)との間で
認証処理を行い、データ通信が可能な状態となる。無線
によるデータ通信が確立された後、クライアント(4)
より、無線アクセスポイント(3)を通して、サーバ
(30)に対し、コンテンツ情報の配信を要求する。本
実施例では、コンテンツ情報の送信に、HTTPのGE
Tコマンドを使用して、コンテンツ情報の配信を要求す
る。サーバ(30)は、クライアント(4)の要求に応
じ、例えば、HTMLにて記述されたコンテンツ情報を
クライアント(4)に配信する。クライアント(4)の
ユーザは、コンテンツ情報から選択し、クライアント
(4)より、サーバ(30)へ、マルチメディアデータ
の配信を要求する。例えば、IGMPのJOINコマン
ドを使用する。サーバ(30)は、クライアント(4)
の要求に対し、既に、他のクライアント(4)に向け、
対象マルチメディアデータを配信中であれば何もせず、
配信中でない場合に配信を開始する。その場合、サーバ
(30)は、例えばRTPを使用して、マルチメディア
データの配信を行うこととなる。この場合は、RTPに
よって送信されるマルチメディアデータ中に、遅延情報
を含むデータが存在することとなる。ここで、RTPを
使用したマルチメディア配信について説明したが、RT
Pを利用しない場合でも、同様に、マルチメディアデー
タ中に遅延情報が含まれている。データ形式などは、実
施例1と同じである。 実施例3 本発明第3の実施例は、本発明におけるサーバの動作を
説明したものである。本実施例は、図1のマルチメディ
アサーバ(30)の動作について説明をしたものであ
る。図8から図10で、本実施例のサーバの状態遷移に
ついて説明する。図8は、サーバの本発明のメインスレ
ッドの実行状態遷移である。電源投入により、処理を開
始し、まず、サーバの初期設定を行う(41)。初期設
定終了後、HTTPスレッドを作成し(42)、HTT
Pプロトコルを使用した通信を可能な状態とする。その
後に、ネットワークからの入力待ちとなる(43)。H
TTPのGET命令がネットワークより入力されるとH
TTPスレッドに入力された命令を渡す(44)。図9
は、サーバのHTTPスレッドの実行状態遷移を示す図
である。生成されたスレッドは、初期化(50)を行
い、メインスレッドからの入力待ち状態(51)とな
る。入力があると入力されたコマンドおよびURLの解
釈を行い(54)、コンテンツ情報が要求されている場
合は、コンテンツ情報をHTMLにて記述されたデータ
を作成しする(55)。作成したデータをHTTPを使
用して配信を行い(56)、入力待ちに戻る。ストリー
ムデータの要求の場合、ストリームスレッドの生成を行
い(53)、入力待ちに戻る。図10は、サーバのスト
リーム配信スレッドの実行状態遷移図を示す図である。
生成されたスレッドは、初期化(60)を行い、ストリ
ームデータの配信(62)を行う。他のスレッドより、
配信停止が選択された場合、配信を停止し、スレッドの
削除を行う(62)。図11は、サーバのマルチメディ
アデータ配信時の詳細な動作を説明するフローチャート
である。まず、全体の初期化(71)を行い、それに引
き続いて、配信データの初期化(72)を行う。次に、
図5のアダプテーションデータでdelayと表現され
ている遅延量および、countと表現されている繰り
返し回数の設定を行う(73)。本発明では、同一のデ
ータを複数回の配信を行うのであるが、この際の、同一
データを最初に配信する時刻と最後に配信する時刻の差
が遅延量であり、同一データを配信する回数が繰り返し
数である。これらのデータをアダプテーションデータと
して出力バッファへ書き込む(74)。しかる後に、遅
延カウンタの初期化を行う(75)。送出データ先頭位
置nと遅延カウンタkからデータ読み出し位置を決定す
る。データの読み込みを行い(76)、データにヘッダ
を追加し(77)、読み込んだデータを出力バッファに
書き込む(78)。遅延カウンタkを1増加し(7
9)、kが遅延設定量Tdより小さな場合(80)は、
データの読み込みへと戻り、kがTd以上の場合は、送
出データ位置nを1増加する(81)。全てのデータを
送信した場合(82)は、ここで終了する(84)。全
てのデータを送出していない場合、アダプテーションデ
ータを挿入するかどうかの判定を行う(83)。アダプ
テーションデータを挿入する場合は、アダプテーション
データ作成へ分岐し、アダプテーションデータを挿入し
ない場合は、遅延カウンタkの初期化へと分岐する。 実施例4 本発明第4の実施例は、本発明におけるサーバ動作の別
の実施例を説明したものである。本実施例は、図6のマ
ルチキャストサーバ(30)の動作について説明をした
ものである。図12から図14で、本実施例のサーバの
状態遷移について説明する。図12は、サーバのメイン
スレッドの実行状態遷移である。電源投入により、処理
を開始し、まず、サーバの初期設定を行う(41)。初
期設定終了後、HTTPスレッドの作成(42)および
IGMPスレッドの作成(46)を行い、ネットワーク
からの入力待ちとなる(43)。HTTPのGET命令
がネットワークより入力されるとHTTPスレッドに入
力された命令を渡し(44)、IGMPのJOINコマ
ンドネットワークより入力されると、IGMPスレッド
に入力された命令を渡す(47)。図13は、サーバの
HTTPスレッドの実行状態遷移を示す図である。生成
されたスレッドは、初期化(50)を行い、メインスレ
ッドからの入力待ち状態(51)となる。入力があると
入力されたコマンドおよびURLの解釈を行い(5
4)、コンテンツ情報が要求されている場合は、コンテ
ンツ情報をHTMLにて記述されたデータを作成しする
(55)。作成したデータをHTTPを使用して配信を
行い(56)、入力待ちに戻る。図14は、サーバのI
GMPスレッドの実行状態遷移図を示す図である。生成
されたスレッドは、初期化(60)を行い、メインスレ
ッドからの入力待ち状態(61)となる。入力があると
入力されたコマンドおよびURLの解釈を行い(6
4)、該当するマルチメディアデータの要求が既に配信
中のものであるか確認する(65)。要求されたマルチ
メディアデータが配信中で無い場合、ストリームデータ
スレッドを作成し(66)、既に配信中の場合は、何も
せずに、入力待ちへと戻る。他のスレッドより、配信停
止が選択された場合、配信を停止し、スレッドの削除を
行う(63)。サーバのマルチメディアデータ配信時の
動作は図11に記載した実施例3と同様である。 実施例5 本発明第5の実施例は、本発明におけるクライアントの
動作を説明したものである。なお、本実施例は、図1に
おける無線LANクライアント(4)の動作を説明する
ものである。図15から図18で、本実施例のクライア
ントの状態遷移について説明する。図15は、クライア
ントの本発明のメインスレッドの実行状態遷移である。
電源投入により、処理を開始し、まず、クライアントの
初期設定を行う。初期設定終了後、ネットワークシステ
ムをスタートさせ(91)、ユーザの入力待ちとなる
(92)。ユーザから、マルチメディアデータの受信が
選択されると、アプリケーションがスタートし(9
4)、HTTPスレッドを作成し(95)、HTTPプ
ロトコルを使用した通信を可能な状態とする。その後
に、ユーザからの入力待ちとなる(92)。ユーザよ
り、コンテンツ情報の取得が選択されると、HTTPス
レッドにデータ取得先URLを渡す(96)。図16
は、クライアントのHTTPスレッドの実行状態遷移を
示す図である。生成されたスレッドは、初期化(10
0)を行い、メインスレッドからの入力待ち状態(10
1)となる。入力があると入力されたコマンドおよびU
RLの解釈を行い(103)、コンテンツ情報が要求さ
れている場合は、HTTPのGET命令を生成(10
4)、HTTPにてネットワークへ送信(105)を行
い、ネットワークからの入力待ちへ戻る(101)。コ
ンテンツ情報をHTMLにて記述されたデータを受信し
た場合、表示データを作成し出力する(106)。出力
終了後、入力待ちに戻る。図17は、クライアントのス
トリーム受信スレッドの実行状態遷移を示す図である。
生成されたスレッドは、初期化(110)を行い、遅延
情報の取得待ちをする(111)。遅延情報取得後、ス
トリームデータの受信(112)を行う。他のスレッド
より、受信停止が選択された場合、受信を停止し、スレ
ッドの削除を行う(113)。図18は、クライアント
のマルチメディアデータ受信時の詳細な動作を説明する
フローチャートである。受信データを取り出し(12
2)、それがアダプテーションデータであるかどうかの
確認を行う(123)。アダプテーションデータである
場合、図5のアダプテーションデータのdelayであ
る、遅延量および、countである繰り返し回数を取
り出す(132)。取り出した後、アダプテーションデ
ータ取得フラグを立て(133)、受信データ取出しへ
と戻る。受信データがアダプテーションデータではない
場合、アダプテーションデータ取得フラグを確認する
(124)。アダプテーションデータ確認フラグがたっ
ていない場合、受信データ取出しへ戻る。アダプテーシ
ョンデータ確認フラグがたっていた場合、ヘッダ情報を
取り出し、データ格納位置のチェックを行う(12
5)。データ格納位置情報から、既に取得済みのデータ
と判断された場合、データを破棄し、データ取り出しへ
戻り、取得済みで無い場合、次に進む(126)。次
に、データのエラー状況をチェックし(127)、エラ
ーが無い場合、データを書き込み(129)、データ取
得情報を更新し(130)、データを上位レイヤへ渡す
(131)。データにエラーがあった場合、該当データ
の遅延量をチェックし(134)、まだ、達していない
場合、データ取出しへと戻る。達していた場合、該当デ
ータを取得に失敗した情報を上位レイヤへと渡す(13
5)。その後に、データ取出しへと戻る。尚本実施例で
は、遅延情報設定(132)の再に、遅延量および繰り
返し回数の両方の取り出しを行っているが、必ずしも両
方の情報を取り出す必要は無い。 実施例6 本発明第6の実施例は、本発明におけるクライアント動
作の別の実施例を説明したものである。なお、本実施例
は、図6における無線LANクライアント(4)の動作
を説明するものである。図19および図20で、本実施
例のクライアントの状態遷移について説明する。図19
は、クライアントの本発明のメインスレッドの実行状態
遷移である。電源投入により、処理を開始し、まず、ク
ライアントの初期設定を行う(97)。初期設定終了
後、ネットワークシステムをスタートさせ(97)、ユ
ーザの入力待ちとなる(92)。ユーザから、マルチメ
ディアデータの受信が選択されると、アプリケーション
がスタートし(94)、HTTPスレッドの作成(9
5)、および、IGMPスレッドの作成(98)を行
い、ユーザからの入力待ちへ戻る。ユーザより、コンテ
ンツ情報の取得が選択されると、HTTPスレッドにデ
ータ取得先URLを渡す(96)。ユーザより、コンテ
ンツデータの取得が選択されると、コンテンツデータU
RLをIGMPスレッドに渡す(99)。本実施例にお
ける、クライアントのHTTPスレッドの実行状態遷移
は図16に記載した実施例5と同様である。図20は、
クライアントのIGMPスレッドの実行状態遷移を示す
図である。生成されたスレッドは、初期化(140)を
行い、メインスレッドからの入力待ち状態(141)と
なる。入力があると入力されたコマンドおよびURLの
解釈を行い、コンテンツ情報が要求されている場合は、
JOIN命令を生成(142)、ネットワークへ送信、
ストリーム受信スレッドの生成を行い(143)、入力
待ちへ戻る。本実施例における、クライアントのストリ
ーム受信スレッドの実行状態遷移および、クライアント
のマルチメディアデータ受信時の詳細な動作を説明する
フローチャートは図18に記載した実施例5と同様であ
る。以上、本発明の実施例について説明してきたが、本
発明の適用範囲は、必ずしも無線LANで無くとも良い
し、レイヤ構成は、必ずしも、本実施例の説明通りでな
くとも良い。又サーバ及びクライアントにおける動作の
フローはそれぞれ媒体に記憶されたプログラムを読み出
すことで実現することも可能である。
Embodiment 1 First, a first embodiment of the present invention will be described below.
In the present embodiment, a wireless LAN, ie, IEEE 802.11
A connection method using b will be described. FIG.
1 illustrates an overall configuration of a system to which the present embodiment is applied. Multimedia server (1), router (2), wireless LAN access point (3), client (4)
It is composed of The server (1), the router (2), and the wireless LAN access point (3) are connected by a wired network, and the wireless LAN access point (3) and the client (4) are connected by a wireless network. The server (1) has a function of distributing multimedia data stored or sent from another device at the request of a client. Router (2)
It is a connection between the server (1) and the wireless LAN access point, and has a function of determining a data transmission destination and appropriately transmitting the data. The wireless access point (3) has a function of transmitting data received from the router into the wireless LAN,
The client (4) has an interface with the user and has a function of receiving data via the wireless LAN. FIG. 2 illustrates session control of distribution according to the present embodiment. In this embodiment, a server (1) for delivering multimedia data, a wireless access point (3) for transmitting data received from the server (1) to a wireless LAN, and a client (for receiving distributed multimedia data) 4). First, the client (4) makes a wireless connection with the wireless access point (3). When IEEE802.11b is used for wireless communication, wireless scanning is performed by the client (4). That is, first, a probe frame is output from the client (4), then a probe response frame from the access point (3) is detected, and the connectable access point (3) is recognized. Finally, by returning an ACK signal to the access point (3), wireless synchronization is established, and the wireless scanning operation ends. Next, authentication processing is performed with the access point (3), and data communication is enabled. After the wireless data communication is established, the client (4) requests the server (1) to distribute the content information through the wireless access point (3). In the present embodiment, an HTTP GET command is used to transmit the content information, and a request for the distribution of the content information is made. The server (1) responds to the request of the client (4) by, for example, HTML (Hyper
Content information described in Text Markup Language is distributed to the client (4). The user of the client (4) selects from the content information, and from the client (4) to the server (1),
Request distribution of multimedia data. For example, RT
SP (Real Time Streaming Pr)
otocol: IETF RFC 2326 "Real
Time Streaming Protocol
(RTSP) "). Since the media information is distributed from the server (1), the client (4) executes the SETUP command, the PL
The AY command is used to request the start of distribution of multimedia data. The server (1) distributes multimedia data using, for example, RTP.
Here, in the multimedia data using RTP,
There is data including delay information. Here, multimedia delivery using RTP has been described.
Similarly, when multimedia is not used, the delay information is included in the multimedia data. The data configuration of the present embodiment will be described with reference to FIGS. 3, 4, and 5. FIG. In data distribution using a network, data is divided into a plurality of units called packets and distributed. In addition, the data is divided into a plurality of communication layers, and necessary information is added as a header to each communication layer for transmission. In the present embodiment, as shown in FIG. 3, the present invention (5) is applied on the RTP layer. The data configuration on the server side will be described with reference to FIG. Stream (10) in FIG.
Is multimedia data output from the encoder in the server. Data (11) is a data string processed by the RTP layer. In the present embodiment, the stream (1
0) to output data (11). First, the stream (10) is subdivided. The size of the subdivided data may be determined by the size, or may be based on the attribute information of the stream, for example, in the case of a moving image in units of frames. Subsequently, a header (13) is added to the segmented data (12). The subdivided data to which the header has been added are arranged a plurality of times while being rearranged (18). In this embodiment, the fourth data, the fifth data, the sixth data, and the three data are successively arranged, and subsequently, the fifth data, the sixth data,
The seventh data is arranged, and the same data is arranged three times in total. The arranged data is grouped for each of a plurality of data (three data in the present embodiment), added with adaptation data (14), and transferred to a lower layer such as RTP. The configuration of the header and the adaptation data will be described with reference to FIG. As shown in FIG. 5, the information described in the header (13) is sync (20) indicating that the header is the head of the header, and H indicating the size of the header.
-Size (21), D-size (22) indicating the size of data following the header, pid (23) indicating the attribute of data, and seq indicating data as a series of numbers.
(24), rep (25) indicating the branch number of the data. The pid (23) indicates the attribute of the data following the header. Here, 1 is set for multimedia data, and 0 for adaptation data. The branch number is, for example, 0 for data (15) and 1 for data (16) in FIG. The adaptation data has a header (13) at the beginning and has a size (26) indicating the size of the adaptation data, a delay (27) indicating the amount of delay in communication, and a count (28) indicating the number of times the same data of communication is transferred. It is composed. Note that all of the above information is not essential, and information having at least one of delay (27) and count (28) is referred to as adaptation. Embodiment 2 Hereinafter, a second embodiment of the present invention will be described. In this embodiment, a connection method using IEEE 802.11b, which is a wireless LAN, and multicast will be described. FIG. 6 shows the overall configuration of a system to which this embodiment is applied. Multimedia multicast server (30), multicast router (31), wireless LA
N access points (3) and clients (4). Server (30), router (31), wireless L
The AN access point (3) is connected by a wired network, and the wireless LAN access point (3) and the client (4) are connected by a wireless network. The server (30) and the client (4) have a control means for controlling a network interface and information processing, and an information storage means, and the server (30) is a multi-processor which is stored or sent from another device. It has a function of multicast distribution of media data at the request of the client. The router (31) connects between the server (30) and the wireless LAN access point, and has a multicast group management function in addition to a function of determining a data transmission destination and appropriately transmitting the data. The wireless access point (3) has a function of transmitting data received from the router into the wireless LAN, and the client (4)
Has an interface with a user, receives data via a wireless LAN, and realizes an IGMP (Internet Group M) that realizes a multicast function.
analysis Protocol: IETF R
FC 2236 "Internet Group Ma
management Protocol, Version
2)). FIG. 7 illustrates session control of distribution according to the present embodiment. In the present embodiment, a server (3) for distributing multimedia data is used.
0), the data received from the server (30)
N, a wireless access point (3) for transmitting data, and a client (4) for receiving distributed multimedia data. First, the client (4) makes a wireless connection with the wireless access point (3). I to radio
When using EEE802.11b, the client (4) performs wireless scanning. That is, first, a probe frame is output from the client (4), then a probe response frame from the access point (3) is detected, and the connectable access point (3) is recognized. Finally, by returning an ACK signal to the access point (3), wireless synchronization is established, and the wireless scanning operation ends. Next, authentication processing is performed with the access point (3), and data communication is enabled. After the wireless data communication is established, the client (4)
It requests the server (30) to distribute the content information through the wireless access point (3). In this embodiment, the transmission of the content information uses the GE
The distribution of the content information is requested using the T command. In response to a request from the client (4), the server (30) distributes, for example, content information described in HTML to the client (4). The user of the client (4) selects from the content information, and requests the server (30) to deliver multimedia data from the client (4). For example, the IGMP JOIN command is used. The server (30) is a client (4)
To the other client (4),
If the target multimedia data is being distributed, do nothing.
Start distribution if not being distributed. In that case, the server (30) distributes the multimedia data using, for example, RTP. In this case, data including delay information exists in multimedia data transmitted by RTP. Here, multimedia delivery using RTP has been described.
Even when P is not used, similarly, delay information is included in the multimedia data. The data format is the same as in the first embodiment. Embodiment 3 The third embodiment of the present invention describes the operation of the server in the present invention. This embodiment describes the operation of the multimedia server (30) in FIG. The state transition of the server according to the present embodiment will be described with reference to FIGS. FIG. 8 shows the execution state transition of the main thread of the present invention of the server. When the power is turned on, the processing is started, and first, the server is initialized (41). After the initialization is completed, an HTTP thread is created (42), and the HTTP thread is created.
Communication using the P protocol is enabled. After that, it waits for an input from the network (43). H
When TTP GET command is input from network, H
The input instruction is passed to the TTP thread (44). FIG.
FIG. 5 is a diagram showing execution state transition of an HTTP thread of a server. The generated thread performs initialization (50) and waits for an input from the main thread (51). When there is an input, the input command and URL are interpreted (54), and when the content information is requested, the content information is created as data described in HTML (55). The created data is distributed using HTTP (56), and the process returns to waiting for input. In the case of a request for stream data, a stream thread is generated (53), and the process returns to input waiting. FIG. 10 is a diagram showing an execution state transition diagram of the stream distribution thread of the server.
The generated thread performs initialization (60) and distributes stream data (62). From other threads,
When the distribution stop is selected, the distribution is stopped and the thread is deleted (62). FIG. 11 is a flowchart illustrating the detailed operation of the server when distributing multimedia data. First, the entire initialization (71) is performed, and subsequently, the distribution data is initialized (72). next,
The delay amount expressed as “delay” and the number of repetitions expressed as “count” in the adaptation data of FIG. 5 are set (73). In the present invention, the same data is distributed a plurality of times. At this time, the difference between the time at which the same data is distributed first and the time at which the same data is distributed last is the delay amount, and the number of times the same data is distributed. Is the number of repetitions. These data are written to the output buffer as adaptation data (74). Thereafter, the delay counter is initialized (75). The data reading position is determined from the transmission data head position n and the delay counter k. The data is read (76), a header is added to the data (77), and the read data is written to an output buffer (78). The delay counter k is incremented by 1 (7
9) When k is smaller than the delay set amount Td (80),
Returning to data reading, if k is equal to or greater than Td, the transmission data position n is incremented by 1 (81). If all data has been transmitted (82), the process ends here (84). If all data has not been transmitted, it is determined whether to insert adaptation data (83). If the adaptation data is to be inserted, the process branches to the creation of adaptation data. If the adaptation data is not inserted, the process branches to the initialization of the delay counter k. Embodiment 4 A fourth embodiment of the present invention describes another embodiment of the server operation in the present invention. This embodiment describes the operation of the multicast server (30) in FIG. The state transition of the server according to the present embodiment will be described with reference to FIGS. FIG. 12 shows the execution state transition of the main thread of the server. When the power is turned on, the processing is started, and first, the server is initialized (41). After the initialization, an HTTP thread is created (42) and an IGMP thread is created (46), and input from the network is awaited (43). When the HTTP GET command is input from the network, the command input to the HTTP thread is passed (44), and when the HTTP GET command is input from the IGMP JOIN command network, the command input to the IGMP thread is passed (47). FIG. 13 is a diagram showing transition of the execution state of the HTTP thread of the server. The generated thread performs initialization (50) and waits for an input from the main thread (51). When there is an input, the input command and URL are interpreted (5.
4) If the content information is requested, the content information is created as data described in HTML (55). The created data is distributed using HTTP (56), and the process returns to waiting for input. FIG. 14 shows the server I
FIG. 4 is a diagram illustrating a transition diagram of an execution state of a GMP thread. The generated thread performs initialization (60), and waits for an input from the main thread (61). When there is an input, the input command and URL are interpreted (6.
4), confirm whether the request for the corresponding multimedia data is already being delivered (65). If the requested multimedia data is not being delivered, a stream data thread is created (66). If the requested multimedia data is already being delivered, the process returns to the input wait state without doing anything. If distribution stop is selected by another thread, distribution is stopped and the thread is deleted (63). The operation of the server at the time of multimedia data distribution is the same as that of the third embodiment described in FIG. Embodiment 5 The fifth embodiment of the present invention describes the operation of the client in the present invention. This embodiment describes the operation of the wireless LAN client (4) in FIG. The state transition of the client according to the present embodiment will be described with reference to FIGS. FIG. 15 shows the execution state transition of the main thread of the present invention of the client.
When the power is turned on, the processing is started, and first, the client is initialized. After the completion of the initial setting, the network system is started (91), and the user waits for an input (92). When the user selects to receive the multimedia data, the application starts (9).
4) An HTTP thread is created (95), and communication using the HTTP protocol is enabled. Thereafter, input from the user is waited (92). When the content information acquisition is selected by the user, the data acquisition destination URL is passed to the HTTP thread (96). FIG.
FIG. 4 is a diagram showing execution state transition of an HTTP thread of a client. The created thread is initialized (10
0), and waits for input from the main thread (10
1). Command and U entered when there is an input
The RL is interpreted (103), and if content information is requested, an HTTP GET command is generated (10).
4), send to the network by HTTP (105), and return to waiting for input from the network (101). When receiving data in which content information is described in HTML, display data is created and output (106). After the output is completed, the process returns to input waiting. FIG. 17 is a diagram showing transition of the execution state of the stream reception thread of the client.
The created thread performs initialization (110) and waits for acquisition of delay information (111). After the delay information is obtained, stream data is received (112). If the reception stop is selected by another thread, the reception is stopped and the thread is deleted (113). FIG. 18 is a flowchart illustrating the detailed operation of the client when receiving multimedia data. Retrieve the received data (12
2), it is confirmed whether it is adaptation data (123). In the case of the adaptation data, the delay amount and the number of repetitions, which are the delay and the count, of the adaptation data in FIG. 5 are extracted (132). After the extraction, the adaptation data acquisition flag is set (133), and the process returns to the reception data extraction. If the received data is not adaptation data, the adaptation data acquisition flag is checked (124). If the adaptation data confirmation flag has not been set, the process returns to reception data extraction. If the adaptation data confirmation flag is on, the header information is extracted and the data storage position is checked (12).
5). If it is determined from the data storage position information that the data has already been acquired, the data is discarded, and the process returns to data extraction. If not, the process proceeds to the next step (126). Next, the error status of the data is checked (127). If there is no error, the data is written (129), the data acquisition information is updated (130), and the data is passed to the upper layer (131). If there is an error in the data, the amount of delay of the data is checked (134). If the error has not yet been reached, the flow returns to data extraction. If it has reached, the information that failed to acquire the data is passed to the upper layer (13
5). After that, the process returns to data extraction. In this embodiment, both the delay amount and the number of repetitions are taken out when the delay information setting (132) is performed again, but it is not always necessary to take out both information. Embodiment 6 A sixth embodiment of the present invention describes another embodiment of the client operation in the present invention. This embodiment describes the operation of the wireless LAN client (4) in FIG. The state transition of the client according to the present embodiment will be described with reference to FIGS. FIG.
Is the execution state transition of the main thread of the present invention of the client. When the power is turned on, the process starts, and first, the client is initialized (97). After the completion of the initial setting, the network system is started (97), and the user waits for an input (92). When the user selects to receive the multimedia data, the application starts (94) and creates an HTTP thread (9).
5) Then, an IGMP thread is created (98), and the process returns to waiting for an input from the user. When the content information acquisition is selected by the user, the data acquisition destination URL is passed to the HTTP thread (96). When the user selects the acquisition of the content data, the content data U
The RL is passed to the IGMP thread (99). In this embodiment, the execution state transition of the HTTP thread of the client is the same as that of the fifth embodiment described in FIG. FIG.
FIG. 7 is a diagram illustrating execution state transition of an IGMP thread of a client. The generated thread performs initialization (140) and waits for an input from the main thread (141). When there is an input, the input command and URL are interpreted, and if content information is requested,
Generate JOIN command (142), send to network,
A stream receiving thread is generated (143), and the process returns to input waiting. In the present embodiment, the flow chart for explaining the transition of the execution state of the stream receiving thread of the client and the detailed operation at the time of receiving the multimedia data of the client is the same as that of the fifth embodiment shown in FIG. Although the embodiments of the present invention have been described above, the scope of application of the present invention is not necessarily limited to the wireless LAN, and the layer configuration may not necessarily be as described in the embodiments. Further, the flow of operation in the server and the client can also be realized by reading out a program stored in the medium.

【0006】[0006]

【発明の効果】本発明は、マルチメディアデータを配信
する場合の、エラーを低減する処理に関し、従来の技術
の無線を対象にしたマルチメディアデータ配信中のエラ
ー処理に問題を改善する。具体的には、一定の遅延量を
システム内で定め、その時間内に、同一のデータを複数
回送信する。受信側では、重複した受け取ったデータ中
のエラーの無い物を選択して使用する。その結果、受信
側は、低エラーで、ユーザに待たせることなく、連続的
な再生が可能であるシステムを提供が可能となる。ま
た、遅延量は可変であるが、システム内で定めているた
めに、受信側は、遅延量の中で再生を連続的に進行可能
である。
The present invention relates to a process for reducing errors when distributing multimedia data, and solves the problem of error handling during multimedia data distribution for wireless communication of the prior art. Specifically, a certain amount of delay is determined in the system, and the same data is transmitted a plurality of times within that time. The receiving side selects and uses the error-free data in the duplicate received data. As a result, the receiving side can provide a system capable of continuous reproduction without causing the user to wait with a low error. Further, although the delay amount is variable, since it is determined in the system, the receiving side can continuously perform reproduction within the delay amount.

【図面の簡単な説明】[Brief description of the drawings]

【図1】コネクション概略図。FIG. 1 is a schematic diagram of a connection.

【図2】全体セッション制御図。FIG. 2 is an overall session control diagram.

【図3】プロトコル構造図。FIG. 3 is a diagram showing a protocol structure.

【図4】データ再構成図。FIG. 4 is a data reconstruction diagram.

【図5】ヘッダ情報を示す図。FIG. 5 is a diagram showing header information.

【図6】マルチキャストを使用した際のコネクション概
略図。
FIG. 6 is a schematic diagram of a connection when multicast is used.

【図7】マルチキャストを使用した際の全体セッション
制御図。
FIG. 7 is an overall session control diagram when multicast is used.

【図8】サーバのメインスレッドの状態遷移図。FIG. 8 is a state transition diagram of a main thread of the server.

【図9】サーバのHTTPスレッドの状態遷移図。FIG. 9 is a state transition diagram of an HTTP thread of the server.

【図10】サーバのストリーム配信スレッドの状態遷移
図。
FIG. 10 is a state transition diagram of a stream distribution thread of the server.

【図11】サーバのアルゴリズムを示す図。FIG. 11 is a diagram illustrating an algorithm of a server.

【図12】マルチキャストを使用した際のサーバのメイ
ンスレッドの状態遷移図。
FIG. 12 is a state transition diagram of a main thread of a server when multicast is used.

【図13】マルチキャストを使用した際のサーバのHT
TPスレッドの状態遷移図。
FIG. 13: HT of server when using multicast
The state transition diagram of a TP thread.

【図14】マルチキャストを使用した際のサーバのIG
MPスレッドの状態遷移図。
FIG. 14: Server IG when using multicast
FIG. 4 is a state transition diagram of an MP thread.

【図15】クライアントのメインスレッドの状態遷移
図。
FIG. 15 is a state transition diagram of a main thread of a client.

【図16】クライアントのHTTPスレッドの状態遷移
図。
FIG. 16 is a state transition diagram of an HTTP thread of a client.

【図17】クライアントのストリーム配信スレッドの状
態遷移図。
FIG. 17 is a state transition diagram of a stream distribution thread of a client.

【図18】クライアントのアルゴリズムを示す図。FIG. 18 is a diagram showing an algorithm of a client.

【図19】マルチキャストを使用した際のクライアント
のメインスレッドの状態遷移図。
FIG. 19 is a state transition diagram of a main thread of a client when using multicast.

【図20】マルチキャストを使用した際のクライアント
のIGMPスレッドの状態遷移図。
FIG. 20 is a state transition diagram of an IGMP thread of a client when multicast is used.

【符号の説明】[Explanation of symbols]

1…マルチメディアサーバ 2…ルータ 3…無線LANアクセスポイント 4…クライアント 5…本発明のデータ処理層 10…ストリーム 11…出力データ 12…細分化されたデータ 13…ヘッダ 14…アダプテーションデータ 15…データ 16…データ 17…データ 18…細分化データ 20…ヘッダの先頭を示す符号 21…ヘッダのサイズを示す符号 22…ヘッダに引き続くデータのサイズを示す符号 23…データの属性を示す符号 24…データの一連の番号を示す符号 25…データの枝番を示す符号 26…アダプテーションデータのサイズを示す符号 27…通信の遅延量を示す符号 28…同一データの転送する回数を示す符号 30…マルチメディアマルチキャストサーバ 31…マルチキャストルータ 41…サーバのメインスレッドの初期設定 42…サーバのメインスレッドによるHTTPスレッド
の作成 43…サーバのメインスレッドの入力待ち 44…サーバのメインスレッドのHTTPスレッドへの
通信 46…サーバのメインスレッドによるIGMPスレッド
の作成 47…サーバのメインスレッドのIGMPスレッドへの
通信 50…サーバのHTTPスレッドの初期化 51…サーバのHTTPスレッドでの入力待ち 52…サーバのHTTPスレッドのHTTPスレッド削
除要求 53…サーバのHTTPスレッドでのストリームスレッ
ド作成 54…サーバのHTTPスレッドでのURL解釈 55…サーバのHTTPスレッドでのHTTPデータ作
成 56…サーバのHTTPスレッドでのHTTPデータ転
送 60…サーバのストリーム配信スレッドでの初期化 61…サーバのストリーム配信スレッドでのストリーム
配信 62…サーバのストリーム配信スレッドでのストリーム
配信スレッド削除要求 63…サーバのIGMPスレッドでの初期化 64…サーバのIGMPスレッドでの入力待ち 65…サーバのIGMPスレッドでのURL解釈 66…サーバのIGMPスレッドでのストリーム状況確
認 69…サーバのIGMPスレッドでのストリームスレッ
ド作成 71…初期化 72…配信データの初期化 73…遅延量、繰り返し回数の設定 74…アダプテーションデータの書き込み 75…遅延量カウンタの初期化 76…データの読み込み 77…データへのヘッダの追加 78…データの出力バッファへの書き込み 79…遅延量カウンタのインクリメント 80…遅延量設定確認 81…送出データ位置のインクリメント 82…データ量チェック 83…アダプテーションデータ追加の確認 91…ネットワークのスタート 92…クライアントのメインスレッドの入力待ち 94…クライアントのメインスレッドのアプリケーショ
ンスタート 95…クライアントのメインスレッドのHTTPスレッ
ドの作成 96…クライアントのメインスレッドでのHTTPスレ
ッドへの通信 100…クライアントのHTTPスレッドの初期化 101…クライアントのHTTPスレッドでの入力待ち 103…クライアントのHTTPスレッドでのコマンド
及びURLの解釈 104…クライアントのHTTPスレッドでのGET命
令の生成 105…クライアントのHTTPスレッドでのHTTP
転送 106…クライアントのHTTPスレッドでの表示 110…クライアントのストリームスレッドでの初期化 111…クライアントのストリームスレッドでの遅延情
報待ち 112…クライアントのストリームスレッドでのストリ
ームデータ受信 113…クライアントのストリームスレッドの削除 121…クライアントのデータ受信での初期化 122…クライアントのデータ受信での受信データ取り
出し 123…クライアントのデータ受信でのアダプテーショ
ンチェック 124…クライアントのデータ受信でのアダプテーショ
ンフラグチェック 125…クライアントのデータ受信でのデータ格納位置
チェック 126…クライアントのデータ受信での取得済みデータ
チェック 127…クライアントのデータ受信でのエラーチェック 128…クライアントのデータ受信でのエラー確認 129…クライアントのデータ受信でのデータ書き込み 130…クライアントのデータ受信でのデータ情報更新 131…クライアントのデータ受信での上位レイヤとの
インタフェース 132…クライアントのデータ受信での遅延情報設定 133…クライアントのデータ受信でのアダプテーショ
ン取得フラグセット 134…クライアントのデータ受信でのデータ遅延量チ
ェック 135…クライアントのデータ受信での上位レイヤへの
エラー情報伝達 140…クライアントのIGMPスレッドでの初期化 141…クライアントのIGMPスレッドでの入力待ち 142…クライアントのIGMPスレッドでのJOIN
命令生成 143…クライアントのIGMPスレッドでの受信スレ
ッドの生成。
DESCRIPTION OF SYMBOLS 1 ... Multimedia server 2 ... Router 3 ... Wireless LAN access point 4 ... Client 5 ... Data processing layer 10 of this invention ... Stream 11 ... Output data 12 ... Segmented data 13 ... Header 14 ... Adaptation data 15 ... Data 16 ... Data 17 ... Data 18 ... Fragmented data 20 ... Code 21 indicating the head of the header 21 ... Code 22 indicating the size of the header 23 ... Code 23 indicating the size of the data following the header 23 .Code 24 indicating the attribute of the data Reference numeral 25 denotes a data branch number 26 Reference numeral 26 denotes an adaptation data size Reference numeral 27 denotes a communication delay amount Reference numeral 30 denotes the number of times the same data is transferred 30 Multimedia multicast server 31 ... Multicast router 41 ... Initial setting of server main thread 2. Creation of an HTTP thread by the server main thread 43 ... Waiting for input of the server main thread 44 ... Communication of the server main thread to the HTTP thread 46 ... Creation of an IGMP thread by the server main thread 47 ... Creation of the server main thread Communication to IGMP thread 50 Initialization of HTTP thread of server 51 Waiting for input in HTTP thread of server 52 Request to delete HTTP thread of HTTP thread of server 53 Creation of stream thread in HTTP thread of server 54 URL interpretation in HTTP thread 55 HTTP data creation in server HTTP thread 56 HTTP data transfer in server HTTP thread 60 Initialization in server stream delivery thread 61 Server stream Stream delivery in delivery thread 62 ... Stream delivery thread deletion request in server stream delivery thread 63 ... Initialization in server IGMP thread 64 ... Input waiting in server IGMP thread 65 ... URL interpretation in server IGMP thread 66: Stream status confirmation by IGMP thread of server 69: Stream thread creation by IGMP thread of server 71: Initialization 72: Initialization of distribution data 73: Setting of delay amount and number of repetitions 74: Writing of adaptation data 75 ... Initialization of delay amount counter 76 ... Reading of data 77 ... Adding header to data 78 ... Writing of data to output buffer 79 ... Increment of delay amount counter 80 ... Confirmation of delay amount setting 81 ... Increment of transmission data position 82 ... Data amount check Check 83: Addition of adaptation data 91: Start of network 92: Waiting for input of client main thread 94: Start of application of client main thread 95: Creation of HTTP thread of client main thread 96: With client main thread Communication with the HTTP thread 100: initialization of the client HTTP thread 101: waiting for input by the client HTTP thread 103: interpretation of commands and URLs by the client HTTP thread 104: generation of GET instructions by the client HTTP thread 105: HTTP in the HTTP thread of the client
Transfer 106 Display on client HTTP thread 110 Initialization on client stream thread 111 Waiting for delay information on client stream thread 112 Reception of stream data on client stream thread 113 Deletion of client stream thread Reference numeral 121: Initialization upon reception of data by the client 122: Extraction of reception data upon reception of data by the client 123: Adaptation check upon reception of data by the client 124: Adaptation flag check upon reception of data by the client 125: Upon reception of data by the client Data storage position check 126 ... Acquired data check at client data reception 127 ... Error check at client data reception 128 ... Error confirmation in data reception of client 129 Data writing in client data reception 130 Data information update in client data reception 131 Interface with upper layer 132 in client data reception 132 Client data reception Delay information setting 133: Adaptation acquisition flag set at client data reception 134: Data delay amount check at client data reception 135: Error information transmission to upper layer at client data reception 140: Client IGMP thread Initialization 141: Waiting for input in the client IGMP thread 142: JOIN in the client IGMP thread
Instruction generation 143: Generation of a reception thread in the IGMP thread of the client.

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】ネットワークインタフェイスと情報処理を
制御する制御手段と情報記憶手段とを有するサーバであ
って、上記制御手段は、上記インタフェイスによって取
得したストリームを複数パケットデータに細分化して該
各データに連続したシーケンス番号を含むヘッダを付加
し、遅延量若しく上記1のパケットデータの転送回数の
少なくとも何れか一方を設定して該遅延量若しくは該転
送回数の情報を含むアダプテーションションを作成して
出力し、上記シーケンス番号に従って連続する上記デー
タを上記遅延量若しくは上記転送回数上記情報記憶手段
に読み込み、上記読み込んだパケットを多重化して上記
インタフェイスに出力し、上記最初に読み込んだデータ
の次のデータから上記データの読み込みを行い多重化す
る処理を繰り返して行う処理を制御することを特徴とす
るサーバ。
1. A server having a network interface, control means for controlling information processing, and information storage means, wherein said control means divides a stream acquired by said interface into a plurality of packet data, A header including a continuous sequence number is added to the data, and at least one of the delay amount and the number of transfers of the one packet data is set to create an adaptation including the information of the delay amount or the number of transfers. And reads the continuous data in accordance with the sequence number into the information storage means, multiplexes the read packet and outputs the multiplexed packet to the interface. Repeat the process of reading and multiplexing the above data from the data of Server and controlling the processing performed.
【請求項2】上記制御部は上記多重化したパケット出力
の際に上記アダプテーションを付加する処理をさらに制
御することを特徴とする上記請求項1記載のサーバ。
2. The server according to claim 1, wherein the control unit further controls a process of adding the adaptation at the time of outputting the multiplexed packet.
【請求項3】ネットワークに接続されるサーバに情報配
信方法を実現させるためのプログラムであって、上記サ
ーバはネットワークインタフェイスと情報処理を制御す
る制御手段と情報記憶手段とを有し、上記情報記憶手段
は1のストリームを細分化したパケットであって、該ス
トリーム構成に従って連続したシーケンス番号を含むヘ
ッダ有する複数のパケットを記憶し、上記情報配信方法
は、遅延量を設定して該遅延量情報を含むアダプテーシ
ョンションを作成して上記インタフェイスに出力するス
テップと、上記シーケンス番号に従って連続する上記デ
ータを上記遅延量の回数読み出す読み出しステップと、
上記読み出したパケットを多重化して上記インタフェイ
スに出力するステップと、上記最初に読み込んだデータ
の次のデータから上記データの読み出しステップと出力
ステップとを繰り返すステップとを有することを特徴と
する方法であるプログラム。
3. A program for causing a server connected to a network to implement an information distribution method, wherein the server has a network interface, control means for controlling information processing, and information storage means, The storage means stores a plurality of packets, each of which is a packet obtained by subdividing one stream and having a header including a continuous sequence number according to the stream configuration, wherein the information distribution method sets a delay amount and sets the delay amount information. Creating an adaptation including and outputting the same to the interface; anda reading step of reading the data continuous according to the sequence number the number of times of the delay amount;
Multiplexing the read packet and outputting the multiplexed packet to the interface; and repeating the data read and output steps from the next data after the first read data. A program.
【請求項4】上記遅延量に代えて、1のパケットデータ
の転送回数を設定して上記アダプテーションの作成を行
い、上記転送回数に従って上記データの読み出しステッ
プを行うことを特徴とする請求項3記載のプログラム。
4. The method according to claim 3, wherein the adaptation is created by setting the number of transfers of one packet data in place of the delay amount, and the step of reading the data is performed according to the number of transfers. Program.
【請求項5】上記情報配信方法は1のストリームを複数
のパケットに細分化し各パケットにシーケンス番号を含
むヘッダを付するステップも有することを特徴とする請
求項3乃至4に記載のプログラム。
5. The program according to claim 3, wherein the information distribution method further includes a step of subdividing one stream into a plurality of packets and attaching a header including a sequence number to each packet.
【請求項6】ネットワークインタフェイスと情報処理を
制御する制御手段と情報記録手段とを有する情報端末
に、上記インタフェイスを介して遅延量情報若しくは1
のパケットデータの転送回数を含むアダプテーションを
取得するステップと、上記インタフェイスを介して多重
化データを取得するステップと、上記データに多重化さ
れる各データのヘッダ情報と上記記憶手段に記憶される
データ取得履歴から該データを取得済みか判定するステ
ップと、取得されていないと判定されたパケットデータ
についてエラーが無いか確認し、読み込むステップと、
上記データ取得履歴に上記パケットデータの取得を書き
込むステップと、上記遅延量若しくは上記転送回数の情
報と上記データ取得履歴から到着状態を確認して、上記
取得データを上記インタフェイスに出力するステップと
を実行させることを特徴とするプログラム。
6. An information terminal having a network interface, control means for controlling information processing, and information recording means is provided with delay amount information or one-time information via the interface.
Obtaining an adaptation including the number of times of transfer of the packet data, obtaining multiplexed data via the interface, and storing header information of each data multiplexed with the data and the storage means. A step of determining whether or not the data has been acquired from the data acquisition history; and confirming that there is no error with respect to the packet data determined to have not been acquired, and a step of reading.
Writing the acquisition of the packet data in the data acquisition history, and confirming the arrival state from the data acquisition history and the information on the delay amount or the number of transfers, and outputting the acquired data to the interface. A program characterized by being executed.
【請求項7】上記処理は、上記データ内容にエラー確認
ステップでエラーありと判断された場合に、上記遅延量
若しくは上記転送回数の情報を参照して該データの再度
の取得可能性を判断するステップと、上記判断が可能性
なしの場合には上記インタフェイスにエラー情報を出力
し、可能性有りの場合には上記データ取得ステップに戻
るステップをさらに有することを特徴とする上記6記載
のプログラム。
7. In the above-mentioned processing, when it is determined that there is an error in the data content in the error confirmation step, the possibility of re-acquisition of the data is determined by referring to the information of the delay amount or the number of transfers. The program according to claim 6, further comprising: a step; and outputting error information to the interface when the determination is not possible, and returning to the data acquisition step when the determination is possible. .
JP2002149978A 2002-05-24 2002-05-24 Server, and program for realizing information distribution method Pending JP2003348102A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002149978A JP2003348102A (en) 2002-05-24 2002-05-24 Server, and program for realizing information distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002149978A JP2003348102A (en) 2002-05-24 2002-05-24 Server, and program for realizing information distribution method

Publications (1)

Publication Number Publication Date
JP2003348102A true JP2003348102A (en) 2003-12-05

Family

ID=29767939

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002149978A Pending JP2003348102A (en) 2002-05-24 2002-05-24 Server, and program for realizing information distribution method

Country Status (1)

Country Link
JP (1) JP2003348102A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021061556A (en) * 2019-10-08 2021-04-15 ヤマハ株式会社 Wireless transmitter, wireless receiver, wireless system, and wireless transmission method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021061556A (en) * 2019-10-08 2021-04-15 ヤマハ株式会社 Wireless transmitter, wireless receiver, wireless system, and wireless transmission method
JP7392374B2 (en) 2019-10-08 2023-12-06 ヤマハ株式会社 Wireless transmitting device, wireless receiving device, wireless system, and wireless transmitting method

Similar Documents

Publication Publication Date Title
EP2365450B1 (en) Embedding a session description message in a real-time control protocol (RTCP) message
US7289500B1 (en) Method and system for reliable multicast data transmission
RU2371863C2 (en) Response mechanism in process of data recovery in &#34;point-to-point&#34; mode for transfer systems &#34;point-to-multipoint&#34;
EP2103083B1 (en) System and method for combining pull and push modes
JP5485134B2 (en) Robust file cast for mobile TV
US9673996B1 (en) Redirection of a streaming media session in an anticipated failover scenario
KR101001514B1 (en) Transmission/reception system and receiving device
WO2012171507A1 (en) Method and device for transmitting data file to client
JP2006521643A (en) System and method for transmitting media-based files
US20150067110A1 (en) Media Playing Method, Apparatus, and System
WO2016136489A1 (en) Reception apparatus, reception method, transmission apparatus and transmission method
US20050125549A1 (en) Information processing device and method, and computer program
EP2445162B1 (en) Method For Adaptive Streaming
JP3589343B2 (en) Frame transmission method and frame transmission device
RU2372647C2 (en) Introduction of session description message to real-time transport control protocol message (rtcp)
WO2017128902A1 (en) Streaming media multicast system and method using multiple ring topology most networks
WO2010028601A1 (en) Method, system and equipment for transmitting media contents by means of files
WO2002056549A1 (en) Communication device and communication method
JP2003348102A (en) Server, and program for realizing information distribution method
Griwodz et al. Multicast for savings in cache-based video distribution
JP2006033026A (en) Method for receiving multimedia information and program for realizing it, multimedia receiver
KR100779038B1 (en) Iptv system and channel establishing method using multi-channel streaming server
JP5096027B2 (en) Content distribution system and content distribution method
JP2016531485A (en) Synchronization method by multimedia player while processing items of multimedia content transmitted by MBMS service
US20240163321A1 (en) Systems and methods for multicasting live content