通用浏览器内核介绍
浏览器内核 |
主要浏览器实现 |
其他实现(部分双内核) |
WebKit2/WebKit |
Apple Safari |
midori,QQ浏览器(极速模式),遨游,搜狗,opera |
Gecko |
Mozilla FireFox |
netscape, waterfox |
Blink |
Google Chromium and Chrome |
Opera,360浏览器,猎豹浏览器,opera |
Trident |
MS Internet Explorer(IE) |
世界之窗(theworld),360浏览器,猎豹浏览器,百度浏览器,QQ浏览器(普通模式),遨游,搜狗 |
edgehtml/chromium |
MS edge browser (前期edgehtml后续使用chromium内核) |
windows 10 |
这里面opera浏览器比较特殊,它最初是自己的Presto内核,后来是Webkit,现在是Blink内核, 虽然google Blink内核是它的upstream,但是opera并不开源,所以网上也下载不到它的源代码。
开源浏览器内核-多媒体后端
浏览器内核 |
多媒体后端框架 |
实现方案 |
其它 |
状态 |
blink |
ffmpeg |
ffmpeg软解(默认_ ffmpeg+gpu(nv,amd,intel) ffmpeg+omxil(树莓派) |
nvidia gpu:支持cuda加速 intel gpu:支持vaapi加速 树莓派:ffmpeg + mmal |
未实现 |
webkitgtk |
gstreamer + OmxIL or libav |
软件解码方案:gst + libav 硬件解码方案:gst + omxil |
硬件方案通过omxil对接 cedarc vpu driver |
已实现 已验证 |
gecko |
ffmpeg Omx(DL,IL) |
最新版本全部使用 ffmpeg方案 |
/ |
未实现 |
chromium/chrome | ffmpeg | ffmpeg + VPU加速 | / | / |
其中树莓派上mmal实际上是针对BCM vpu openmaxil实现的一层瘦封装.
FFMPEG硬件加速方案
VA-API: Video Acceleration API (VA-API) 实现库参考libva,vendor: intel
DxVA:DirectX Video Acceleration, Vendor: microsoft.
VDPAU:Video Decode and Presentation API for Unix,Vendor: NVIDIA, 实现库参考:libvdpau,DPAU被认为在X窗口系统下等同于