Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HLS: chunkless preparation breaks fmp4 content playback #5524

Closed
SukritGupta17 opened this issue Feb 18, 2019 · 4 comments
Closed

HLS: chunkless preparation breaks fmp4 content playback #5524

SukritGupta17 opened this issue Feb 18, 2019 · 4 comments
Assignees
Labels

Comments

@SukritGupta17
Copy link

Issue description

When trying to play fmp4 content with chunkless preparation turned on, at the end of video playback the player state never changes to ended and the playback continues with the timeline ticking on.

Reproduction steps

The bug can be reproduced in the ExoPlayer demo app.

  1. turn chunkless preparation on:
    in PlayerActivity.java make the following code changes under the buildMediaSource function:
case C.TYPE_HLS:
        return new HlsMediaSource.Factory(dataSourceFactory)
            .setPlaylistParserFactory(
                new DefaultHlsPlaylistParserFactory(getOfflineStreamKeys(uri)))
            .setAllowChunklessPreparation(true)
            .createMediaSource(uri);
  1. Select the fmp4 bipbop content from the HLS demo content.

  2. The playback never ends.

Link to test content

The fragment mp4 demo test content:

        "name": "Apple master playlist advanced (fMP4)",
        "uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8"

Version of ExoPlayer being used

ExoPlayer - tag version 2.9.5

Device(s) and version(s) of Android being used

Device: LG G6
Android version: 7.0

@AquilesCanta AquilesCanta self-assigned this Feb 18, 2019
@AquilesCanta
Copy link
Contributor

Thanks for reporting. I'll write back as soon as I have any updates.

@AquilesCanta
Copy link
Contributor

A fix will be available in 2.10.0. Unfortunately it won't make it for 2.9.6.

andrewlewis pushed a commit that referenced this issue Feb 20, 2019
HlsSampleStream#read should return end of stream when
there is no mapping for the sample stream, instead of
nothing read. This allows the player to transition to
ended.

Issue:#5524
PiperOrigin-RevId: 234764027
andrewlewis pushed a commit that referenced this issue Feb 20, 2019
HlsSampleStream#read should return end of stream when
there is no mapping for the sample stream, instead of
nothing read. This allows the player to transition to
ended.

Issue:#5524
PiperOrigin-RevId: 234764027
@AquilesCanta
Copy link
Contributor

Please test it on 2.9.6, and comment below if you still run into the issue. If needed, i'll reopen. Thanks again for reporting!

@SukritGupta17
Copy link
Author

Thank you, I'll run some tests and update accordingly.

@google google locked and limited conversation to collaborators Aug 5, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants