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

Clipping of HLS streams from non-keyframe position starts with audio only #4241

Closed
na-in-lee opened this issue May 11, 2018 · 6 comments
Closed
Assignees
Labels

Comments

@na-in-lee
Copy link

na-in-lee commented May 11, 2018

Issue description

If i seekto() and midroll ad skip, the audio and video syncs are not right in ExoPlayer2.6.1.

It is okay if i do not video seekto() or skip the midroll ad.
if i video seekto() and skip the midroll ad, the video is frozen while the audio is playing for 3 seconds.

Reproduction steps

Test: play start > show preroll > skip preroll > play video(2sec) > move timebar(seekto(00:12:00)) > show midroll 1 > skip ad (midroll 1)
=> result : just audio play and freezing video about 2~3sec
=> If i did't seekto() and skip ad(midroll 1), it's OK.
=> if i seekto() and didn't skip ad (midroll 1), it's OK.

  • seek to () + Skip ad => Problem.

Video total time : 60 min
Preroll : 00:00:00
Midroll 1 position : 00:10:00
Midroll 2 position : 00:20:00
Midroll 3 position : 00:30:00

  • all ad time( total time 30sec, skippable time: 3sec)

in exoplayer 2.6.1 demo

Link to test content

Provide a link to media that reproduces the issue. If you don't wish to post it
publicly, please submit the issue, then email the link to
dev.exoplayer@gmail.com using a subject in the format "Issue #1234".

Version of ExoPlayer being used

exoplayer 2.6.1
build config : demo

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

device name : Galaxy S8
android version: 8.1

@tonihei
Copy link
Collaborator

tonihei commented May 14, 2018

Thanks for filing the issue. Could you please provide us with an ad tag to reproduce the issue? You can also send the link to dev.exoplayer@gmail.com if you don't want to post it publicly.

@tonihei tonihei self-assigned this May 14, 2018
@na-in-lee
Copy link
Author

I uploaded the original xml file.
check below xml files.

https://github.com/na-in-lee/sample

  1. VMAP file
  • vmap_ex.xml
    : custom path line5, 12, 20
  1. Vast file (vamp tag)
  • google_jtbcmp4.xml

@tonihei
Copy link
Collaborator

tonihei commented May 15, 2018

Seeking behind the ad + skipping works fine for me in our latest version with the described VMAP setup.
The problem may actually be related to the content media file. Can you provide us with an example of the content HLS playlist?

@na-in-lee
Copy link
Author

na-in-lee commented May 16, 2018

@tonihei
Copy link
Collaborator

tonihei commented May 16, 2018

I was able to reproduce your problem now. It's actually unrelated to ads loading and was caused by starting to play the HLS stream from a non-keyframe position. We are going to provide a fix soon.

@tonihei tonihei added the bug label May 16, 2018
@tonihei tonihei changed the title If i seekto() and midroll ad skip, the audio and video syncs are not right in ExoPlayer2.6.1. Clipping of HLS streams from non-keyframe position starts with audio only May 16, 2018
andrewlewis pushed a commit that referenced this issue May 22, 2018
Currently, the sample queues are lazily enabled when they are first read from.
This causes problems when the player tries to discard buffer and the
HlsSampleStreamWrapper assumes the sample queue is disabled even though it's
actually enabled but hasn't been read from.

This change moves setting the sample queue index of the sample stream back into
HlsSampleStreamWrapper. It enables the sample queues at track selection if the
queues are already built, or immediately after they have been built for
chunkless preparation.

Issue:#4241

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=197415741
@na-in-lee
Copy link
Author

Thanks.

I confirmed and applied your commit. (7b855e4)

update version : 2.6.1 -> 2.8.1-rc

Close the issue.

@google google locked and limited conversation to collaborators Sep 27, 2018
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