GB2485977A - Audio playback system - Google Patents
Audio playback system Download PDFInfo
- Publication number
- GB2485977A GB2485977A GB1020047.5A GB201020047A GB2485977A GB 2485977 A GB2485977 A GB 2485977A GB 201020047 A GB201020047 A GB 201020047A GB 2485977 A GB2485977 A GB 2485977A
- Authority
- GB
- United Kingdom
- Prior art keywords
- clock signal
- audio data
- digital audio
- sample rate
- destination
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 claims description 8
- 238000012544 monitoring process Methods 0.000 claims description 3
- 239000013078 crystal Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/062—Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
- H04J3/0632—Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/04—Time compression or expansion
- G10L21/043—Time compression or expansion by changing speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/05—Electric or magnetic storage of signals before transmitting or retransmitting for changing the transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
- H04N21/4392—Processing of audio elementary streams involving audio buffer management
-
- G06F2003/0691—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/002—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
- H04L7/0029—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of received data signal
Abstract
An audio playback system comprises an input buffer 20, a loop control unit 22, a sample rate converter 24, a DAC 26 and a clock generating component 28. The input buffer is arranged to store digital audio data received over a packet network. The loop control unit is arranged to monitor the level of the input buffer and to generate a local clock signal accordingly. The sample rate converter is arranged to receive digital audio data from the input buffer, to receive the local clock signal from the loop control unit and to adjust the sample rate of the digital audio data. The DAC is arranged to receive digital audio data from the sample rate converter and to output analogue audio. The clock generating component is arranged to generate a destination clock signal and to provide the destination clock signal to the sample rate converter.
Description
DESCRIPTION
AUDIO PLAYBACK SYSTEM
This invention relates to an audio playback system and to a method of operating the system.
The transport of audio data across a packet network creates timing and sampling issues since the clocks at the source and destination will not be synchronised. Conventional USB solutions utilise the frame pulse to synchronise the source and destination sample rates. A PLL is used to multiply the frame pulse at the destination to generate the required audio sample clock.
High quality playback of audio data after transport across a packet network where the sample rate clocks at the source and destination are not is synchronised is difficult to achieve if no frame pulse is present. The sample rate clocks are derived from a crystal oscillator. The resulting sample clock accuracy is determined by the following factors, the accuracy of the crystal oscillator (typically 5Oppm) and errors converting the oscillator frequency to the desired audio sample rate (typically lOOppm). If the audio data is played out at the destination, without accounting for the differences in sample rate between the source and destination, then the destination will periodically drop or duplicate samples and this reduces the quality of the audio played out.
It is therefore an object of the invention to improve upon the known art.
According to a first aspect of the present invention, there is provided an audio playback system comprising an input buffer arranged to store digital audio data received over a network, a loop control unit arranged to monitor the level of the input buffer and to generate a local clock signal accordingly, a clock generating component arranged to generate a destination clock signal and to provide a destination clock signal, and a sample rate converter arranged to receive digital audio data from the input buffer, to receive the local clock signal from the loop control unit, to receive the destination clock signal from the clock generating component and to adjust the sample rate of the digital audio data.
According to a second aspect of the present invention, there is provided a method of operating an audio playback system comprising the steps of storing digital audio data received over a network, monitoring the level of the stored digital audio data and generating a local clock signal accordingly, generating a destination clock signal, and receiving the stored digital audio data, the local clock signal and the destination clock signal in order to adjust the sample rate of the digital audio data.
io Owing to the invention, it is possible to provide an audio playback system that can support connection to a wide range of packet networks including Ethernet, USB and wireless (e.g. WIFI), where not all of these networks have a frame pulse. This approach uses a digital control loop and sample rate converter. The system does not require any timing information is from the packet network and can therefore be applied to a wide range of packet networks.
In the preferred embodiment, the system further comprises a DAC arranged to receive digital audio data from the sample rate converter and to output analogue audio. The clock generating component is further arranged to provide the destination clock signal to the DAC. The loop control unit is arranged, when generating the local clock signal, to generate a local clock signal that matches a source clock signal of the received digital audio data and is arranged to increase the rate of the local clock signal as the level of the input buffer rises and to decrease the rate of the local clock signal as the level of the input buffer falls. The sample rate converter is arranged to receive digital audio data from the input buffer according to the local clock signal. The sample rate converter is further arranged to transmit digital audio data to the DAC according to the destination clock signal. The system further comprises a high speed clock signal generating component arranged to generate a high speed clock signal which is an integer multiple of the destination clock signal.
Embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which:-Figure 1 is a schematic diagram of an audio system, Figure 2 is a schematic diagram of a loop control unit, and s Figure 3 is a flowchart of a method of operating an audio playback system.
Figure 1 shows an audio system in which an audio source 10 communicates with an audio destination 12 via a packet network 14. Audio data 16 is transmitted over the network by audio source 10 to the audio destination in the form of data packets according to the relevant network protocol. The packet network 14 could be a USB connection or an Ethernet connection, for example. The audio source 10 could be a standard desktop computer that is transmitting the audio data 16 via the network 14 for is outputting remotely of the computer. At the audio source 10, a sample rate clock 18 produces a clock sample that is used in the sampling of the audio data 16 that is transmitted across the network 14.
The audio data 16 is captured from the packet network 14. Any packet headers are removed and the payload is placed in an input buffer 20. A control loop 22 monitors the buffer level and generates a local clock whose rate matches the source sample clock. The rate is increased as the input buffer 20 fill level rises and decreased as the buffer 20 fill level falls. The matched source clock is used to pass the audio data 20 to a sample rate converter 24.
Data is clocked out of the sample rate converter 24 using a high stability local oscillator at the required sample rate. The rate converted audio is passed through a DAC (Digital to Analog Converter) 26 and output using headphones or loudspeakers 30.
The sample rate converter 24 adjusts the sample rate of the digital audio data. It measures the sample rate of input data which is clocked in using the "Matched Source Sample Rate Clock" from the loop control 22. It outputs audio data at the rate defined by the destination sample clock. A higher speed clock related to the sample clock is available at the destination. This is used by the sub-blocks to perform internal operations between sample clocks. In a preferred implementation this uses a higher speed clock of 512 times the rate of the sample clock. The design can be adapted to run with other multiples of the sample clock.
The loop control 22 is shown in more detail in Figure 2. The loop control unit 22 comprises a phase detector 32, a comparator 34 and a counter/oscillator 36. These components are connected in a loop. The loop control functions in the following manner. The sample available input to the phase detector 32 indicates that a new audio sample has been placed into the input buffer 20. The sample clock is used to send a new audio data sample from the input buffer 20 to the sample rate converter 24. The phase detector 32 monitors the input buffer depth and generates a signed error count value indicating how far the depth has deviated from the desired level, which is normally set at half-full.
is The comparator 34 checks the error count value. If the error count value exceeds a pre-defined threshold, the comparator 34 signals the counter/ oscillator 36 to go faster or slower, as appropriate. The counter/oscillator 36 performs an increment of an internal counter with every tick of the higher speed clock. The sample clock output is triggered when the counter 36 overflows. The counter increment value is set so that the sample clock frequency is close to the desired rate. The fast/slow adjustments from the comparator 34 actively adjust the increment value so the local destination sample clock frequency matches that of the source sample clock.
Figure 3 shows a flowchart of the method of operating the audio playback device 12. The method of operating the audio playback system 12 comprises the steps of firstly, step SI, which comprises storing the received digital audio data 16 received from the packet network 14. After the received audio data 14 has been unpacked it is stored in the input buffer 20. The next step comprises the step of monitoring the level of the stored digital audio data and generating a local clock signal accordingly. This is carried out by the loop control unit 22, and is described in more detail above. The loop control unit 22 outputs a matched source sample clock signal.
The next step is step S3, which comprises generating a destination clock signal. The destination clock signal is generated by the clock generating component 28, which provides the destination clock signal to the sample rate converter 24. Step S4 comprises receiving the stored digital audio data 10, the local clock signal (from the loop control unit 22) and the destination clock signal (from the generator 28) in order to adjust the sample rate of the digital audio data 10. The final step in the method is step S5, which comprises converting the digital audio data 10 to analogue audio, after sample rate conversion. This is carried out by the DAC 26, which passes the analogue audio to a loudspeaker 30.
The final step in the method, of converting the digital audio to analogue in the DAC 26 is an optional step. The audio data could be transmitted from the audio playback device 12 still in the digital form, for example over a HDMI link to a connected television.
Claims (8)
- CLAIMS1. An audio playback system comprising: o an input buffer arranged to store digital audio data received over a network, o a loop control unit arranged to monitor the level of the input buffer and to generate a local clock signal accordingly, o a clock generating component arranged to generate a destination clock signal and to provide a destination clock signal, and o a sample rate converter arranged to receive digital audio data from the input buffer, to receive the local clock signal from the loop control unit, to receive the destination clock signal from the clock generating component and to adjust the sample rate of the digital audio data.
- 2. A system according to claim 1, and further comprising a DAC arranged to receive digital audio data from the sample rate converter and to output analogue audio.
- 3. A system according to claim 2, wherein the clock generating component is further arranged to provide the destination clock signal to the DAC.
- 4. A system according to claim 2 or 3, wherein the sample rate converter is further arranged to transmit digital audio data to the DAC according to the destination clock signal.
- 5. A system according to any preceding claim, wherein the loop control unit is arranged, when generating the local clock signal, to increase the rate of the local clock signal as the level of the input buffer rises and to decrease the rate of the local clock signal as the level of the input buffer falls.
- 6. A system according to any preceding claim, wherein the sample rate converter is arranged to receive digital audio data from the input buffer according to the local clock signal.
- 7. A system according to any preceding claim, wherein the loop control unit is arranged, when generating the local clock signal, to generate a local clock signal that matches a source clock signal of the received digital audio data.
- 8. A system according to any preceding claim, and further comprising a high speed clock signal generating component arranged to generate a high speed clock signal which is an integer multiple of the destination clock signal.9, A method of operating an audio playback system comprising the steps of: o storing digital audio data received over a network, o monitoring the level of the stored digital audio data and generating a local clock signal accordingly, o generating a destination clock signal, and o receiving the stored digital audio data, the local clock signal and the destination clock signal in order to adjust the sample rate of the digital audio data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1020047.5A GB2485977A (en) | 2010-11-26 | 2010-11-26 | Audio playback system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1020047.5A GB2485977A (en) | 2010-11-26 | 2010-11-26 | Audio playback system |
Publications (2)
Publication Number | Publication Date |
---|---|
GB201020047D0 GB201020047D0 (en) | 2011-01-12 |
GB2485977A true GB2485977A (en) | 2012-06-06 |
Family
ID=43500668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB1020047.5A Withdrawn GB2485977A (en) | 2010-11-26 | 2010-11-26 | Audio playback system |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2485977A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11151749B2 (en) | 2016-06-17 | 2021-10-19 | Immersive Robotics Pty Ltd. | Image compression method and apparatus |
US11150857B2 (en) | 2017-02-08 | 2021-10-19 | Immersive Robotics Pty Ltd | Antenna control for mobile device communication |
US11153604B2 (en) | 2017-11-21 | 2021-10-19 | Immersive Robotics Pty Ltd | Image compression for digital reality |
US11553187B2 (en) | 2017-11-21 | 2023-01-10 | Immersive Robotics Pty Ltd | Frequency component selection for image compression |
WO2024020186A1 (en) * | 2022-07-21 | 2024-01-25 | Shure Acquisition Holdings, Inc. | Communications between networked audio devices |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6598172B1 (en) * | 1999-10-29 | 2003-07-22 | Intel Corporation | System and method for clock skew compensation between encoder and decoder clocks by calculating drift metric, and using it to modify time-stamps of data packets |
US20060104397A1 (en) * | 2004-11-13 | 2006-05-18 | Microsoft Corporation | System and method for clock drift correction for broadcast audio/video streaming |
US20060221936A1 (en) * | 2005-03-31 | 2006-10-05 | Rauchwerk Michael D | Timing recovery for modem transmission on IP networks |
US20100002729A1 (en) * | 2008-07-03 | 2010-01-07 | Himax Technologies Limited | Synchronization devices and methods |
US20100091769A1 (en) * | 2004-06-25 | 2010-04-15 | Numerex Corporation | Method And System For Improving Real-Time Data Communications |
-
2010
- 2010-11-26 GB GB1020047.5A patent/GB2485977A/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6598172B1 (en) * | 1999-10-29 | 2003-07-22 | Intel Corporation | System and method for clock skew compensation between encoder and decoder clocks by calculating drift metric, and using it to modify time-stamps of data packets |
US20100091769A1 (en) * | 2004-06-25 | 2010-04-15 | Numerex Corporation | Method And System For Improving Real-Time Data Communications |
US20060104397A1 (en) * | 2004-11-13 | 2006-05-18 | Microsoft Corporation | System and method for clock drift correction for broadcast audio/video streaming |
US20060221936A1 (en) * | 2005-03-31 | 2006-10-05 | Rauchwerk Michael D | Timing recovery for modem transmission on IP networks |
US20100002729A1 (en) * | 2008-07-03 | 2010-01-07 | Himax Technologies Limited | Synchronization devices and methods |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11151749B2 (en) | 2016-06-17 | 2021-10-19 | Immersive Robotics Pty Ltd. | Image compression method and apparatus |
US11150857B2 (en) | 2017-02-08 | 2021-10-19 | Immersive Robotics Pty Ltd | Antenna control for mobile device communication |
US11429337B2 (en) | 2017-02-08 | 2022-08-30 | Immersive Robotics Pty Ltd | Displaying content to users in a multiplayer venue |
US11153604B2 (en) | 2017-11-21 | 2021-10-19 | Immersive Robotics Pty Ltd | Image compression for digital reality |
US11553187B2 (en) | 2017-11-21 | 2023-01-10 | Immersive Robotics Pty Ltd | Frequency component selection for image compression |
WO2024020186A1 (en) * | 2022-07-21 | 2024-01-25 | Shure Acquisition Holdings, Inc. | Communications between networked audio devices |
Also Published As
Publication number | Publication date |
---|---|
GB201020047D0 (en) | 2011-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8503596B2 (en) | Wireless clock regeneration and synchronization | |
KR102464293B1 (en) | Systems and methods for controlling concurrent data streams | |
US9402092B2 (en) | Communication device, communication program, and communication method | |
GB2521264A (en) | Method for distributing a digital audio signal | |
GB2485977A (en) | Audio playback system | |
US20130215910A1 (en) | Transmission apparatus, transmission method, program, and communication system | |
US9804633B2 (en) | Indirect clock measuring and media adjustment | |
US20100179673A1 (en) | Multitrack recorder and synchronous recording method using a plurality of multitrack recorders | |
US8913190B2 (en) | Method and apparatus for regenerating a pixel clock signal | |
TWI586174B (en) | Mechanism for clock recovery for streaming content being communicated over a packetized communication network | |
WO2020253687A1 (en) | Clock synchronization device, optical transmitter, optical receiver and method | |
TWI629597B (en) | Time clock signal processing system and method thereof | |
JP2021078119A (en) | Multi-member bluetooth device capable of synchronizing audio playback between different bluetooth circuits | |
US10805664B2 (en) | Wireless audio synchronization | |
CN116318510A (en) | Digital conference system and audio clock synchronization method thereof | |
TWI622290B (en) | Mechanism for dynamic timestamp-less clock generation for transmitting media streams over shared channels | |
EP1667447B1 (en) | Data conversion system | |
US9438379B2 (en) | Communication device, communication program, communication method, and information processing device | |
GB2492749A (en) | Synchronising Wireless Video Data Nodes | |
EP4018576B1 (en) | Radio apparatus for communicating digital audio streams | |
US20240031048A1 (en) | Communications Between Networked Audio Devices | |
WO2022172838A1 (en) | Communication device and communication system | |
WO2023207067A1 (en) | Data sending apparatus, data receiving apparatus, data transmission method, and data transmission system | |
WO2024020186A1 (en) | Communications between networked audio devices | |
JP2013065958A (en) | Packet transmission system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
732E | Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977) |
Free format text: REGISTERED BETWEEN 20121004 AND 20121010 |
|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |