androidx / androidx/media

Live Sync fails over several hours - SNTP time update

Open
#696 1 comment 1 reaction 1 assignee View on GitHub

@marcbaechinger is already working on this.

Since Oct 5, 2023.

bug needs triage
Dominant language
Java
Stars
3k
Forks
955
Avg merge
12d 14h
Merged PRs (30d)
2

Description

Version

Media3 1.1.1

More version details

Run two Android TV streamers side by side with a set latency target (either via <ServiceDescription> or using MediaItem.Builder(). setLiveConfiguration(...)). Observe they will lock in to nearly the frame from the start.

After several hours of runtime they will drift, potentially 100's of milliseconds apart. The cause is the inaccuracy of System.elaspedTime() over

Devices that reproduce the issue
  • Google TV w/Chromecast
  • Evolution e*Stream 4k
  • Likely many others with SEI / AmLogic SoC
Devices that do not reproduce the issue

No response

Reproducible in the demo app?

Yes

Reproduction steps
  1. Play media (on request) for several hours (longer give more error)
  2. Observe sync gradually declines
Expected result

With the proposed fix in the pull request the streams have played over 10 hours with no errors.

Actual result

streams are out of sync in 5 or so hours. Note this may seem like a long time, but imagine a bar or health club setting. Also, there is no recovery by changing the channel (requires force-stop of the application hosting ExoPlayer)

Media

on request, not you may really need at least 5 hours of playback to see the issue.

Bug Report
  • You will email the zip file produced by adb bugreport to android-media-github@google.com after filing this issue.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.