Implement MediaSourceDelegate::SetDuration() for android
Notify MediaPlayerClient and (Android) MediaSourcePlayer when
MediaSourceDelegate's ChunkDemuxer duration changes:
* Bind WebMediaPlayerAndroid::OnDurationChanged() to
render loop to asynchronously handle callback from
MediaSourceDelegate::SetDuration().
* Cache the updated duration in WMPA. This needs
simplification in blink so this caching doesn't break MSE
spec conformance. Prerequisite blink change:
https://codereview.chromium.org/
15735030/)
* Add IPC for WebMediaPlayerAndroid to notify (Android)
MediaSourcePlayer when MediaSourceDelegate/ChunkDemuxer updates duration.
With this patch, the following MSE layout tests now pass:
webkitmediasource-duration-boundaryconditions.html
webkitmediasource-duration-changed.html
webkitmediasource-seek-to-end-after-duration-change.html
BUG=246757,233420
TEST=manual verification of MSE layout tests show no regression
R=acolwell@chromium.org,yfriedman@chromium.org,qinmin@chromium.org,wonsik@chromium.org, jschuh@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
16372002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205697 0039d316-1c4b-4281-b951-d872f2087c98