JP2007267030A - Audio network system having output delay correction function - Google Patents

Audio network system having output delay correction function Download PDF

Info

Publication number
JP2007267030A
JP2007267030A JP2006089509A JP2006089509A JP2007267030A JP 2007267030 A JP2007267030 A JP 2007267030A JP 2006089509 A JP2006089509 A JP 2006089509A JP 2006089509 A JP2006089509 A JP 2006089509A JP 2007267030 A JP2007267030 A JP 2007267030A
Authority
JP
Japan
Prior art keywords
node
nodes
packet
time
data
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
JP2006089509A
Other languages
Japanese (ja)
Other versions
JP4337835B2 (en
Inventor
Kei Nakayama
圭 中山
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 JP2006089509A priority Critical patent/JP4337835B2/en
Priority to US11/729,325 priority patent/US7680135B2/en
Priority to AT07104996T priority patent/ATE549824T1/en
Priority to EP11184996A priority patent/EP2408150B1/en
Priority to EP07104996A priority patent/EP1841139B1/en
Priority to CN2007100914169A priority patent/CN101046954B/en
Publication of JP2007267030A publication Critical patent/JP2007267030A/en
Application granted granted Critical
Publication of JP4337835B2 publication Critical patent/JP4337835B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Circuit For Audible Band Transducer (AREA)
  • Small-Scale Networks (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a delay correction technology for outputting acoustic signals from all nodes without any phase difference by considering a delicate delay such as a delay in a transmission line, also when transmitting audio sample data while circulating a packet in an annular audio network system. <P>SOLUTION: In the annular audio network system, frame data are transmitted by one packet from a master at each sampling period regularly with one of a plurality of nodes and other nodes as a master and slaves, respectively, and there is a region in which the sample data of a plurality of channels for the transmission between the nodes enter the packet. A time from a point in time when the packet is received to a point in time when a master node receives the packet is calculated as a correction time. When the sample data are outputted from each node to external equipment, an output time is delayed only by the correction time. <P>COPYRIGHT: (C)2008,JPO&amp;INPIT

Description

本発明は、リング型オーディオネットワークシステムにおける伝送遅延時間を考慮し、ノードから音響信号を出力する時刻を補正することで、全ノードにおける位相差までも補正する技術に関する。   The present invention relates to a technique for correcting even a phase difference in all nodes by correcting a time at which an acoustic signal is output from a node in consideration of a transmission delay time in a ring audio network system.

従来より、コンサート、演劇などのPA、音楽製作、構内放送などに使用されるオーディオネットワークシステムにおいて、音響信号の通信を行う技術として、非特許文献1に記載のCobraNet(登録商標)、非特許文献2に記載のSuperMAC(登録商標)、及び、非特許文献3に記載のEtherSound(登録商標)などが知られている。これらは、何れもイーサネット(登録商標)上で音響信号を伝送する技術である。   Conventionally, CobraNet (registered trademark) described in Non-Patent Document 1 and Non-Patent Document as a technology for performing acoustic signal communication in audio network systems used for PA, music production, private broadcasting, etc. for concerts and plays, etc. 2. SuperMAC (registered trademark) described in No. 2 and EtherSound (registered trademark) described in Non-Patent Document 3 are known. These are techniques for transmitting acoustic signals over Ethernet (registered trademark).

一方、電話回線用のネットワークに用いられる技術として、FDDI/TokenRingなどのリング型伝送ネットワークが知られている。この方式では、トークン(データ送信権)が、リング状に接続されたノード間を巡回しており、トークンを得たノードだけがデータの送信を実行できる。
http://www.balcom.co.jp/cobranet.htm http://www.sonyoxford.co.uk/pub/supermac/ http://www.ethersound.com/news/getnews.php?enews_key=101
On the other hand, a ring type transmission network such as FDDI / TokenRing is known as a technique used for a network for a telephone line. In this method, a token (data transmission right) circulates between nodes connected in a ring shape, and only the node that obtained the token can execute data transmission.
http://www.balcom.co.jp/cobranet.htm http://www.sonyoxford.co.uk/pub/supermac/ http://www.ethersound.com/news/getnews.php?enews_key=101

音響信号(オーディオサンプルデータ)の伝送方式として、上述の従来から知られているリング型伝送ネットワークを用いることが考えられる。図13は、リング型のオーディオネットワークシステムの一例を示す。ノード1301→ノード1302→ノード1303→ノード1302→ノード1301のように往復する形式で信号が巡回する。図14も、同様のリング型のオーディオネットワークシステムの別の例を示す。この例では、ノード1401〜1406がこの順に物理的にリング状に接続されている。マスタノード1401から送信されたパケットが、ノード1401→ノード1402→ノード1403→ノード1404→ノード1405→ノード1406のように、1サンプリング周期で1回巡回する。このパケットには複数チャンネル(ch)のオーディオサンプルデータの格納領域が確保されており、各ノードは適宜必要なchにデータを乗せて伝送を行う。   As a transmission method of the acoustic signal (audio sample data), it is conceivable to use the above-described conventionally known ring type transmission network. FIG. 13 shows an example of a ring type audio network system. The signal circulates in a reciprocating manner such as node 1301 → node 1302 → node 1303 → node 1302 → node 1301. FIG. 14 also shows another example of a similar ring-type audio network system. In this example, the nodes 1401 to 1406 are physically connected in this order in a ring shape. The packet transmitted from the master node 1401 circulates once in one sampling cycle, such as node 1401 → node 1402 → node 1403 → node 1404 → node 1405 → node 1406. In this packet, a storage area for audio sample data of a plurality of channels (ch) is secured, and each node transmits data on necessary channels as appropriate.

しかし、このようなリング状にデータを伝送するシステムでは、全ノードで音響信号の出力タイミングを正確に一致させるのが難しかった。特に、伝送線を利用している以上、その伝送線による信号伝送には遅れがあるし、各ノードでの処理による遅れもあるが、そのような微少な遅れは通常はほとんど気にならない程度である。しかし、プロ用の各種オーディオ機器では、このような微少時間の遅れも許されず、全ノードから出力される音響信号の位相差までも無くしたい場合がある。例えば、ラインアレイスピーカシステムを厳密に設計/設営するためには、この程度の微小時間をも考慮しなければならない場合がある。   However, in such a system that transmits data in a ring shape, it is difficult to accurately match the output timings of the acoustic signals at all nodes. In particular, as long as a transmission line is used, there is a delay in signal transmission through that transmission line, and there is also a delay due to processing at each node. However, such a small delay is usually of little concern. is there. However, in various professional audio devices, such a slight delay is not allowed, and there is a case where it is desired to eliminate even the phase difference of the acoustic signals output from all nodes. For example, in order to strictly design / install a line array speaker system, it may be necessary to consider such a minute time.

本発明は、リング型オーディオネットワークシステムにおいて、パケットを巡回させながらオーディオサンプルデータの伝送を行う場合に、伝送線における遅れなどの微少な遅れも考慮し、全ノードから位相差も無しに音響信号を出力できるような遅延補正の技術を提供することを目的とする。   When transmitting audio sample data while circulating packets in a ring-type audio network system, the present invention takes into account a minute delay such as a delay in a transmission line, and an acoustic signal is transmitted from all nodes without any phase difference. An object of the present invention is to provide a delay correction technique that can be output.

上記目的を達成するため、本発明は、複数のノードをループ伝送可能となるようにリング状に接続し、それらの複数のノード間で一方向にデータ伝送を行って任意のノード間での通信を行うオーディオネットワークシステムにおいて、複数のノードのうちの1つだけをマスタノードとし、他のノードはスレーブノードとし、サンプリング周期毎に、前記マスタノードからフレームデータを規則的に1パケットずつ送信して該サンプリング周期中に一巡するようにし、該パケットの中には、ノード間でオーディオサンプルデータの伝送を行うための、複数チャンネルのオーディオサンプルデータが入る領域が用意されているようなシステムで、各ノード毎に、当該ノードでパケットが受信された時点から該パケットが前記マスタノードで受信される時点までの時間を補正時間として算出しておき、各ノードからオーディオサンプルデータを外部機器に出力する際には、その出力時刻を前記補正時間だけ遅延させて出力することを特徴とするものである。   In order to achieve the above object, the present invention connects a plurality of nodes in a ring shape so that loop transmission is possible, and performs data transmission in one direction between the plurality of nodes to perform communication between arbitrary nodes. In the audio network system that performs the above, only one of the plurality of nodes is set as a master node, and the other nodes are set as slave nodes, and frame data is regularly transmitted from the master node packet by packet at each sampling period. In a system in which a round is taken during the sampling period, and in the packet, an area for storing audio sample data of a plurality of channels is provided for transmitting audio sample data between nodes. For each node, the master node receives the packet from the time the packet is received by the node. The time until the point in time is calculated as a correction time, and when audio sample data is output from each node to an external device, the output time is delayed by the correction time and output. is there.

特に、マスタノードから順方向にデータが送られるように任意の数のスレーブノードが順方向に連鎖的に接続され、順方向で末端のスレーブノードに至ったら該スレーブノードでデータが折り返され、順方向末端のスレーブノードからマスタノードまで逆方向にデータが送られるようにスレーブノードが逆方向に連鎖的に接続され、さらにマスタノードから逆方向にデータが送られるように任意の数のスレーブノードが逆方向に連鎖的に接続され、逆方向で末端のスレーブノードに至ったら該スレーブノードでデータが折り返され、逆方向末端のスレーブノードからマスタノードまで順方向にデータが送られるようにスレーブノードが順方向に連鎖的に接続され、そのようなノードの接続関係によりリング状のネットワークを構成するものであれば、マスタノードにおいて、リング状のネットワークを巡回して戻ってくるまでのネットワーク全体の遅延時間と、パケットが順方向に送信されて逆方向から戻ってくるまでのフォワード側遅延時間と、前記パケットが逆方向に送信されて順方向から戻ってくるまでのバックワード側遅延時間とを求め、各スレーブノードにおいて、順方向から送られてくるパケットと逆方向から送られてくるパケットの受信時刻の差を相対的に算出する手段を設けておき、これらの情報から各ノードは、自ノードでパケットが受信された時点から該パケットが前記マスタノードで受信される時点までの時間を補正時間として算出するようにする。各ノードからオーディオサンプルデータの出力を行うときには、その出力時刻を前記補正時間だけ遅延させて出力するようにする。   In particular, an arbitrary number of slave nodes are connected in a chain in the forward direction so that data can be transmitted in the forward direction from the master node. When the slave node reaches the terminal slave in the forward direction, the data is looped back at the slave node. Slave nodes are connected in a chain in the reverse direction so that data can be sent in the reverse direction from the slave node at the end of the direction to the master node, and any number of slave nodes can be connected so that data can be sent in the reverse direction from the master node. When the slave node is connected in a chain in the reverse direction and reaches the slave node at the end in the reverse direction, the slave node wraps the data and sends the data in the forward direction from the slave node at the reverse end to the master node. It is connected in a chain in the forward direction and constitutes a ring network by the connection relationship of such nodes. Then, in the master node, the delay time of the entire network until it circulates around the ring network and returns, the forward delay time until the packet is transmitted in the forward direction and returns from the reverse direction, The backward delay time from when the packet is transmitted in the reverse direction until it returns from the forward direction is obtained, and at each slave node, the reception time of the packet sent from the forward direction and the packet sent from the reverse direction A means for relatively calculating the difference is provided, and from these pieces of information, each node uses the time from when the packet is received at its own node to the time when the packet is received at the master node as a correction time. Try to calculate. When outputting audio sample data from each node, the output time is delayed by the correction time and output.

本発明によれば、伝送遅延があるオーディオネットワークにおいても、各ノードから同時刻に音響信号が出力されるようにすることができ、全ノードから同位相の音響信号を出力することができる。これは、各ノードの音響出力の位相差までも厳密に考慮するオーディオシステム、例えばラインアレイスピーカシステムなどに対して適用して好適である。   According to the present invention, even in an audio network having a transmission delay, an acoustic signal can be output from each node at the same time, and an acoustic signal having the same phase can be output from all nodes. This is suitable for application to an audio system that strictly considers even the phase difference of the sound output of each node, such as a line array speaker system.

以下、図面を用いて本発明の実施の形態を説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明に係るオーディオネットワークシステムのモジュール構成を示す。ノード101〜104は、パケット150を点線151に示すようにリング状に巡回させるように接続された4つのノードである。ノード101には、アナログディジタル変換器(ADC)111経由でマイク112が接続されている。ノード101は、ADC111経由で入力したオーディオデータを、巡回するパケット150の任意のchを用いて、他のノードに伝送できる。ノード102には、ミキサ121が接続されている。ノード102は、巡回するパケット150の任意のchからオーディオデータを取り込み、ミキサ121に送ることができる。ミキサ121は、入力したオーディオデータのミキシング処理、音量レベル制御処理、及び効果付与処理などの各種の信号処理を実行する。信号処理の結果のオーディオデータは、ミキサ121からノード102に入力し、ノード102は、入力したオーディオデータを、巡回するパケット150の任意のchを用いて、他のノードに伝送できる。ノード103には、ディジタルアナログ変換器(DAC)131を経由してパワーアンプ132とスピーカ133が接続されている。同様に、ノード104には、DAC141を経由してパワーアンプ142とスピーカ143が接続されている。ノード103は、巡回するパケット150の任意のchからオーディオデータを取り込み、DAC131経由でパワーアンプ132に送り、スピーカ133で放音することができる。ノード104も同様である。   FIG. 1 shows a module configuration of an audio network system according to the present invention. The nodes 101 to 104 are four nodes connected so that the packet 150 circulates in a ring shape as indicated by a dotted line 151. A microphone 112 is connected to the node 101 via an analog-digital converter (ADC) 111. The node 101 can transmit audio data input via the ADC 111 to another node using an arbitrary channel of the circulating packet 150. A mixer 121 is connected to the node 102. The node 102 can capture audio data from an arbitrary channel of the circulating packet 150 and send it to the mixer 121. The mixer 121 executes various signal processing such as mixing processing of input audio data, volume level control processing, and effect applying processing. The audio data resulting from the signal processing is input from the mixer 121 to the node 102, and the node 102 can transmit the input audio data to another node using an arbitrary channel of the circulating packet 150. A power amplifier 132 and a speaker 133 are connected to the node 103 via a digital / analog converter (DAC) 131. Similarly, a power amplifier 142 and a speaker 143 are connected to the node 104 via the DAC 141. The node 103 can take in audio data from an arbitrary channel of the circulating packet 150, send it to the power amplifier 132 via the DAC 131, and emit sound from the speaker 133. The same applies to the node 104.

各ノード101〜104は、それぞれバッファA及びBの2段構成のバッファを備えている。各バッファは、そのノードで取り込むべきオーディオデータを格納するバッファであり、2段構成になっているのは、各ch毎に最新のサンプルデータと1サンプリング時間前のサンプルデータとを格納するためである。記号Aが付されたバッファ(例えば110A)に最新の取り込みデータを格納し、記号Bが付されたバッファ(例えば110B)には1サンプリング時間前のサンプルを格納する。   Each of the nodes 101 to 104 includes a two-stage buffer of buffers A and B. Each buffer is a buffer for storing audio data to be captured by the node, and has a two-stage configuration in order to store the latest sample data and the sample data one sampling time ago for each channel. is there. The latest captured data is stored in a buffer (for example, 110A) with a symbol A, and a sample one sampling time before is stored in a buffer (for example, 110B) with a symbol B.

図2は、各ノードのハードウェア構成を示す。1つのノードは、中央処理装置(CPU)201、ランダムアクセスメモリ(RAM)202、リードオンリメモリ(ROM)203、通信インタフェース(I/F)204、音声I/O(入出力インタフェース)206、および通信バス208を備える。   FIG. 2 shows the hardware configuration of each node. One node includes a central processing unit (CPU) 201, a random access memory (RAM) 202, a read only memory (ROM) 203, a communication interface (I / F) 204, an audio I / O (input / output interface) 206, and A communication bus 208 is provided.

CPU201は、このノードの全体の動作を制御する処理装置である。RAM202は、CPU201が実行するプログラムのロード領域や各種のバッファなどを設定するワーク領域として用いる揮発性メモリである。ROM203は、CPU201が実行する各種のプログラムや定数データなどを記憶した不揮発性メモリである。通信I/F204には、外部機器として他のノード205が接続される。ここでは他のノード205を1つのブロックで示しているが、例えばノード102であれば、ノード103および101の両方と接続されるので、通信I/F204は、それらのノードと接続できるように複数設けられている。音声I/O206は、ADC、DAC、あるいはミキサなどの外部機器と接続するインタフェースである。   The CPU 201 is a processing device that controls the overall operation of this node. The RAM 202 is a volatile memory used as a work area for setting a load area for programs executed by the CPU 201 and various buffers. The ROM 203 is a non-volatile memory that stores various programs executed by the CPU 201 and constant data. Another node 205 is connected to the communication I / F 204 as an external device. Although the other node 205 is shown as one block here, for example, if the node 102 is connected to both the nodes 103 and 101, a plurality of communication I / Fs 204 can be connected to these nodes. Is provided. The audio I / O 206 is an interface connected to an external device such as an ADC, a DAC, or a mixer.

ここで本実施形態のオーディオネットワークシステムにおけるサンプルずれの補正手法について説明する。図8は、サンプルずれの補正手法を説明するための図である。ノードA〜Dは、信号が往復する形式でリング状に接続されており、ノードBがマスタノードとする。マスタノードBは、1サンプリング時間の開始のタイミングでパケットを送信する。巡回させるパケットのch1にはノードAがデータを格納し、ch2にはノードBがデータを格納し、ch3にはノードCがデータを格納し、ch4にはノードDがデータを格納するものとする。また、各ノードA〜Dは、それぞれch1〜ch4の全てのデータを取り込むものとする。801は、あるサンプリング時間t−1にマスタノードBに戻っているデータであり、サンプリング時間t−1における各chのデータが設定されている。新たなサンプリング時間tに入ったとき、ノードBでは、パケットのch2の領域に時間tのデータを格納し、パケット802として次のノードCに送信する。ノードCは、これをパケット803のように受信し、そのch3の領域に時間tのデータを格納し、パケット804として次のノードDに送信する。ノードDは、これをパケット805のように受信し、そのch4の領域に時間tのデータを格納し、パケット806として復路の経路に送信する。復路のノードCとBでは、807,808に示すようにパケットをそのまま通す(スルー)するだけである。次のノードAは、これをパケット809のように受信し、そのch1の領域に時間tのデータを格納し、パケット810として次のノードBに送信する。マスタノードBは、これをパケット811のように受信し、再び次のサンプリング時間まで待ってから、同様の処理を行う。   Here, a method of correcting the sample deviation in the audio network system of the present embodiment will be described. FIG. 8 is a diagram for explaining a sample deviation correction method. Nodes A to D are connected in a ring shape so that signals reciprocate, and node B is a master node. The master node B transmits a packet at the start timing of one sampling time. Node A stores data in ch1 of the packet to be circulated, node B stores data in ch2, node C stores data in ch3, and node D stores data in ch4. . Each node A to D captures all data of ch1 to ch4. Data 801 returns to the master node B at a certain sampling time t−1, and data of each channel at the sampling time t−1 is set. When the new sampling time t is entered, the node B stores the data of the time t in the ch2 area of the packet and transmits it to the next node C as the packet 802. Node C receives this as packet 803, stores the data at time t in the area of ch 3, and transmits it as packet 804 to the next node D. The node D receives this as a packet 805, stores data at time t in the area of ch4, and transmits it as a packet 806 to the return path. Nodes C and B on the return path simply pass the packet through (through) as shown in 807 and 808. The next node A receives this as a packet 809, stores data at time t in the area of ch1, and transmits it to the next node B as a packet 810. The master node B receives this as a packet 811 and waits until the next sampling time again, and then performs the same processing.

各ノードは、図1で説明したように、それぞれバッファAとBを備えている。例えば、マスタノードBであれば、822Aで示す1行が各chの最新のサンプルデータを格納するバッファAであり、822Bで示す1行が各chの1サンプリング時間前のサンプルデータを格納するバッファBである。他のノードも同様である。各ノードA〜Dでは、それぞれ、パケットを次のノードに送信するとき、その送信パケットのch1〜ch4のデータをバッファAに格納する。このとき、それまでにバッファAに格納されていたデータはバッファBにコピーされ、その後、バッファAへのデータの格納が行われるものとする。これにより、各ノードA〜Dでは、ch1〜ch4毎に、常に1サンプリング時間前のサンプルと最新のサンプルとがバッファに保持されていることになる。   Each node includes buffers A and B as described with reference to FIG. For example, in the case of the master node B, one row indicated by 822A is a buffer A for storing the latest sample data of each channel, and one row indicated by 822B is a buffer for storing sample data by one sampling time before each channel. B. The same applies to the other nodes. Each of the nodes A to D stores the data of ch1 to ch4 of the transmission packet in the buffer A when transmitting the packet to the next node. At this time, the data stored in the buffer A so far is copied to the buffer B, and then the data is stored in the buffer A. As a result, in each of the nodes A to D, the sample one sampling time before and the latest sample are always held in the buffer for each of ch1 to ch4.

各ノードA〜Dは、バッファA及びBに格納されたサンプルデータを、サンプルずれが起こらないように出力(ノードから出力して、例えばミキサに渡したり、アンプを通して放音したりすること)する。そのためには、リング状に各ノードを流れるデータの流れに沿って、自ノードより上流のノード(マスタノードから自ノードの直前のノードまで)で書き込まれるchについてはバッファBに格納されている1サンプリング時間前のデータを出力し、自ノードより下流のノード(自ノードの直後のノードからマスタノードの直前のノードまで)で書き込まれるchについてはバッファAに格納されている現サンプリング時間のデータを出力すればよい。自ノードで書き込むchについては、図8の例では、書き込むべき現サンプリング時間のデータをパケットの当該chに格納してから、他のchのデータと共にバッファAに書き込んでいるので、バッファBの当該chのデータを出力するようにしている。(もちろん受信したパケットをバッファに格納してから、自ノードで書き込むchのデータを更新してもよいので、そのような手順で処理するときには、バッファAから出力すればよい。)図8で、楕円を付けてある各サンプルが、上述したルールに沿って各ノードから出力されるサンプルを示している。これにより、サンプルがずれることなく、時間t−1のサンプルが一斉に出力できることになる。   Each of the nodes A to D outputs the sample data stored in the buffers A and B so as not to cause a sample shift (output from the node, for example, pass to a mixer or emit sound through an amplifier). . For this purpose, the ch written in the node upstream from the self node (from the master node to the node immediately before the self node) along the data flow flowing through each node in a ring shape is stored in the buffer B 1 The data before the sampling time is output, and the data of the current sampling time stored in the buffer A for the channel written in the downstream node (from the node immediately after the own node to the node immediately before the master node) is output. Output. For the channel to be written by the own node, in the example of FIG. 8, since the data of the current sampling time to be written is stored in the corresponding channel of the packet and then written to the buffer A together with the data of the other channels, channel data is output. (Of course, since the received packet may be stored in the buffer and then the data of the channel to be written in the own node may be updated, when processing in such a procedure, it may be output from the buffer A.) Each sample with an ellipse indicates a sample output from each node in accordance with the rules described above. As a result, the samples at time t−1 can be output all at once without shifting the samples.

なお、各ノードの接続位置や各ノードでどのchに書き込むかについての情報は、予め全ノード間で共有しているものとする。例えば、本システムの立ち上げ時、ノード構成に変更があったとき、各ノードでパケットに書き込むchやパケットから取り込むchに変更があったときなどに、例えばマスタノードの主導で制御データをノード間でやり取りすることにより、これらの情報を共有すればよい。   It is assumed that information on the connection position of each node and which channel is written in each node is shared in advance among all nodes. For example, when this system is started up, when the node configuration is changed, or when the channel to be written to the packet at each node or the channel to be fetched from the packet is changed, for example, the control data is transferred between the nodes at the initiative of the master node. It is only necessary to share these information by exchanging with each other.

図3は、各ノードを巡回するパケットを受信したときに、当該ノードで実行されるオーディオデータ入力ルーチンのフローチャートである。ステップ301で、このノードで入力するべきchのオーディオデータを入力する。これは、例えば図1のノード101においてマイク112からの音響信号をADC111経由で入力したり、ミキサ121から出力されるディジタル音響信号をノード102に入力するということである。ステップ302では、受信したパケット中の当該chのデータを、ステップ301で入力した最新のサンプルで上書き更新する。ステップ303では、1つ前のサンプリング時間(サイクル)のサンプルを格納してあるバッファBの当該chのデータを破棄する。ステップ304では、バッファBの当該chのデータを、現在のサイクル用のサンプルが格納されたバッファAの当該chのデータで上書きする。ステップ305では、バッファAの当該chのデータをパケットの当該chのデータで上書きする。複数chの入力を行うときは、以上の処理を繰り返せばよい。なお、ステップ303のデータの破棄は、ステップ304で上書きすることにより自動的に破棄したことになるものである。   FIG. 3 is a flowchart of an audio data input routine executed at a node when a packet that goes around each node is received. In step 301, audio data of channels to be input at this node is input. This means that, for example, the acoustic signal from the microphone 112 is input via the ADC 111 at the node 101 in FIG. 1 or the digital acoustic signal output from the mixer 121 is input to the node 102. In step 302, the data of the channel in the received packet is overwritten and updated with the latest sample input in step 301. In step 303, the data of the channel in buffer B storing the sample of the previous sampling time (cycle) is discarded. In step 304, the data of the corresponding channel in the buffer B is overwritten with the data of the corresponding channel in the buffer A in which the sample for the current cycle is stored. In step 305, the data of the channel in buffer A is overwritten with the data of the channel in the packet. When inputting a plurality of channels, the above process may be repeated. Note that the discarding of the data in step 303 is automatically discarded by overwriting in step 304.

図4は、各ノードでバッファに取り込んだサンプルデータを外部機器に出力するオーディオデータ出力ルーチンのフローチャートである。これは、例えば図1のノード102からミキサ121にサンプルデータを出力したり、ノード103,104でDAC及びアンプを経由して放音するということである。ステップ401で、このノードで外部に出力するべき全chの出力データを更新したか判別する。これは、出力すべきchのサンプルデータが全て所定のワーク領域(出力データ)に集まったかを判別する処理である。まだであれば、ステップ402で、該当chのサンプルをパケットに格納したノードの位置情報を取得する。ステップ403で、そのノード位置が自ノードよりも前段(マスタノードから自ノードの直前のノードまで)か後段(自ノードの直後のノードからマスタノードの直前のノードまで)かを判定する。前段のノードであるときは、ステップ404で、1つ前のサイクル用のバッファBから該当chのサンプルデータを取得する。後段であるときは、ステップ405で、現在のサイクル用のバッファAから該当chのサンプルデータを取得する。次にステップ406で、取得したデータで出力データを更新し、ステップ401に戻る。出力すべき全chのサンプルデータが出力データとして揃ったら、ステップ401から407に進み、オーディオデータ出力時刻補正処理(後に詳述する)を行う。次に、ステップ408で、このノードで出力するべきchのオーディオデータを、指定された外部機器へ、出力する。   FIG. 4 is a flowchart of an audio data output routine for outputting sample data taken into the buffer at each node to an external device. This means that, for example, sample data is output from the node 102 in FIG. 1 to the mixer 121, or sound is emitted from the nodes 103 and 104 via the DAC and amplifier. In step 401, it is determined whether the output data of all channels to be output to the outside has been updated at this node. This is a process for determining whether all the sample data of the channels to be output are collected in a predetermined work area (output data). If not, in step 402, the position information of the node storing the sample of the corresponding channel in the packet is acquired. In step 403, it is determined whether the node position is before the own node (from the master node to the node immediately before the own node) or after the node (from the node immediately after the own node to the node immediately before the master node). If it is the preceding node, in step 404, the sample data of the corresponding channel is obtained from the buffer B for the previous cycle. If it is the latter stage, in step 405, the sample data of the corresponding channel is obtained from the buffer A for the current cycle. In step 406, the output data is updated with the acquired data, and the process returns to step 401. When the sample data for all the channels to be output are obtained as output data, the process proceeds from step 401 to step 407, and audio data output time correction processing (described in detail later) is performed. Next, in step 408, the audio data of the channel to be output at this node is output to the designated external device.

以上により、図8で説明したサンプルずれの補正が行われ、同一のサンプリング時間のサンプルが各ノードから一斉に出力される。   As described above, the sample deviation correction described with reference to FIG. 8 is performed, and samples having the same sampling time are simultaneously output from the respective nodes.

なお、図8ではバッファを2段構成としたが、バッファをn+1(nは1以上の整数)段構成として、現サンプリング周期で読み出したサンプルからnサンプリング周期前に読み出したサンプルまでのn+1個のオーディオサンプルデータを格納するようにし、出力時には、そのサンプルをパケットに乗せたノードが、自ノードより上流にある場合はnサンプリング周期前のサンプルを読み出して出力し、自ノードより下流にある場合はn−1サンプリング周期前のサンプルを読み出して出力するようにしてもよい。   In FIG. 8, the buffer has a two-stage configuration, but the buffer has an n + 1 (n is an integer of 1 or more) stage configuration, and n + 1 number of samples from a sample read in the current sampling period to a sample read out before n sampling periods. Audio sample data is stored, and at the time of output, if the node that puts the sample in the packet is upstream from its own node, the sample before n sampling periods is read and output, and if it is downstream from its own node The sample before the n-1 sampling period may be read and output.

次に、ステップ407のオーディオデータ出力時刻補正処理について詳しく説明する。上記のサンプルずれの補正により、サンプル単位で出力のタイミングを合わせることはできる。しかし、上述したリング状のネットワークを巡回するパケットにデータを乗せて各chのサンプルデータを伝送するので、ノード間の伝送路による遅れが発生する。この遅れは微少であり無視できる場合もあるが、プロ用のオーディオ機器では、このような微少な遅れも許されない場合がある。オーディオデータ出力時刻補正処理は、このような伝送路による遅延を補正して、各ノードから出力されるオーディオ信号の出力のタイミングを高い精度で一致させる処理である。   Next, the audio data output time correction process in step 407 will be described in detail. By correcting the sample deviation, the output timing can be adjusted in units of samples. However, since the sample data of each channel is transmitted by putting data on a packet that circulates in the ring-shaped network described above, a delay due to a transmission path between nodes occurs. This delay is small and can be ignored, but such a small delay may not be allowed in professional audio equipment. The audio data output time correction process is a process of correcting the delay caused by such a transmission path and matching the output timing of the audio signal output from each node with high accuracy.

オーディオデータ出力時刻補正処理について具体的に説明する。なお、ここでは図13に示したように信号が往復するような接続形態のネットワークを前提として説明する。各ノードにおけるパケットへのデータの書き込みとパケットからのデータの取り込みは、往路のルート中で行うものとし、復路のルートはパケットをスルーするのみとする。まず、説明のために、図9に示すように、配線長aにおける遅延時間をt(a)、各ノード901,902ごとのフォワード側の送信/受信時刻をTFT,TFR、バックワード側の送信/受信時刻をTBT,TBRと、それぞれ表記する。また、ネットワーク全体の遅延時間をTotal Delayと、マスタノードを起点としたフォワード側/バックワード側の遅延時間をForward Delay,Backward Delayと、各ノードにおけるパケット受信時間差をNode(Name) Delayと、それぞれ表記する。Total Delayは、ネットワークを1回巡回したときの遅延時間である。Forward Delayは、マスタノードのフォワード側から送信したデータが戻ってきてフォワード側で受信されるまでの遅延時間である。Backward Delayは、マスタノードのバックワード側から送信したデータが戻ってきてバックワード側で受信されるまでの遅延時間である。 The audio data output time correction process will be specifically described. Here, description will be made on the assumption of a network having a connection form in which signals reciprocate as shown in FIG. The writing of data into the packet and the capturing of data from the packet at each node are performed in the forward route, and the return route only passes through the packet. First, for explanation, as shown in FIG. 9, the delay time in the wiring length a is t (a), the transmission / reception time on the forward side for each node 901, 902 is T FT , T FR , backward side The transmission / reception times are denoted as T BT and T BR , respectively. Also, the delay time of the entire network is Total Delay, the delay time of the forward / backward side starting from the master node is Forward Delay, Backward Delay, and the packet reception time difference at each node is Node (Name) Delay, respectively write. Total Delay is a delay time when the network is visited once. Forward Delay is a delay time until data transmitted from the forward side of the master node returns and is received on the forward side. Backward Delay is a delay time until data transmitted from the backward side of the master node returns and is received on the backward side.

なお、マスタノードがサンプリング周期の開始タイミングにパケットの送信を開始する向きを「フォワード側」と呼び、その逆の向きを「バックワード側」と呼ぶ。図9では、図の右側がフォワード側であり、左側がバックワード側である(これは図10や図11でも同じ)。   The direction in which the master node starts packet transmission at the start timing of the sampling period is called “forward side”, and the opposite direction is called “backward side”. In FIG. 9, the right side of the figure is the forward side, and the left side is the backward side (the same applies to FIGS. 10 and 11).

図10は、マスタノードで計算する遅延時間を示す。図10(a)は、マスタノード1001がバックワード側の末端に配置され、マスタノード1001のバックワード側出力がマスタノード内で直接バックワード側入力に結線されている例である。図10(b)は、マスタノード1012がスレーブノード1011と1013の間にあり、マスタノード1012のフォワード側の入出力とバックワード側の入出力のそれぞれにスレーブノード1011,1013が接続されている例である。図10(c)は、マスタノード1023がフォワード側の末端に配置され、マスタノード1001のフォワード側出力がマスタノード内で直接フォワード側入力に結線されている例である。これらの各例毎に、図に示すように、Total Delay,Forward Delay,Backward Delayを計算する。ここではノードが3つの場合を例としたが、さらに多くのノードが接続される場合も同様に計算すればよい。   FIG. 10 shows the delay time calculated in the master node. FIG. 10A shows an example in which the master node 1001 is arranged at the end on the backward side, and the backward side output of the master node 1001 is directly connected to the backward side input in the master node. In FIG. 10B, the master node 1012 is between the slave nodes 1011 and 1013, and the slave nodes 1011 and 1013 are connected to the forward-side input / output and the backward-side input / output of the master node 1012, respectively. It is an example. FIG. 10C shows an example in which the master node 1023 is arranged at the forward end, and the forward output of the master node 1001 is directly connected to the forward input in the master node. For each of these examples, Total Delay, Forward Delay, and Backward Delay are calculated as shown in the figure. Here, the case where there are three nodes is taken as an example, but the calculation may be similarly performed when more nodes are connected.

図11は、スレーブノードで計算する遅延時間を示す。各スレーブノードでは、フォワード側とバックワード側のパケットデータの受信時間差(遅延時間)を計算する。この遅延時間は、マスタノードとの位置関係で計算方法が異なる。例えば、図11(a)に示すように、マスタノード1101に対してフォワード側にあるスレーブノード1102,1103(それぞれS3,S4と名前が付けてある)では、図11(d)及び(e)に示すように、TFR−TBRで上記遅延時間を計算する。一方、マスタノード1101に対してバックワード側にあるスレーブノード1104,1105(それぞれS1,S2と名前が付けてある)では、図11(b)及び(c)に示すように、TBR−TFRで上記遅延時間を計算する。また、図11(a)の接続例で、マスタノード1101で計算される遅延時間は図11(f)のようになる。 FIG. 11 shows a delay time calculated in the slave node. Each slave node calculates a reception time difference (delay time) between forward and backward packet data. The calculation method of this delay time differs depending on the positional relationship with the master node. For example, as shown in FIG. 11 (a), in slave nodes 1102 and 1103 (named S3 and S4, respectively) on the forward side with respect to the master node 1101, FIGS. 11 (d) and 11 (e) As shown in FIG. 4, the delay time is calculated by T FR −T BR . On the other hand, in the slave nodes 1104 and 1105 (named S1 and S2 respectively) on the backward side with respect to the master node 1101, as shown in FIGS. 11B and 11C, T BR −T Calculate the above delay time with FR . In the connection example of FIG. 11A, the delay time calculated by the master node 1101 is as shown in FIG.

図12は、各ノードでサンプルデータを外部機器(ミキサやアンプなど)に出力するときに、出力時刻をどれ程遅らせるか、その補正時間の計算例を示す。図12(a)の横軸は時間の経過方向を示し、縦軸に並べたS1,S2,M,S3,S4は図11(a)のマスタノード及びスレーブノードを示す。M→S3→S4→S3→M→S2→S1→S2→Mの矢印は、図11(a)のネットワーク構成でこの矢印に従うようにパケットデータが巡回することを示している(右下がりの向きの矢印は往路、右上がりの向きの矢印は復路を示す)。この矢印に従ってパケットデータが巡回するとき、各ノード間の遅延時間は1204にそれぞれ示した。また、1201はTotal Delay、1202はForward Delay、1203はBackward Delayを示す。   FIG. 12 shows a calculation example of the correction time for how much the output time is delayed when sample data is output to an external device (such as a mixer or an amplifier) at each node. In FIG. 12A, the horizontal axis indicates the direction of passage of time, and S1, S2, M, S3, and S4 arranged on the vertical axis indicate the master node and the slave node in FIG. The arrows of M → S3 → S4 → S3 → M → S2 → S1 → S2 → M indicate that the packet data circulates in accordance with this arrow in the network configuration of FIG. The arrow indicates the forward path, and the arrow pointing upward to the right indicates the return path.) When the packet data circulates according to this arrow, the delay time between the nodes is indicated by 1204. Reference numeral 1201 denotes a total delay, 1202 denotes a forward delay, and 1203 denotes a backward delay.

図12(a)の1213は、マスタノードMから送信されたパケットがスレーブノードS3で受信されたタイミングを示す。このパケットの受信により、当該ノードS3で上述の図4の処理が実行される。同様に、タイミング1214ではノードS4で、タイミング1211ではノードS1で、タイミング1212ではノードS2で、それぞれ図4の処理が実行される。これら各ノードにおける図4の処理で、ステップ407の出力時刻補正を行わないとすると、ノードS3はタイミング1213でオーディオデータを出力し、ノードS4はタイミング1214でオーディオデータを出力し、…というように処理されるため各ノードで出力タイミングがずれてしまう。そこで、本実施形態では各ノードでの上記各タイミング1213,1214,1211,1212をそれぞれタイミング1210まで遅延させる。タイミング1210はパケットがマスタノードに戻ったタイミングである。このタイミング1210まで待てば、全ノードで同じサンプリング時間のサンプルが揃い、一斉に出力することでオーディオ信号の出力のタイミングを高い精度で一致させることができる。各ノードにおけるパケットの受信タイミングからタイミング1210までの遅延時間を補正時間と呼ぶ。1221〜1224は、各ノードでの補正時間の計算方法を示す。   1213 in FIG. 12A indicates the timing at which the packet transmitted from the master node M is received by the slave node S3. Upon reception of this packet, the processing of FIG. 4 described above is executed in the node S3. Similarly, the processing of FIG. 4 is executed at the node S4 at the timing 1214, the node S1 at the timing 1211, and the node S2 at the timing 1212. If the output time correction in step 407 is not performed in the processing of FIG. 4 at each node, the node S3 outputs audio data at timing 1213, the node S4 outputs audio data at timing 1214, and so on. Since processing is performed, the output timing is shifted at each node. Therefore, in the present embodiment, the timings 1213, 1214, 1211 and 1212 at each node are delayed to the timing 1210, respectively. Timing 1210 is timing when the packet returns to the master node. By waiting until this timing 1210, samples of the same sampling time are prepared in all the nodes, and output at the same time makes it possible to match the output timing of the audio signal with high accuracy. The delay time from the packet reception timing to the timing 1210 at each node is called a correction time. Reference numerals 1221 to 1224 denote a calculation method of the correction time at each node.

図12(b)は、フォワード側のスレーブノード用の補正時間の計算方法を示す。フォワード側のスレーブノードは、例えばノードS3,S4である。これらのノードでは、要するに、自ノードのバックワード側入力(TBR)にパケットが入力してから、該パケットがマスタノードに戻るまでの時間を計算すればよいと言うことであるから、Total Delay−{(Total Delay)−(Backward Delay)−(Node(Name) Delay)}/2で計算できる。これを整理して図12(b)の式を得ている。式1223と1224は、図12(b)の式に図11(f)を代入したものである。 FIG. 12B shows a calculation method of the correction time for the slave node on the forward side. The forward-side slave nodes are, for example, nodes S3 and S4. In short, these nodes only need to calculate the time from when a packet is input to the backward input (T BR ) of the own node until the packet returns to the master node. − {(Total Delay) − (Backward Delay) − (Node (Name) Delay)} / 2 This is rearranged to obtain the equation of FIG. Expressions 1223 and 1224 are obtained by substituting FIG. 11F into the expression of FIG.

図12(c)は、バックワード側のスレーブノード用の補正時間の計算方法を示す。バックワード側のスレーブノードは、例えばノードS1,S2である。これらのノードでも、要するに、自ノードのバックワード側入力(TBR)にパケットが入力してから、該パケットがマスタノードに戻るまでの時間を計算すればよいと言うことであるから、{(Total Delay)−(Forward Delay)−(Node(Name) Delay)}/2で計算できる。これは図12(c)の式である。式1221と1222は、図12(c)の式に図11(f)を代入したものである。 FIG. 12C shows a method of calculating the correction time for the slave node on the backward side. The slave nodes on the backward side are, for example, nodes S1 and S2. In short, in these nodes, it is only necessary to calculate the time from when a packet is input to the backward input (T BR ) of the own node until the packet returns to the master node. Total Delay)-(Forward Delay)-(Node (Name) Delay)} / 2. This is the equation of FIG. Expressions 1221 and 1222 are obtained by substituting FIG. 11F into the expression of FIG.

図5は、マスタノードの遅延時間算出ルーチンのフローチャートである。ステップ501で、ネットワーク全体の遅延時間(Total Delay)を算出する。ステップ502で、フォワード側の遅延時間(Forward Delay)を算出する。ステップ503で、バックワード側の遅延時間(Backward Delay)を算出する。ステップ504で、全ノードにこれらの情報を通知する。以上の処理により、図10で説明した各遅延時間が算出される。   FIG. 5 is a flowchart of the master node delay time calculation routine. In step 501, a delay time (Total Delay) of the entire network is calculated. In step 502, a forward delay time is calculated. In step 503, a backward delay time (Backward Delay) is calculated. In step 504, the information is notified to all nodes. Through the above processing, each delay time described in FIG. 10 is calculated.

図6は、スレーブノードの遅延時間算出ルーチンのフローチャートである。ステップ601で、ネットワーク全体、フォワード側、及びバックワード側の遅延時間情報(Total Delay,Forward Delay,Backward Delay)を取得する。ステップ602で、自ノードの位置がフォワード側かバックワード側かを判定する。フォワード側なら、ステップ603で自ノードのパケット時間受信差を求め、ステップ604で図12(b)に示す式により補正時間を算出する。バックワード側なら、ステップ605で自ノードのパケット時間受信差を求め、ステップ606で図12(c)に示す式により補正時間を算出する。   FIG. 6 is a flowchart of a slave node delay time calculation routine. In step 601, delay time information (Total Delay, Forward Delay, Backward Delay) on the entire network, forward side, and backward side is acquired. In step 602, it is determined whether the position of the own node is the forward side or the backward side. If it is the forward side, the packet time reception difference of its own node is obtained in step 603, and the correction time is calculated by the formula shown in FIG. 12B in step 604. On the backward side, the packet time reception difference of the own node is obtained in step 605, and the correction time is calculated by the equation shown in FIG.

上記図5及び図6の処理により、図10及び図11で説明した各遅延時間が算出される。図5及び図6の処理は、オーディオデータの伝送を開始する前に事前に実行しておき、各スレーブノードで補正時間を算出しておく。   The delay times described in FIGS. 10 and 11 are calculated by the processes in FIGS. The processing in FIGS. 5 and 6 is executed in advance before starting transmission of audio data, and the correction time is calculated in each slave node.

図7は、スレーブノードのオーディオデータ出力ルーチンのフローチャートである。この処理は図4のステップ407で実行される。ステップ701でタイマをリセットし、ステップ702,703でタイマが補正時間(このノードで上記ステップ604または606で算出してあるもの)を超えるまで待つ。補正時間を超えたらリターンする。その後、図4のステップ408でオーディオデータが出力されるので、これにより図12で説明したように各ノード毎の補正時間だけ遅延させて出力がなされ、全ノードで出力タイミングが合う。   FIG. 7 is a flowchart of an audio data output routine of the slave node. This process is executed in step 407 of FIG. In step 701, the timer is reset, and in steps 702 and 703, the timer waits until the correction time (which is calculated in step 604 or 606 above in this node) is exceeded. Return if the correction time is exceeded. After that, since audio data is output in step 408 of FIG. 4, the output is delayed by the correction time for each node as described with reference to FIG.

なお、上記実施形態では、図13のような接続関係のオーディオネットワークシステムを例として説明したが、複数のノードをリング状に接続しパケットを巡回させるようなオーディオネットワークシステムであれば、どのようなものでも本発明は適用可能である。その場合は、各ノードにおいて、ノードでパケットが受信された時点から該パケットが前記マスタノードで受信される時点までの時間を求めて補正時間とすればよい。システム立ち上げ時などに、補正時間計測用のパケットを流し、これにより各ノードにおけるパケットが受信された時点から該パケットが前記マスタノードで受信される時点までの時間を求めてもよい。   In the above embodiment, the connection-related audio network system as shown in FIG. 13 has been described as an example. However, any audio network system that connects a plurality of nodes in a ring shape and circulates packets can be used. The present invention can also be applied to any device. In that case, in each node, the time from when the packet is received at the node to the time when the packet is received at the master node may be obtained and used as the correction time. When the system is started up, a correction time measurement packet is sent, and thereby the time from when the packet is received at each node to when the packet is received at the master node may be obtained.

本発明に係るオーディオネットワークシステムのモジュール構成図Module configuration diagram of an audio network system according to the present invention 各ノードのハードウェア構成図Hardware configuration diagram of each node オーディオデータ入力ルーチンのフローチャートAudio data input routine flowchart オーディオデータ出力ルーチンのフローチャートAudio data output routine flowchart マスタノードの遅延時間算出ルーチンのフローチャートFlowchart of master node delay time calculation routine スレーブノードの遅延時間算出ルーチンのフローチャートFlow chart of slave node delay time calculation routine スレーブノードのオーディオデータ出力ルーチンのフローチャートFlowchart of slave node audio data output routine サンプルずれの補正手法を説明するための図Diagram for explaining sample deviation correction method 遅延時間と送信/受信時刻の定義を示す図Diagram showing the definition of delay time and transmission / reception time マスタノードで計算する遅延時間を示す図Diagram showing the delay time calculated on the master node スレーブノードで計算する遅延時間を示す図Diagram showing delay time calculated in slave node 各ノードでの補正時間の計算例を示す図The figure which shows the calculation example of the correction time in each node リング型のオーディオネットワークシステムの一例を示す図Diagram showing an example of a ring-type audio network system リング型のオーディオネットワークシステムの別の例を示す図Diagram showing another example of ring-type audio network system

符号の説明Explanation of symbols

101〜104…ノード、150…パケット、111…アナログディジタル変換器(ADC)、112…マイク、121…ミキサ、131,141…ディジタルアナログ変換器(DAC)、132,142…パワーアンプ、133,143…スピーカ。   DESCRIPTION OF SYMBOLS 101-104 ... Node, 150 ... Packet, 111 ... Analog-digital converter (ADC), 112 ... Microphone, 121 ... Mixer, 131, 141 ... Digital-analog converter (DAC), 132, 142 ... Power amplifier, 133, 143 … Speaker.

Claims (2)

複数のノードをループ伝送可能となるようにリング状に接続し、それらの複数のノード間で一方向にデータ伝送を行って任意のノード間での通信を行うオーディオネットワークシステムであって、
前記複数のノードのうちの1つだけをマスタノードとし、他のノードはスレーブノードとし、
これらのノードは、前記マスタノードから順方向にデータが送られるように任意の数のスレーブノードが順方向に連鎖的に接続され、順方向で末端のスレーブノードに至ったら該スレーブノードでデータが折り返され、前記順方向末端のスレーブノードから前記マスタノードまで逆方向にデータが送られるように前記スレーブノードが逆方向に連鎖的に接続され、さらに前記マスタノードから逆方向にデータが送られるように任意の数のスレーブノードが逆方向に連鎖的に接続され、逆方向で末端のスレーブノードに至ったら該スレーブノードでデータが折り返され、前記逆方向末端のスレーブノードから前記マスタノードまで順方向にデータが送られるように前記スレーブノードが順方向に連鎖的に接続され、そのようなノードの接続関係によりリング状のネットワークを構成するものであり、
サンプリング周期毎に、前記マスタノードからフレームデータを規則的に1パケットずつ送信し、そのサンプリング周期中に、該パケットが前記リング状に接続した複数のノードを一巡するように伝送し、
該パケットの中に、複数チャンネルのオーディオサンプルデータが入る領域が用意されており、
前記マスタノードは、
前記パケットが前記リング状のネットワークを巡回して戻ってくるまでのネットワーク全体の遅延時間と、前記パケットが順方向に送信されて逆方向から戻ってくるまでのフォワード側遅延時間と、前記パケットが逆方向に送信されて順方向から戻ってくるまでのバックワード側遅延時間とを求める手段と、
求めたネットワーク全体の遅延時間、フォワード側遅延時間、及びバックワード側遅延時間を、全てのスレーブノードに通知する手段と
を備え、
前記各スレーブノードは、
順方向から送られてくるパケットと逆方向から送られてくるパケットの受信時刻の差を相対的に算出する手段と、
算出した受信時刻の差と、前記マスタノードから通知された情報とを用いて、自ノードでパケットが受信された時点から該パケットが前記マスタノードで受信される時点までの時間を補正時間として算出する手段と、
自ノードが読み出すべきチャンネルのオーディオサンプルデータを前記パケットから読み出す手段と、
前記読み出したチャンネルのオーディオサンプルデータを格納する記憶手段と、
前記記憶手段に記憶されたオーディオサンプルデータの出力時刻を前記補正時間だけ遅延させて出力する手段と
を備えることを特徴とするオーディオネットワークシステム。
An audio network system in which a plurality of nodes are connected in a ring shape so that loop transmission is possible, data transmission is performed in one direction between the plurality of nodes, and communication between arbitrary nodes is performed,
Only one of the plurality of nodes is a master node, the other nodes are slave nodes,
In these nodes, an arbitrary number of slave nodes are connected in a chain in the forward direction so that data can be sent in the forward direction from the master node. The slave nodes are connected in a chain in the reverse direction so that data is sent in the reverse direction from the slave node at the end in the forward direction to the master node, and further, the data is sent in the reverse direction from the master node. Any number of slave nodes are connected in a chain in the reverse direction. When the slave node reaches the end slave node in the reverse direction, the data is looped back at the slave node, and forward from the slave node at the reverse end to the master node. The slave nodes are connected in a chain in the forward direction so that data can be sent to them, and the connection relationship of such nodes It constitutes a more ring network,
At each sampling period, the master node regularly transmits frame data one packet at a time, and during the sampling period, the packet is transmitted so as to make a round of a plurality of nodes connected in the ring shape,
In the packet, an area for storing audio sample data of a plurality of channels is prepared,
The master node is
A delay time of the entire network until the packet circulates around the ring network and returns; a forward delay time until the packet is transmitted in the forward direction and returns from the reverse direction; and Means for obtaining the backward delay time from the transmission in the reverse direction to the return from the forward direction;
Means for notifying all the slave nodes of the obtained delay time of the entire network, forward delay time, and backward delay time;
Each slave node is
Means for relatively calculating a difference between reception times of a packet sent from the forward direction and a packet sent from the reverse direction;
Using the difference between the calculated reception times and the information notified from the master node, the time from when the packet is received at the own node to the time when the packet is received at the master node is calculated as the correction time. Means to
Means for reading audio sample data of the channel to be read by the own node from the packet;
Storage means for storing audio sample data of the read channel;
An audio network system comprising: means for outputting an output time of the audio sample data stored in the storage means with a delay by the correction time.
複数のノードをループ伝送可能となるようにリング状に接続し、それらの複数のノード間で一方向にデータ伝送を行って任意のノード間での通信を行うオーディオネットワークシステムであって、
前記複数のノードのうちの1つだけをマスタノードとし、他のノードはスレーブノードとし、
サンプリング周期毎に、前記マスタノードからフレームデータを規則的に1パケットずつ送信し、そのサンプリング周期中に、該パケットが前記リング状に接続した複数のノードを一巡するように伝送し、
該パケットの中には、ノード間でオーディオサンプルデータの伝送を行うための、複数チャンネルのオーディオサンプルデータが入る領域が用意されており、
前記各ノード毎に、当該ノードでパケットが受信された時点から該パケットが前記マスタノードで受信される時点までの時間を補正時間として算出しておき、
前記各ノードからオーディオサンプルデータを外部機器に出力する際には、その出力時刻を前記補正時間だけ遅延させて出力する
ことを特徴とするオーディオネットワークシステム。
An audio network system in which a plurality of nodes are connected in a ring shape so that loop transmission is possible, data transmission is performed in one direction between the plurality of nodes, and communication between arbitrary nodes is performed,
Only one of the plurality of nodes is a master node, the other nodes are slave nodes,
At each sampling period, the master node regularly transmits frame data one packet at a time, and during the sampling period, the packet is transmitted so as to make a round of a plurality of nodes connected in the ring shape,
In the packet, an area for storing audio sample data of a plurality of channels for transmitting audio sample data between nodes is prepared,
For each node, the time from when the packet is received at the node to the time when the packet is received at the master node is calculated as a correction time,
When outputting audio sample data from each of the nodes to an external device, the output time is delayed by the correction time and output.
JP2006089509A 2006-03-28 2006-03-28 Audio network system with output delay correction function Expired - Fee Related JP4337835B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2006089509A JP4337835B2 (en) 2006-03-28 2006-03-28 Audio network system with output delay correction function
US11/729,325 US7680135B2 (en) 2006-03-28 2007-03-27 Audio network system having lag correction function of audio samples
AT07104996T ATE549824T1 (en) 2006-03-28 2007-03-27 AUDIO NETWORK SYSTEM WITH DELAY CORRECTION FUNCTION FOR AUDIO SAMPLES
EP11184996A EP2408150B1 (en) 2006-03-28 2007-03-27 Audio network system having lag correction function of audio samples
EP07104996A EP1841139B1 (en) 2006-03-28 2007-03-27 Audio network system having lag correction function of audio samples
CN2007100914169A CN101046954B (en) 2006-03-28 2007-03-28 Audio network system having lag correction function of audio samples

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006089509A JP4337835B2 (en) 2006-03-28 2006-03-28 Audio network system with output delay correction function

Publications (2)

Publication Number Publication Date
JP2007267030A true JP2007267030A (en) 2007-10-11
JP4337835B2 JP4337835B2 (en) 2009-09-30

Family

ID=38639570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006089509A Expired - Fee Related JP4337835B2 (en) 2006-03-28 2006-03-28 Audio network system with output delay correction function

Country Status (1)

Country Link
JP (1) JP4337835B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009130519A (en) * 2007-11-21 2009-06-11 Mitsubishi Electric Corp Synchronization system
JP2009200730A (en) * 2008-02-20 2009-09-03 Rohm Co Ltd Audio signal processing circuit and audio device using the same, and volume switching method
JP2012044722A (en) * 2011-11-30 2012-03-01 Mitsubishi Electric Corp Synchronization system, time master device, time slave device, and synchronization method
JP5456202B2 (en) * 2011-02-25 2014-03-26 三菱電機株式会社 Master device, slave device, and time synchronization method
KR20170089891A (en) * 2014-11-21 2017-08-04 아브네라 코포레이션 Ring network of bluetooth speakers

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009130519A (en) * 2007-11-21 2009-06-11 Mitsubishi Electric Corp Synchronization system
JP2009200730A (en) * 2008-02-20 2009-09-03 Rohm Co Ltd Audio signal processing circuit and audio device using the same, and volume switching method
JP5456202B2 (en) * 2011-02-25 2014-03-26 三菱電機株式会社 Master device, slave device, and time synchronization method
JP2012044722A (en) * 2011-11-30 2012-03-01 Mitsubishi Electric Corp Synchronization system, time master device, time slave device, and synchronization method
KR20170089891A (en) * 2014-11-21 2017-08-04 아브네라 코포레이션 Ring network of bluetooth speakers
KR102396745B1 (en) 2014-11-21 2022-05-12 아브네라 코포레이션 Ring network of bluetooth speakers
KR20220062693A (en) * 2014-11-21 2022-05-17 아브네라 코포레이션 Ring network of bluetooth speakers
KR102509480B1 (en) 2014-11-21 2023-03-10 아브네라 코포레이션 Ring network of bluetooth speakers

Also Published As

Publication number Publication date
JP4337835B2 (en) 2009-09-30

Similar Documents

Publication Publication Date Title
JP4337835B2 (en) Audio network system with output delay correction function
EP1841137A2 (en) Audio network system
JP4187028B2 (en) Network system and acoustic signal processing apparatus
JP5076413B2 (en) Network system and acoustic signal processing apparatus
US11240586B1 (en) Method, apparatus and device for synchronously playing audio
CN104137488A (en) Network devices with time aware medium access controller
US8937974B1 (en) System and method for determining a margin of latency within a device
JP2006148907A (en) Time synchronizing method in periodically operating communication system
EP2408150B1 (en) Audio network system having lag correction function of audio samples
JP2017509215A (en) Time slot synchronization training method, node apparatus, and network by nodes in optical burst transmission network
JP4337834B2 (en) Audio network system with audio sample shift correction function
CN108989246B (en) Audio transmission between devices using sparse streams
JP2023553554A (en) Heterogeneous computing systems and methods for clock synchronization
EP3868043B1 (en) Wireless audio synchronization
Diarra et al. Improved clock synchronization start-up time for Ethernet AVB-based in-vehicle networks
JP3702261B2 (en) Time stamp correction circuit and correction method
JP4337899B2 (en) Audio network system
KR20120051632A (en) Method for clock synchronization in distributed system having ring topology and apparatus for the same
JP5045728B2 (en) Communication node
JP5187281B2 (en) Gateway device
JP2010098775A (en) Codec converter
JP4321442B2 (en) Microphone system and signal transmission method thereof
JP7284266B2 (en) Audio stream switching method and apparatus
JP6367147B2 (en) Parallel data processing method, parallel data processing circuit using the method, and audio mixer incorporating the parallel data processing circuit
KR101469939B1 (en) System and Device for Musical Accompaniment using Ethernet Audio Bridging

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090319

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090518

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: 20090609

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090622

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130710

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees