US20110015769A1 - Data transfer method and system for loudspeakers in a digital sound reproduction system - Google Patents

Data transfer method and system for loudspeakers in a digital sound reproduction system Download PDF

Info

Publication number
US20110015769A1
US20110015769A1 US12/922,078 US92207808A US2011015769A1 US 20110015769 A1 US20110015769 A1 US 20110015769A1 US 92207808 A US92207808 A US 92207808A US 2011015769 A1 US2011015769 A1 US 2011015769A1
Authority
US
United States
Prior art keywords
receiver
latency
host
clock
synchronization
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.)
Abandoned
Application number
US12/922,078
Inventor
Niko Haatainen
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.)
Genelec Oy
Original Assignee
Genelec Oy
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 Genelec Oy filed Critical Genelec Oy
Assigned to GENELEC OY reassignment GENELEC OY ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HAATAINEN, NIKO
Publication of US20110015769A1 publication Critical patent/US20110015769A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/12Circuits for transducers, loudspeakers or microphones for distributing signals to two or more loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2227/00Details of public address [PA] systems covered by H04R27/00 but not provided for in any of its subgroups
    • H04R2227/003Digital PA systems using, e.g. LAN or internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2227/00Details of public address [PA] systems covered by H04R27/00 but not provided for in any of its subgroups
    • H04R2227/005Audio distribution systems for home, i.e. multi-room use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R27/00Public address systems

Definitions

  • the present invention relates to a data transfer method according to the preamble of Claim 1 .
  • the invention also relates to a data transfer system.
  • the invention is intended to eliminate some defects of the state of the art disclosed above and for this purpose create an entirely new type of method and apparatus for data transfer in a sound reproduction system.
  • the invention is based on implementing network packet time stamping in network protocol stack so that accurate time for send and receipt of packets can be determined.
  • the receiver software implements the time stamping directly in the Ethernet driver (for which we have source code) for the most accurate operation possible.
  • the second problem is preferably solved simply by running the clock synchronization, which includes determination of round-trip time between host and receiver, and performing the synchronization only if the latency is within acceptable range from measured minimum latency.
  • the method according to the invention is characterized by what is stated in the characterizing portion of Claim 1 .
  • the system according to the invention is, in turn, characterized by what is stated in the characterizing portion of Claim 6 .
  • the present invention is especially suitable for multi channel sound reproduction systems, where along the same data transfer path is sent a data stream including audio information of multiple audio channels to be reproduced simultaneously in several loudspeakers.
  • a statistical latency time may be defined in a start-up procedure and use this value as a reference latency time for further, continuous latency measurement.
  • the audio reproduction system may adapt to the load of the network and make suitable adjustments in order to maintain high quality and synchronized multi-channel audio reproduction in most of the load variation cases.
  • FIG. 1 shows a block diagram a digital audio system, which can be used in connection with the present invention.
  • FIG. 2 shows as a block diagram one network management host system in accordance with the invention.
  • FIG. 3 shows as a block diagram one receiver management system according to the invention.
  • FIG. 4 shows as a timing diagram a method in accordance with the invention.
  • FIG. 6 shows as a flow chart a synchronization protocol in the receiver in accordance with the invention.
  • FIG. 7 shows as a flow chart a synchronization protocol in the host in accordance with the invention.
  • latency means the network delay between two network elements for a data sample.
  • the system in accordance with the invention comprises at least one host computer 1 or host data source for controlling the system and several receivers 1 connected to the host computers 1 via en digital network 3 comprising the signal path 3 formed by cables, connectors, network adapters and switches etc.
  • the LSNW (Loudspeaker network) system consist of one or more hosts 1 that each manage sets of receiver devices 2 .
  • Hosts 1 act as source of management, control and audio data to the receivers 2 .
  • Hosts 1 are responsible for discovering receivers 2 connected to IP-network, managing groups 4 of receivers and providing them with audio.
  • Receivers 2 respond to commands and playback audio data from hosts 1 .
  • the host system comprises typically hard disc 10 by which Digital audio data may be stored. Also some other non-volatile medium like flash memory can be used.
  • Digital audio data may be acquired from virtual software audio adapter (driver) 12 that redirects audio to networked loudspeakers.
  • Audio data manager 13 acquires digital audio data and makes it suitable for streaming.
  • Streaming and synchronization manager 14 controls clock synchronization of loudspeaker devices (receivers) currently controlled by the host.
  • Network interface 15 connects the host to computer communications network.
  • Network timestamp-module 16 manages accurate timing of synchronization related network traffic. This is required to reduce effects of random latencies introduced by the non real-time operating system (such as Windows, Linux etc.) run by the host.
  • System clock 17 provides accurate time information used by the synchronization manager and a standard Ethernet network 3 enables IP-based communications between the host and the receivers.
  • Host application manages the loudspeaker network, routes management information from GLM and audio from audio software to receivers.
  • Host application will run as a background daemon process on the host computer. On windows platform, these background processes are usually referred as services or system services.
  • Host provides interface for GLM software to send and receive GLM-messages to receivers as if the GLM Software was using GLM network.
  • Host software will provide standard audio interface for audio software to send audio to LSNW receivers. Such interfaces are for example ASIO and Windows audio.
  • the audio software will see LSNW receivers as channels in virtual audio interface provided by the host.
  • Host will include proprietary kernel-mode driver software to provide necessary virtual audio interface and UDP Network interface 20 connects the receiver to communications network 3 .
  • Timer hardware 22 provides time information for the system clock and synchronization controller.
  • Adjustable oscillator 23 provides clock signal for timer hardware and audio data output controller 28 .
  • Loudspeaker networks communications module 24 manages network traffic to and from host computer.
  • Synchronization controller 25 synchronizer receivers clock with host. It adjusts clock oscillator in order to minimize clock drift between receiver and host clocks.
  • Digital signal processing, digital-to-analog conversion takes place in block 26 .
  • Audio stream controller 27 manages audio data received from host and feeds it to audio data output controller 28 .
  • Audio data output controller 28 outputs audio data at rate specified by adjustable oscillator 23 . This guarantees that samples will be output at same rate as host outputs them.
  • Sample rate converter 29 converts digital audio to internal sample rate used by digital signal processing and digital-to-analog conversion.
  • the LSNW protocol has mechanism for clock synchronization that enables synchronization of host and receiver clock within accuracy of about 10-20 microseconds.
  • the solution to the travel time (latency) measurement is to implement network packet time stamping in network protocol stack so that accurate time for send and receipt of packets can be determined.
  • the time stamping is implemented as an IP Packet Filter that examines incoming and outgoing UDP-packets and record time stamps if packet is destined to or originates from an LSNW receiver. This location is not optimal for time stamping, as the time stamps should be collected as near the network hardware as possible, but experience shows that time stamping at the IP Packet Filter lever gives good accuracy.
  • the receiver software in accordance with the invention implements the time stamping directly in the Ethernet driver for the most accurate operation possible.
  • a source code has been developed in connection with the invention.
  • the problem of random variation of network latency can be solved simply by running the clock synchronization, which includes determination of round-trip time between host and receiver, and performing the synchronization only if the latency is within acceptable range from measured minimum latency.
  • Clock synchronization is initiated by the host in accordance with FIG. 4 .
  • the host 1 will synchronize clocks with each group member in a round-robin fashion to guarantee all receivers have accurate time.
  • a receiver may send SYNCH REQUEST message to host if it feels a need to resynchronize its clock. This can happen for example if receiver must interrupt audio stream due to packet loss and continues it when audio packets are received.
  • the host When a receiver 2 is assigned to a group, the host will send several ECHO REQ packets 60 to receiver to probe the roundtrip latency. The receiver 2 will reply with ECHO RESP 61 and the host 1 will then determine roundtrip latency Tt 1 ⁇ Tt 2 for each transaction. Once the roundtrip latency Tt 1 ⁇ Tt 2 is determined with adequate accuracy, the host 1 will set the minimum acceptable roundtrip for successful synchronization. The latency will also change as the function of packet size, so the latency is probed for packets of different sizes.
  • the actual roundtrip latency is measured as follows:
  • ECHO RESP 61 packet contains two values, receivers clock at the time Tt 1 of receipt of ECHO REQ 60 packet and ProcessingLatency, the time spent by receiver between receipt of ECHO REQ 60 and sending of ECHO RESP 61 .
  • the host 1 will calculate the roundtrip latency as is initialization phase and if the latency is below the maximum acceptable value determined in initialization, host sends the CLOCK SET message 62 to receiver 2 that contains an estimate of hosts clock at the time receiver received the ECHO REQ 61 packet.
  • the estimated time is calculated by adding half of the measured roundtrip time to time of outputting the ECHO REQ 61 packet.
  • the protocol assumes that the network latency from host to receiver is equal to latency from receiver to host. This is usually the case, but the roundtrip will become unsymmetrical when ECHO REQ is appended to audio data as packet that contains ECHO REQ and audio data is much larger than the response packet that contains only ECHO RESP. This unsymmetry can be compensated by appending extra data to ECHO RESP to make the response packet same size as the request. In real applications, the unsymmetry of network packet sizes does not have very large effect on the actual result of the synchronization.
  • the effect of unsymmetric network latency to offsets between host and receiver clocks can be calculated as follows (for simplicity, the calculation does not include processing latency):
  • host and receiver clocks have 2 second offset at host time 10.000000 s (Th 1 ).
  • Synch protocol packet latencies are 0.000160 s from host to receiver (Th 1 ⁇ Tt 1 ) 60, 0.000180 s from receiver to host 61 (Tt 2 ⁇ Th 2 ). This will result in 0.000010 s clock offset at the end of synchronization, assuming that receivers clock does not significantly drift from host clock between target time 12.000160 and 12.000710.
  • Receiver 2 may also correct frequency of its clock based on the measured offsets and reduce average error between target and host clocks.
  • receiver initializes hardware, possibly acquires IP address via DHCP and enters Idle state.
  • the receiver receives SET GROUP command from host.
  • the message contains IP address of multicast group to which all the loudspeaker group related traffic is sent.
  • the message also contains information on which channel of multi-channel audio the receiver is to output to digital-to-analog conversion.
  • Receiver starts to listen to the multicast address. It also sends message to host and acknowledges that the receiver has entered the group.
  • Receiver enters state 92 , RUNNING.
  • receiver will receive message directed to loudspeaker group multicast IP address. Audio data is entered into play queue and eventually output to digital-to-analog conversion.
  • receiver receives REQUEST TIMESTAMP message it enters state 97 , SEND TIMESTAMP TO HOST. If receiver receives SET CLOCK message it enters state 93 . In block 93 validity of new clock value is determined based on current time, estimate of clock drift between host and receiver and time interval since last SET CLOCK message. If the new value appears invalid (due to large processing latency in host or some other reason), receiver clock is not set and control returns to state 92 , RUNNING. If the new clock value appears valid, state 94 , ADJUST OSCILLATOR, is entered. Control voltage to adjustable oscillator is set in block 94 based on the measured drift and between host and receiver clocks and the current control voltage.
  • host application in block 100 host application is started. It queries network for available receiver loudspeakers and enters IDLE state.
  • Host application receives command from user interface to setup a receiver loudspeaker group. It starts analyzing network latency to each loudspeaker.
  • if analysis was not successful report error to user and return to IDLE state. Analysis may not succeed for example if the packet loss in the network is too large. If analysis of network latencies to each receiver is successful store maximal acceptable synchronization network latency for each receiver and enter state 103 , RUNNING.
  • running state 103 the system periodically synchronizes receiver loudspeaker clocks.
  • timestamp request is sent to receiver. If reply is not received within given period, the system returns to running state and retries the synchronization. If the synchronization fails several times consecutively, the system marks receiver loudspeaker as inactive and removes it from the group of active receivers.
  • TIMESTAMP is received from receiver, system enters to state 105 .
  • the system determines network latency for the synchronization transaction. If it is above the maximum acceptable synchronization network latency determined in 101 , the system enters state 108 . If the latency is below acceptable maximum, the system enters to state 106 . In state 106 system sends SET CLOCK message to receiver.
  • the system enters to state 102 , RUNNING. If time elapsed since last analysis is too large, the system reanalyzes network latency to receiver to detect if network latency has been permanently reduced by entering to state 101 . In block 108 , if more than given number of consecutive synchronization transactions have network latency larger than the acceptable maximum, the system performs latency analysis in order to determine permanent growth of network latency.
  • the proposed synchronization method can principally be utilized also in wireless audio applications, said, wireless loudspeaker systems.
  • the network latencies are considerably larger than in wired 100 Mbps or 1000 Mbps Ethernet networks.
  • the synchronization protocol can adapt to this increased latency as it analyses networks behavior during the setup phase.
  • Standard wireless networks also introduce random latency in order to prevent collisions during packet transmissions. These random delays make the synchronization in wireless networks more difficult that in Ethernet based wired networks.
  • the effects of said random delays can be reduced by selecting the acceptable maximum network latency using more strict percentage value than when operating in wired networks. If percentage of 30% is used instead of 90%, only transactions with less random delay will be used for clock synchronization. This modification means that each clock synchronization requires on average 3 ECHO REQUEST/ECHO REPLY transactions before acceptable values are acquired for SET CLOCK command.
  • Wireless networks also typically have much larger packet loss than Ethernet—based wired networks due to radio interference and collisions during packet transmissions.
  • FEC Forward Error Correction
  • encoding may be used to add redundancy in transmitted audio data. This redundancy may be used by receiver to reconstruct the audio packets lost by the network.

Abstract

The present publication describes a data transfer method and system in a digital sound reproduction system. The method comprises method steps for generating a digital audio stream for multiple channels in a host data source, e.g. a computer (1), the audio stream is formed by multiple consecutive samples, receiving the digital audio stream sent by the host data source (1) through a digital data transmission network by several digital receivers (2) each of which including a microcontroller with a clock, the receivers (2) further including means for generating an audio signal. In accordance with the invention the host data source (1) sends repeatedly a synchronization sample (60) to at least one receiver (2), the receiver (2) replies to the synchronization sample (60) by a return sample (61), the host (1) calculates a latency (T) for each receiver (2) based on the sending time (Th1) of the synchronization sample (60) and the reception time (Th2) of the return sample (61) and the processing time (Tt1−Tt2) of the receiver (2), the host (1) sends to the receiver (2) information of the calculated latency (T) in combination with the time stamp the measurement time, based on this information the receiver (2) adjusts the function of its clock, and the above synchronization steps are repeated continuously.

Description

  • The present invention relates to a data transfer method according to the preamble of Claim 1.
  • The invention also relates to a data transfer system.
  • According to the prior art, there are several commercial system for digital audio reproduction in digital networks. For example following products are available today. The Gibson MaGIC™ network Cobra Net™, EtherSound™, Livewire™, MADI™ and others describe systems by which audio data may be streamed to digital loudspeakers or sound reproduction systems. Basically the quality of the reproduction in these systems is fairy good for home use but for professional use the digital transfer technology causes some problems.
  • In accordance with the prior art the above problem has been solved by buffering the information into receivers and controlling the unloading of the information from the receivers.
  • In more detail, to synchronize clocks over Ethernet connections the exact travel time of network packets must be measured. This is difficult for two reasons. First, standard network socket API will introduce random latency between calling the user-mode send-function and the actual output of the packet depending on the status of the operating system. The same applies also to reception of packets, the time between reception of packet from the network and its indication to user-mode process listening to the UDP socket cannot be accurately determined.
  • Secondly, when packet travels through network it will go through one or more hubs, switches or routers. Each device may randomly delay packets depending on the load of network and state of the device. This introduces random latency in travel time that cannot be predicted. When measured, it is found that the latency is nearly constant for most of the packets but some packets may be delayed by several hundreds of microseconds or even more.
  • The invention is intended to eliminate some defects of the state of the art disclosed above and for this purpose create an entirely new type of method and apparatus for data transfer in a sound reproduction system.
  • The invention is based on implementing network packet time stamping in network protocol stack so that accurate time for send and receipt of packets can be determined. In a preferred embodiment the receiver software implements the time stamping directly in the Ethernet driver (for which we have source code) for the most accurate operation possible.
  • The second problem is preferably solved simply by running the clock synchronization, which includes determination of round-trip time between host and receiver, and performing the synchronization only if the latency is within acceptable range from measured minimum latency.
  • More specifically, the method according to the invention is characterized by what is stated in the characterizing portion of Claim 1.
  • The system according to the invention is, in turn, characterized by what is stated in the characterizing portion of Claim 6.
  • Considerable advantages are gained with the aid of the invention.
  • The present invention is especially suitable for multi channel sound reproduction systems, where along the same data transfer path is sent a data stream including audio information of multiple audio channels to be reproduced simultaneously in several loudspeakers.
  • With the aid of the method according to the invention, a statistical latency time may be defined in a start-up procedure and use this value as a reference latency time for further, continuous latency measurement.
  • By these two methods the audio reproduction system may adapt to the load of the network and make suitable adjustments in order to maintain high quality and synchronized multi-channel audio reproduction in most of the load variation cases.
  • In the following, the invention is examined with the aid of examples and with reference to the accompanying drawings.
  • FIG. 1 shows a block diagram a digital audio system, which can be used in connection with the present invention.
  • FIG. 2 shows as a block diagram one network management host system in accordance with the invention.
  • FIG. 3 shows as a block diagram one receiver management system according to the invention.
  • FIG. 4 shows as a timing diagram a method in accordance with the invention.
  • FIG. 6 shows as a flow chart a synchronization protocol in the receiver in accordance with the invention.
  • FIG. 7 shows as a flow chart a synchronization protocol in the host in accordance with the invention.
  • In the invention, the following terminology is used in connection with the reference numbers. However, the list is not exhaustive especially relating to the block and flow diagrams of FIGS. 7-11:
    • 1 host or host data source
    • 2 receiver, digital loudspeaker,
    • 2 a wireless receiver
    • 3 switch, network
    • 4 group of receivers
    • 10 hard disc
    • 12 virtual software audio adapter (driver)
    • 13 audio data manager
    • 14 synchronization manager
    • 15 network interface
    • 16 network timestamping
    • 17 system clock
    • 20 network interface
    • 22 timer hardware
    • 23 adjustable oscillator
    • 24 loudspeaker networks communications
    • 25 synchronization controller
    • 26 digital to analog conversion
    • 27 audio stream controller
    • 28 data output controller
    • 29 sample rate converter
    • 60 synchronization signal/ECHO REQ
    • 61 Return message/ECHO RESP
    • 62 Control Command/SET CLOCK
    • 150 Wireless Local Area Network (WLAN) access point
  • Also the following acronyms and abbreviations are used in the following text.
    • DHCP Dynamic Host Configuration Protocol
    • FEC Forward Error Correction
    • GLM Genelec Loudspeaker Manager
    • Global LSNW Multicast address:port to which all global LSNW traffic is sent. All address receivers listen to this address to receive DISCOVERY, ANNOUNCE, GROUP and other global messages
    • Group LSNW Multicast address:port to which all data directed to set of grouped address receivers is sent. All receivers that are assigned to same group listen to same group address. Group address will receive clock synchronization messages, streamed audio and glm control messages.
    • Host Application that manages the loudspeaker network, streams audio and send glm-control messages.
    • IP Internet Protocol
    • LSNW Loudspeaker Network
    • Multicast A special IP address that will be routed to members of a multicast address group.
    • Receiver Processor, network interface and the software that connects a loudspeaker to IP-network
    • UDP User datagram protocol
  • Further, in this application latency means the network delay between two network elements for a data sample.
  • In accordance with FIG. 1 the system in accordance with the invention comprises at least one host computer 1 or host data source for controlling the system and several receivers 1 connected to the host computers 1 via en digital network 3 comprising the signal path 3 formed by cables, connectors, network adapters and switches etc.
  • In other words the LSNW (Loudspeaker network) system consist of one or more hosts 1 that each manage sets of receiver devices 2. Hosts 1 act as source of management, control and audio data to the receivers 2. Hosts 1 are responsible for discovering receivers 2 connected to IP-network, managing groups 4 of receivers and providing them with audio. Receivers 2 respond to commands and playback audio data from hosts 1.
  • In accordance with FIG. 2 the host system comprises typically hard disc 10 by which Digital audio data may be stored. Also some other non-volatile medium like flash memory can be used. Digital audio data may be acquired from virtual software audio adapter (driver) 12 that redirects audio to networked loudspeakers. Audio data manager 13 acquires digital audio data and makes it suitable for streaming. Streaming and synchronization manager 14 controls clock synchronization of loudspeaker devices (receivers) currently controlled by the host. Network interface 15 connects the host to computer communications network. Network timestamp-module 16 manages accurate timing of synchronization related network traffic. This is required to reduce effects of random latencies introduced by the non real-time operating system (such as Windows, Linux etc.) run by the host. System clock 17 provides accurate time information used by the synchronization manager and a standard Ethernet network 3 enables IP-based communications between the host and the receivers.
  • Host application manages the loudspeaker network, routes management information from GLM and audio from audio software to receivers. Host application will run as a background daemon process on the host computer. On windows platform, these background processes are usually referred as services or system services.
  • Host provides interface for GLM software to send and receive GLM-messages to receivers as if the GLM Software was using GLM network.
  • Host software will provide standard audio interface for audio software to send audio to LSNW receivers. Such interfaces are for example ASIO and Windows audio. The audio software will see LSNW receivers as channels in virtual audio interface provided by the host.
  • Host will include proprietary kernel-mode driver software to provide necessary virtual audio interface and UDP Network interface 20 connects the receiver to communications network 3. Timer hardware 22 provides time information for the system clock and synchronization controller. Adjustable oscillator 23 provides clock signal for timer hardware and audio data output controller 28. Loudspeaker networks communications module 24 manages network traffic to and from host computer. Synchronization controller 25 synchronizer receivers clock with host. It adjusts clock oscillator in order to minimize clock drift between receiver and host clocks. Digital signal processing, digital-to-analog conversion takes place in block 26. Audio stream controller 27 manages audio data received from host and feeds it to audio data output controller 28. Audio data output controller 28 outputs audio data at rate specified by adjustable oscillator 23. This guarantees that samples will be output at same rate as host outputs them. Sample rate converter 29 converts digital audio to internal sample rate used by digital signal processing and digital-to-analog conversion.
  • Accurate clock synchronization is essential for correct working of the LSNW. The LSNW protocol has mechanism for clock synchronization that enables synchronization of host and receiver clock within accuracy of about 10-20 microseconds.
  • The solution to the travel time (latency) measurement is to implement network packet time stamping in network protocol stack so that accurate time for send and receipt of packets can be determined. In windows host software the time stamping is implemented as an IP Packet Filter that examines incoming and outgoing UDP-packets and record time stamps if packet is destined to or originates from an LSNW receiver. This location is not optimal for time stamping, as the time stamps should be collected as near the network hardware as possible, but experience shows that time stamping at the IP Packet Filter lever gives good accuracy.
  • The receiver software in accordance with the invention implements the time stamping directly in the Ethernet driver for the most accurate operation possible. For this purpose a source code has been developed in connection with the invention.
  • The problem of random variation of network latency can be solved simply by running the clock synchronization, which includes determination of round-trip time between host and receiver, and performing the synchronization only if the latency is within acceptable range from measured minimum latency.
  • Clock synchronization is initiated by the host in accordance with FIG. 4. The host 1 will synchronize clocks with each group member in a round-robin fashion to guarantee all receivers have accurate time. A receiver may send SYNCH REQUEST message to host if it feels a need to resynchronize its clock. This can happen for example if receiver must interrupt audio stream due to packet loss and continues it when audio packets are received.
  • When a receiver 2 is assigned to a group, the host will send several ECHO REQ packets 60 to receiver to probe the roundtrip latency. The receiver 2 will reply with ECHO RESP 61 and the host 1 will then determine roundtrip latency Tt1−Tt2 for each transaction. Once the roundtrip latency Tt1−Tt2 is determined with adequate accuracy, the host 1 will set the minimum acceptable roundtrip for successful synchronization. The latency will also change as the function of packet size, so the latency is probed for packets of different sizes.
  • The actual roundtrip latency is measured as follows:
      • 1. Send ECHO REQ 60 to receiver 2 (add extra payload to increase packet size if necessary, receiver will not process the extra payload as it is used only to change actual UDP datagram size to determine latency for different packet sizes)
      • 2. Get timestamp TSsend (Th1) for the packet containing ECHO REQ 60 from timestamp driver
      • 3. Receive ECHO RESP 61 from the receiver, it will contain receiver ProcessingLatency, which is amount of microseconds receiver spent between receipt of the ECHO REQ 60 and sending of ECHO RESP 61
      • 4. Get timestamp TSrecv (Th2) for the ECHO RESP 61 packet. Timestamp is formed by the Host 1
      • 5. Roundtrip latency is TSrecv—TSsend—ProcessingLatency
  • Actual clock synchronization starts like the request—response transaction in initialization phase. Host sends an ECHO REQ 61 and receiver replies with ECHO RESP 61.
  • ECHO RESP 61 packet contains two values, receivers clock at the time Tt1 of receipt of ECHO REQ 60 packet and ProcessingLatency, the time spent by receiver between receipt of ECHO REQ 60 and sending of ECHO RESP 61.
  • The host 1 will calculate the roundtrip latency as is initialization phase and if the latency is below the maximum acceptable value determined in initialization, host sends the CLOCK SET message 62 to receiver 2 that contains an estimate of hosts clock at the time receiver received the ECHO REQ 61 packet. The estimated time is calculated by adding half of the measured roundtrip time to time of outputting the ECHO REQ 61 packet.
  • The protocol assumes that the network latency from host to receiver is equal to latency from receiver to host. This is usually the case, but the roundtrip will become unsymmetrical when ECHO REQ is appended to audio data as packet that contains ECHO REQ and audio data is much larger than the response packet that contains only ECHO RESP. This unsymmetry can be compensated by appending extra data to ECHO RESP to make the response packet same size as the request. In real applications, the unsymmetry of network packet sizes does not have very large effect on the actual result of the synchronization. The effect of unsymmetric network latency to offsets between host and receiver clocks can be calculated as follows (for simplicity, the calculation does not include processing latency):
      • 1. Host clock after synchronization will be Th1+Lht+Lth+Lht (=Host time at start+latency of ECHO REQ+latency of ECHO REPLY+latency of CLOCK SET)
      • 2. Receiver clock at the end of synchronization will be Th1+(Lth+Lht)/2+Lth+Lht (SET CLOCK time+latency of ECHO REPLY+latency of CLOCK SET)
      • The difference of clock will be Th1+Lht+Lth+Lht−(Th1+(Lth+Lht)/2+Lth+Lht)=(Lth−Lht)/2
  • Further in more detail, in accordance with FIG. 5 host and receiver clocks have 2 second offset at host time 10.000000 s (Th1). Synch protocol packet latencies are 0.000160 s from host to receiver (Th1−Tt1) 60, 0.000180 s from receiver to host 61 (Tt2−Th2). This will result in 0.000010 s clock offset at the end of synchronization, assuming that receivers clock does not significantly drift from host clock between target time 12.000160 and 12.000710. Receiver 2 may also correct frequency of its clock based on the measured offsets and reduce average error between target and host clocks.
  • Since the network latencies (0.000160 s and 0.000180 s) were not equal, host and target clocks will have offset of (0.000180−0.000160)/2=0.000010 at the end of synchronization (Tt3).
  • In accordance with FIG. 6 at start 90 receiver initializes hardware, possibly acquires IP address via DHCP and enters Idle state. In block 91 the receiver receives SET GROUP command from host. The message contains IP address of multicast group to which all the loudspeaker group related traffic is sent. The message also contains information on which channel of multi-channel audio the receiver is to output to digital-to-analog conversion. Receiver starts to listen to the multicast address. It also sends message to host and acknowledges that the receiver has entered the group. Receiver enters state 92, RUNNING. At running state 92 receiver will receive message directed to loudspeaker group multicast IP address. Audio data is entered into play queue and eventually output to digital-to-analog conversion. If receiver receives REQUEST TIMESTAMP message it enters state 97, SEND TIMESTAMP TO HOST. If receiver receives SET CLOCK message it enters state 93. In block 93 validity of new clock value is determined based on current time, estimate of clock drift between host and receiver and time interval since last SET CLOCK message. If the new value appears invalid (due to large processing latency in host or some other reason), receiver clock is not set and control returns to state 92, RUNNING. If the new clock value appears valid, state 94, ADJUST OSCILLATOR, is entered. Control voltage to adjustable oscillator is set in block 94 based on the measured drift and between host and receiver clocks and the current control voltage. In block 95, if the measured clock offset between receiver and host is less than the duration of specified number of samples, state 92, RUNNING, is entered. In block 96, if the measured clock offset between receiver and host is more than the duration specified number of samples, adjust clock value by multiple of sample durations. At the same time add or remove samples to/from the audio stream to compensate for the clock adjustment. After the adjustment, return to state 92, RUNNING. Further in block 97 is sent TIMESTAMP message containing current receiver clock value and processing latency to host.
  • In accordance with FIG. 7, in block 100 host application is started. It queries network for available receiver loudspeakers and enters IDLE state. In block 101 Host application receives command from user interface to setup a receiver loudspeaker group. It starts analyzing network latency to each loudspeaker. In block 102, if analysis was not successful report error to user and return to IDLE state. Analysis may not succeed for example if the packet loss in the network is too large. If analysis of network latencies to each receiver is successful store maximal acceptable synchronization network latency for each receiver and enter state 103, RUNNING.
  • In running state 103 the system periodically synchronizes receiver loudspeaker clocks. In block 104 timestamp request is sent to receiver. If reply is not received within given period, the system returns to running state and retries the synchronization. If the synchronization fails several times consecutively, the system marks receiver loudspeaker as inactive and removes it from the group of active receivers. If TIMESTAMP is received from receiver, system enters to state 105. In block 105 the system determines network latency for the synchronization transaction. If it is above the maximum acceptable synchronization network latency determined in 101, the system enters state 108. If the latency is below acceptable maximum, the system enters to state 106. In state 106 system sends SET CLOCK message to receiver. In block 107, if time since last latency analysis is below given threshold value, the system enters to state 102, RUNNING. If time elapsed since last analysis is too large, the system reanalyzes network latency to receiver to detect if network latency has been permanently reduced by entering to state 101. In block 108, if more than given number of consecutive synchronization transactions have network latency larger than the acceptable maximum, the system performs latency analysis in order to determine permanent growth of network latency.
  • According to one embodiment of the invention, the proposed synchronization method can principally be utilized also in wireless audio applications, said, wireless loudspeaker systems.
  • Due to the lower transfer rate and delays introduced by the media access control of standard wireless networks, such as 802.11 a/b/g, the network latencies are considerably larger than in wired 100 Mbps or 1000 Mbps Ethernet networks. The synchronization protocol can adapt to this increased latency as it analyses networks behavior during the setup phase.
  • Standard wireless networks also introduce random latency in order to prevent collisions during packet transmissions. These random delays make the synchronization in wireless networks more difficult that in Ethernet based wired networks. The effects of said random delays can be reduced by selecting the acceptable maximum network latency using more strict percentage value than when operating in wired networks. If percentage of 30% is used instead of 90%, only transactions with less random delay will be used for clock synchronization. This modification means that each clock synchronization requires on average 3 ECHO REQUEST/ECHO REPLY transactions before acceptable values are acquired for SET CLOCK command.
  • Wireless networks also typically have much larger packet loss than Ethernet—based wired networks due to radio interference and collisions during packet transmissions. To reduce the effects of packet loss a Forward Error Correction (FEC)—encoding may be used to add redundancy in transmitted audio data. This redundancy may be used by receiver to reconstruct the audio packets lost by the network.

Claims (16)

1-15. (canceled)
16. A data transfer method in a digital sound reproduction system, comprising method steps for
generating a digital audio stream for multiple channels in a host data source, e.g. a computer, the audio stream is formed by multiple consecutive samples,
receiving the digital audio stream sent by the host data source through a digital data transmission network by several digital receivers each of which including a microcontroller with a clock, the receivers further including means for generating an audio signal,
wherein
the host data source sends repeatedly a synchronization sample to at least one receiver,
the receiver replies to the synchronization sample by a return sample,
the host calculates a latency (T) for each receiver based on the sending time (Th1) of the synchronization sample and the reception time (Th2) of the return sample and the processing time (Tt2−Tt1) of the receiver,
the host sends to the receiver information of the calculated latency (T) in combination with the time stamp the measurement time,
based on this information the receiver adjusts the function of its clock, and
the above synchronization steps are repeated continuously.
17. Method according to claim 16, wherein the digital audio stream is transmitted wirelessly to the receiver.
18. Method according to claim 16 or 17, wherein the receiver compensates for the clock difference by setting the local clock rate in order to obtain synch of the microcontroller of the receiver.
19. Method according to claim 16 or 17, wherein the host compares the calculated latency (T) with a reference latency and if the calculated latency (T) is larger than the reference latency, no adjustment information is sent to the receiver and the host starts a routine to redefine the reference latency.
20. Method according to claim 19, wherein the clock difference is compensated for by adding or removing samples to/from the audio data stream and adjusting clock value accordingly.
21. A data transfer system for a digital sound reproduction system, comprising
a host data source, e.g., a computer for generating a digital audio stream for multiple channels, the audio stream is formed by multiple consecutive samples,
a transmission path for the host data source,
multiple digital receivers capable to communicate over the transmission path with the host data source, the receivers including
means for receiving the digital audio stream sent by the host data source
a microcontroller with a clock, and
means for generating an audio signal,
wherein
the host computer has means for sending repeatedly a synchronization sample to at least one receiver,
the receiver has means for replying to the synchronization sample by a return sample,
the host includes further means for
calculating a latency (T) for each receiver based on the sending time (Th1) of the synchronization sample and the reception time (Th2) of the return sample and the processing time (Tt2−Tt1) of the receiver,
sending to the each receiver information of the calculated latency (T) in combination with the time stamp the measurement time,
whereby based on this information the receiver includes means for adjusting the function of its clock, and
the system includes means for repeating the above synchronization steps continuously.
22. The system according to claim 21, wherein it includes means for transmitting the digital audio stream wirelessly to the receiver.
23. The system according to claim 21 or 22, wherein the receiver includes means for compensating for the clock difference by setting the clock frequency of the microcontroller of the receiver.
24. The system according to claim 21 or 22, wherein the host includes means for comparing the calculated latency (T) with a reference latency and if the calculated latency (T) is larger than the reference latency, no adjustment information is sent to the receiver and the host starts a routine to redefine the reference latency.
25. The system according to any previous system claim 21 or 22, wherein the system includes means for compensating for the clock difference by adding or removing samples to/from the audio data stream.
26. A synchronization method in a digital sound reproduction system, comprising method steps for
generating a digital audio stream in a host data source, e.g. a computer,
receiving the digital audio stream sent by the host data source through a digital data transmission network by several digital receivers each of which including a microcontroller with a clock, the receivers further including means for generating an audio signal, whereby the receivers are grouped in a predetermined manner,
wherein
the host data source sends repeatedly a synchronization sample to all receivers of a group,
the receivers reply to the synchronization samples by return samples,
the host calculates a latency times (T) for each sample and each receiver based on sending time (Th1) of the synchronization sample and the reception time (Th2) of the return sample and the processing time (Tt2−Tt1) of the receiver, and
based on the calculated latency times (T) the host forms statistically a reference latency value, below which time most of the latency times are.
27. Method according to claim 26, wherein the digital audio stream is transmitted wirelessly to the receiver.
28. Method according to claim 26 or 27, wherein the reference latency is set such that at least 80% of the measured and calculated latency values are below the reference latency.
29. Method according to claim 26 or 27, wherein the reference latency is set such that at least 50% of the measured and calculated latency values are below the reference latency.
30. Method according to claim 26 or 27, wherein it includes the following steps:
1. Sending ECHO REQ to receiver,
2. Getting timestamp TSsend for the packet containing ECHO REQ from timestamp driver,
3. Receiving ECHO RESP, whereby it will contain receiver ProcessingLatency, which is amount of microseconds receiver spent between receipt of the ECHO REQ and sending of ECHO RESP
4. Getting timestamp TSrecv for the ECHO RESP packet
5. Calculating Roundtrip latency is TSrecv—TSsend—ProcessingLatency
US12/922,078 2008-03-12 2008-03-12 Data transfer method and system for loudspeakers in a digital sound reproduction system Abandoned US20110015769A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2008/052917 WO2009112070A1 (en) 2008-03-12 2008-03-12 Data transfer method and system for loudspeakers in a digital sound reproduction system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2008/052917 A-371-Of-International WO2009112070A1 (en) 2008-03-12 2008-03-12 Data transfer method and system for loudspeakers in a digital sound reproduction system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/922,281 Continuation US8930006B2 (en) 2008-03-12 2013-06-20 Data transfer method and system for loudspeakers in a digital sound reproduction system

Publications (1)

Publication Number Publication Date
US20110015769A1 true US20110015769A1 (en) 2011-01-20

Family

ID=39938374

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/922,078 Abandoned US20110015769A1 (en) 2008-03-12 2008-03-12 Data transfer method and system for loudspeakers in a digital sound reproduction system
US13/922,281 Active US8930006B2 (en) 2008-03-12 2013-06-20 Data transfer method and system for loudspeakers in a digital sound reproduction system

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/922,281 Active US8930006B2 (en) 2008-03-12 2013-06-20 Data transfer method and system for loudspeakers in a digital sound reproduction system

Country Status (6)

Country Link
US (2) US20110015769A1 (en)
EP (1) EP2253087B1 (en)
JP (1) JP5574988B2 (en)
CN (1) CN102027699B (en)
ES (1) ES2435553T3 (en)
WO (1) WO2009112070A1 (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100238917A1 (en) * 2009-03-17 2010-09-23 Silverman Matthew Aaron Clock synchronization
US20110182371A1 (en) * 2008-08-05 2011-07-28 Fumio Suzuki Radio communication system, receiver, and transmitter
US20110270428A1 (en) * 2010-05-03 2011-11-03 Tam Kit S Cognitive Loudspeaker System
US20120148075A1 (en) * 2010-12-08 2012-06-14 Creative Technology Ltd Method for optimizing reproduction of audio signals from an apparatus for audio reproduction
US20130272143A1 (en) * 2012-04-12 2013-10-17 Lantiq Deutschland Gmbh Method For A Retransmission Roundtrip Correction
US20140093085A1 (en) * 2012-10-01 2014-04-03 Sonos, Inc. Providing a multi-channel and a multi-zone audio environment
US20150215715A1 (en) * 2014-01-27 2015-07-30 Sonos, Inc. Audio Synchronization Among Playback Devices Using Offset Information
CN105992025A (en) * 2015-02-15 2016-10-05 深圳市民展科技开发有限公司 Audio synchronous playing-based system time calibration method, audio synchronous playing method and devices
CN105992040A (en) * 2015-02-15 2016-10-05 深圳市民展科技开发有限公司 Multichannel audio data transmitting method, audio data synchronization playing method and devices
US20170347331A1 (en) * 2013-04-29 2017-11-30 Google Technology Holdings LLC Systems and methods for syncronizing multiple electronic devices
US9940091B2 (en) * 2012-06-06 2018-04-10 Sonos, Inc. Playback according to playback responsibility in group
US20190373383A1 (en) * 2012-06-15 2019-12-05 Sonos, Inc. Low-Latency Audio Networking
US11108486B2 (en) 2019-09-06 2021-08-31 Kit S. Tam Timing improvement for cognitive loudspeaker system
US11140480B2 (en) 2019-09-23 2021-10-05 Kit S. Tam Indirect sourced cognitive loudspeaker system
US11197114B2 (en) 2019-11-27 2021-12-07 Kit S. Tam Extended cognitive loudspeaker system (CLS)
US11228388B2 (en) * 2014-05-09 2022-01-18 Imagination Technologies Limited Time stamp replication within a wireless network based on transmission prediction
CN114554355A (en) * 2022-03-17 2022-05-27 中科雷欧(常熟)科技有限公司 Vehicle-mounted immersive audio transmission method and device

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US10613817B2 (en) 2003-07-28 2020-04-07 Sonos, Inc. Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US8086752B2 (en) 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US9374607B2 (en) 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US9412390B1 (en) * 2010-04-12 2016-08-09 Smule, Inc. Automatic estimation of latency for synchronization of recordings in vocal capture applications
CN101867582B (en) * 2010-06-13 2013-08-21 重庆交通大学 Directional sound advertisement system based on network control and network control method
KR101759584B1 (en) 2010-08-16 2017-07-19 삼성전자 주식회사 Method and apparatus for configuring mdt information report format and time stamp in wireless communication system
CN102404280B (en) * 2010-09-10 2015-05-20 北京飞利信科技股份有限公司 Active delay device in streaming media transmission system based on universal series bus
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
EP2624486A1 (en) * 2012-02-01 2013-08-07 Sony Ericsson Mobile Communications AB A client communication device, a server communication device, and clock synchronization method therein
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
US11146901B2 (en) 2013-03-15 2021-10-12 Smule, Inc. Crowd-sourced device latency estimation for synchronization of recordings in vocal capture applications
US10284985B1 (en) 2013-03-15 2019-05-07 Smule, Inc. Crowd-sourced device latency estimation for synchronization of recordings in vocal capture applications
US9276831B2 (en) * 2013-07-18 2016-03-01 Airmagnet, Inc. Determining network latency with limited computing resources
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9736806B2 (en) * 2014-02-28 2017-08-15 Qualcomm Incorporated Apparatuses and methods for wireless synchronization of multiple multimedia devices using a common timing framework
CN104079957B (en) * 2014-06-25 2017-09-01 广东欧珀移动通信有限公司 A kind of method and system of multimedia equipment simultaneously operating
CN105406955A (en) * 2014-08-07 2016-03-16 西安Tcl软件开发有限公司 Data output control method and system
GB2529656A (en) * 2014-08-28 2016-03-02 Lode Audio Ltd A system for transmitting low latency, synchronised audio
US9665341B2 (en) 2015-02-09 2017-05-30 Sonos, Inc. Synchronized audio mixing
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
CN105429724B (en) * 2015-10-20 2018-03-23 北京小鸟听听科技有限公司 Clock correction method, clock correction device and audio amplifier
TW201715860A (en) * 2015-10-27 2017-05-01 智邦科技股份有限公司 Network device, time synchronization method and network system using the same
US9798515B1 (en) * 2016-03-31 2017-10-24 Bose Corporation Clock synchronization for audio playback devices
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name
US10255032B2 (en) 2016-12-13 2019-04-09 EVA Automation, Inc. Wireless coordination of audio sources
US10901684B2 (en) * 2016-12-13 2021-01-26 EVA Automation, Inc. Wireless inter-room coordination of audio playback
US10296285B2 (en) 2016-12-13 2019-05-21 EVA Automation, Inc. Source coordination of audio playback
CN106656393B (en) * 2016-12-28 2018-10-19 深圳市英特瑞半导体科技有限公司 Clock synchronizing method and device
US10334358B2 (en) * 2017-06-08 2019-06-25 Dts, Inc. Correcting for a latency of a speaker
US10602257B1 (en) * 2018-08-30 2020-03-24 Semiconductor Components Industries, Llc Methods and systems for wireless audio

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040005902A1 (en) * 2002-07-05 2004-01-08 Belcea John M. System and method for correcting the clock drift and maintaining the synchronization of low quality clocks in wireless networks
US20040223622A1 (en) * 1999-12-01 2004-11-11 Lindemann Eric Lee Digital wireless loudspeaker system
US20050234571A1 (en) * 2004-04-14 2005-10-20 Holmes Stephen G Method and system for synchronizing audio processing modules
US20050288805A1 (en) * 2004-06-25 2005-12-29 Moore Jeffrey C Providing synchronized audio to multiple devices
US20060184261A1 (en) * 2005-02-16 2006-08-17 Adaptec, Inc. Method and system for reducing audio latency
US20070140510A1 (en) * 2005-10-11 2007-06-21 Ejamming, Inc. Method and apparatus for remote real time collaborative acoustic performance and recording thereof
US20080031283A1 (en) * 2006-08-07 2008-02-07 Martin Curran-Gray Time synchronization for network aware devices
US20080056154A1 (en) * 2006-09-06 2008-03-06 Cisco Technology, Inc. Measurement of round-trip delay over a network
US20080291891A1 (en) * 2007-05-23 2008-11-27 Broadcom Corporation Synchronization Of A Split Audio, Video, Or Other Data Stream With Separate Sinks
US7668964B2 (en) * 2005-04-23 2010-02-23 Sonos, Inc. System and method for synchronizing channel handoff as among a plurality of devices
US7742832B1 (en) * 2004-01-09 2010-06-22 Neosonik Method and apparatus for wireless digital audio playback for player piano applications
US7912094B2 (en) * 2006-12-13 2011-03-22 Honeywell International Inc. Self-checking pair-based master/follower clock synchronization

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10285140A (en) * 1997-04-02 1998-10-23 Mitsubishi Electric Corp Time synchronizing system and time synchronizing method therefor
JP3481821B2 (en) * 1997-05-01 2003-12-22 日本電信電話株式会社 Time difference measurement method and clock synchronizer
JP3037228B2 (en) * 1997-10-16 2000-04-24 日本電気エンジニアリング株式会社 Clock correction system
US7023833B1 (en) * 1999-09-10 2006-04-04 Pulse-Link, Inc. Baseband wireless network for isochronous communication
JP2003235027A (en) * 2002-02-12 2003-08-22 Matsushita Electric Ind Co Ltd Simultaneous reproduction method for distribution video, video distribution system, and terminal
EP1644781A1 (en) * 2003-07-01 2006-04-12 Freescale Semiconductors, Inc. Synchronization of data streams over a wireless network
US7203858B2 (en) 2003-12-19 2007-04-10 Intel Corporation Program clock synchronization in multimedia networks
JP4368210B2 (en) * 2004-01-28 2009-11-18 ソニー株式会社 Transmission / reception system, transmission device, and speaker-equipped device
JP2005253033A (en) * 2004-02-06 2005-09-15 Nippon Telegr & Teleph Corp <Ntt> Network synchronization device, clock transmission method, and clock transmission packet network
JP4441874B2 (en) * 2005-02-24 2010-03-31 ソニー株式会社 Information processing system, playback terminal device and playback method, information processing device and method, and program
EP1872533B1 (en) * 2005-04-22 2019-05-22 Audinate Pty Limited Network, device and method for transporting digital media
JP4467478B2 (en) * 2005-07-13 2010-05-26 シャープ株式会社 Transmission apparatus and time synchronization method
US7539889B2 (en) * 2005-12-30 2009-05-26 Avega Systems Pty Ltd Media data synchronization in a wireless network

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040223622A1 (en) * 1999-12-01 2004-11-11 Lindemann Eric Lee Digital wireless loudspeaker system
US20040005902A1 (en) * 2002-07-05 2004-01-08 Belcea John M. System and method for correcting the clock drift and maintaining the synchronization of low quality clocks in wireless networks
US7742832B1 (en) * 2004-01-09 2010-06-22 Neosonik Method and apparatus for wireless digital audio playback for player piano applications
US20050234571A1 (en) * 2004-04-14 2005-10-20 Holmes Stephen G Method and system for synchronizing audio processing modules
US20050288805A1 (en) * 2004-06-25 2005-12-29 Moore Jeffrey C Providing synchronized audio to multiple devices
US20060184261A1 (en) * 2005-02-16 2006-08-17 Adaptec, Inc. Method and system for reducing audio latency
US7668964B2 (en) * 2005-04-23 2010-02-23 Sonos, Inc. System and method for synchronizing channel handoff as among a plurality of devices
US20070140510A1 (en) * 2005-10-11 2007-06-21 Ejamming, Inc. Method and apparatus for remote real time collaborative acoustic performance and recording thereof
US20080031283A1 (en) * 2006-08-07 2008-02-07 Martin Curran-Gray Time synchronization for network aware devices
US20080056154A1 (en) * 2006-09-06 2008-03-06 Cisco Technology, Inc. Measurement of round-trip delay over a network
US7912094B2 (en) * 2006-12-13 2011-03-22 Honeywell International Inc. Self-checking pair-based master/follower clock synchronization
US20080291891A1 (en) * 2007-05-23 2008-11-27 Broadcom Corporation Synchronization Of A Split Audio, Video, Or Other Data Stream With Separate Sinks

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110182371A1 (en) * 2008-08-05 2011-07-28 Fumio Suzuki Radio communication system, receiver, and transmitter
US8660227B2 (en) * 2008-08-05 2014-02-25 Otsl Inc. Radio communication system, receiver, and transmitter
US8249049B2 (en) * 2009-03-17 2012-08-21 Cisco Technology, Inc. Clock synchronization
US20100238917A1 (en) * 2009-03-17 2010-09-23 Silverman Matthew Aaron Clock synchronization
US9282418B2 (en) * 2010-05-03 2016-03-08 Kit S. Tam Cognitive loudspeaker system
US20110270428A1 (en) * 2010-05-03 2011-11-03 Tam Kit S Cognitive Loudspeaker System
US20120148075A1 (en) * 2010-12-08 2012-06-14 Creative Technology Ltd Method for optimizing reproduction of audio signals from an apparatus for audio reproduction
US20130272143A1 (en) * 2012-04-12 2013-10-17 Lantiq Deutschland Gmbh Method For A Retransmission Roundtrip Correction
US9596177B2 (en) * 2012-04-12 2017-03-14 Lantiq Deutschland Gmbh Method for a retransmission roundtrip correction
US9940091B2 (en) * 2012-06-06 2018-04-10 Sonos, Inc. Playback according to playback responsibility in group
US11743675B2 (en) 2012-06-06 2023-08-29 Sonos, Inc. Failure recovery of wearable playback device
US11284214B2 (en) 2012-06-06 2022-03-22 Sonos, Inc. Failure recovery of wearable playback device
US10560796B2 (en) 2012-06-06 2020-02-11 Sonos, Inc. Playback according to playback responsibility in group
US11729564B2 (en) * 2012-06-15 2023-08-15 Sonos, Inc. Low-latency audio networking
US20210409883A1 (en) * 2012-06-15 2021-12-30 Sonos, Inc. Low-Latency Audio Networking
US11122379B2 (en) * 2012-06-15 2021-09-14 Sonos, Inc. Low-latency audio networking
US20190373383A1 (en) * 2012-06-15 2019-12-05 Sonos, Inc. Low-Latency Audio Networking
US10721575B2 (en) 2012-10-01 2020-07-21 Sonos, Inc. Providing a multi-channel and a multi-zone audio environment
US9516440B2 (en) * 2012-10-01 2016-12-06 Sonos Providing a multi-channel and a multi-zone audio environment
US11516611B2 (en) 2012-10-01 2022-11-29 Sonos, Inc. Providing a multi-channel and a multi-zone audio environment
US20140093085A1 (en) * 2012-10-01 2014-04-03 Sonos, Inc. Providing a multi-channel and a multi-zone audio environment
US10051398B2 (en) 2012-10-01 2018-08-14 Sonos, Inc. Providing playback timing in a multi-zone audio environment
US20170347331A1 (en) * 2013-04-29 2017-11-30 Google Technology Holdings LLC Systems and methods for syncronizing multiple electronic devices
US10813066B2 (en) * 2013-04-29 2020-10-20 Google Technology Holdings LLC Systems and methods for synchronizing multiple electronic devices
US20210185629A1 (en) * 2013-04-29 2021-06-17 Google Technology Holdings LLC Systems and methods for syncronizing multiple electronic devices
US11743849B2 (en) * 2013-04-29 2023-08-29 Google Technology Holdings LLC Systems and methods for syncronizing multiple electronic devices
US9813829B2 (en) 2014-01-27 2017-11-07 Sonos, Inc. Audio synchronization among playback devices using offset information
US9313591B2 (en) * 2014-01-27 2016-04-12 Sonos, Inc. Audio synchronization among playback devices using offset information
US20150215715A1 (en) * 2014-01-27 2015-07-30 Sonos, Inc. Audio Synchronization Among Playback Devices Using Offset Information
US9538300B2 (en) 2014-01-27 2017-01-03 Sonos, Inc. Audio synchronization among playback devices using offset information
US11228388B2 (en) * 2014-05-09 2022-01-18 Imagination Technologies Limited Time stamp replication within a wireless network based on transmission prediction
US11838109B2 (en) 2014-05-09 2023-12-05 Imagination Technologies Limited Time stamp replication within a wireless network based on transmission prediction
CN105992040A (en) * 2015-02-15 2016-10-05 深圳市民展科技开发有限公司 Multichannel audio data transmitting method, audio data synchronization playing method and devices
CN105992025A (en) * 2015-02-15 2016-10-05 深圳市民展科技开发有限公司 Audio synchronous playing-based system time calibration method, audio synchronous playing method and devices
US11108486B2 (en) 2019-09-06 2021-08-31 Kit S. Tam Timing improvement for cognitive loudspeaker system
US11140480B2 (en) 2019-09-23 2021-10-05 Kit S. Tam Indirect sourced cognitive loudspeaker system
US11197114B2 (en) 2019-11-27 2021-12-07 Kit S. Tam Extended cognitive loudspeaker system (CLS)
CN114554355A (en) * 2022-03-17 2022-05-27 中科雷欧(常熟)科技有限公司 Vehicle-mounted immersive audio transmission method and device

Also Published As

Publication number Publication date
CN102027699A (en) 2011-04-20
EP2253087A1 (en) 2010-11-24
US8930006B2 (en) 2015-01-06
WO2009112070A1 (en) 2009-09-17
EP2253087B1 (en) 2013-08-21
ES2435553T3 (en) 2013-12-20
JP2011517165A (en) 2011-05-26
CN102027699B (en) 2015-04-29
JP5574988B2 (en) 2014-08-20
US20130336498A1 (en) 2013-12-19

Similar Documents

Publication Publication Date Title
US8930006B2 (en) Data transfer method and system for loudspeakers in a digital sound reproduction system
US11831935B2 (en) Systems, methods and computer-readable media for configuring receiver latency
US7724780B2 (en) Synchronization of one or more source RTP streams at multiple receiver destinations
US7805210B2 (en) Synchronizing multi-channel speakers over a network
EP1775964B1 (en) Method and device for stream synchronization of real-time multimedia transport over packet network
US10158444B1 (en) Event-driven precision time transfer
US7243150B2 (en) Reducing the access delay for transmitting processed data over transmission data
EP1398931B1 (en) Synchronous play-out of media data packets
US7710941B2 (en) Method and device for the synchronised restitution of data flows
KR20070070299A (en) Time synchronous method in residential ethernet system
US20030142696A1 (en) Method for ensuring access to a transmission medium
KR20090071923A (en) Method for synchronization using single timesync frame in bridged local area network and appratus thereof
US20070280296A1 (en) System and method for measuring distribution quality of video image
WO2014188664A1 (en) Broadcast system, client, synchronization program, and synchronization method
KR20190073058A (en) Method and apparatus of multichannel media synchronization based on MMT protocol
Kuhr et al. A jack sound server backend to synchronize to an IEEE 1722 AVTP media clock stream
EP3958511B1 (en) A wireless conference system with early packet loss detection
KR20240032051A (en) Method for jitter compensation during reception of voice content over an IP-based network, receiver therefor, and method and device for transmitting and receiving voice content with jitter compensation
Malmgren et al. Synchronization of streamed audio between multiple playback devices over an unmanaged IP network

Legal Events

Date Code Title Description
AS Assignment

Owner name: GENELEC OY, FINLAND

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HAATAINEN, NIKO;REEL/FRAME:025047/0802

Effective date: 20100909

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION