Wireless communication transceivers are rapidly becoming more portable and interoperable. Concurrent is a drive to reduce transceiver size, weight, and power consumption. Transceivers are now portable to the point where they can be worn on and/or in a person's ear. Additionally, standards such as Bluetooth are providing interoperability between devices produced by different manufacturers.
However, the continued drive for miniaturization and interoperability is constrained. Common audio and video sampling rates are not a harmonic of one frequency. Thus, multiple clocks are necessary to code and decode all common sampling rates for streaming data. Use of multiple clocks to accommodate all common sample rates leads to cost increases in parts, assembly, and design. Use of multiple clocks also leads to increased power consumption, weight, and heat. The effect of increases in these parameters is acute when the receiver is integrated into an earphone that is worn on and/or in the ear. Thus, use of multiple clocks is a constraint on portability and interoperability.
Alternatively, a single master clock can be used to generate a plurality of harmonic or sub-harmonic clocks. This tends to reduce costs. However, it is likely that none of the harmonic or sub-harmonic clocks will match the sample rate of incoming data. Those sample rates which are not a harmonic of the master clock frequency must then be approximated. This can lead to “buffer over flow” when a receiver clock is faster than a transmitter clock, or “buffer running dry,” also referred to herein as “buffer stall,” when the receiver clock is slower than the transmitter clock.
What are needed therefore are methods and systems for reducing buffer running dry.