这是indexloc提供的服务,不要输入任何密码
Skip to content

Calling Player#prepare in STATE_IDLE ignores targetLiveOffset #2606

@mikef-dk

Description

@mikef-dk

Version

Media3 1.6.1

More version details

Also reproducible in 1.5.x - did not test any other version though

Devices that reproduce the issue

All devices

Devices that do not reproduce the issue

No response

Reproducible in the demo app?

Yes

Reproduction steps

  1. Play a DASH Live Manifest (a real Live Stream)
  2. Create a MediaItem.LiveConfiguration.Builder() and call setTargetOffsetMs with 30_000
  3. Apply via setLiveConfiguration on MediaItem.Builder
  4. Observe live offset by polling Player#getCurrentLiveOffset
  5. Run into an error (e.g. by disconnecting the device from the internet)
  6. Re-establish connection
  7. Hit Play button in sample app (which calls Player#prepare)
  8. Observe live offset by polling Player#getCurrentLiveOffset

Expected result

  1. In Step 4, the live offset is around 30_000
  2. In Step 8, the live offset is around 8_000

Actual result

  1. In Step 4, the live offset is around 30_000
  2. In Step 8, the live offset is around 30_000 so it stays the same

In other words: The LiveConfiguration that was set when starting the player, should remain active, even after a "retry". From my observation it's still set but somehow ignored by the player.

Media

I'll sent a URI via mail that can be used in the demo app by adding it to media.exolist.json

Bug Report

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions