JP2010218013A - データ配信システム - Google Patents

データ配信システム Download PDF

Info

Publication number
JP2010218013A
JP2010218013A JP2009061311A JP2009061311A JP2010218013A JP 2010218013 A JP2010218013 A JP 2010218013A JP 2009061311 A JP2009061311 A JP 2009061311A JP 2009061311 A JP2009061311 A JP 2009061311A JP 2010218013 A JP2010218013 A JP 2010218013A
Authority
JP
Japan
Prior art keywords
data
server
source
communication
server device
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.)
Granted
Application number
JP2009061311A
Other languages
English (en)
Other versions
JP5532638B2 (ja
Inventor
Akihiro Miwa
明宏 三輪
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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2009061311A priority Critical patent/JP5532638B2/ja
Publication of JP2010218013A publication Critical patent/JP2010218013A/ja
Application granted granted Critical
Publication of JP5532638B2 publication Critical patent/JP5532638B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】ソース装置とサーバ装置の通信回線が中断してもクライアント装置に配信されるデータを途切れさせないようにしたデータ配信システムの提供。
【解決手段】このシステムでは、音声データなどのリアルタイムデータをソース装置RCaからサーバ装置SVを介してクライアント装置CLa1,CLa2に配信する。ソースRCaは、リアルタイムデータをバッファ2Bに実時間レートで順次入力してバッファリングし、サーバSVと通信可能な通常状態ではバッファリングしたデータを実時間レートで読み出しサーバSVに転送し、サーバSVと通信不能になり再び通信可能状態に回復すると、通信不能状態の間にバッファメモリ2Bに蓄積された音声データを実時間レートより速いレートで読み出してサーバSVに転送する。サーバSVは、ソースRCaから転送されてくるデータをバッファリングし実時間レートでクライアントCLa1,CLa2に配信する。
【選択図】図1

Description

この発明は、音声データなどのリアルタイムデータを、データ供給源であるソース装置からサーバ装置を介してクライアント装置に配信するデータ配信システムに関する。
従来より、サーバ装置から音声データなどのデータをクライアント装置に配信するシステムが知られている。例えば、特許文献1の録音データ配信システムでは、リアルタイムデータではないが、録音データをサーバ装置にアップし、その後クライアント装置で聴取することができる。また、特許文献2のオーディオ配信システムでは、サーバ装置から複数のクライアント装置にオーディオデータをストリーミング配信する際、オーディオデータバッファ量が目標値を維持できるよう読出速度を制御し、全てのクライアント装置の再生を同期させることができる。さらに、携帯用電話機、「スカイプ」と呼ばれるインターネット電話サービス及びパーソナルコンピュータ(PC)を使い、インターネット上で主として音声データで番組をリアルタイムに配信するネットラジオシステムがある。
特開2005−316891号公報 特開2005−148565号公報
ここで、音声データなどのリアルタイムデータを情報発信元のソース装置からサーバ装置を介してクライアント装置に配信することを考えた場合、ソース装置とサーバ装置の通信回線が中断している間は情報を発信すること自体ができない。例えば、ソース装置が携帯用電話機の場合、電車で山間部の電波の届きにくいところにさしかかるとサーバ装置との通信が中断して中継できなくなり、後で通信が再開したときに「いやー先ほどの景色はすごかったですね。生でお伝えできなかったのが残念です。」というしかない。
この発明は、このような事情に鑑み、音声データなどのリアルタイムデータをソース装置からサーバ装置を介してクライアント装置に配信する際、ソース装置とサーバ装置の通信回線が中断してもソース装置からクライアント装置に配信されるデータを途切れさせないようにすることができるデータ配信システムを提供することを目的とする。
この発明の主たる特徴に従うと、ソース装置(RC:例えば、RCa)、サーバ装置(SV)及び1以上のクライアント装置(CL:例えば、CLa1,CLa2)から成るデータ配信システムであって、ソース装置(RC)は、リアルタイムデータをバッファリングするソースバッファリング手段(2B;R3)と、サーバ装置(SV)との間の通信状態を検知するソース通信状態検知手段(R6,R7)と、ソース通信状態検知手段によりサーバ装置(SV)との通信が可であると検知されている間(R4=YES)、ソースバッファリング手段によりバッファリングされたデータを実時間レートで順次サーバ装置(SV)に転送する第1転送手段(R5)と、ソース通信状態検知手段によりサーバ装置(SV)との通信が不可となった後に再び可となったことが検知されたときに(R6→R4=NO→R8=YES)、第1転送手段によるデータ転送に先立って、通信不可の間にソースバッファリング手段によりバッファリングされたデータを実時間レートより速いレートでサーバ装置(SV)に転送する第2転送手段(R9)とを具備し、サーバ装置(SV)は、第1転送手段(R5)及び第2転送手段(R9)により転送されるデータ(Drs,Drb)をバッファリングするサーババッファリング手段(SB:S7,S8)と、サーババッファリング手段によりバッファリングされたデータ(Ds)を実時間レートでクライアント装置(CL)に配信するバッファリングデータ配信手段(S11)とを具備するデータ配信システム〔請求項1〕が提供される。なお、括弧書きは、理解の便のために付記した実施例の参照記号や用語等であり、以下においても同様である。
この発明によるデータ配信システムにおいて、サーバ装置(SV)は、さらに、ソース装置(SV)との間の通信状態を検知するサーバ通信状態検知手段と、サーバ通信状態検知手段によりソース装置との通信が不可であることが検知されている間(S10=NO)、予め用意された別のコンテンツデータ(De)をクライアント装置(CL)に配信する別データ配信手段(S12)とを具備する〔請求項2〕ように構成することができる。
また、この発明によるデータ配信システムにおいて、サーバ装置(SV)は、さらに、第2転送手段(R8)により転送されるデータ(Drb)及びこのデータ転送に続く所定時間の間第1転送手段(R5)により転送されるデータ(Drs)の時間軸を実時間より短縮する速度変換手段(SA:S8)を具備し、サーババッファリング手段(SB:S7,S8)は、速度変換手段(SA)により時間軸が短縮されたデータをバッファリングする(SB:S8)〔請求項3〕ように構成することができる。
この発明によるデータ配信システムは(請求項1)、ソース装置(RC:例えば、RCa)、サーバ装置(SV)及び1以上のクライアント装置(CL:例えば、CLa1,CLa2)から成る。ソース装置(RC)は、音声や音楽、映像などのリアルタイムデータをバッファリングし(2B;R3)、通信可能な通常状態では、バッファリングしたデータ(Drs)を実時間レートでサーバ装置(SV)に転送するが(R5)、サーバ装置(SV)との通信が不可となった後に再び可となったことが検知されたときには(R6→R4=NO→R8=YES)、通信不可の間にバッファリングされたデータ(Drb)を実時間レートより速いレートでサーバ装置(SV)に転送する(R9)。サーバ装置(SV)は、ソース装置(RC)から実時間レートで転送される通常時(S5=YES→S6=NO)のデータ(Drs)及び実時間より速いレートで転送される通信復旧時(S4=YES)のデータ(Drb)をバッファリングし(S7,S8)、バッファリングされたデータ(Ds)を実時間レートでクライアント装置(CL)に配信する(S11)。
従って、この発明によれば、音声データなどのリアルタイムデータをソース装置からサーバ装置を介してクライアント装置に配信する際、ソース装置とサーバ装置の通信回線が中断してもソース装置からクライアント装置に配信されるデータは途切れさせないようにすることができる
また、この発明によるデータ配信システムでは、サーバ装置(SV)は、ソース装置(SV)との通信が不可である間(S10=NO)、予め用意された別のコンテンツデータ(De)をクライアント装置(CL)に配信する(S12)ようにしている(請求項2)。従って、この発明によれば、音声データなどのリアルタイムデータの配信を受けているクライアント装置に対して、ソース装置・サーバ装置間の通信が中断している間は、予め用意した別のコンテンツを配信することができ、例えば、音声データの番組を聴いているクライアントに、予め用意した別の音声データによる番組を聴いてもらうことができる。
さらに、この発明によるデータ配信システムでは、サーバ装置(SV)において、ソース装置(RC)・サーバ装置(SV)間の通信が再開した際に(S4=YES)ソース装置(RC)から実時間レートより速いレートで転送されるデータ〔通信不可の間、ソース装置(RC)でバッファリングされたデータDrb〕及びこのデータ転送に続く所定時間の間〔バッファリングデータDb(Pr〜Pw)が最小時間分になる(S6=YES)までの間〕実時間レートで転送されるデータ(Drs)の時間軸を実時間より短縮し(SA:S8)、時間軸が短縮されたデータ(Da)をバッファリングする(SB:S8)ようにしている(請求項3)。従って、この発明によれば、データが実時間レートでクライアント装置に配信されているにも拘わらず、ソース装置・サーバ装置間の通信再開時に、クライアント装置では、このデータに基づいて音声や音楽、映像などを高速に再生し、通信不可が復旧したときの遅れを回復して行きやがて最小の遅れをもつ元のデータ受信状態に復帰することができる。
この発明の一実施例によるデータ配信システムの構成例を示す。 この発明の一実施例によるソース装置データ転送処理フローの例を示す。 この発明の一実施例によるサーバ装置データ配信処理フローの例を示す。 この発明の一実施例によるサーバ装置でのバッファリング説明図である。 この発明の一実施例によるクライアント装置の動作説明図である。
〔システム構成例〕
図1は、この発明の一実施例によるシステム構成例を示し、図1(1)は、ソース装置のハードウエア構成例であり、図1(2)はデータ配信システムの全体構成例である。全体のデータ配信システムは、図1(2)に示すように、ソース装置RC:RCa;RCb;…、サーバ装置SV及びクライアント装置CL:CLa1,CLa2,…;CLb1,CLb2,…;…から構成され、参照記号“RC”,“CL”は、夫々ソース装置及びクライアント装置を代表的に示す。ソース装置RCは、携帯電話機や無線通信手段を備えた音声入力機能付きモバイルコンピュータのように携帯型通信端末装置が用いられ、図1(1)の例では、中央処理装置(CPU)1、ランダムアクセスメモリ(RAM)2、読出専用メモリ(ROM)3、外部記憶装置4、設定操作入力装置5、表示装置6、A/D変換回路7、D/A変換回路8、通信インターフェース(通信I/F)9等の要素を備え、これら要素1〜9はバス10を介して互いに接続される。
装置全体を制御するCPU1は、RAM2及びROM3と共に、各種制御プログラムに従って各種処理を実行するデータ処理部を構成し、各種制御プログラムに従い、タイマ11によるクロックを利用してソース装置データ送信処理を含む種々の処理を実行する。RAM2は、これらの処理に際して必要な各種データを一時的に記憶し、このための通常のワークエリアに加えて、サーバ装置SVに送信する音声データを順次保持し順次出力するバッファメモリ2Bを備えている。ROM3は、ソースデータ送信プログラムを含む各種制御プログラムや必要な制御データを記憶しておくことができる。
外部記憶装置4は、ハードディスク(HD)や、コンパクトディスク・リード・オンリィ・メモリ(CD−ROM)、フレキシブルディスク(FD)、光磁気(MO)ディスク、ディジタル多目的ディスク(DVD)、メモリカード等の記憶媒体を用いた記憶手段であり、必要な任意のデータを記録することができる。
設定操作入力装置(入力操作部)5は、各種設定操作を行うためのパネル操作部を有し、パネル操作部でのユーザによるパネル操作の内容を設定操作情報としてデータ処理部に導入する。表示装置(表示部)6は、これに接続されるディスプレイ(LCD等の表示器)の表示内容をデータ処理部からの指令に従って制御し、設定操作入力装置5の操作に対する表示援助を行い、また、映像データに基づく映像を表示することもできる。
A/D変換回路7は、ソース装置ユーザにより入力される音声を入力音声信号に変換するマイク装置12に接続され、マイク装置12からの入力音声信号をA/D変換して入力音声データをデータ処理部(バッファメモリ2B)に導入する。D/A変換回路8は、データ処理部(2B)で処理されソース装置外部に送信される送信音声データ、ソース装置外部から送られてくる外部音声データ或いはデータ処理部で生成された案内音声データをD/A変換して出力音声信号をスピーカ装置13に送り、スピーカ装置13から出力音声を放音させる。なお、D/A変換回路8及びスピーカ装置13は、このソース装置RCに必須の構成要素ではなく省略することができる。
通信I/F9は、インターネット、電話回線などの通信ネットワークCNに無線で接続される各種インターフェースであり、通信ネットワークCNに接続されるサーバ装置SVや他の通信端末と各種情報を授受することができる。データ配信システムが形成される場合には、通信ネットワークCNに、図1(2)のようにサーバ装置SVが接続され、ソース装置RCからサーバ装置SVに音声データが送信される。
サーバ装置SVのハードウエアは、図1(1)のソース装置RCと同様に構成されるが、A/D変換回路7、D/A変換回路8、マイク装置12及びスピーカ装置13は不要であり、典型的なサーバ装置SVでは、通信I/Fは通信ネットワークCNと有線で接続する。また、RAMに設けられるバッファメモリ(SB)には、ソース装置RCから送信される音声データが通信ネットワークCN及び通信I/Fを介して導入され、バッファメモリ(2B)から出力される音声データは、通信ネットワークCN及び通信I/Fを介してクライアント装置CLに送信される。
クライアント装置CLのハードウエアも、図1(1)のソース装置RCと同様に構成されるが、A/D変換回路7及びマイク装置12は不要であり、バッファメモリを設ける必要はなく、通信I/Fと通信ネットワークCNとの接続は無線でも有線でもよい。データ配信システムが形成される場合には、通信ネットワークCNには、図1(2)のように、ソース装置RCだけでなく、クライアント装置CLが接続され、ソース装置RCからの音声データがサーバ装置SVからクライアント装置CLに送信される。この場合、クライアント装置CLでは、通信I/Fから入力される音声データがD/A変換回路でD/A変換し、対応する音声をスピーカ装置から放音される。
〔データ配信システムの基本動作〕
1つのデータを配信する1つのデータ配信システムは、1つのソース装置RC、1つのサーバ装置SV及び1乃至複数のクライアント装置CLで成り立ち、図1(2)の例は、ソース装置A(RCa)・共通のサーバ装置(SV)・2台のクライアント装置A1,A2(CLa1,CLa2)により第1のデータ配信システムが形成され、ソース装置B(RCb)・共通のサーバ装置(SV)・2台のクライアント装置B1,B2(CLb1,CLb2)により第2のデータ配信システムが形成されることを示している。
第1のデータ配信システムを例にして、この発明の一実施例によるデータ配信システムの基本的な構成を説明すると、このデータ配信システムは、ソース装置RCa、サーバ装置SV及び1以上のクライアント装置CLa1,CLa2から成り、音声データなどのリアルタイムデータをソース装置からサーバ装置を介してクライアント装置に配信する。ソース装置RCaは、音声入力手段12−7などから入力されるリアルタイムデータをバッファメモリ2Bに実時間レートで順次入力してバッファリングし、サーバ装置SVと通信可能な通常状態では、バッファメモリ2Bによりバッファリングしたデータを先頭から実時間レートで読み出しサーバ装置SVに転送する。ここで、サーバ装置SVと通信不能状態になると、バッファメモリ2Bからの読出しを停止し、バッファメモリ2Bにはリアルタイムデータが蓄積され、サーバ装置SVと通信可能な元の通常状態に回復すると、通信不能状態の間にバッファメモリ2Bに蓄積されバッファリングされたデータを、読出し停止直後の部分(通信不能になる直前に最後にサーバ装置SVに送られたデータ部分の直後のデータ部分)から、実時間レートより速いレートで読み出してサーバ装置SVに転送する。サーバ装置SVは、ソース装置RCaから通常状態時に実時間レートで転送されてくるデータ及び通信回復時に実時間レートより速いレートで転送されてくるデータを順次サーバ装置SVのバッファメモリに入力してバッファリングし、バッファリングされたデータを実時間レートでクライアント装置CLa1,CLa2に配信する。
なお、サーバ装置SVは、ソース装置RCaとの通信が不可である間、予め用意された別のデータをクライアント装置CLa1,CLa2に配信することができる。また、通信不可の間にソース装置RCaでバッファリングされ、ソース装置RCa・サーバ装置SV間の通信が再開した際に高速レートで転送されてくるデータの時間軸を実時間より短縮する変換(速度変換という)を行い、時間軸短縮の速度変換がなされたデータをバッファリングする。つまり、サーバ装置SVからクライアント装置CLに実時間レートでデータが配信されるにも拘わらず、ソース装置RCa・サーバ装置SV間の通信再開時に、クライアント装置CLは、速度変換されたデータに基づいて音声などを高速に再生し、通信不可が復旧したときの遅れを回復して行きやがて最小の遅れになると元のデータ受信状態に復帰するようになる。
〔各装置の動作〕
以下、図1(1)のように、入力されるリアルタイムデータに音声データを用いた場合の各装置の動作を説明する。図2、図3及び図4、図5は、この発明の一実施例によるデータ配信システムにおけるソース装置、サーバ装置、クライアント装置の動作を説明するための図であり、図2、図3及び図5(1)は、それぞれ、ソース装置データ転送処理、サーバ装置データ配信処理及びクライアント装置データ受信処理の例を表わすフローチャートを示す。ソース装置RCでは、所定の操作によりソース装置データ転送処理が開始し、サーバ装置SVにアクセスし番組の公開(データ配信サービス実行)を指示する操作があると、CPU1は、図2のステップR1で、ソース装置RCをサーバ装置SVに接続し番組の公開を指示する。これにより、ソース装置RCからの音声データを配信するデータ配信システムの動作が開始する。
これに対して、サーバ装置SVでは、図3のステップS1で、CPUがソース装置RCからの接続を受け付け、番組公開の指示に従って、これからソース装置RCから転送される音声データの配信サービスを配信可能な番組に追加し、予めサーバ装置SVに登録されているソース装置RCの番組情報に従って番組表示データを作成すると共に、ソース装置RC用音声バッファ(図4:SB)をクリアし、ソース装置RCからの音声データの受信、バッファリング及びクライアント装置CLへの配信の準備をする。
ソース装置RCでは、ステップR1でサーバ装置SVに接続して番組公開を指示した後、ステップR2で、バッファメモリ2Bをクリアして音声入力手段12−7から入力される音声データのバッファリングの準備をする。そして、音声データが入力されると、ステップR3に進み、入力される音声データを逐次取得し、バッファメモリ2Bに積んでいく。つまり、番組公開を指示するとマイク12から入力された音声がA/D変換回路7でA/D変換され、RAM(主記憶装置)2のバッファメモリ2Bに蓄えられる。バッファメモリ2Bは、音声バッファとも呼ばれ、入力音声データを、順次、録音ポインタ(書込みポインタともいう)が指示する位置に実時間レートで書き込んで行く。録音ポインタは、サーバ装置SVとの通信の可否によらず、時間経過に従ってインクリメントされ、音声データの書込み位置が順次進められていく。
次のステップR4では、ソース状態フラグは「正常」であるか否かを判定する。ここで、ソース状態フラグは、サーバ装置SVとの通信状態を検出するために設けられた通信状態検出手段の検出出力に応じてソース装置RCとサーバ装置SVとの間の通信が可であるか不可であるかを示すフラグであり、サーバ装置SVと通信可の状態であれば、ソース状態フラグ=「正常」であり、音声バッファ2Bの読出しポインタは、時間経過(録音ポインタのインクリメント)に従ってインクリメントされ音声データ読出し位置が順次進められる。なお、ソース状態フラグ=「正常」の場合、読出しポインタが指示する読出し位置から、録音ポインタが指示する書込み位置の直前までは、例えば、ストリーム転送1回分の音声データが書き込まれる。一方、サーバ装置SVと通信不可の状態になると、ソース状態フラグ=「中断」となり、読出しポインタのインクリメントを停止し音声データ読出しを中断する。これによって、ソース装置RC・サーバ装置SV間の通信が中断している間、音声データが音声バッファ2B内に録音されていく。
さて、ステップR4でソース状態フラグが「正常」であると判定したときは(R4=YES)、ステップR5に進み、読出しポインタの指示に従ってバッファ2B内の音声データDrsを実時間レートで読み出し、通信I/F9から無線で通信ネットワークCNを介してサーバ装置SVにストリーム転送(ストリーミング転送ともいう)する。次のステップR6では、サーバ装置SVとの通信状態をチェックし、不良であればソース状態フラグを「中断」に変更し、良であれば「正常」を維持する。そして、ステップR7で音声バッファ2Bの読出しポインタを更新した上、ステップR3に戻る。
一方、ソース状態フラグが「正常」ではなく「中断」であると判定したときは(R4=NO)、ステップR8に進み、サーバ装置SVとの通信状態が良好であるか否かを判定し、やはり不良であれば(R8=NO)ステップR3に戻る。ステップR8で、サーバ装置SVとの通信状態が良好であると判定したとき即ちサーバ装置SVとの通信状態が回復したときには(R8=YES)、ステップR9に進み、中断開始時点から音声バッファ2B内に蓄えられた音声データDRbを、バルク転送により実時間レートより速く一気にサーバ装置SVに送り、次のステップR10でソース状態フラグを「正常」にする。そして、ステップR7で音声バッファ2Bの読出しポインタを更新した上、ステップR3に戻る。
ステップR3に戻った後は、音声入力の進行及び通信状態に応じて、上述したステップR3〜R10の処理を繰り返し、番組公開の終了を指示する操作がありサーバ装置SVでこの指示が確認されると(図示せず)、このソース装置データ転送処理を終了する。
クライアント装置CLでは、所定の操作によりクライアント装置データ受信処理が開始し、サーバ装置SVにアクセスし配信可能な番組のリストを要求する操作があると、CPUは、図5(1)のステップC1で、クライアント装置CLをサーバ装置SVに接続し配信可能番組リストを要求する。これにより、クライアント装置CLはこのデータ配信システムに参加することができる。
サーバ装置SVでは、前述したように、図3のステップS1で、CPUがソース装置RCからの接続を受けてソース装置RCからの音声データ配信を準備をした後、クライアント装置CLからのリスト要求を受信すると、次のステップS2で、クライアント装置CLからの要求に応じて番組リストをクライアント装置CLに返送する。この番組リストは、各ソース装置RCからの番組公開の指示に従って作成された番組表示データに基づいて、現在サーバ装置SVから任意のクライアント装置CLに配信可能な番組(音声データ配信サービス)をリストで表わしたものであり、サーバ装置SVと各ソース装置RCとの間の現在の通信状態を示すサーバ状態情報(Cn)などの所要の参考情報が含まれている。
クライアント装置CLでは、これ応じて、図5(1)のステップC1でサーバ装置SVから配信可能番組リストを取得すると、取得した配信可能番組リストを表示装置のディスプレイに番組選択画面として提示し、クライアント装置ユーザに所望の番組を選択させる。図5(2)は、番組選択画面の例を示し、この例では、現在公開中の番組の名称やパーソナリティ(ソース装置ユーザのニックネーム)などの基本情報の外に、各ソース装置RCにより番組公開が指示された時から現在までの時間を例えば“時:分”で表わす「経過時間」、上述したサーバ状態情報Cn、各ソース装置RCから転送されてくる音声データの「音質」、「リスナーの人数」(現在当該番組の配信を受けているクライアント装置CLの数)などのリアルタイムの参考情報が、表示項目に含まれている。なお、サーバ装置SVには、サーバ装置SVとソース装置RCとの通信状態を検出し監視する通信状態監視手段が設けられ、サーバ状態情報は、通信状態監視手段により検出された通信状態に応じて、サーバ装置SV・各ソース装置RC間の通信状態を“Good”(良好、正常)、“disConnected”(中断)などの「状態」で表わされる。そこで、表示された番組選択画面に対して、クライアント装置ユーザにより番組選択操作があると、次のステップC3で、番組選択操作に応じて、選択された番組の配信をサーバ装置SVに要求する。
これに対して、サーバ装置SVでは、図3のステップS3で、クライアント装置CLからの番組配信要求に応じて、配信が要求された番組の配信先(リスナー)に当該クライアント装置CLを追加し、各番組配信処理段階SPに進み、要求された番組について配信処理を行う。各番組配信処理段階SPは、図3に示すように、ソース装置RCからの音声データをバッファメモリ(SB)に積む前半のバッファリング処理部分SP1=ステップS4〜S8と、バッファメモリ(SB)から音声データをクライアント装置CLにストリーム配信する後半のストリーム配信処理部分SP2=ステップS9〜S12とから成る。
番組配信処理段階SPでは、まず、音声データの受信状態を調べ、最初のステップS4進んでバッファリング処理SP1を開始する。ステップS4では、バルク転送により音声データが届いたか否かを判定し、音声データのバルク転送がないときは(S4=NO)、ステップS5に進み、ストリーム転送により音声データDrsが届いたか否かを判定する。ここで、音声データDrsがストリーム転送されてきたときは(S5=YES)、さらに、ステップS6に進んで、バッファメモリ(SB)に蓄積されている音声データ(Db)を調べ、既に受信した音声データがバッファメモリ(SB)に溜まっているか否かを判定し、溜まっていないときは(S6=NO)、ステップS7で、ストリーム転送で届いた音声データをそのままバッファメモリ(SB)に積む。
一方、ステップS4においてバルク転送で音声データDrbが届いたと判定したとき(S4=YES)、或いは、ステップS6において、ストリーム転送で音声データDrsが届いた際にバッファメモリ(SB)に既受信データが溜まっていると判定したときには(S6=YES)、ステップS8で、バルク転送或いはストリーム転送で届いた音声データDrb,Drsを速度変換した上でバッファメモリ(SB)に積む。
図4は、この発明の一実施例によるサーバ装置におけるバッファリングを説明するための図であり、ここで、サーバ装置のバッファリング機能を図4に従って説明しておく。サーバ装置SVは、ソース装置RCからの音声データDrs,Drbをバッファリングし、バッファリングされた音声データDsをクライアント装置CLにストリーム配信するために、速度制御部(時間制御部ともいう)SA、バッファメモリSB、バルク転送検出部SC及び溜まり検出部SDの機能をデータ処理部に備えている。
速度制御部SAは、通常は、ソース装置RCから実時間レートでストリーム転送される音声データDrsをそのままバッファメモリSBに入力するように動作する。しかしながら、サーバ装置SV・ソース装置RC間の通信が中断した後に回復した際は、音声データのバルク転送をバルク転送検出部SCにより検出することにより速度変換機能が起動し、ソース装置RCから回復当初に高速レートでバルク転送されてきた音声データDrb及びその後実時間レートでストリーム転送される音声データDrsの時間軸を実時間より短縮する速度変換、つまり、いわゆる話速変換或いは早回しを行う。そして、速度制御部SAの速度変換機能により時間軸が短縮されて速度変換された音声データDaはバッファメモリSBに入力される。溜まり検出部SDは、バッファメモリSBに蓄積されている音声データDbを調べ、所定の最小時間分(クライアント装置CLへのストリーム配信1回分)を超える音声データDbが蓄積されていると「溜まっている」と判定する。速度制御部SAの速度変換機能は、バッファメモリSBに音声データDbが溜まっている間、実行され、音声データDbが所定の最小時間分になり、溜まり検出部SDで音声データDbの「溜まりがなくなった」と判定されると停止する。つまり、通信が回復してから通常の動作に戻るまでの間(この間の動作状態を追いかけ状態という)、ソース装置RCからの音声データDrb、Drsを速度変換したデータDaをバッファメモリSBに入力する。
バッファメモリSBは、サーバ装置SVのRAM(主記憶装置)内に設けられ、データバッファとも呼ばれ、速度制御部SAから入力される音声データDrs,Daを書込みポインタPwが指示する位置に書き込む。書き込みを行うと、書込みポインタPwは、書き込まれた時間分だけインクリメントされる。従って、ソース装置RCとの通信が途絶えている(中断している)間は音声データDrs,Drbが送られてこないため書込みポインタは更新されない。一方、クライアント装置CLに対して、ソース装置RCとの通信が正常な間は、時間経過に応じて再生ポインタ(読出しポインタともいう)Prがインクリメントされ、再生ポインタPrが指示する位置から音声データDsを取り出してストリーム配信し、ソース装置RCとの通信が中断している間は、再生ポインタPrのインクリメントはなく、データバッファSBからの音声データDsの読出しもない。
さて、ステップS5で、音声データがストリーム転送されてこないと判定したとき(S5=NO)、ステップS7で、ストリーム転送により届けられた音声データDrsをそのままデータバッファSBに積む処理を終えたとき、或いは、ステップS8で、バルク転送乃至ストリーム転送により届けられた音声データDrb,Drsを速度制御部SAの速度変換機能に従って速度変換し,速度変換された音声データDaをデータバッファSBに積む処理を終えたときは、一旦、バッファリング処理SP1を終え、ステップS9に進む。
ステップS9では、ストリーム配信周期のタイミングに達したか否かを判定し、ストリーム配信タイミングに達していないときは(S9=NO)、バッファリング処理SP1の第1ステップS4に戻り、上述したステップS4〜S8のバッファリング処理SP1を繰り返す。一方、ストリーム配信タイミングに達すると(S9=YES)、ステップS10に進み、ストリーム配信処理SP2を開始する。
ステップS10では、通信状態監視手段によりソース装置RCとの通信状態が良好であるか否かを判定し、良好であれば(S10=YES)、ステップS11に進んで、データバッファSB内の再生ポインタPrが指示する位置にある音声データDsを読み出してクライアント装置CLにストリーム配信し、その後、ステップS4に戻る。また、ソース装置RCとの通信が中断しているときは(S10=NO)、ステップS12に進み、予めサーバ装置SVに用意されたコンテンツに基づく別番組の音声データDeをクライアント装置CLにストリーム配信し、その後、ステップS4に戻る。ここで、別番組の音声データDeとしては、例えば、通信中断時用に予めメッセージコンテンツや音楽コンテンツを録音しておき、ソース装置RCとの通信が中断すると、「ただいま通信回線が悪く中継できません。しばらくお待ち下さい」などのメッセージを繰り返し流すようにしたり、「ただいま通信回線が悪く中継できません。しばらく音楽をお聴き下さい」などメッセージを繰り返し挟みつつ音楽を流すようにする。
ステップS4に戻った後は、ソース装置RCからのデータ転送状態、データバッファSBのデータ溜まり具合及びソース装置RCとの通信状態に応じて、上述したステップS4〜S12の処理を繰り返し、ソース装置RCから番組公開の終了指示があるとクライアント装置CLに当該番組の終了を通知した上(図示せず)、当該番組に関する番組配信処理SPを終了する。
これに対して、クライアント装置CLでは、図5のステップC4で、ソース装置RCを発信源としサーバ装置SVを介してストリーム配信されてくる音声データDs或いはサーバ装置SVに用意されたコンテンツに基づいてサーバ装置SV自身からストリーム配信されてくる別番組の音声データDeを受信する。次のステップC5では、受信した音声データDs,DeをD/A変換回路及びスピーカで再生する。これにより、サーバ装置SVから番組終了の通知があるまでステップC4,C5の処理を繰り返し、クライアント装置CLのユーザは、自身が選択した番組を楽しむ。そして、サーバ装置SVから番組終了の通知を受けると、このクライアント装置データ受信処理を終了する。
〔種々の実施態様〕
以上、この発明の好適な一実施例について説明したが、これは単なる一例であって、この発明は、発明の精神を逸脱しない範囲で種々の変更が可能であり、種々の態様で実施することができる。例えば、サーバ装置へのストリーム転送或いはクライアント装置へのストリーム配信については、一般的な手法を用いてなされる。送り手が受け手に対して、短い一定周期(例えば、10msec)毎や、所定サンプル数(4800サンプル)毎に、音声データを送る。その際、送り手側がTCPなどのプロトコルで送り、それが受け手で受信されたか毎回確認するようにしてよい。或いは、RTPプロトコルのように、送り手側がUDPなどの相手の受信が確認できないプロトコルで送るとともに平行してTCPなどで受け手での確認するようにしてよい。
或いは、受け手がTCPなどの手法で小まめに送り手側に要求を出すようにしてもよい。受け手は要求がこなくなったことで通信の障害を知ることができる。
通信状態の検出については、電波の状態から推測してもよい。或いは、送信側では、一旦通信を試みてそれが失敗したことで知るようにしてもよい。或いは、受信側では、所定タイミングで届くはずのデータが届かないことで知るようにしてもよい。
サーバ装置からデータバッファ(SB)内のデータをクライアント装置にストリーム配信する条件については、実施例ではソース装置と通信良好(S10=YES)としているが、データバッファ(SB)内に蓄積されたデータ(Db)が無いか所定時間分以下のとき(ポインタPr,Pwが一致又は隣接)としてもよい。
実施例では、速度変換(時間軸短縮)を行って、通信障害から回復したときの遅れを徐々に回復し、やがて、ソース装置とクライアント装置の遅れを最小になるようにしたものを示したが、速度変換(時間軸短縮)を行わなくてもよい。速度変換をしない場合には、障害から回復したときの遅れはそのまま残るが、サーバ装置に設けられたデータバッファ(SB)の大きさ分だけの遅れは許容される。
実施例では、サーバ装置で速度変換しているが、ソース装置で、バルク転送する際に速度変換を行うようにしてもよい。
音声データの速度変換方法は一般的なものが用いられる。つまり、音声データを時間方向で継ぎ接ぎするものであり、例えば、話速変換のように、音量変化の形状に則した窓をかけて音量クロスフェードしたり、無音部分を考慮して時間軸を短縮する。
配信されるデータは、音声に限らず、映像、演奏データ(MIDI)でもよい。映像の場合、実時間より速度を速めるのにコマ落としをする。また、演奏データ(MIDI)の場合は、イベントをデルタタイムと共に記録してバッファリングすると共に、実時間より速度を速める際には、デルタタイムのもとになるテンポを記録時のものから早める。
RC:RCa,RCb,… ソース装置、
SV サーバ装置、
CL:CLa1,CLa2,…;CLb1,CLb2,… クライアント装置、
Drs,Drb ストリーム転送及びバルク転送される音声データ、
Da,Db 速度変換された音声データ及びバッファリングされている音声データ、
Ds,De ストリーム配信されるバッファからの音声データ及び別番組の音声データ。

Claims (3)

  1. ソース装置、サーバ装置及び1以上のクライアント装置から成るデータ配信システムであって、
    ソース装置は、
    リアルタイムデータをバッファリングするソースバッファリング手段と、
    サーバ装置との間の通信状態を検知するソース通信状態検知手段と、
    ソース通信状態検知手段によりサーバ装置との通信が可であると検知されている間、ソースバッファリング手段によりバッファリングされたデータを実時間レートで順次サーバ装置に転送する第1転送手段と、
    ソース通信状態検知手段によりサーバ装置との通信が不可となった後に再び可となったことが検知されたときに、第1転送手段によるデータ転送に先立って、通信不可の間にソースバッファリング手段によりバッファリングされたデータを実時間レートより速いレートでサーバ装置に転送する第2転送手段と
    を具備し、
    サーバ装置は、
    第1転送手段及び第2転送手段により転送されるデータをバッファリングするサーババッファリング手段と、
    サーババッファリング手段によりバッファリングされたデータを実時間レートでクライアント装置に配信するバッファリングデータ配信手段と
    を具備する
    ことを特徴とするデータ配信システム。
  2. サーバ装置は、さらに、
    ソース装置との間の通信状態を検知するサーバ通信状態検知手段と、
    サーバ通信状態検知手段によりソース装置との通信が不可であることが検知されている間、予め用意された別のコンテンツデータをクライアント装置に配信する別データ配信手段と
    を具備することを特徴とする請求項1に記載のデータ配信システム。
  3. サーバ装置は、さらに、第2転送手段により転送されるデータ及びこのデータ転送に続く所定時間の間第1転送手段により転送されるデータの時間軸を実時間より短縮する速度変換手段を具備し、
    サーババッファリング手段は、速度変換手段により時間軸が短縮されたデータをバッファリングする
    ことを特徴とする請求項1又は2に記載のデータ配信システム。
JP2009061311A 2009-03-13 2009-03-13 データ配信システム Expired - Fee Related JP5532638B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009061311A JP5532638B2 (ja) 2009-03-13 2009-03-13 データ配信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009061311A JP5532638B2 (ja) 2009-03-13 2009-03-13 データ配信システム

Publications (2)

Publication Number Publication Date
JP2010218013A true JP2010218013A (ja) 2010-09-30
JP5532638B2 JP5532638B2 (ja) 2014-06-25

Family

ID=42976840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009061311A Expired - Fee Related JP5532638B2 (ja) 2009-03-13 2009-03-13 データ配信システム

Country Status (1)

Country Link
JP (1) JP5532638B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014042122A1 (ja) * 2012-09-14 2014-03-20 ヤマハ株式会社 信号処理システムおよびプログラム
US9426248B2 (en) 2012-11-22 2016-08-23 Mitsubishi Electric Corporation Data collection and transfer apparatus
JP7302806B1 (ja) * 2023-03-19 2023-07-04 17Live株式会社 サーバ、コンピュータプログラム及び端末

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001186499A (ja) * 1999-12-27 2001-07-06 Sharp Corp 動画像配信システム
JP2004343445A (ja) * 2003-05-15 2004-12-02 Victor Co Of Japan Ltd 視聴システム
JP2005515671A (ja) * 2002-01-11 2005-05-26 トムソン ライセンシング ソシエテ アノニム ストリーミングデータ配信システムの物理レイヤの回復
JP2006173973A (ja) * 2004-12-15 2006-06-29 Pioneer Electronic Corp 遠隔再生システム、遠隔再生方法およびコンピュータプログラム
JP2008177896A (ja) * 2007-01-19 2008-07-31 Fujitsu Ltd 通信システム、サーバ装置、および端末装置
JP2008244548A (ja) * 2007-03-26 2008-10-09 Softbank Bb Corp コンテンツ配信システムおよびコンテンツ配信方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001186499A (ja) * 1999-12-27 2001-07-06 Sharp Corp 動画像配信システム
JP2005515671A (ja) * 2002-01-11 2005-05-26 トムソン ライセンシング ソシエテ アノニム ストリーミングデータ配信システムの物理レイヤの回復
JP2004343445A (ja) * 2003-05-15 2004-12-02 Victor Co Of Japan Ltd 視聴システム
JP2006173973A (ja) * 2004-12-15 2006-06-29 Pioneer Electronic Corp 遠隔再生システム、遠隔再生方法およびコンピュータプログラム
JP2008177896A (ja) * 2007-01-19 2008-07-31 Fujitsu Ltd 通信システム、サーバ装置、および端末装置
JP2008244548A (ja) * 2007-03-26 2008-10-09 Softbank Bb Corp コンテンツ配信システムおよびコンテンツ配信方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014042122A1 (ja) * 2012-09-14 2014-03-20 ヤマハ株式会社 信号処理システムおよびプログラム
US9426248B2 (en) 2012-11-22 2016-08-23 Mitsubishi Electric Corporation Data collection and transfer apparatus
JP7302806B1 (ja) * 2023-03-19 2023-07-04 17Live株式会社 サーバ、コンピュータプログラム及び端末

Also Published As

Publication number Publication date
JP5532638B2 (ja) 2014-06-25

Similar Documents

Publication Publication Date Title
JP4333655B2 (ja) コンテンツ受信装置およびコンテンツ受信方法
JP5149012B2 (ja) ネットワーク上のマルチチャネルスピーカの同期
CN104834623B (zh) 音频播放方法及装置
US20080201424A1 (en) Method and apparatus for a virtual concert utilizing audio collaboration via a global computer network
JPH08274812A (ja) 音声通信システム
JP2009535988A (ja) データ信号を処理するシステム及び方法
US20120317243A1 (en) Audio processing method and device for remote desktop protocol
JP2005537738A5 (ja)
JP2006323202A (ja) コンテンツ再生装置及びコンテンツ再生方法
JP5532638B2 (ja) データ配信システム
EP4289129A1 (en) Systems and methods of handling speech audio stream interruptions
JP2008060675A (ja) 音声再生装置、音声再生方法
JP2007274369A (ja) 通信システム、送信装置および受信装置
JP2007086484A (ja) コンテンツ配信システム及びコンテンツ配信方法並びにそれに用いる配信装置、端末装置及びそのプログラム
WO2017030015A1 (ja) コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信方法
US20230276001A1 (en) Systems and methods for improved audio/video conferences
JP2008171194A (ja) 通信システム、通信方法、サーバ及び端末
KR20230129406A (ko) 호 오디오 재생 속도 조정
GB2610801A (en) A system and method for audio recording
JP2014167520A (ja) 通信障害時にデュエット歌唱を継続可能な通信カラオケシステム
JP4543586B2 (ja) 音声再生装置及び音声再生方法
JP2008140434A (ja) ディジタルオーディオ装置及びそのサンプルレート切り替え方法
JP2008097096A (ja) サーバ装置及び通信セッション確立方法
WO2018163378A1 (ja) 操作装置、コマンド処理装置、及びコンテンツ再生システム
JP2004007327A (ja) データ再生装置及びデータ中継装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140401

R150 Certificate of patent or registration of utility model

Ref document number: 5532638

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140414

LAPS Cancellation because of no payment of annual fees