Streamer Reactiion Video Atlas Delayed Again

Picture of Bluetooth Toggle Icon on a Google Pixel 3

If it wasn't abrasive enough that Android has some bug with sound quality differences of Bluetooth audio codecs, information technology seems as if there's a latency problem as well. While it's not an issue for music playback, Bluetooth latency is an of import factor when watching movies, making calls, and playing games.

You've probably already noticed it yourself when pausing music or skipping to the next rail. There's a lag betwixt your input and the audio changing in your ear. With gaming, in item, lag from sound cues tin be particularly jarring.

Editor's note: this article was updated on March six, 2021 to reflect marked improvement in Bluetooth latency past commercially-available Android devices.

What is latency?

Latency is essentially the length of fourth dimension between when a process is told to start and when it really executes. For case, the delay between pressing the play button and music starting to play, or between clicking a button and a grapheme jumping on-screen in a video game. It's not a deliberate filibuster, just the effect of various processes in the system each taking time to complete before nosotros get the desired output. With Bluetooth audio, this is the time taken for a sample of audio to arrive in your ear from a digital file on your player.

Try information technology out for yourself. Press play on each of the audio files below and run across if you lot tin notice the filibuster between when yous click and when you hear the sound. (Yous might demand to let them buffer the first time for an accurate issue!)

20ms latency:

70ms latency:

120ms latency:

200ms latency:

500ms latency:

Latency tolerance depends on the example, as our optics tin detect images with just a 13ms delay but most people's reaction times are longer than 200ms. When it comes to sound, individuals tin can't perceive latency below 20ms and many struggle to discern a delay between 40 to 80ms either, although this varies from person to person. Above 150ms becomes quite noticeable. With that in heed, platonic Bluetooth headphones should offer at most 100ms of latency to rival our perception, and the lower the better.

Unfortunately, this isn't the case, specially when playing dorsum audio through an Android smartphone. Not only is latency very high, but information technology varies by a huge amount between different handset manufacturers.

Android audio chain and Bluetooth latency explained

Google has made a number of tweaks to Android's audio chain over the years, many aimed at lower latency. However, virtually of the latency fixes have addressed recording and headphone playback, only nothing dedicated to Bluetooth. The introduction of the faster AAudio API versus OpenSL ES renderer in Android Oreo, depression latency and pro audio operation modes, and Sound Amplifier in Android Pie have all overlooked the need for a lower latency Bluetooth signal concatenation.

To explain why this is the problem that it is, we demand to understand how audio moves around the Android OS.

The audio starts in any app you're using, this could exist a music or video player, a game, or any other general application. The app creates a media session that feeds audio into the API of selection, either OpenSL ES or AAudio. This API is responsible for handling sample rates and file format conversions between source and destination, information technology's also where Android can mix audio files and run other effects. After that, the API passes data from its audio stream to the Hardware Abstraction Layer (HAL). This is where hardware, such as headphones, speakers, or your phone's Bluetooth chip receive their information from the Os.

During each of these stages, data is passed to and from first-in-starting time-out (FIFO) buffers. A buffer is essentially a list of the audio samples ready to be processed or transmitted. Longer buffers take a greater latency betwixt the fourth dimension a sample is written into information technology and read out by the adjacent chore. Smaller buffers are ameliorate for low latency, but bigger buffers forestall glitches from occurring if a buffer write is missed or is delayed. Think, Android is processing lots more things than your music and sound threads accept to fight for scheduling time on the CPU.

Android is built to optimize these buffer sizes, but a lot of this depends on piece of work that the OEM has done in the audio processing concatenation and elsewhere. For example, phones with very aggressive CPU operation throttling will result in longer buffers but meliorate battery life. Many of Android'south low latency API calls and flags are also optional, pregnant some phones back up lower latency audio paths than others.

Android'due south complex audio concatenation, combined with the already sluggish Bluetooth standard, results in very high latency.

Bluetooth adds in some other stride. Think, nosotros as well need to convert our audio stream into a codec format, which requires yet more than buffers. This data then has to be queued, packaged, and sent over the Bluetooth hardware. Perhaps surprisingly, information conversion for codecs is very fast. For instance, aptX encoding is done in nether 2ms. That's a tiny fraction of time compared to the delay added by the broader organisation.

Overall, Android system latency for wireless sound can be in the region of 100ms, a further 100ms or more for the Bluetooth information transfer, and merely 2ms for the actual sound conversion.

Smartphone Bluetooth latency examination results

To examination, we grabbed:

  • Phones
    • Huawei Mate twenty Pro,
    • Samsung Galaxy S10,
    • OnePlus 6T,
    • Google Pixel 3 XL
  • Bluetooth receiver with support for all of today's Bluetooth codecs
  • Teensy LC microcontroller to utilize with Google's WALT latency testing app.

We ran 100 tests on each handset for each codec, so our results produced ii,800 data points.

The graph details how each of our four Android handsets handled each codec. The simply thing to note about these results is that latency will vary slightly when using a unlike receiver, but encode/decode latency is and so fast that it'southward not the biggest contributor.

Graph of Bluetooth Codec Latency by Android Smartphone

For starters, there'due south a lot of variation between handsets and codecs. Google'due south Pixel iii XL offers the everyman overall latency and also the smallest variation between exam runs. The OnePlus 6T produces similar results, although it shows a greater variance with AAC, SBC, and aptX Hard disk. Fifty-fifty though these phones are by far the best I've tested, their average latency comes out to 244ms and 250ms respectively. Certainly not ideal for existent-time content.

The Huawei Mate 20 Pro showcases the aforementioned Android software issues. Its boilerplate Bluetooth latency is a staggering 484ms, most double that of the Google Pixel 3. It also shows considerable variance in Bluetooth latency, averaging 47ms between its fastest and slowest delay. The Samsung Milky way S10 is certainly better, merely also exhibits a lack of consistency in its Bluetooth latency. This will be frustrating for existent-time content.

It'due south not simply the >250ms latency that's poor, but many phones take a very high latency variation besides.

The explanation for these differences harkens back to the Android audio chain discussed earlier. At that place's no way to enforce the use of the AAudio over the more variable OpenSL ES APIs. The ALSA drivers, audio and Bluetooth HAL, and AudioFlinger buffer sizes are all variable depending on how the OEM implements them in its version of Android. The lesser line is that Android does non offer a fast track, low latency wireless audio path that is guaranteed to piece of work beyond all handsets.

Image of Android Bluetooth codecs including aptX and LDAC

Are some codecs improve than others?

We've already discussed that sound codec encoding and decoding latency is the least of our Bluetooth worries, but information technology's withal worth investigating whether unlike codecs produce meliorate or worse results. It's unlikely that major differences will exist exclusively the result of encoding times, as different codecs too require unique CPU resource and buffers which can contribute to overall system latency.

Averaged across our four test devices, information technology's the SBC and aptX codecs that offer the everyman average latency – 308ms and 316ms respectively. Nonetheless, aptX offers a lower typical variance of just 25.7ms compared to 41.9ms with SBC. LDAC scores similarly, offering 324ms of latency, although some devices saw very loftier variance when using the 990kbps high-quality setting.

Graph of Average Bluetooth Codec Latency

AAC is the worst performer beyond these Android devices. Boilerplate latency clocks in at 369ms. Worse withal, there'south an average 45ms variation in latency consequence, and the OnePlus 6T and Galaxy S10 hit a 90ms variation. The AAC codec also showcased the highest variable audio quality performance across devices we tested in the past. Information technology's definitely the most unreliable Bluetooth codec on Android smartphones. It's ane of the reasons why we recommend you don't use AirPods with Android phones.

Related Articles

Related

The Sonos Move on a dark green couch with a plant in the foreground.

Related Articles

Related

The Jaybird Vista earbuds next to the Sony WF-1000XM3.

Depression latency matters if Bluetooth is to rival wired headphones

Wired headphones aren't going anywhere anytime soon, but if Google and others are convinced almost eventually moving to a wireless earth it has to get serious about Bluetooth audio. Not just in terms of music quality, simply also matching the user feel for calls, films, and gaming. Wired headsets offer zero latency, and Bluetooth execution needs to shut the gap to be considered viable. Part of this will have to come from changes to the Bluetooth standard itself, just information technology'due south clear that Android and OEMs can practise better also.

The lesser line is that Android's Bluetooth audio latency remains highly unpredictable depending on the handset manufacturer. Google is leading the fashion by implementing its latest low latency indicate routing, but other manufacturers are however slow on the uptake.

Android Bluetooth latency varies a lot by manufacturer, and that'due south a major problem.

Phones that deviate away from the stock Android seem to perform worse in our tests. Your best bet is to stick to smartphones that offer a stock or nigh stock Android experience. This includes phones from OnePlus, Google, and Nokia.

Unfortunately, there isn't a common codec for customers to option if they are after proper low latency (aptX Low Latency is obsolete). Qualcomm'southward upcoming aptX Adaptive codec promises just 80ms latency and could be the wireless solution for low latency consumer needs. But we'll take to expect to get products in our hands before making whatever judgment calls, as latency could well vary by device as well.

Android Bluetooth latency in 2021

It's been a few years since this article was showtime published, and in the intervening time the situation surrounding Bluetooth performance on Android has gotten much better. As of March, 2021, the 20 well-nigh popular phones have allegedly dropped their response time from 100+ms to a hair under 40ms, give or take a millisecond or few. This is all according to Google itself, so accept these figures with the usual helping of table salt until we can ostend. Peculiarly since Google only listed xviii phones in their 2021 data, just we digress.

A chart created by Google showing Bluetooth latency of the top 20 phones in 2017.

Android Developers Weblog Even according to Google'south own data, the nigh popular phones in 2017 had a serious latency effect.

A lot had to happen in order to bring latency performance up to this level, merely now that better tools have been bachelor for manufacturers to take total advantage of the AAudio API (Namely, a platform called Oboe) we're seeing ameliorate results as phones get more and more advanced. In our experience, these numbers are a little low as a starting point, just it's skillful to see confirmation of our findings.

A chart showing the Bluetooth latency performance as collected by Google.

Android Developers Weblog As time went on, Bluetooth latency in the Android world improved significantly by 2021.

Bluetooth audio may never rival wired in latency, simply an average delay of under 50ms is much less noticeable than a total quarter of a second. Nosotros'll update once nosotros've conducted tests for ourselves, just nosotros felt later on the announcement of Google's data people should be aware that the situation has changed.

ewingdontards.blogspot.com

Source: https://www.soundguys.com/android-bluetooth-latency-22732/

0 Response to "Streamer Reactiion Video Atlas Delayed Again"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel