以下に、本発明の一実施の形態を図面に基づいて説明する。なお、本実施の形態では、データ送信装置にてAV(Audio Video)データを複数に適宜分割してフレームデータを生成し、この生成したフレームデータなどに基づいて、複数のデータ再生装置にてAVデータを再生するAVデータ再生システムについて例示するがこれに限られない。
図1は、本実施の形態に係るAVデータ再生システムの概略構成を示すブロック図である。図2は、データ送信装置の概略構成を示すブロック図である。図3は、データ送信装置から送信されるフレームデータの概略構成を示す概念図であり、(A)は差分時間Tzが全て0msecの場合におけるフレームデータの生成処理を示す概念図であり、(B)は差分時間Tzのうちの少なくともいずれか1つが0msecでない場合におけるフレームデータの生成処理を示す概念図である。図4は、フレームデータの概略構成を示す概念図である。図5は、音声再生装置の概略構成を示すブロック図である。
〔AVデータ再生システムの構成〕
図1において、100はデータ処理システムとしてのAVデータ再生システムである。このAVデータ再生システム(以下、再生システムと略す)100は、図示しない例えばAVデータ出力機器から入力されるAVデータを再生するシステムである。そして、再生システム100は、ネットワーク200と、データ送信装置300と、出力装置としての音声再生装置400Aと、出力装置としての音声再生装置400Bと、出力装置としての音声再生装置400Cと、出力装置としての音声再生装置400Dと、図示しない映像再生装置と、を備えている。なお、以下において、音声再生装置400A,400B,400C,400Dをまとめて説明する際には、これらを全音声再生装置400と適宜称して説明する。また、ここでは、全音声再生装置400の数を4台とした構成について例示するが、全音声再生装置400の数は複数であれば4台に限られず、5台以上や3台または2台としてもよい。
ネットワーク200には、データ送信装置300と、音声再生装置400A,400B,400C,400Dと、図示しない映像再生装置と、が接続されている。そして、ネットワーク200は、データ送信装置300と、全音声再生装置400および映像再生装置と、を情報の送受信が可能な状態に接続する。このネットワーク200としては、例えばTCP/IP(Transmission Control Protocol/Internet Protocol)などの汎用のプロトコルに基づくイントラネット、エクストラネット、イーサネット(登録商標)などのLAN(Local Area Network)、IEEE(Institute of Electrical and Electronics Engineers)802.1X規格に準じた無線LAN、近距離無線通信技術規格であるBluetooth(登録商標)を利用した無線伝送方式のネットワーク、無線媒体により情報が送受信可能な複数の基地局がネットワークを構成する通信回線網や放送網などのネットワーク、さらには、データ送信装置300と、音声再生装置400A,400B,400C,400D、および、映像再生装置と、の間での情報を直接送受信するための媒体となる無線媒体自体や有線媒体自体などが例示できる。ここで、無線媒体としては、電波、光、音波、電磁波などのいずれの媒体をも適用できる。また、有線媒体としては、USB(Universal Serial Bus)規格やIEEE1394規格に準じたケーブル、電灯線、電話線などのいずれの媒体をも適用できる。
データ送信装置300は、AVデータ出力機器から入力されるAVデータのデータとしての音声データSA,SB,SC,SDを適宜処理して、音声再生装置400A,400B,400C,400Dに適宜送信する。なお、この音声データSA,SB,SC,SDは、例えば1つの楽曲において音声再生装置400A,400B,400C,400Dから音としてそれぞれ出力されるデータである。また、データ送信装置300は、AVデータ出力機器から入力されるAVデータの映像データを適宜処理して、映像再生装置に適宜送信する。そして、データ送信装置300は、図2に示すように、通信部310と、記憶手段としての遅延量記憶部320と、伝送時間演算手段としての遅延量判定部330と、データ取得手段としての音声データ入力部340と、遅延処理部350と、送信制御手段としての遅延量制御部360と、分割データ生成手段としてのパケット生成部370と、図示しない映像データ送信部と、などを備えている。
通信部310は、ネットワーク200を介して音声再生装置400A,400B,400C,400D、および、映像再生装置に接続されるとともに、遅延量判定部330およびパケット生成部370に接続されている。そして、通信部310は、ネットワーク200を介して全音声再生装置400、および、映像再生装置からの送信信号Stを受信可能で、この送信信号Stの取得により予め設定されている入力インターフェース処理を実施し、判定信号Skを遅延量判定部330に、または、パケット信号Spをパケット生成部370に出力する。また、通信部310は、遅延量判定部330からの判定信号Skやパケット生成部370からのパケット信号Spの取得により予め設定されている出力インターフェースを実施し、送信信号Stとしてネットワーク200を介して全音声再生装置400に適宜送信する。さらに、通信部310は、映像データ送信部からの映像データ信号の取得により予め設定されている出力インターフェースを実施し、映像データ送信信号としてネットワーク200を介して映像再生装置に適宜送信する。
遅延量記憶部320は、遅延量判定部330および遅延量制御部360に接続されている。この遅延量記憶部320は、遅延量判定部330により生成される全音声再生装置400への音声データの伝送時間に関する各種情報を適宜読み出し可能に記憶する。この遅延量記憶部320としては、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などが例示できる。また、遅延量記憶部320は、データ送信装置300全体を動作制御する各種プログラムなどを記憶している。
遅延量判定部330は、プログラムとして構築されている。この遅延量判定部330は、全音声再生装置400への音声データの伝送時間に関する各種情報を生成し、この生成した各種情報を遅延量記憶部320に記憶させる。具体的には、遅延量判定部330は、全音声再生装置400に後述する受信確認情報としてのACK(Acknowledge)を送信する旨を要求する確認要求情報としてのACK要求情報を生成する。そして、このACK要求情報を判定信号Skに適宜変換して、通信部310へ出力する。なお、以下において、ACK要求情報を出力する処理を、ポーリングを実施する処理と適宜称して説明する。
この後、遅延量判定部330は、通信部310から入力される判定信号Skに基づいて、この判定信号Skに記載されたACKを認識する。そして、ACKに記載された後述する装置固有情報に基づいて、ACKを送信した装置が例えば音声再生装置400Aであることを認識する。さらに、図示しない計時手段が計時する時刻に基づいて、ACK要求情報を出力してからACKを取得するまでの所要時間を認識し、この認識した所要時間の半分の値を音声再生装置400Aの伝送時間としての遅延時間Daとして認識する。そして、この認識した遅延時間Daをメモリ信号Smに適宜変換して、遅延量記憶部320に適宜読み出し可能に記憶させる。また、遅延量判定部330は、上述した処理と同様の処理を実施することにより、音声再生装置400B,400C,400Dの伝送時間としての遅延時間Db,Dc,Ddを認識し、この認識した遅延時間Db,Dc,Ddをメモリ信号Smに適宜変換して、遅延量記憶部320に適宜読み出し可能に記憶させる。なお、以下において、遅延時間Da,Db,Dc,Ddをまとめて説明する際には、これらを遅延時間Dzと適宜称して説明する。
そして、遅延量判定部330は、遅延時間Da,Db,Dc,Ddの全てを遅延量記憶部320に記憶させたことを認識すると、遅延量記憶部320に記憶された遅延時間Da,Db,Dc,Ddをメモリ信号Smとして読み出す。この後、読み出した遅延時間Da,Db,Dc,Ddのうちの時間が一番長いものを基準時間Dxとして決定する。そして、遅延量判定部330は、基準時間Dxと例えば遅延時間Daとの差分を演算し、この演算した値を音声再生装置400Aの差分時間Taとして認識する。この後、この認識した差分時間Taをメモリ信号Smに適宜変換して、遅延量記憶部320に適宜読み出し可能に記憶させる。また、遅延量判定部330は、上述した処理と同様の処理を実施することにより、音声再生装置400B,400C,400Dの差分時間Tb,Tc,Tdを演算し、この演算した差分時間Tb,Tc,Tdをメモリ信号Smに適宜変換して、遅延量記憶部320に適宜読み出し可能に記憶させる。なお、以下において、差分時間Ta,Tb,Tc,Tdをまとめて説明する際には、これらを差分時間Tzと適宜称して説明する。
また、遅延量判定部330は、計時手段から現在時刻を適宜取得する。そして、予め設定された設定時間Tsが経過したことを認識すると、遅延量記憶部320に記憶された遅延時間Dz、および、差分時間Tzを消去する。なお、以下において、遅延時間Dzおよび差分時間Tzをまとめて説明する際には、これらを伝送時間情報と適宜称して説明する。
音声データ入力部340は、音声入力端子340Aと、音声入力端子340Bと、音声入力端子340Cと、音声入力端子340Dと、を備えている。音声入力端子340Aは、例えば図示しないプラグが着脱可能に接続されるコネクタやリード線が接続されるターミナルなどである。そして、音声入力端子340Aには、AVデータを出力するAVデータ出力機器が着脱可能に接続され、このAVデータ出力機器から出力されるAVデータの音声データSAが記載された出力信号Sxaが入力される。また、音声入力端子340B,340C,340Dも、音声入力端子340Aと同様に構成されている。そして、音声入力端子340B,340C,340Dには、AVデータ出力機器から出力信号Sxaと同時に出力される、AVデータの音声データSB,SC,SDが記載された出力信号Sxb,Sxc,Sxdがそれぞれ入力される。
遅延処理部350は、音声データ入力部340から同時に入力される音声データSA,SB,SC,SDを、後述する出力要求情報に基づいて、適宜遅延させて、すなわち、適宜異なる時刻にパケット生成部370へ出力する。そして、この遅延処理部350は、プログラムとして、遅延部350Aと、遅延部350Bと、遅延部350Cと、遅延部350Dと、を備えている。
遅延部350Aは、音声入力端子340A、遅延量制御部360、パケット生成部370に接続されている。この遅延部350Aは、音声入力端子340Aに入力された出力信号Sxaを適宜取得し、この取得した出力信号Sxaに記載された音声データSAを一時的に記憶する。次に、遅延量制御部360から入力される処理信号Sgに基づいて、この処理信号Sgに記載された出力要求情報を認識する。そして、遅延部350Aは、音声データSAをデータ信号Ssaに適宜変換して、出力要求情報に記載された時刻にパケット生成部370へ出力する。
遅延部350Bは、音声入力端子340B、遅延量制御部360、パケット生成部370に接続されている。遅延部350Cは、音声入力端子340C、遅延量制御部360、パケット生成部370に接続されている。遅延部350Dは、音声入力端子340D、遅延量制御部360、パケット生成部370に接続されている。これら遅延部350B,350C,350Dは、音声入力端子340B,340C,340Dに入力された出力信号Sxb,Sxc,Sxdを適宜取得し、この取得した出力信号Sxb,Sxc,Sxdに記載された音声データSB,SC,SDを一時的に記憶する。そして、遅延量制御部360から入力される処理信号Sgに基づいて、遅延部350Aと同様の処理を実施する。すなわち、音声データSB,SC,SDをデータ信号Ssb,Ssc,Ssdに適宜変換して、出力要求情報に記載された時刻にパケット生成部370へ出力する。
遅延量制御部360は、プログラムとして構築されている。この遅延量制御部360は、遅延量記憶部320に記憶された差分時間Tzに基づいて、出力要求情報を生成して、遅延処理部350に出力する。具体的には、遅延量制御部360は、遅延量記憶部320に差分時間Tzが記憶されたことを認識すると、この差分時間Tzをメモリ信号Svとして読み出す。そして、このメモリ信号Svに記載された差分時間Ta,Tb,Tc,Tdが例えば全て0msecの場合、以下のような出力要求情報を生成する。すなわち、遅延部350A,350B,350C,350Dに、音声データSA,SB,SC,SDが記載されたデータ信号Ssa,Ssb,Ssc,Ssdを、任意の時刻に出力する旨を要求する情報が記載された出力要求情報を生成する。なお、以下において、この任意の時刻を、信号出力基準時刻と適宜称して説明する。
また、遅延量制御部360は、前記読み出したメモリ信号Svに記載された差分時間Tzのうちの少なくともいずれか1つが0msecでない場合、例えば差分時間Taが1msecで、差分時間Tb,Tdが0msecで、差分時間Tcが2msecの場合、以下のような出力要求情報を生成する。すなわち、遅延部350Aに音声データSAが記載されたデータ信号Ssaを信号出力基準時刻から1msec後に出力する旨を要求する情報と、遅延部350B,350Dに音声データSB,SDが記載されたデータ信号Ssb,Ssdを信号出力基準時刻に出力する旨を要求する情報と、遅延部350Cに音声データSCが記載されたデータ信号Sscを信号出力基準時刻から2msec後に出力する旨を要求する情報と、が記載された出力要求情報を生成する。そして、遅延量制御部360は、生成した出力要求情報を処理信号Sgに適宜変換して、遅延部350A,350B,350C,350Dに出力する。
パケット生成部370は、プログラムとして構築されている。このパケット生成部370は、遅延処理部350から出力される音声データSA,SB,SC,SDに基づいて、図3(A)や図3(B)に示すようなフレームデータ50n,50(n+1),…(nは自然数)を順次生成して、全音声再生装置400に送信する。
ここで、まず、フレームデータ50nの構成について説明する。フレームデータ50nは、図4に示すように、フレームヘッダ51n(nは自然数)と、パケットデータ52h(hは自然数)と、パケットデータ53i(iは自然数)と、パケットデータ54j(jは自然数)と、パケットデータ55k(kは自然数)と、を備えている。なお、パケットデータ52h,53i,54j,55kは、略同一の構成を有しているので、以下においてパケットデータ52hについて詳細に説明する。
フレームヘッダ51nは、フレームデータ50nに関する各種情報が格納されている。具体的には、このフレームヘッダ51nには、同期を取るための信号であるシンク(Synchronous)51nA(nは自然数)と、フレームデータ50nの先頭を示すSOF(Start Of Frame)51nB(nは自然数)と、フレームデータ50nがn番目のフレームデータであることを示すフレームナンバ51nC(nは自然数)と、送信エラー検出用の信号であるCRC(Cyclic Redundancy Check character)51nD(nは自然数)と、が格納されている。
パケットデータ52hは、音声再生装置400Aにおける音声データSAの出力処理の際に利用されるデータである。このパケットデータ52hは、パケットデータ52hに関する情報が格納されているセグメント判別データ領域52hAと、音声再生装置400Aに出力させる音声データSAに関する情報が格納されているAVデータ領域52hBと、を備えている。具体的には、AVデータ領域52hBには、遅延部350Aから出力された音声データSAの一部のデータである分割データとしての分割音声データSAh(hは自然数)と、この分割音声データSAhの始まりを示す信号であるデータシンク(Data Synchronous)52hEと、が格納されている。セグメント判別データ領域52hAには、音声再生装置400Aを特定するための例えばID(Identification)ナンバであるレシーバナンバ52hCと、分割音声データSAhが音声データSAの先頭からh番目のデータであることを示す順序情報としてのセグメントナンバ52hDと、が格納されている。
パケットデータ53i,54j,55kは、音声再生装置400B,400C,400Dにおける音声データSB,SC,SDの出力処理の際に利用されるデータである。そして、パケットデータ53i,54j,55kは、セグメント判別データ領域52hAと同様の各種情報が格納されたセグメント判別データ領域53iA,54jA,55kAと、AVデータ領域52hBと同様の各種情報、例えば分割データとしての分割音声データSBi(iは自然数),SCj(jは自然数),SDk(kは自然数)などが格納されたAVデータ領域53iB,54jB,55kBと、を備えている。
なお、パケットデータ52h,53i,54j,55kは、各データ領域52hA,52hB,53iA,53iB,54jA,54jB,55kA,55kBに各種情報が格納されない構成となることもある。以下において、このように各種情報が格納されていない構成のパケットデータ52h,53i,54j,55kを、空パケットデータ56nと適宜称して説明する。また、フレームデータ50nの構成は上述したような構成に限らず、適宜他の構成としてもよい。
次に、パケット生成部370にてフレームデータ50nを生成する処理について説明する。ここで、まず、図3(A)に基づいて、差分時間Ta,Tb,Tc,Tdが全て0msecの場合、すなわち、遅延部350A,350B,350C,350Dが、信号出力基準時刻にデータ信号Ssa,Ssb,Ssc,Ssdを出力する場合におけるフレームデータ50nの生成処理について説明する。
パケット生成部370は、遅延処理部350からデータ信号Ssa,Ssb,Ssc,Ssdのうちの少なくともいずれか1つを取得できたか否かを認識する処理をする。ここでは、信号出力基準時刻に、遅延部350A,350B,350C,350Dからデータ信号Ssa,Ssb,Ssc,Ssdが出力されるので、パケット生成部370は、信号出力基準時刻から所定時間経過後にデータ信号Ssa,Ssb,Ssc,Ssdを同時に取得できたと認識する。なお、以下において、信号出力基準時刻から所定時間経過後の時刻を信号取得時刻と適宜称して説明する。そして、パケット生成部370は、この取得した例えばデータ信号Ssaに記載された音声データSAを認識し、この認識した音声データSAの先頭位置から所定のデータ量のデータを分割音声データSA1として読み出す。この後、この分割音声データSA1に対応するデータシンク521E、レシーバナンバ521C、および、セグメントナンバ521Dをそれぞれ生成し、これら各種情報を格納したパケットデータ521を生成する。また、パケット生成部370は、前記取得したデータ信号Ssb,Ssc,Ssdに記載された音声データSB,SC,SDを認識する。そして、上述したパケットデータ521を生成する処理と同様の処理を実施して、分割音声データSB1,SC1,SD1などがそれぞれ格納されたパケットデータ531,541,551をそれぞれ生成する。
また、パケット生成部370は、フレームヘッダ511を生成する。そして、フレームヘッダ511、および、パケットデータ521,531,541,551を格納したフレームデータ501を生成し、この生成したフレームデータ501をパケット信号Spに適宜変換して、通信部310へ出力する。なお、以下において、フレームデータ501を出力した時刻をフレーム出力時刻と適宜称して説明する。
次に、パケット生成部370は、上述したような処理を実施することによりフレームデータ502を生成し、フレーム出力時刻から例えば1msec後に通信部310へ出力する。具体的には、例えば音声データSAにおける分割音声データSA1の後端位置から前記所定のデータ量のデータを分割音声データSA2として読み出す。そして、この読み出した分割音声データSA2などを格納したパケットデータ522を生成する。また、パケット生成部370は、同様の処理を実施することにより、分割音声データSB2,SC2,SD2などが格納されたパケットデータ532,542,552を生成する。この後、フレームヘッダ512を生成し、この生成したフレームヘッダ512、および、パケットデータ522,532,542,552を格納したフレームデータ502を生成する。そして、この生成したフレームデータ502をパケット信号Spに適宜変換し、フレーム出力時刻から1msec後に通信部310へ出力する。
この後、パケット生成部370は、フレームデータ503,504,…を順次生成し、これら生成したフレームデータ503,504,…を1msec毎に通信部310へ順次出力する。なお、ここではフレームデータ50nを1msec毎に出力する構成について例示したが、これに限らず例えば5msecや10msec毎に出力する構成としてもよい。
次に、差分時間Ta,Tb,Tc,Tdのうちの少なくともいずれか1つが0msecではない場合、すなわち、遅延部350A,350B,350C,350Dから同時にデータ信号Ssa,Ssb,Ssc,Ssdが出力されない場合におけるフレームデータ50nの生成処理について説明する。なお、ここでは、差分時間Taが1msecで、差分時間Tb,Tdが0msecで、差分時間Tcが2msecの場合、すなわち、遅延部350B,350Dが信号出力基準時刻にデータ信号Ssb,Ssdを出力し、遅延部350Aが信号出力基準時刻から1msec後にデータ信号Ssaを出力し、遅延部350Cが信号出力基準時刻から2msec後にデータ信号Sscを出力する場合について例示する。
パケット生成部370は、遅延処理部350からデータ信号Ssa,Ssb,Ssc,Ssdのうちの少なくともいずれか1つを取得できたか否かを認識する処理をする。ここでは、信号出力基準時刻に、遅延部350B,350Dからデータ信号Ssb,Ssdが出力されるので、パケット生成部370は、信号出力基準時刻から所定時間経過後にデータ信号Ssb,Ssdを取得できたと認識する。なお、以下において、信号出力基準時刻から所定時間経過後の時刻を信号取得時刻と適宜称して説明する。そして、パケット生成部370は、取得したデータ信号Ssb,Ssdに記載された音声データSB,SDを認識し、これら認識した音声データSB,SDの先頭位置から所定のデータ量のデータを分割音声データSB1、SD1として読み出す。この後、この分割音声データSB1、SD1に対応するデータシンク531E,551Eレシーバナンバ531C,551C、および、セグメントナンバ531D,551Dをそれぞれ生成し、これら各種情報を格納したパケットデータ531,551を生成する。また、パケット生成部370は、データ信号Ssa,Sscを取得していないので、各種情報が格納されていないパケットデータ52h,54j、すなわち、2つの空パケットデータ561を生成する。
この後、パケット生成部370は、フレームヘッダ511を生成する。そして、フレームヘッダ511、パケットデータ531,551、および、2つの空パケットデータ561を格納したフレームデータ501を生成し、この生成したフレームデータ501をパケット信号Spに適宜変換して、通信部310へ出力する。なお、以下において、フレームデータ501を出力した時刻をフレーム出力時刻と適宜称して説明する。
次に、パケット生成部370は、上述したような処理を実施することによりフレームデータ502を生成し、フレーム出力時刻から例えば1msec後に通信部310へ出力する。具体的には、パケット生成部370は、信号取得時刻から1msec後に、遅延処理部350から取得していないデータ信号Ssa,Sscのうちの少なくともいずれか1つを取得できたか否かを認識する処理をする。ここでは、遅延部350Aより信号出力基準時刻から1msec後に出力されたデータ信号Ssaを取得できたと認識する。そして、パケット生成部370は、データ信号Ssaに記載された音声データSAを認識し、この認識した音声データSAの先頭位置から前記所定のデータ量のデータを分割音声データSA1として読み出す。そして、この読み出した分割音声データSA1などを格納したパケットデータ521を生成する。また、音声データSB,SDにおける分割音声データSB1,SD1の後端位置から前記所定のデータ量のデータを分割音声データSB2,SD2として読み出す。そして、これら読み出した分割音声データSB2,SD2などを格納したパケットデータ532,552を生成する。さらに、パケット生成部370は、データ信号Sscを取得していないので、各種情報が格納されていないパケットデータ54j、すなわち、1つの空パケットデータ562を生成する。そして、フレームヘッダ512を生成し、この生成したフレームヘッダ512、パケットデータ521,532,552、および、1つの空パケットデータ562が格納されたフレームデータ502を生成する。この後、フレームデータ502をパケット信号Spに適宜変換し、フレーム出力時刻から1msec後に通信部310へ出力する。
さらに、パケット生成部370は、上述したような処理を実施することによりフレームデータ503を生成し、フレーム出力時刻から例えば2msec後に通信部310へ出力する。具体的には、パケット生成部370は、信号取得時刻から2msec後に、遅延処理部350から取得していないデータ信号Sscを取得できたか否かを認識する処理をする。ここでは、遅延部350Cより信号出力基準時刻から2msec後に出力されたデータ信号Sscを取得できたと認識する。そして、パケット生成部370は、データ信号Sscに記載された音声データSCを認識し、この認識した音声データSCの先頭位置から前記所定のデータ量のデータを分割音声データSC1として読み出す。そして、この読み出した分割音声データSC1などを格納したパケットデータ541を生成する。また、音声データSA,SB,SDにおける分割音声データSA1,SB2,SD2の後端位置から前記所定のデータ量のデータを分割音声データSA2,SB3,SD3として読み出す。この後、これら読み出した分割音声データSA2,SB3,SD3などを格納したパケットデータ522,533,553を生成する。そして、フレームヘッダ513を生成し、この生成したフレームヘッダ513、パケットデータ522,533,541,553が格納されたフレームデータ503を生成する。この後、フレームデータ503をパケット信号Spに適宜変換し、フレーム出力時刻から2msec後に通信部310へ出力する。
そして、パケット生成部370は、フレームデータ504,…を順次生成し、これら生成したフレームデータ504,…を1msec毎に通信部310へ順次出力する。なお、ここではフレームデータ50nを1msec毎に出力する構成について例示したが、これに限らず例えば5msecや10msec毎に出力する構成としてもよい。
また、パケット生成部370は、通信部310から入力されるパケット信号Spに基づいて、このパケット信号Spに記載された後述するデータ受信情報としての受信完了信号を適宜認識する。そして、受信完了信号に記載された装置固有情報に基づいて、受信完了信号を送信した装置が例えば音声再生装置400Aであることを認識する。また、受信完了信号に記載された受信フレーム情報に基づいて、音声再生装置400Aにて受信されたフレームデータ50nを認識する。そして、例えばフレームデータ501を受信した旨の受信フレーム情報が記載された受信完了信号を、全音声再生装置400から所定時間内に取得できたか否かを判断する。この後、全音声再生装置400から前記受信完了信号を取得できたと判断した場合には、特に処理を実施しない。一方で、全音声再生装置400から前記受信完了信号を取得できていないと判断した場合には、フレームデータ501をパケット信号Spに変換して、通信部310へ再び出力する。そして、パケット生成部370は、フレームデータ502,503,…についても同様の処理を実施し、フレームデータ502,503,…を通信部310へ適宜出力する。
音声再生装置400A,400B,400C,400Dは、ネットワーク200を介して、データ送信装置300と各種情報が送受信可能に接続されている。なお、音声再生装置400A,400B,400C,400Dは、同一の構成を有しているため、以下において、音声再生装置400Aについて説明する。
音声再生装置400Aは、データ送信装置300から送信されるフレームデータ50nを取得して、この取得したフレームデータ50nに基づいて、音声データSAを適宜出力する。そして、この音声再生装置400Aは、図5に示すように、通信部410と、データ記憶部420と、データ再生部430と、などを備えている。
通信部410は、ネットワーク200を介してデータ送信装置300に接続されるとともに、データ記憶部420およびデータ再生部430に接続されている。そして、通信部410は、ネットワーク200を介してデータ送信装置300からの受信信号Suを受信して、この受信した受信信号Suにフレームデータ50nが記載されている場合には、このフレームデータ50nをメモリ信号Sqに適宜変換して、データ記憶部420に出力する。また、前記受信した受信信号SuにACK要求情報が記載されている場合には、このACK要求情報を再生信号Seに適宜変換して、データ再生部430に出力する。また、通信部410は、データ再生部430からの再生信号Seの取得により予め設定されている出力インターフェースを実施し、受信信号Suとしてネットワーク200を介してデータ送信装置300に送信する。
データ記憶部420は、データ再生部430に接続されている。このデータ記憶部420は、フレームデータ50nを適宜読み出し可能に記憶する。このデータ記憶部420としては、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などが例示できる。また、データ記憶部420は、音声再生装置400A全体を動作制御する各種プログラムなどを記憶している。
データ再生部430は、各種プログラムとして、確認情報生成手段としてのACK(Acknowledge)生成手段431と、データ出力手段432と、受信情報生成手段、フレームデータ受信手段、分割データ取得手段、および、データ生成手段としての再生制御手段433と、などを備えている。
ACK生成手段431は、データ送信装置300から送信されるACK要求情報を取得したことを示す情報である、いわゆるACKを生成する。具体的には、ACK生成手段431は、通信部410から入力される再生信号Seに基づいて、この再生信号Seに記載されたACK要求情報を認識する。そして、ACK要求情報を取得した旨を伝達する情報と、音声再生装置400Aを特定する装置固有情報と、などを有するACKを生成する。この後、この生成したACKを再生信号Seに適宜変換して、通信部410に出力する。
データ出力手段432は、例えば図示しないスピーカなどの発音手段を有する。このデータ出力手段432は、再生制御手段433にて制御され、音声データSAを発音手段から音により出力する。
再生制御手段433は、データ記憶部420に記憶されたフレームデータ50n,50(n+1),…に格納された分割音声データSAh,SA(h+1),…を適宜読み出す。そして、この読み出した分割音声データSAh,SA(h+1),…を結合する処理を適宜実施して、音声データSAとしてデータ出力手段432に出力させる制御をする。具体的には、再生制御手段433は、データ記憶部420に記憶されたフレームデータ50n,50(n+1),…をメモリ信号Srとして適宜読み出す。そして、この読み出したフレームデータ50n,50(n+1),…のレシーバナンバ52hC,52(h+1)C,…に基づいて、パケットデータ52h,52(h+1),…を特定して適宜取得する。この後、これら取得したパケットデータ52h,52(h+1),…のセグメントナンバ52hD,52(h+1)D,…に示された順序に基づいて、分割音声データSAh,SA(h+1),…を適宜結合させて、音声データSAとしてデータ出力手段432に出力させる。
また、再生制御手段433は、音声再生装置400Aを特定する装置固有情報と、例えばフレームデータ501を受信した旨を伝達する受信フレーム情報と、などを有する受信完了信号を生成する。この後、この生成した受信完了信号を再生信号Seに適宜変換して、通信部410に出力する。そして、再生制御手段433は、フレームデータ50nを受信した旨を伝達する受信フレーム情報などが記載された受信完了信号を適宜生成して、通信部410に適宜出力する。
映像再生装置は、ネットワーク200を介して、データ送信装置300と各種情報が送受信可能に接続されている。この映像再生装置は、図示しない、通信部と、データ記憶部と、データ再生部と、などを備えている。通信部は、データ送信装置300から送信される映像データを取得して、データ記憶部に適宜読み出し可能に記憶させる。データ再生部は、データ記憶部に記憶された映像データを適宜読み出して映像を出力する。
〔AVデータ再生システムの動作〕
次に、再生システム100の動作を図面に基づいて説明する。なお、以下において、音声再生装置400Aの遅延時間Daが4msec、音声再生装置400B,400Dの遅延時間Db,Ddが5msec、音声再生装置400Cの遅延時間Dcが3msecの場合を例示して説明する。
(データ送信装置のフレームデータ送信処理)
まず、再生システム100の動作として、データ送信装置300のフレームデータ50nの送信処理について、図6に基づいて説明する。図6は、データ送信装置のフレームデータ送信処理を示すフローチャートである。
まず、図6に示すように、利用者が再生システム100の電源をオンし、電力を供給する。この電力の供給により、データ送信装置300の遅延量判定部330は、ACK要求情報を生成し、この生成したACK要求情報を全音声再生装置400に送信する処理、すなわちポーリングを実施する(ステップS101)。なお、ここでは、電力が供給された直後にポーリングを実施する構成について例示するが、これに限らず例えば電力が供給された直後にはポーリングを実施せず、例えば利用者によりポーリングを実施する旨を要求する設定入力がされた際にポーリングを実施する構成などとしてもよい。
この後、遅延量判定部330は、全音声再生装置400からACKを受信できたか否かを判断する処理を適宜実施する(ステップS102)。
ステップS102において、全音声再生装置400からACKを受信できていないと判断した場合、ステップS101に戻る。
一方で、ステップS102において、全音声再生装置400からACKを受信できたと判断した場合、遅延量判定部330は、ポーリングを実施してから音声再生装置400A,400B,400C,400DのそれぞれのACKを取得するまでの所要時間に基づいて、遅延時間Dzを演算する(ステップS103)。そして、この演算した遅延時間Dzを遅延量記憶部320に適宜読み出し可能に記憶させる。
次に、遅延量判定部330は、遅延時間Dzを遅延量記憶部320に記憶させたことを認識すると、この記憶された遅延時間Dzのうちの時間が一番長いものを基準時間Dxとして決定する(ステップS104)。ここでは、遅延時間Db,Ddの5msecを基準時間Dxとして決定する。
この後、遅延量判定部330は、ステップS103において演算された遅延時間Dz、および、ステップS104において決定された基準時間Dxに基づいて、音声再生装置400A,400B,400C,400Dの差分時間Tzを演算する(ステップS105)。ここでは、差分時間Taは1msec、差分時間Tb,Tdは0msec、差分時間Tcは2msecとなる。そして、この演算した差分時間Tzを遅延量記憶部320に適宜読み出し可能に記憶させる(ステップS106)。
この後、データ送信装置300は、遅延量制御部360およびパケット生成部370にて、遅延量記憶部320に記憶された差分時間Tzに基づいて、フレームデータ50nを生成する(ステップS107)。
具体的には、まず、データ送信装置300は、遅延量制御部360にて、音声データSA,SB,SC,SDを差分時間Tzに基づいた時刻に出力する旨を要求する出力要求情報を生成する。そして、この生成した出力要求情報を遅延部350A,350B,350C,350Dに出力する。ここでは、遅延部350Aに音声データSAを信号出力基準時刻から1msec後に出力する旨を要求する情報と、遅延部350B,350Dに音声データSB,SDを信号出力基準時刻に出力する旨を要求する情報と、遅延部350Cに音声データSCを信号出力基準時刻から2msec後に出力する旨を要求する情報と、が記載された出力要求情報を生成する。
遅延部350A,350B,350C,350Dは、出力要求情報を取得すると、この取得した出力要求情報に基づいた時刻に、音声入力端子340A,340B,340C,340Dに入力された音声データSA,SB,SC,SDをパケット生成部370に適宜出力する。ここでは、遅延部350Aは信号出力基準時刻から1msec後に音声データSAを、遅延部350B,350Dは信号出力基準時刻に音声データSB,SDを、遅延部350Cは信号出力基準時刻から2msec後に音声データSCを、それぞれ出力する。
パケット生成部370は、遅延部350A,350B,350C,350Dから音声データSA,SB,SC,SDを取得すると、これら音声データSA,SB,SC,SDを取得する時刻に基づいて、フレームデータ501,502,…を生成する。ここでは、差分時間Taが1msec、差分時間Tb,Tdが0msec、差分時間Tcが2msecなので、図3(B)に示すようなフレームデータ501,502,…を生成する。そして、フレーム出力時刻から例えば1msec間隔で、フレームデータ501,502,…を音声再生装置400A,400B,400C,400Dに送信する(ステップS108)。
この後、データ送信装置300は、パケット生成部370にて、全音声再生装置400から所定時間内に、フレームデータ50nを受信した旨が記載された受信完了信号を受信できたか否かを判断する(ステップS109)。
ステップS109において、全音声再生装置400から前記受信完了信号を受信できていないと判断した場合、ステップS107に戻る。なお、このステップS107において、パケット生成部370は、前記受信完了信号に基づいて、全音声再生装置400のうちの少なくともいずれか1つの装置が受信していないフレームデータ50nを認識する。そして、この認識したフレームデータ50nを、音声再生装置400A,400B,400C,400Dに再度送信する。
一方で、ステップS109において、パケット生成部370にて、全音声再生装置400から、前記受信完了信号を受信できたと判断した場合、遅延量判定部330にて、例えば遅延時間Dzを演算してからの時間が、予め設定された設定時間Tsである例えば5分を経過しているか否かを判断する(ステップS110)。なお、ここでは、遅延時間Dzを演算してからの時間が設定時間Tsを経過しているか否かを判断する構成について例示したが、これに限らず例えば差分時間Tzを遅延量記憶部320に記憶させてからの時間や、ポーリングを実施してからの時間などが、設定時間Tsを経過しているか否かを判断する構成としてもよい。また、設定時間Tsが5分である構成について例示したが、これに限らず例えば10分や30分などとしてもよい。
ステップS110において、遅延量判定部330にて、設定時間Tsを経過していないと判断した場合、ステップS107に戻る。一方で、ステップS110において、遅延量判定部330にて、設定時間Tsを経過したと判断した場合、遅延量記憶部320に記憶された伝送時間情報、すなわち、遅延時間Dzおよび差分時間Tzを消去する(ステップS111)。そして、ステップS101に戻り、ポーリングを再び実施する。
(音声再生装置のフレームデータ受信処理)
次に、再生システム100の動作として、全音声再生装置400のフレームデータ50nの受信処理について、図7に基づいて説明する。図7は、音声再生装置のフレームデータ受信処理を示すフローチャートである。
まず、図7に示すように、例えば音声再生装置400Aは、ACK生成手段431にて、データ送信装置300から送信されたACK要求情報を受信、すなわち、ポーリングを受信したことを認識すると(ステップS201)、ACKを生成する。そして、この生成したACKをデータ送信装置300に送信する(ステップS202)。また、音声再生装置400B,400C,400Dも、ステップS201ないしステップS203の処理を実施する。
この後、音声再生装置400A,400B,400C,400Dは、通信部410にて、データ送信装置300から送信される、図3(B)に示すようなフレームデータ501,502,…を受信すると(ステップS203)、この受信したフレームデータ501,502,…をデータ記憶部420に適宜読み出し可能に記憶させる(ステップS204)。なお、上述したように、データ送信装置300からはフレーム出力時刻から1msec間隔でフレームデータ501,502,…が送信されている。そして、遅延時間Daは4msec、遅延時間Db,Ddは5msec、遅延時間Dcは3msecなので、音声再生装置400Cはフレーム出力時刻から3msec後にフレームデータ501を受信し、音声再生装置400Aはフレーム出力時刻から4msec後にフレームデータ501を受信し、音声再生装置400B,400Dはフレーム出力時刻から5msec後にフレームデータ501を受信する。この後、音声再生装置400A,400B,400C,400Dは、1msec毎にフレームデータ502,503,…を順次受信する。
そして、例えば音声再生装置400Aは、再生制御手段433にて、データ記憶部420にフレームデータ501,502,…が記憶されたことを認識すると、このフレームデータ501,502,…に格納された分割音声データSA1,SA2,…を適宜取得する(ステップS205)。そして、受信完了信号をデータ送信装置300に送信するとともに、分割音声データSA1,SA2,…に基づいて、音声データSAを再生する(ステップS206)。
具体的には、音声再生装置400Aは、再生制御手段433にて、フレームデータ501,502,…から、レシーバナンバ521C,522C,…に基づいて、パケットデータ521,522,…を適宜取得する。なお、ここでは、図3(B)に示すようなフレームデータ501,502,…を受信しているので、フレームデータ501を受信した時刻から1msec後、すなわち、フレーム出力時刻から5msec後に受信したフレームデータ502から、レシーバナンバ521Cに基づいてパケットデータ521を取得する。また、フレーム出力時刻から6,7,…msec後に受信したフレームデータ503,504,…からパケットデータ522,523,…を取得する。そして、再生制御手段433は、取得したパケットデータ521,522,…のセグメントナンバ521D,522D,…に基づいて、分割音声データSA1,SA2,…を適宜取得する。この後、再生制御手段433は、分割音声データSA2を分割音声データSA1の後端位置に結合する処理を適宜実施する。さらに、分割音声データSA3,SA4,…を分割音声データSA2,SA3,…の後端位置に結合する処理を適宜実施する。これにより、データ出力手段432からは、分割音声データSA1に続いて分割音声データSA2,SA3,SA4,…が連続的に出力される。また、再生制御手段433は、フレームデータ501を受信した旨、フレームデータ502を受信した旨などを伝達する受信完了信号を適宜生成してデータ送信装置300に適宜送信する。
そして、再生制御手段433は、パケットデータ521が格納されたフレームデータ502を取得した時刻、すなわち、フレーム出力時刻から5msec後の時刻から、さらに例えば所定時間Uが経過した時刻に、音声データSAの先頭部分である分割音声データSA1を音としてデータ出力手段432に出力させる。すなわち、再生制御手段433は、フレーム出力時刻から5msecおよび所定時間Uが経過した時刻に、音声データSAの再生処理を開始する。この後、分割音声データSA1の後端位置に結合された分割音声データSA2、この分割音声データSA2の後端位置に結合された分割音声データSA3などをデータ出力手段432に連続的に出力させる。これにより、データ出力手段432からは音声データSAが出力される。
また、音声再生装置400B,400C,400Dも、ステップS205およびステップS206の処理を実施する。なお、ここでは、音声再生装置400B,400C,400Dも、図3(B)に示すようなフレームデータ501,502,…を受信している。
このため、音声再生装置400Bは、フレーム出力時刻から5msec後に受信したフレームデータ501からパケットデータ531を取得する。そして、フレーム出力時刻から6,7,…msec後に受信したフレームデータ502,503,…からパケットデータ532,533,…を取得し、これら取得したパケットデータ531,532,533,…に格納された分割音声データSB1,SB2,SB3,…を結合する処理を適宜実施する。
また、音声再生装置400Cは、フレームデータ501を受信した時刻から2msec後、すなわち、フレーム出力時刻から5msec後に受信したフレームデータ503からパケットデータ541を取得する。そして、フレーム出力時刻から6,7,…msec後に受信したフレームデータ504,505,…からパケットデータ542,543,…を取得し、これら取得したパケットデータ541,542,543,…に格納された分割音声データSC1,SC2,SC3,…を結合する処理を適宜実施する。
さらに、音声再生装置400Dは、フレーム出力時刻から5msec後に受信したフレームデータ501からパケットデータ551を取得する。そして、フレーム出力時刻から6,7,…msec後に受信したフレームデータ502,503,…からパケットデータ552,553,…を取得し、これら取得したパケットデータ551,552,553,…に格納された分割音声データSD1,SD2,SD3,…を結合する処理を適宜実施する。
この後、音声再生装置400B,400C,400Dは、音声再生装置400Aと同様に、受信完了信号を適宜生成してデータ送信装置300に適宜送信する。また、音声再生装置400B,400C,400Dは、パケットデータ531,541,551が格納されているフレームデータ501,503,501を取得した時刻すなわちフレーム出力時刻から5msec経過した時刻から、さらに前記所定時間Uが経過した時刻に、音声データSB,SC,SDの先頭部分である分割音声データSB1、SC1,SD1を音としてデータ出力手段432に出力させる。すなわち、再生制御手段433は、フレーム出力時刻から5msecおよび所定時間Uが経過した時刻に、音声データSB,SC,SDの再生処理を開始する。
この後、例えば音声再生装置400Aは、再生制御手段433にて、データ記憶部420に記憶されたフレームデータ501,502,…を適宜消去する(ステップS207)。そして、音声再生装置400Aは、ACK生成手段431にて、ポーリングを再度受信したか否かを判断する(ステップS208)。
ステップS208において、ポーリングを受信したと判断した場合、ステップS202に戻り、ACKを生成してデータ送信装置300に送信する。そして、ステップS203ないしステップS208の処理を実施する。
一方で、ステップS208において、ポーリングを受信していないと判断した場合、ステップS203に戻り、音声再生装置400Aは、通信部410にて、データ送信装置300から送信されるフレームデータ50nを受信する。そして、ステップS204ないしステップS208の処理を実施する。
また、音声再生装置400B,400C,400Dも、ステップS207およびステップS208の処理を実施する。
上述したような実施の形態では、再生システム100のデータ送信装置300は、遅延量判定部330にて、音声再生装置400Aの遅延時間Daを例えば4msecと、音声再生装置400B,400Dの遅延時間Db,Ddを例えば5msecと、音声再生装置400Cの遅延時間Dcを例えば3msecと演算する。そして、遅延時間Dzに基づいて、音声再生装置400Aの差分時間Taを1msecと、音声再生装置400B,400Dの差分時間Tb,Tdを0msecと、音声再生装置400Cの差分時間Tcを2msecと演算する。この後、遅延量制御部360にて、差分時間Tzに基づいて出力要求情報を生成する。そして、遅延処理部350およびパケット生成部370にて、出力要求情報に基づいて、分割音声データSA1,SB1,SC1,SD1を遅延させて全音声再生装置400へ送信する。具体的には、パケット生成部370は、フレーム出力時刻から差分時間Tb,Tdである0msecだけ経過した時刻、すなわち、フレーム出力時刻に分割音声データSB1,SD1が格納されたパケットデータ531,551を音声再生装置400B,400Dへ送信する。また、フレーム出力時刻から差分時間Taである1msecだけ経過した時刻に分割音声データSA1が格納されたパケットデータ521を音声再生装置400Aへ送信する。さらに、フレーム出力時刻から差分時間Tcである2msecだけ経過した時刻に分割音声データSC1が格納されたパケットデータ541を音声再生装置400Cへ送信する。
このため、データ送信装置300は、音声再生装置400B,400Dにパケットデータ531,551を送信した時刻から遅延時間Db,Ddの5msecだけ経過した時刻、すなわち、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ531,551を受信させることができる。また、音声再生装置400Aに、パケットデータ521を送信した時刻から遅延時間Daの4msecだけ経過した時刻、すなわち、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ521を受信させることができる。さらに、音声再生装置400Cに、パケットデータ541を送信した時刻から遅延時間Dcの3msecだけ経過した時刻、すなわち、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ541を受信させることができる。つまり、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ521,531,541,551に格納された分割音声データSA1,SB1,SC1,SD1を受信させることができる。したがって、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、音声データSA,SB,SC,SDの先頭部分である分割音声データSA1,SB1,SC1,SD1を同一時刻に出力させることができる。
また、データ送信装置300は、音声データ入力部340にて、AVデータ出力機器から入力される音声データSA,SB,SC,SDを取得する。そして、パケット生成部370にて、音声データ入力部340において取得した音声データSA,SB,SC,SDの分割音声データSAh,SBi,SCj,SDkを、全音声再生装置400に適宜送信する。このため、データ送信装置300に、音声データSA,SB,SC,SDを記憶する記憶手段を設ける必要がなくなるので、データ送信装置300の構成を簡略化できる。また、データ送信装置300のコスト削減や小型化を図ることができる。
データ送信装置300に、遅延量判定部330にて演算した遅延時間Dzを記憶する遅延量記憶部320を設けている。そして、データ送信装置300は、遅延処理部350およびパケット生成部370にて、遅延量記憶部320に記憶された遅延時間Dzから演算される差分時間Tzに基づいて、分割音声データSA1,SB1,SC1,SD1を遅延させて全音声再生装置400に適宜送信する。このため、データ送信装置300は、例えば新しい楽曲の音声データSA,SB,SC,SDの分割音声データSA1,SB1,SC1,SD1を送信する際にも、遅延量記憶部320に記憶された遅延時間Dzから演算される差分時間Tzを用いることができ、遅延量判定部330にて新たに遅延時間Dzを演算する処理を省略できる。したがって、分割音声データSA1,SB1,SC1,SD1を送信する処理をより迅速にできる。
データ送信装置300は、遅延量判定部330にて、遅延時間Dzを演算してから予め設定された設定時間Tsを経過したか否かを判断し、経過していると判断した場合に、遅延時間Dzを再演算する。このため、データ送信装置300は、遅延時間Dzが変化した場合でも、再演算した適切な遅延時間Dzから演算される差分時間Tzに基づいて、分割音声データSA1,SB1,SC1,SD1を遅延させて全音声再生装置400に適宜送信できる。したがって、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、分割音声データSA1,SB1,SC1,SD1を同一時刻に出力させる処理を、より適切に実施させることができる。なお、遅延時間Dzが変化する原因としては、例えばネットワーク200が無線媒体である構成において、データ送信装置300と例えば音声再生装置400Aとの間に異物が配置され、フレームデータ50nの伝送経路が変化することが一例として挙げられる。
データ送信装置300は、遅延量判定部330にて、ACK要求情報を生成して全音声再生装置400に送信する。そして、ACK要求情報を送信してからACKを取得するまでの所要時間から遅延時間Dzを演算する。また、音声再生装置400A,400B,400C,400Dは、ACK生成手段431にて、ACK要求情報を取得すると、ACKを生成してデータ送信装置300に送信する。このため、遅延量判定部330は、ACK要求情報を生成して全音声再生装置400に送信した後、ACKを取得するまでの所要時間を認識するだけの簡単な方法で遅延時間Dzを演算できる。したがって、遅延時間Dzを演算する処理をより迅速にできる。また、遅延量判定部330の構成を簡略化できる。
データ送信装置300は、パケット生成部370にて、フレームデータ50nを受信した旨を伝達する受信完了信号を全音声再生装置400から受信したか否かを判断し、受信できていないと判断した場合に、フレームデータ50nを再送信する。また、音声再生装置400A,400B,400C,400Dは、再生制御手段433にて、フレームデータ50nを受信すると、受信完了信号を生成してデータ送信装置300に送信する。このため、データ送信装置300は、全音声再生装置400のうちの少なくともいずれか1つの装置が受信できなかったフレームデータ50nを再送信するので、全音声再生装置400に全てのフレームデータ50nを確実に受信させることができる。したがって、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、全ての分割音声データSAh,SBi,SCj,SDkを受信させることができるので、音声データSA,SB,SC,SDを途切れなく出力させることができる。
データ送信装置300は、パケット生成部370にて、遅延時間Dzから演算される差分時間Tzに基づいて、分割音声データSAh,SBi,SCj,SDkが格納されたパケットデータ52h,53i,54j,54kを適宜組み込んだフレームデータ50n,50(n+1),…を生成して、全音声再生装置400に送信する。そして、例えば音声再生装置400Aは、再生制御手段433にて、データ送信装置300から送信されるフレームデータ50n,50(n+1),…を取得して、これら取得したフレームデータ50n,50(n+1),…からパケットデータ52h,52(h+1),…を特定する。この後、再生制御手段433は、パケットデータ52h,52(h+1),…に格納された分割音声データSAh,SA(h+1),…を取得する。また、音声再生装置400B,400C,400Dにも、音声再生装置400Aと同様の機能を設けている。
このため、データ送信装置300は、パケット生成部370による1回のフレームデータ50nの送信で、音声再生装置400A,400B,400C,400Dに分割音声データSAh,SBi,SCj,SDkをそれぞれ同時に適宜取得させることができる。したがって、分割音声データSAh,SBi,SCj,SDkが格納されたパケットデータ52h,53i,54j,55kを別々に送信する構成と比べて、データを送信する回数を減らすことができ、パケット生成部370の負荷を軽減できる。
また、データ送信装置300は、音声データSA,SB,SC,SDを複数に分割した分割音声データSAh,SBi,SCj,SDkが組み込まれたフレームデータ50nを全音声再生装置400に送信する。そして、例えば音声再生装置400Aは、フレームデータ50n,50(n+1),…から取得した分割音声データSAh,SA(h+1),…を結合して、音声データSAとしてデータ出力手段432から出力させる。また、音声再生装置400B,400C,400Dにも、音声再生装置400Aと同様の機能を設けている。このため、データ送信装置300は、音声データSA,SB,SC,SDを複数に分割して、全音声再生装置400に送信するので、例えば音声再生装置400Aが分割音声データSAhが格納されたフレームデータ50nを受信していないことを認識した場合、この認識したフレームデータ50nのみを再送信するだけで適切に対応できる。したがって、前記状況を認識した際に再送信するデータ量を最小限に抑えることができる。また、データ送信装置300から1回当たりに送信するデータ量を少なくできるので、例えばネットワーク200が混雑している状況においても、全音声再生装置400に音声データSA,SB,SC,SDを迅速に送信できる。
例えば音声再生装置400Aは、再生制御手段433にて、例えばパケットデータ52hのセグメントナンバ52hDに基づいて、音声データSAにおける分割音声データSAhの順序を認識する。そして、分割音声データSAh,SA(h+1),…を、前記認識した順序に結合させて音声データSAを生成する。このため、再生制御手段433は、パケットデータ52hのセグメントナンバ52hDを参照するだけの簡単な方法で、分割音声データSAh,SA(h+1),…から音声データSAを生成できる。したがって、分割音声データSAh,SA(h+1),…から音声データSAを生成する処理をより迅速にできる。
〔実施形態の変形〕
なお、本発明は、上述した各実施の形態に限定されるものではなく、本発明の目的を達成できる範囲で以下に示される変形をも含むものである。
データ送信装置300に、AVデータ出力機器から入力される音声データSA,SB,SC,SDを取得する音声データ入力部340を設けた構成について例示したが、例えば以下のような構成などとしてもよい。すなわち、音声データ入力部340を設けずに、例えばAVデータを記憶する記憶手段を設け、パケット生成部370にて記憶手段に記憶されたAVデータの音声データSA,SB,SC,SDを全音声再生装置400に送信する構成としてもよい。このような構成にすれば、AVデータ出力機器と音声データ入力部340とを接続する処理を省略できるので、データ送信装置300の利便性を高めることができる。
データ送信装置300に、遅延時間Dzを記憶する遅延量記憶部320を設けた構成について例示したが、例えば以下のような構成としてもよい。すなわち、遅延量記憶部320を設けずに、遅延処理部350およびパケット生成部370にて例えば新しい楽曲の音声データSA,SB,SC,SDが組み込まれたフレームデータ50nを生成する処理を実施する毎に、遅延量判定部330にて遅延時間Dzを演算し、この演算した遅延時間Dzに基づいてフレームデータ50nを生成する構成などとしてもよい。このような構成にすれば、データ送信装置300に遅延量記憶部320を設ける必要がなくなるので、データ送信装置300の構成を簡略化できる。また、データ送信装置300のコスト削減や小型化を図ることができる。さらに、データ送信装置300は、最新の遅延時間Dzに基づいてフレームデータ50nを生成して送信するので、音声再生装置400A,400B,400C,400Dに、分割音声データSA1,SB1,SC1,SD1を同一時刻に出力させる処理を、より適切に実施させることができる。
データ送信装置300の遅延量判定部330にて、遅延時間Dzを演算してから設定時間Tsが経過した際に遅延時間Dzを再演算する構成について例示したが、これに限らず例えば以下のような構成などとしてもよい。すなわち、例えば1つや複数の楽曲の音声データSA,SB,SC,SDの送信が終了する毎に遅延時間Dzを演算する構成としてもよい。このような構成にすれば、遅延量判定部330は、計時手段から現在時刻を適宜取得する必要がなくなるので、遅延量判定部330の負荷を軽減できる。
さらに、遅延時間Dzを1回演算した後、例えば電源がオフされ再びオンされるまで、遅延時間Dzを演算しない構成としてもよい。このような構成にすれば、遅延量判定部330に遅延時間Dzを演算させる回数を減らすことができるので、遅延量判定部330の負荷を軽減できる。
データ送信装置300の遅延量判定部330にて、ACK要求情報を送信してからACKを受信するまでの所要時間から遅延時間Dzを演算する構成について例示したが、これに限らず例えば以下のような構成などとしてもよい。すなわち、例えば利用者にデータ送信装置300から全音声再生装置400までの距離や、データ送信装置300と全音声再生装置400とを接続する有線媒体の長さなどを設定入力させ、この設定入力された値から遅延時間Dzを演算する構成などとしてもよい。このような構成にすれば、遅延量判定部330に、ACK要求情報を生成して送信する機能を設ける必要がなくなる。また、全音声再生装置400に、ACK生成手段431を設ける必要がなくなる。このため、データ送信装置300および全音声再生装置400の構成を簡略化できる。
データ送信装置300のパケット生成部370に、全音声再生装置400から受信完了信号を受信していないと判断した場合に、全音声再生装置400のうちの少なくともいずれか1つの装置が受信していないフレームデータ50nを再送信する機能を設けた構成について例示したが、このような機能を設けない構成としてもよい。このような構成にすれば、パケット生成部370に、受信完了信号を受信したか否かを認識してフレームデータ50nを再送信する機能を設ける必要がなくなる。また、全音声再生装置400の再生制御手段433に、受信完了信号を生成してデータ送信装置300に送信する機能を設ける必要がなくなる。このため、データ送信装置300および全音声再生装置400の構成を簡略化できる。
例えば音声再生装置400Aの再生制御手段433にて、例えばパケットデータ52h,52(h+1),…のセグメントナンバ52hD,52(h+1)D,…に基づいて、分割音声データSAh,SA(h+1),…の順序を認識する。そして、この認識した順序に分割音声データSAh,SA(h+1),…を結合させて音声データSAを生成する構成について例示したが、例えば以下のような構成などとしてもよい。すなわち、例えばパケットデータ52h,52(h+1),…が、データ記憶部420に記憶された順序に基づいて、分割音声データSAh,SA(h+1),…を結合させて音声データSAを生成する構成としてもよい。このような構成にすれば、例えばパケットデータ52hにセグメントナンバ52hDを格納する必要がなくなるので、パケットデータ52hのデータ量を減らすことができる。このため、フレームデータ50nの生成処理および送信処理をより迅速にできる。
また、データ送信装置300にて、音声データSA,SB,SC,SDを複数の分割音声データSAh,SBi,SCj,SDkに分割して、これら分割音声データSAh,SBi,SCj,SDkを格納したフレームデータ50nを全音声再生装置400に送信する構成について例示したが、例えば以下のような構成などとしてもよい。
すなわち、パケット生成部370を設けずに、差分時間Tzに基づいて遅延されて遅延処理部350から出力される音声データSA,SB,SC,SDを、それぞれ対応する音声再生装置400A,400B,400C,400Dに直接的に送信する構成としてもよい。このような構成にしても、データ送信装置300は、上記実施の形態と略同一の作用により、音声再生装置400A,400B,400C,400Dに、音声データSA,SB,SC,SDを同一時刻に受信させることができる。このため、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、音声データSA,SB,SC,SDを同一時刻に出力させることができる。また、データ送信装置300にパケット生成部370を設ける必要がなくなるので、データ送信装置300の構成を簡略化できる。さらに、分割音声データSAh,SBi,SCj,SDkが格納されたフレームデータ50nを送信する構成と比べて、全音声再生装置400が受信するデータ量を減らすことができる。このため、全音声再生装置400のデータ記憶部420の容量を小さくできるので、全音声再生装置400のコスト削減を図ることができる。
また、パケット生成部370にて、パケットデータ52h,53i,54j,55kをフレームデータ50nに組み込まずに、音声再生装置400A,400B,400C,400Dに、それぞれ対応するパケットデータ52h,53i,54j,55kを差分時間Tzに基づいて遅延させて送信する構成としてもよい。このような構成にしても、データ送信装置300は、上記実施の形態と略同一の作用により、音声再生装置400A,400B,400C,400Dに、分割音声データSAh,SBi,SCj,SDkを同一時刻に受信させることができる。このため、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、音声データSA,SB,SC,SDの先頭部分である分割音声データSA1,SB1,SC1,SD1を同一時刻に出力させることができる。また、データ送信装置300のパケット生成部370に、パケットデータ52h,53i,54j,55kを組み込んだフレームデータ50nを生成する機能を設ける必要がなくなるので、データ送信装置300の構成を簡略化できる。さらに、パケット生成部370にて、フレームデータ50nを生成する処理を省略できるので、パケットデータ52h,53i,54j,55kを送信する処理をより迅速にできる。また、パケットデータ52h,53i,54j,55kをフレームデータ50nとして送信する構成と比べて、全音声再生装置400が受信するデータ量を減らすことができる。このため、全音声再生装置400のデータ記憶部420の容量を小さくできるので、全音声再生装置400のコスト削減を図ることができる。
AVデータ出力機器から音声データ入力部340を介して入力される音声データSA,SB,SC,SDを、遅延処理部350にて差分時間Tzに基づいて遅延させてパケット生成部370に出力する構成について例示したが、これに限らず例えば以下のような構成などとしてもよい。すなわち、遅延処理部350を設けずに、音声データ入力部340とパケット生成部370とを直接的に接続する。また、遅延量制御部360とパケット生成部370とを接続する。そして、パケット生成部370に、遅延量制御部360にて生成された出力要求情報を取得させ、差分時間Tzに基づいてパケットデータ52h,53i,54j,55kを適宜組み込んだフレームデータ50nを生成させて、全音声再生装置400に送信させる構成としてもよい。また、パケット生成部370に、フレームデータ50nを生成する機能を設けずに、音声再生装置400A,400B,400C,400Dに、それぞれ対応するパケットデータ52h,53i,54j,55kを差分時間Tzに基づいて遅延させて送信する構成としてもよい。これらのような構成にしても、データ送信装置300は、上記実施の形態と略同一の作用により、音声再生装置400A,400B,400C,400Dに、分割音声データSAh,SBi,SCj,SDkを同一時刻に受信させることができる。このため、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、音声データSA,SB,SC,SDの先頭部分である分割音声データSA1,SB1,SC1,SD1を同一時刻に出力させることができる。また、データ送信装置300に遅延処理部350を設ける必要がなくなるので、データ送信装置300の構成を簡略化できる。
音声データSA,SB,SC,SDを音声再生装置400A,400B,400C,400Dのそれぞれから同一時刻に出力させる再生システム100について例示したが、これに限らず例えば以下のような構成などとしてもよい。すなわち、データ送信装置300の遅延量判定部330にて、音声再生装置400A,400B,400C,400Dの遅延時間Dzに加え、映像再生装置の遅延時間Deを演算する。次に、遅延量制御部360にて、遅延時間Deおよび遅延時間Dzに基づいて出力要求情報を生成する。そして、遅延処理部350およびパケット生成部370などにて、出力要求情報に基づいて、映像データを複数に分割した分割映像データが格納されたパケットデータ、および、パケットデータ52h,53i,54j,55kを適宜組み込んだフレームデータ50nを生成する。この後、生成したフレームデータ50nを、音声再生装置400A,400B,400C,400D、および、映像再生装置に送信する構成などとしてもよい。このような構成にすれば、音声データSA,SB,SC,SD、および、映像データを、音声再生装置400A,400B,400C,400Dおよび映像再生装置から同一時刻に出力させることができる。このため、再生システム100の汎用性をより高めることができる。
また、本発明を、データ送信装置としての制御信号送信装置から送信されるデータとしての制御信号を、複数の出力装置としての制御装置から同一時刻に出力させる構成に適用してもよい。
上述した各機能をプログラムとして構築したが、例えば回路基板などのハードウェアあるいは1つのIC(Integrated Circuit)などの素子にて構成するなどしてもよく、いずれの形態としても利用できる。なお、プログラムや別途記録媒体から読み取らせる構成とすることにより、取扱が容易で、利用の拡大が容易に図れる。
その他、本発明の実施の際の具体的な構造および手順は、本発明の目的を達成できる範囲で他の構造などに適宜変更できる。
〔実施の形態の作用効果〕
上述したように、上記実施の形態では、再生システム100のデータ送信装置300は、遅延量判定部330にて、音声再生装置400Aの遅延時間Daを例えば4msecと、音声再生装置400B,400Dの遅延時間Db,Ddを例えば5msecと、音声再生装置400Cの遅延時間Dcを例えば3msecと演算する。そして、パケット生成部370にて、遅延時間Dzから演算される差分時間Tzに基づいて、分割音声データSA1,SB1,SC1,SD1を遅延させて音声再生装置400A,400B,400C,400Dへ送信する。具体的には、パケット生成部370は、フレーム出力時刻から差分時間Tb,Tdである0msecだけ経過した時刻、すなわち、フレーム出力時刻に分割音声データSB1,SD1が格納されたパケットデータ531,551を音声再生装置400B,400Dへ送信する。また、フレーム出力時刻から差分時間Taである1msecだけ経過した時刻に分割音声データSA1が格納されたパケットデータ521を音声再生装置400Aへ送信する。さらに、フレーム出力時刻から差分時間Tcである2msecだけ経過した時刻に分割音声データSC1が格納されたパケットデータ541を音声再生装置400Cへ送信する。
このため、データ送信装置300は、音声再生装置400B,400Dにパケットデータ531,551を送信した時刻から遅延時間Db,Ddの5msecだけ経過した時刻、すなわち、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ531,551を受信させることができる。また、音声再生装置400Aに、パケットデータ521を送信した時刻から遅延時間Daの4msecだけ経過した時刻、すなわち、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ521を受信させることができる。さらに、音声再生装置400Cに、パケットデータ541を送信した時刻から遅延時間Dcの3msecだけ経過した時刻、すなわち、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ541を受信させることができる。つまり、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、フレーム出力時刻から5msecだけ経過した時刻に、パケットデータ521,531,541,551に格納された分割音声データSA1,SB1,SC1,SD1を受信させることができる。したがって、データ送信装置300は、音声再生装置400A,400B,400C,400Dに、音声データSA,SB,SC,SDの先頭部分である分割音声データSA1,SB1,SC1,SD1を同一時刻に出力させることができる。