WebGPU 引领前端未来,互动渲染如何驱动小红书业务增长?

在大前端时代,浏览器能力得到显著的增强,为前端开发带来了更多的可能性和挑战。作为一套全新的 Web API 标准,WebGPU 旨在提供高性能的 3D 图形和数据并行计算能力,其在游戏、虚拟现实、机器学习等多个行业和应用场景中展现出潜力。

5 月 24 日晚,以“ WebGPU 与互动渲染技术的前沿探索”为主题,【REDtech来了】第十期技术沙龙在上海圆满落幕。

本次沙龙由小红书前端架构负责人瑞金(王康)出品,携手 W3C 万维网联盟成员、小红书前端团队专家,与现场百余位技术爱好者展开积极交流,并在多个平台同步直播。

图片

小红书前端架构负责人瑞金(王康)

W3C 标准带头人 François Daoust、小红书互动渲染技术负责人灵感(黄越甲)和社区互动游戏负责人雨柔(王宁),共同为大家带来《探索实时音视频处理的 WEB 技术前沿》和《互动渲染技术驱动业务增长》的主题分享,现场气氛热烈,互动不停。

图片

这场关于 Web 技术的演讲吸引了众多目光,François Daoust 深入探讨了 WebCodecs、Streams 和 WebGPU 三项关键技术,如何共同构成 Web 视频处理的新基础。

图片

W3C 标准带头人 François Daoust

分享开始,François 幽默风趣地尝试用中文和大家打招呼。他介绍了 W3C 的使命和工作重点,包括制定开放的网络技术标准,如 HTML、CSS 和 JavaScript API,以及非浏览器技术,并提到了 W3C 在 2023 年转型为公益非营利组织的重要里程碑。

François 指出,随着网络技术的飞速发展,现在我们不仅拥有新的媒体分发方式,还有实时处理媒体的新方法。WebGPU 不仅能提供必要的并行处理能力,还能够高效地处理像素格式转换,这对于在多种设备上实现实时视频帧处理至关重要。

图片

他通过介绍去年探索的实验项目,展示了如何利用 WebCodecs API 访问原始视频帧,并通过 Streams API 创建 Pipeline,进而使用 WebGPU 进行高效的并行处理。

这些技术的结合为视频媒体流分析和操作提供了强大的支持,包括面部识别、情感分析以及实时添加趣味效果等。François 丰富地展示它们的潜力,并直面了实时视频处理中的挑战,如处理大量数据帧、跨平台性能优化以及内存管理等。

他通过实际的 demo 演示了不同技术的性能,强调了 WebGPU 在大多数设备上作为实时视频帧处理的可行选项,并讨论了内存复制对性能的影响以及如何优化。

演讲以对未来 Web 视频处理技术的乐观展望结束,鼓励大家保持好奇心继续合作,共同推动 Web 标准的发展,以实现更加丰富和动态的网络媒体体验。

图片

小红书前端团队的灵感和雨柔通过多个实际案例,深入探讨了互动渲染技术如何成为推动业务增长的关键因素。他们展示了小红书如何利用这些技术手段创造出引人注目的视觉效果和简单直接的交互体验,有效吸引用户参与和促进业务转化。

灵感通过「透明视频渲染」项目,展示了如何结合 WebCode 和 WebGL 技术,实现高质量视频渲染,确保视频帧与帧之间的精确对齐和色彩空间的转换。

图片

小红书社区互动游戏负责人雨柔(王宁)

在「宠物小伙伴」案例中,雨柔分享了小红书采用的两种互动开发模式:一种是针对业务逻辑复杂、需要长线迭代的产品的传统游戏模式;另一种是适合业务逻辑简单、以营销投放活动为主的编排投放模式。

提及编排模式的王者,那非 Lottie 莫属。但灵感指出了其局限性,如缺乏上线管控、视觉表现有限以及性能问题,并提出了渐进式编辑器体系的必要性。这一体系允许设计师和开发人员更高效地协作,通过将动画资源导入编辑器、增加交互效果,并最终导出为 JSON 文件,简化了开发流程。

图片

小红书互动渲染技术负责人灵感(黄越甲)

灵感进一步讨论了将 2D 动画迁移到 WebGL 的过程,并指出 WebGL 在 FPS、CPU 和 Memory 方面相较于 LottieWeb 有显著优势,尽管代价是首帧渲染时间的增长。为此,他详细阐述了如何通过异步 Shader 编译和压缩纹理技术进行 WebGL 的性能优化,以平衡渲染效率和首帧渲染时间。

从 OpenGL 到 WebGL,再到 WebGPU,灵感阐述跨端渲染的几大变化:Shader 编译提升、更少的数据绑定和多线程支持。他预言未来是一个可能由 AR 技术引领的新时代,WebGPU 与 WebGL 相比更接近系统底层,将为前端开发带来更大的潜力,希望大家持续关注。

图片

分享结束后,四位嘉宾就 Web 技术的未来发展、AI 为前端带来什么、工程师职业路径、小红书业务实践场景等话题进行深入讨论,并与现场观众积极交流。

嘉宾们指出,前端与 AI 的结合正在打开新的视野,人际交互将变得更加自然流畅,提升用户体验;而 WebGPU 作为接触 GPU 底层能力的桥梁,其发展预示着在浏览器中将能够实现更加丰富和高效的图形渲染及计算任务。

瑞金分享了小红书前端架构在互动渲染和图形可视化领域的快速发展。他表示:在过去的一年里,团队已经验证在多个大型活动,互动渲染对业务增长的收益远超预期。

小红书始终以用户体验为核心,前端架构团队为公司提供大前端基础设施建设,主要包含开发框架、CI/CD、前端监控、组件搭建、跨端开发和互动渲染等六大方向。非常欢迎感兴趣的同学加入(邮件联系wangkang3@xiaohongshu.com、REDtech@xiaohongshu.com),一起做前沿有趣的事!

本次沙龙中英文直播回看视频,已上传至「小红书技术REDtech」视频号、B 站账号,欢迎大家观看。

图片

小红书前端架构师-业务架构

岗位职责:

1、参与前端架构的设计与实施,解决工程规范、研发提效、性能优化等问题;

2、跨部门的沟通协调能力,保证技术架构与各业务目标的高度一致;

3、参与技术规划和目标设定,适当地引进新技术,落地转换价值,为结果负责。

任职资格:

1、具备 JavaScript 专家技能,对前端生态有敏锐的洞见;

2、精通 Vue/React,对其实现有深入理解;

3、对前端研发流程有深入实践,熟悉 CI/CD、监控等;

4、对跨端开发有一定涉猎,了解 Hybrid H5,React Native 等;

5、怀有同理心,能够站在开发者、用户角度独立思考,跨越技术界限,主动挖掘技术和业务痛点并寻求解决问题的方法。

小红书前端架构师-APM 监控平台

岗位职责:

1、负责前端监控平台架构设计优化,确保系统稳定、高效运行;

2、负责前端监控 SDK 架构设计和开发,确保 SDK 可扩展性和数据采集准确性;

3、负责前端监控应用层建设,打造业界一流的前端可观测性平台,赋能业务;

4、参与小红书性能和稳定性标准规范制定,与业务协作达成体验优化目标。

任职资格:

1、本科及以上学历(优先),至少 3 年前端开发经验,计算机基础扎实;

2、精通 Vue/React,对其实现有深入理解;

3、对前端监控有深入的研究和业务实践,熟悉监控平台相关技术,如数据采集、数据分析、可视化等;

4、具有良好的沟通能力和团队合作精神,能够有效地与团队成员协作;

5、具有较强的问题分析和解决能力,能够独立完成工作任务;

6、怀有同理心,能够站在开发者、用户角度独立思考,主动挖掘技术和业务痛点并寻求解决问题的方法。

欢迎感兴趣的同学发送简历至 REDtech@xiaohongshu.com,并抄送至 wangkang3@xiaohongshu.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/850312.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式Linux系统编程 — 3.2 stat、fstat 和 lstat 函数查看文件属性

目录 1 文件有哪些属性 2 stat函数 2.1 stat函数简介 2.2 struct stat 结构体 2.3 struct timespec 结构体 2.4 示例程序 3 fstat 和 lstat 函数 3.1 fstat 函数 3.2 lstat 函数 1 文件有哪些属性 Linux文件属性是对文件和目录的元数据描述,包括文件类型…

30-unittest生成测试报告(HTMLTestRunner插件)

批量执行完测试用例后,为了更好的展示测试报告,最好是生成HTML格式的。本文使用第三方HTMLTestRunner插件生成测试报告。 一、导入HTMLTestRunner模块 这个模块下载不能通过pip安装,只能下载后手动导入,下载地址是:ht…

应用广义线性模型一|线性模型

文章目录 一、统计学及思维模式二、未知现象的数学描述三、线性模型(一)线性模型的定义(二)线性模型的参数估计(三)线性模型的应用(四)离散解释变量的设计向量构建方法 四、线性模型…

SpringAOP 常见应用场景

文章目录 SpringAOP1 概念2 常见应用场景3 AOP的几种通知类型分别有什么常见的应用场景4 AOP实现 性能监控4.1 首先,定义一个切面类,用于实现性能监控逻辑:4.2 定义自定义注解4.3 注解修饰监控的方法 5 AOP实现 API调用统计5.1 定义切面类&am…

深度图的方法实现加雾,Synscapes数据集以及D455相机拍摄为例

前言 在次之前,我们已经做了图像加雾的一些研究,这里我们将从深度图的方法实现加雾展开细讲 图像加雾算法的研究与应用_图像加雾 算法-CSDN博客 接下来将要介绍如何使用深度图像生成雾效图像的方法。利用Synscapes数据集,通过读取EXR格式的…

【实盘】第二十期:2024-06月~第一周

一、每周净值 01 CTA投资组合 CTA多品种全覆盖全天候策略2024年2月至2024年5月底实盘总收益12.753%,当前浮动净值为1.1407,当前平仓净值为1.12753。 月度最大本金回撤0.3%(资金曲线为平仓盈亏,总体回撤应加入浮动持仓的盈亏总体计算,实际当前净值见棕色…

各种空气能热泵安装图

空气能热泵安装图 循环式空气能热泵安装图 直热循环式空气能热泵安装图 泳池空气能热泵安装图 循环式水源热泵热安装系统原理图 直热循环式水源热泵安装系统图 空气水源热泵安装图

flutter as连接网易模拟器

网易模拟器下载 Mac 使用MuMu模拟器调试 Flutter开发 Android Studio 安装第三方模拟器—网易MuMu Mac 安卓Studio使用外部模拟器 Mac电脑:Android Studio 连接 MUMU 网易模拟器 Mac 上 Android Studio 链接网易 MuMu 模拟器调试 在 .zshrc 中设置 adb 二进制文…

重构某测试站点

一、计算校验值 校验值结果: 文件名称:培训用centos.rar,文件大小:1,335,759,953,MD5:534EC38CDA7DA2196C84AC8F6092514B,SHA1:FD35D86A27A007AE10872980C48653A110DF6067&#xf…

EverWeb 强大的零基础Mac网页设计制作软件

搜索Mac软件之家下载EverWeb 强大的零基础Mac网页设计制作软件 EverWeb 4.2是非专业网页设计师的绝佳网页制作工具,无需编码即可创建美观、响应迅速的网站。只需拖放自己的图像、文本和其他任何html元素到网页布局的任何位置。 EverWeb的功能特性: 下…

C++模板编程—学习C++类库的编程基础

课程总目录 文章目录 一、详解函数模板二、类模板三、类模板实践&#xff1a;实现向量容器vector四、理解容器空间配置器allocator的重要性 一、详解函数模板 模板的意义&#xff1a;对类型也可以进行参数化了 // 也可以用template<class T>&#xff0c;但class容易和类…

适用于 Windows 的 8 大数据恢复软件

数据恢复软件可帮助您恢复因意外删除或由于某些技术故障&#xff08;如硬盘损坏等&#xff09;而丢失的数据。这些工具可帮助您从硬盘驱动器 (HDD) 中高效地恢复丢失的数据&#xff0c;因为这些工具不支持从 SSD 恢复数据。重要的是要了解&#xff0c;您删除的数据不会被系统永…

NodeJs实现脚本:将xlxs文件输出到json文件中

文章目录 前期工作和依赖笔记功能代码输出 最近有一个功能&#xff0c;将json文件里的内容抽取到一个xlxs中&#xff0c;然后维护xlxs文件。当要更新json文件时&#xff0c;就更新xlxs的内容并把它传回json中。这个脚本主要使用NodeJS写。 以下是完成此功能时做的一些笔记。 …

【面试八股总结】内存页面置换算法

参考资料&#xff1a;小林coding、阿秀 缺页中断 在 CPU 里访问一条 Load M 指令&#xff0c;然后 CPU 会去找 M 所对应的页表项。如果该页表项的状态位是「有效的」&#xff0c;那 CPU 就可以直接去访问物理内存了&#xff0c;如果状态位是「无效的」&#xff0c;则 CPU 则会…

stanfordcorenlp+python做中文nlp任务,得到的结果中全是空字符串,而不是中文字符串

问题描述 代码&#xff1a; from stanfordcorenlp import StanfordCoreNLP import logging#中文中的应用&#xff0c;一定记得下载中文jar包&#xff0c;并标志lang‘zh’ nlp_zh StanfordCoreNLP(rD:\stanford-corenlp-full-2016-10-31, port8094, langzh,quietFalse,logg…

GiantPandaCV | 提升分类模型acc(一):BatchSizeLARS

本文来源公众号“GiantPandaCV”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;提升分类模型acc(一)&#xff1a;BatchSize&LARS 在使用大的bs训练情况下&#xff0c;会对精度有一定程度的损失&#xff0c;本文探讨了训练的b…

Java Web学习笔记24——Vue项目开发流程

import是引入文件。 export是将对象导出为模块。 new Vue({ router, router: h > h(App) }).$mount(#app) App.vue: vue的组成文件以.vue结尾&#xff0c;每个组件由三个部分组成&#xff1a;<template>、<script>、<style>。 <template><d…

i.MX8MP平台开发分享(RDC软件配置篇)

Uboot中已经将RDC的配置写入到了OCRAM中&#xff0c;NXP在ATF中预设了SIP服务&#xff0c;SIP服务下有厂商自定义的smc命令ID。例如下面的DDR、GPC、SRC和HAB的smc回调函数。 在SRC中断处理函数中&#xff0c;对于SRC_M4_START指令&#xff0c;先读取OCRAM中的配置&#xff0c;…

第一个小爬虫_爬取 股票数据

前言 爬取 雪球网的股票数据 [环境使用]&#xff1a;python 3.12 解释器pycharm 编辑器 【模块使用】&#xff1a;import requests -->数据请求模块 要安装 命令 pip install requestsimport csv -->将数据保存到CSV表格中import pandas -->也可以将数据保…

vue3+vite插件开发

插件开发目的:由于我司使用的前端技术栈为vue3tsvite2.Xaxios,在前端代码框架设计初期,做了把axios挂载到proxy对象上的操作,具体可见我的另一篇文章vue3TS自动化封装全局api_ts 封装腾讯位置api-CSDN博客 现在可以实现vue2的类似this.$api.xxx去调用接口,但是vue2源码使用的是…