cannot loop at the end of video playback |
|||||
Issue descriptionChrome Version: 62.0.3178.0 OS: all This bug was present for a while but was mistakenly mixed with crbug/575824. After some deep look, I think they are different issue. This bug repro on both VP9 and mp4 EME video, seems not repro on non-EME video. chrome://media-internal logs is as below. it seems media player is destroyed even though loop option is set? NOTE, this issue NOT 100% repro, but about 50% of times. 00:01:10 407 event PAUSE 00:01:10 407 seek_target 131.482674 00:01:10 407 pipeline_state kSeeking 00:01:10 408 audio_buffering_state BUFFERING_HAVE_NOTHING 00:01:10 408 video_buffering_state BUFFERING_HAVE_NOTHING 00:01:10 550 event PLAY 00:01:10 616 info Estimating WebM block duration to be 2ms for the last (Simple)Block in the Cluster for this Track. Use BlockGroups with BlockDurations at the end of each Track in a Cluster to avoid estimation. 00:01:10 807 info Estimating WebM block duration to be 2ms for the last (Simple)Block in the Cluster for this Track. Use BlockGroups with BlockDurations at the end of each Track in a Cluster to avoid estimation. 00:01:10 807 pipeline_state kPlaying 00:01:10 850 audio_buffering_state BUFFERING_HAVE_ENOUGH 00:01:11 38 video_buffering_state BUFFERING_HAVE_ENOUGH 00:01:11 38 pipeline_buffering_state BUFFERING_HAVE_ENOUGH 00:01:11 39 event PLAY 00:01:11 39 event PLAY 00:03:50 826 pipeline_state kStopping 00:03:50 826 pipeline_state kStopped 00:03:50 827 event WEBMEDIAPLAYER_DESTROYED What steps will reproduce the problem? (1) navigate to https://ats.sandbox.google.com/static/chrome_test_app/index.html (2) load and play any of these videos: L3_audio_L3_video.mp4.mpd L3_audio_L3_video_vp9.webm.mpd (3) set Loop option, seek to the end of video, wait for loop What is the expected result? loop play What happens instead? about half of time loop not work, playback stop at the end.
,
Aug 8 2017
one correction, this is not limit to EME video, it happens on both EME and clearkey. change component to media>video.
,
Oct 10 2017
this bug still repro on Chrome 63.0.3230.0 build.
,
Oct 16 2017
Ping john, xhwang. Any updates here?
,
Oct 16 2017
jrummell: Tentatively add a milestone so we keep track of this. Please take a look at this issue. Thanks!
,
Nov 27 2017
With Chrome 64.0.3278.0 it seems to loop just once. Part of chrome://media-internals for the video: 00:00:19 142 video_buffering_state BUFFERING_HAVE_ENOUGH 00:00:19 162 audio_buffering_state BUFFERING_HAVE_ENOUGH 00:00:19 162 pipeline_buffering_state BUFFERING_HAVE_ENOUGH 00:00:19 162 info Effective playback rate changed from 0 to 1 00:00:19 162 event PLAY 00:02:09 552 duration 135.608 00:02:34 880 event ENDED 00:02:34 880 seek_target 0 00:02:34 880 pipeline_state kSeeking 00:02:34 881 audio_buffering_state BUFFERING_HAVE_NOTHING 00:02:34 881 video_buffering_state BUFFERING_HAVE_NOTHING 00:02:34 913 pipeline_state kPlaying 00:02:34 934 video_buffering_state BUFFERING_HAVE_ENOUGH 00:02:34 952 audio_buffering_state BUFFERING_HAVE_ENOUGH 00:02:34 952 pipeline_buffering_state BUFFERING_HAVE_ENOUGH 00:04:50 154 info Effective playback rate changed from 1 to 0 It appears that the second time through the playback rate is set to 0, and the ENDED event never happens.
,
Nov 30 2017
This might be a problem with Shaka. I added code to dump the stack trace in WebMediaPlayerImpl::SetRate(), and the last call is: #0 0x7f74651009dd base::debug::StackTrace::StackTrace() #1 0x7f74650fee0c base::debug::StackTrace::StackTrace() #2 0x7f744b379239 media::WebMediaPlayerImpl::SetRate() #3 0x7f74540ec4b3 blink::HTMLMediaElement::UpdatePlaybackRate() #4 0x7f74540e3f6d blink::HTMLMediaElement::setPlaybackRate() #5 0x7f7454e7de29 blink::HTMLMediaElementV8Internal::playbackRateAttributeSetter() #6 0x7f7454e7dd11 blink::V8HTMLMediaElement::playbackRateAttributeSetterCallback() #7 0x2bf083e08761 <unknown> From this it appears that JavaScript is calling setRate(0). Will try other video sites to see if thay have problems or not.
,
Nov 30 2017
I tried a video on https://shaka-player-demo.appspot.com (2.2.7), and looping works fine. I also tried a video on YouTube, and looping works there too. vasanthap@: What version of Shaka is the Chrome Test App running?
,
Nov 30 2017
jrummell@, v2.1.4 is the shaka version. shaka.Player.version
,
Nov 30 2017
https://v2-1-4-dot-shaka-player-demo.appspot.com loops as expected. So this appears to be something specific to the test code, not Chrome.
,
Nov 30 2017
Is there seeking or an explicit playback start time involved? If you seek to the duration, or if you set a playback start time at the duration, this could be: https://github.com/google/shaka-player/issues/1014 You may want to upgrade Shaka Player anyway. v2.1.x is quite old. v2.2.7 is the latest release.
,
Nov 30 2017
Yes, I am looking into that already.
,
Dec 2 2017
Test App is now updated to Shaka Player version 2.2.7
,
Dec 2 2017
Awesome, thanks, Vasanth. If the issue is still reproducible on the update app, please let me know and I'll help debug.
,
Dec 5 2017
Updating the test player to Shaka 2.2.7 appears to fix the issue. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by xhw...@chromium.org
, Aug 8 2017Owner: jrumm...@chromium.org