Comment #4 on issue 17970 by bugdro...@chromium.org: timeupdate event continues firing after video ended http://code.google.com/p/chromium/issues/detail?id=17970
The following revision refers to this bug: http://src.chromium.org/viewvc/chrome?view=rev&revision=23255 ------------------------------------------------------------------------ r23255 | scher...@chromium.org | 2009-08-12 16:52:05 -0700 (Wed, 12 Aug 2009) | 12 lines Changed paths: M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/filter_host.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/filters.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/mock_filter_host.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/mock_filters.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/pipeline_impl.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/pipeline_impl.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/pipeline_impl_unittest.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_frame_impl.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_frame_impl.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_frame_impl_unittest.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/audio_renderer_base.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/audio_renderer_base.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/audio_renderer_base_unittest.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/video_renderer_base.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/video_renderer_base.h?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/video_renderer_base_unittest.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/webmediaplayer_impl.cc?r1=23255&r2=23254 M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/webmediaplayer_impl.h?r1=23255&r2=23254 Implemented end-of-stream callback for media::PipelineImpl. A new method HasEnded() was added to renderer interfaces. Renderers return true when they have both received and rendered an end-of-stream buffer. For audio this translates to sending the very last buffer to the hardware. For video this translates to displaying a black frame after the very last frame has been displayed. Renderers can notify the pipeline that the value of HasEnded() has changed to true via FilterHost::NotifyEnded(). Instead of tracking which renderers have called NotifyEnded(), the pipeline uses the notification to poll every renderer. The ended callback will only be executed once every renderer returns true for HasEnded(). This has a nice benefit of being able to ignore extra NotifyEnded() calls if we already determine the pipeline has ended. With the changes to WebMediaPlayerImpl, we should now properly support both the ended event and looping. BUG=16768,17970,18433,18846 TEST=media_unittests, media layout tests, ended event, timeupdate should stop firing, looping should work, seeking after video ends Review URL: http://codereview.chromium.org/164403 ------------------------------------------------------------------------ -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings --~--~---------~--~----~------------~-------~--~----~ Automated mail from issue updates at http://crbug.com/ Subscription options: http://groups.google.com/group/chromium-bugs -~----------~----~----~----~------~----~------~--~---