android html5 video的实现方方面面

来源:互联网 发布:淘宝网店经营培训 编辑:程序博客网 时间:2024/05/18 01:59

探讨android中html5的video的生命周期,video实现的方方面面。解决如下问题:


1. 如何从html(浏览器)调用到MediaPlayer进行播放的?


2. MediaPlayer播放内容为何能在浏览器上显示?


3. MediaPlayer和浏览器的关系如何?谁控制谁?


4. MediaPlayer如何获取真正的播放资源?


估计一篇写不完,慢慢写吧


以前写的,记录一下


chromium video
pipeline
webkit/media/webmediaplayer_impl.cc
BuildMediaStreamCollection 从client查看url对应的decoder,如果找到,就启动pipeline。
这里的client就是MediaStreamImpl,寻找decoder就是找descriptor


StartPipeline
pipeline_->Start 会设置网络状态回调函数(WebMediaPlayerProxy::NetworkEventCallback)。BufferedSourceLoader 会调用BufferedResourceLoader进行网络下载
Pipeline::StartTask
BufferedDataSource::Initialize
BufferedDataSource::NetworkEventCallback
Pipeline::SetNetworkActivity
Pipeline::NotifyNetworkEventTask




WebMediaPlayerProxy::NetworkEventCallback
WebMediaPlayerProxy::NetworkEventTask




DOMURL.cpp
createObjectURL 会绑定一个url和一个stream




android video
我认为浏览器里面的video是时间驱动的