
CEF
文章平均质量分 72
epubcn
RTC Developer worked on Windows, macOS and Android. Aquarium and succulent plants hobbyist. Father, husband
展开
-
在CEF中给 getDisplayMedia 增加区域捕获(Region Capture)功能
Chromium(以及CEF)以及Chrome并没有提供区域捕获功能(注:有一种消息表明Chrome M97可能会添加),但因为公司产品需要,所以就阅读了一下Chromium、WebRTC的源码,上个月花了几天时间,在Windows上为CEF添加了区域捕获功能,版本基于CEF 4472(Chromium 91)。用法也比较简单:const displayMediaOptions = { audio: true, video: true, regionShare: true};const原创 2021-10-13 21:51:28 · 1285 阅读 · 9 评论 -
You set the variable “no_check_targets“ here and it was unused before it went out of scope.
很久没有编译CEF新版本了,最近看到Chrome提到在91版本上,提到有23%的性能提升,原文链接:https://blog.chromium.org/2021/05/chrome-is-faster-in-m91.html,是不是真有这么大改进?所以想试试看。然后理所当然地使用以前自己的编译脚本进行编译,结果又遇到个“奇葩”问题,这里简单记录一下。在使用automate-git.py编译CEF 4472(Chromium 91)的时候,在脚本执行完CEF patch apply以后,突然报错:Gene原创 2021-07-17 20:54:19 · 2386 阅读 · 0 评论 -
Chromium源码中 media::VideoFrame 的3个属性(coded_size, visible_rect, natual_size)的理解
前段时间处理过一例在Chrome中视频虚拟背景图显示范围不正确的问题,在阅读Chromium源码并结合一些试验后,这里简单记录一下media::VideoFrame这个类其中的与此次问题排查相关的三个属性的含义。media::VideoFrame的代码位于 media\base\video_frame.h(.cc),下面代码摘抄自其中(Chromium 85,branch 4183): // The full dimensions of the video frame data. const gf原创 2021-02-14 01:10:53 · 677 阅读 · 0 评论 -
Chromium,WebRTC本地视频前处理
喔~ 突然发现已经快一年没写过博客了。主要是这一年实在是太忙了,一直没有时间好好整理和规划一些内容。今天打算把自己前段时间在我们公司产品中做的一个小功能的原理拿出来简单讲讲。(注:本文基于Chromium 4183(Chromium 85)源码)背景我们公司的桌面客户端产品是基于Chromium内核的CEF框架(理论上同源的Electron也是适用的),前一段时间和国内某知名计算机视觉和深度学习原创技术公司进行合作,将他们公司的技术应用到我们的桌面客户端产品中来。大家知道,Chromium及其内置的We原创 2020-10-26 16:11:32 · 1451 阅读 · 3 评论 -
让CEF支持HEVC(H.265)视频播放
HEVC(H.265)有高昂的版权费用这个是众所周知的,所以现在绝大多数浏览器默认都不具备HEVC解码能力,这一点可以通过caniuse.com看到:可以看到,基本上只有Apple是HEVC的主要支持者。Google Chrome以及使用Chromium内核的浏览器全军覆没。但实际中确实有很多需求是要在非Apple系的浏览器播放HEVC,怎么办呢?我所知道的有两种方式:一种是在页面上采用Web...原创 2019-11-26 10:35:00 · 6787 阅读 · 1 评论 -
为 CEF/Chromium 添加 x264 编码器
文章目录前言类关系改造可能遇到的问题Simulcast两个QP阈值的含义动态码率/帧率反馈每一帧的QP非常重要H264编码数据的排列格式要求前言众所周知,所有基于Chromium内核开发的“标准”浏览器架构的项目,如CEF、Electron甚至是Google Chrome,默认提供的H.264软编码器都是Cisco的OpenH264。那么,如果我们想使用其他H.264编码器,例如x264,甚至...原创 2019-09-24 09:22:25 · 2848 阅读 · 1 评论 -
Windows下调试Chromium及WebRTC源码的一些心得
这里记录一些关于在Windows上调试CEF/Chromium/WebRTC源码的一些心得体会,也是怕时间久了就忘记了其中一些细节。因为经常有需要对CEF以及WebRTC的源码进行分析和修改,所以修改后如何调试就成了首要解决的问题。CEF,或者说Chromium与普通的小工程不同,他的庞大是众所周知的。所以为什么Google专门创造了GN和ninja。在编译了CEF以后,在out目录下会有...原创 2019-07-09 16:08:03 · 3620 阅读 · 1 评论 -
为CEF 3增加应用程序共享功能
以前如果想在Chrome中使用JS进行全屏幕/应用程序共享(navigator.getDisplayMedia 或 navigator.mediaDevices.getUserMedia),需要额外安装一个插件。好消息是从Chrome 70.0.3531.0开始,已经不再需要安装额外的插件就可以支持全屏幕/应用程序共享了。可以看这里:https://groups.google.com/forum...原创 2019-06-19 19:51:18 · 2724 阅读 · 23 评论 -
CEF 3 Windows/macOS 带 ffmpeg (支持H.264, MP4, MP3等)下载地址大全
这里记录一下我编译的CEF 3 Windows/macOS 带ffmpeg支持的版本,为了省事,直接上传到了优快云下载频道。其实我是想免积分提供的,但是上传页面的下载积分不能选0,最小也是1。注:2019年2月份开始,我发现上传资源不能选积分了,我上传的CEF默认都需要5分,这个估计是优快云调整规则了,我也没办法。而且不知道为什么有些下载的积分会自己增加,所以有哪位朋友有知道可以免费提供下载的...原创 2018-09-13 16:47:46 · 13328 阅读 · 107 评论 -
video标签在Chrome/CEF上,在某些机器上的一个渲染效率问题
近期在公司的一款基于纯WebRTC的产品上遇到一个video标签渲染视频的效率问题,如下图:当快速地在摄像头前挥动手,会发现video标签渲染的本地视频画面会产生错层及刷新不及时的方块。后来发现一篇帖子:https://www.tonymacx86.com/threads/fix-chrome-graphics-issues-but-without-turning-off-graphi...原创 2018-08-27 16:38:30 · 1781 阅读 · 0 评论 -
编译带 ffmpeg(支持MP3/MP4等) 的CEF(Windows x86 + macOS x64)遇到的一些问题记录
注:本文记录的是 CEF 3396(2018年4月份的官方Release版本)的编译记录。网上比较多介绍的都是Windows版本的CEF编译说明,macOS版本的比较少。Windows版本的CEF我基本上比较顺利就编译过了,带ffmpeg支持(H.264/MP3/MP4等)。下面是我使用的编译命令:set CEF_USE_GN=1set GN_DEFINES=is_official_bu...原创 2018-07-18 11:06:21 · 5054 阅读 · 4 评论