WebRTC 实时视频处理 基础美颜与视频超分实践.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《WebRTC 实时视频处理 基础美颜与视频超分实践.pptx》由用户(无敌的果实)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- WebRTC 实时视频处理 基础美颜与视频超分实践 实时 视频 处理 基础 美颜 实践
- 资源描述:
-
1、WebRTC 实时视频处理基础美颜与视频超分实践目录1. 应用背景与 HTML5 标准2. Web 平台并行计算标准3. 基于 WebGL 的基础美颜实现4. Web 视频超分探索5. Web 平台深度学习展望应用背景与HTML5标准2014年10月,W3C发布HTML 5.0标准。随着主流浏览器逐步实现对HTML5新特性的支持,Web平台对多媒体内容的处理能力得到空前增强。WebRTC、WebGL、WebAudio等多媒体组件成为Web平台标配的能力。近年来随着RTC、云游戏、人工智能等各种多媒体新需求的出现,HTML标准也在不断演进,WebVR、 WebGPU、WebAssembly、We
2、bGL Compute、WebNN等多项新的标准和规范正在被持续推动。2019作为5G元年,RTC产业迎来蓬勃发展。如何通过HTML5技术为用户提过更多元、更友好的RTC服务,使Web平台成为既能快速触达又具客户粘滞性的渠道成为了RTC服务商所必须面对的问题。以下将从WebRTC所承载的核心对象实时视频流出发,通过2种典型的实时视频处理场景对Web平台面对的主要制约和潜在能力进行探索。Web平台并行运算OpenGL ES for the Web基于OpenGL ES的跨平台Web 2D/3D图形标准,支持以JavaScript API使用GLSL。WebGL 1.0基于OpenGL ES 2.
3、0实现WebGL 2.0基于OpenGL ES 3.0实现WebGL 2.0 Compute基于OpenGL ES 3.1实现WebGL支持的平台:Safari 5.1+Safari on IOS 8Chrome 9+Chrome for Android 25+Mozilla Firefox 4+Firefox for Android YESMicrosoft Edge 12+WebGL 2.0 Compute支持的平台:Chrome with experimental flag enabledWeb平台并行运算WebGL版本演进WebGL与OpenGL ES的关系OpenGL ES3.0Op
4、enGL ES3.2OpenGL ES3.1OpenGL ES2.02007201220142015201720112019开发中WebGL 1.0WebGL 2.0 WebGL 2.0 Extension基于GLES2.0基于GLES3.0基于GLES3.1WebGL 2.0 ComputeParallel Shader CompilationWEBGL_video_to_textureWebGL 2.0 Extension包含:Web平台并行运算WebGPU平台支持目标在Web平台提供新的接口来获取原生系统中现代3D图形及通用计算系统的能力。Chrome 78 for Macwith ex
5、perimental flagSafari Tech Preview 91+底层实现:标准与实现草案:https:/gpuweb.github.io/gpuweb/实现: WebMetal (Apple) Dawn (Google) Obsidian (Mozilla)Web平台并行运算Heterogeneous parallelcomputing in web browsersKhronos OpenCL标准在Web平台的映射。依靠GPU和多核CPU提供多种并行处理能力,为图像和视频处理以及3D游戏物理运算提供加速。在所有浏览器上均未实现;Intel、Samsung、Nokia分别实现过通过
6、浏览器插件或Web Runtime实现过自己的WebCL版本。CrosswalkProjectTencent AlloyImageWeb平台并行运算性能平台兼容性文档&易用性最好较好较好N/A最好最差较差较差较差WebGPU基于WebGL的基础美颜实现基础美颜使用的相关Web模块视频采集、处理及传输CanvasCamera数据采集及网络媒体传输视频及图像渲染WebGLAgora Web SDKGLSL实现图像滤波算法传输控制、RTC框架基于WebGL的基础美颜实现主要步骤1.视频采集2.创建WebGL纹理并应用GLSLvar constraints = audio: true, video:
7、width: 1280, height: 720 ;var video;var canvas = document.getElementById(myCanvas);var gl = canvas.getContext(webgl2);navigator.mediaDevices.getUserMedia(constraints)gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, gl.RGBA, gl.RGBA,.then(function(mediaStream) gl.UNSIGNED_BYTE, video);video = document.querySele
8、ctor(video);video.srcObject = mediaStream;video.onloadedmetadata = function(e) video.play();gl.useProgram(skinToneProgram);)gl.drawArray(gl.TRIANGLES, 0, 6);.catch(function(err) console.log(err.name + : + err.message); );3.从Canvas获取MediaStream4.发送VideoTrackvar fps = localStream.attributes.maxFrameRa
9、te;var rtcRtpSender = that.pc.peerConnection.getSenders();rtcRtpSender.replaceTrack(videoTrack);var canvasCaptureMediaStream = canvas.captureStream(fps);var videoTrack = canvasCaptureMediaStream.getVideoTracks()0;基于WebGL的基础美颜实现WebGL美颜处理帧率FPS58设备Redmi Note7 骁龙660 480p29Redmi Note7 骁龙660 720pRedmi Not
10、e7 骁龙660 1080p7PC Intel i7 UHD620集显 480pPC Intel i7 UHD620集显 720pPC Intel i7 UHD620集显 1080p606022视频演示效果基于WebGL的基础美颜实现实时美颜处理对WebRTC性能影响480p 30FPS720p 15FPS720p 30FPS关闭美颜开启美颜关闭美颜开启美颜关闭美颜开启美颜基于WebGL的基础美颜实现Chromium多进程与硬件加速合成机制基于WebGL的基础美颜实现Chromium Camera视频采集与渲染Shared MemoryGPU MemoryI420 DataNV12 DataV
11、ideoFramesTexturesVideo DataVideoCaptureController(VideoFrameReceiver)VideoCaptureImplVideoCaptureDeviceBlink:HTMLVideoElementWebMediaPlayerMSGLES / D3DVideoCaptureDeviceClientVideoCaptureHostBuffer IDGpuMemoryBufferVideoFramePoolIPCIPCIPCVideo Capture ProcessBrowser ProcessRender ProcessGPU Process
展开阅读全文