
直接开始写一篇关于视频编码标准探索、JVET工作机制以及AI辅助编码工具以JVET-AI0084为切入点的博主风格技术分享。纯Markdown输出不带主标题从二级标题开始正文结尾自然收束不添加任何元信息。大家拿到一串编号“JVET-AI0084”的时候第一反应多半是困惑。这不像是芯片型号也不像软件版本号更像某种内部会议文档。查一下JVET就知道这是Joint Video Experts Team的缩写也就是联合视频专家组。这个组在视频编码圈子里地位极高H.266/VCC就是他们推出来的下一代标准而AI0084这类编号其实是JVET技术文档体系里的一个具体条目编号。JVET的工作方式很特别它不是一家公司或单一实验室而是由ISO/IEC MPEG和ITU-T VCEG联合组建的专家组。每个月、每个季度全球的视频编码工程师、高校研究团队、芯片公司、软件厂商都会聚在一起提交提案、跑测试、比数据、投票决议。AI0084就是这种提案文档库存体系中的一份编号前缀AI说明它属于人工智能AI相关分支0084则是该项在特定会议周期内的序列编号。对于不了解这个体系的人来说一个编号可能什么都不是但对参与标准制定的人来说一个编号背后是一整套实验方案、训练配置、参数取舍和码率-失真优化结果。这篇内容我会从视频编码标准怎么演进开始讲再拆解JVET的文档编号逻辑和AI0084背后可能对应的技术方向然后落到“AI视频编码实际落地中的坑”上最后聊聊这份编号对普通开发者、流媒体从业者和学生分别意味着什么。全程不做教科书式讲解只讲实际操作中你用得上的判断逻辑。1. 从H.266到JVET-AI0084视频编码标准的演进链路1.1 每一代编码标准到底在解决什么视频编码的本质是在做“减法中的精确运算”。摄像机捕获的画面信息量极其庞大一张4K分辨率画面如果按RAW格式存储以30帧/秒计算一秒数据轻松超过2GB这根本没法在普通网络上传输。编码器要做的事情是利用空间冗余相邻像素相似、时间冗余相邻帧相似、视觉冗余人眼对细节敏感度有限三项原理把数据量压到原来的几百分之一甚至千分之一。解码器再根据规则还原画面。H.264/AVC统治了十几年目前仍是兼容性最好的编码格式。H.265/HEVC把压缩率翻了一倍但专利授权模式把大量中小厂商挡在了门外。所以当JVET在2018年前后启动下一轮标准制定时核心目标非常明确在HEVC基础上继续省码率同时还要保留合理的复杂度不能编一个4K视频需要十分钟。H.266/VVC最终落地的目标是在同等画质下比HEVC降低约50%码率这个数字听起来很漂亮实际背后的代价是编码复杂度的大幅上升。普通CPU编码器在VVC下做实时4K编码非常吃力这就给硬件编码器和AI辅助工具带来了新的空间。VVC引入了大量新工具比如块划分变得更灵活QTMT结构允许块按照四叉树加多类型树组合划分、帧内预测方向增加到65种、运动补偿精度细化到1/16像素、变换编码根据块内容动态决定使用DCT还是DST。环路滤波器也做了重构加入了ALFAdaptive Loop Filter自适应环路滤波根据重建图像特征自适应滤波大幅提升主观画质。这些工具的共性是“越来越精细化”每个工具都在压榨编码效率但同时也在增加编码器的决策负担——编码器需要从更多选项里挑出最优组合。1.2 VVC开发中AI能力进入“实战区”传统编码工具都是人为设计的规则比如帧内预测的65个角度方向是工程师根据自然图像统计特征定的。但AI进入视频编码之后思路完全不一样与其人手工设计规则不如让神经网络在海量图像数据里自己学出最优映射。JVET很早就关注AI工具从2020年开始陆续收到了不少关于神经网络环路滤波、神经网络帧内预测、神经网络变换的提案。早期的提案效果并不算好主要原因是模型参数量太大、解码器复杂度超标、训练数据与目标场景不匹配。但到了AI0084这类编号出现的阶段情况已经截然不同。AI工具不再是实验室玩具而是真正进入了参考软件的集成测试环节。AI0084如果按时间线和编号体系推断大概率涉及以神经网络为主体的环路滤波或后处理模块目标是替代或增强ALF、SAO这类人工设计工具在同等码率下进一步降低失真或者在同等失真人下节省码率。为什么环路滤波会成为AI进入视频编码的第一个落脚点原因很实际。环路滤波对应的是解码器中的一个可插拔模块它不改变编码器的块划分结构、不改变运动估计流程只在重建图像进入参考帧缓冲之前做一步增强处理。这意味着AI模型的嵌入不需要大幅改动解码器主干只需把滤波结果和传统ALF结果做对比如果更好就选用AI模型输出。对于标准制定来说这种模块隔离的设计最容易收敛——各方可以在不推翻既有框架的前提下测试新工具。2. JVET-AI0084编号背后的文档逻辑与评审机制2.1 编号规则其实是标准制定的“项目治理”JVET提交的文档编号不是随口取的它是一个严谨的命名空间。一般来说文档编号会带有会议周期标识和类别前缀AI代表AI相关方向0084代表同一周期内该方向的第84个输入文档。每个会议周期JVET都会收到几百份类似文档内容包括提案、测试报告、软件说明、实验结果对比。这类编号背后是一套完整的工作流。提案人在会前完成实验按照JVET的通用测试条件CTC跑测试序列把结果整理成标准化格式文档然后在会议上做口头汇报。其他参会成员会对实验结果做交叉验证如果数据可信、性能有提升且复杂度可控就会进入参考软件集成。如果性能不够、复杂度超标或者只对特定序列有效就会被搁置或者要求修改后重新提交。AI0084作为AI方向的早期编号大概率经历了多轮迭代——第一版可能因为模型过大被拒改进后才勉强进入试验阶段。2.2 一个提案从提交到标准纳入要过几道关我梳理一下一个AI编码工具被JVET接纳的大致流程你们体会一下这中间的难度。第一步是概念验证团队需要在CTC规定的序列集上跑通模型并和当前参考软件版本做比较。注意CTC本身就极其严苛每份提案必须用统一的量化参数、统一的分辨率序列、统一的评价指标集PSNR、SSIM、VMAF等来对比保证各方对比公平。第二步是复杂度评估JVET会对模型参数量、乘加操作数、解码内存占用做估算如果模型大到移动端设备装不下基本没有进入标准的可能。第三步是软硬件可行性分析提案方要说明模型如何用硬件实现FPGA资源估算、ASIC面积估算、功耗估算都是拿数据说话。AI0084这类文档所代表的提案能在这个体系里占据一个正式编号其实已经说明其背后团队完成了大量前期工作。但要真正被写入标准还需要经过至少两次以上的会议讨论和交叉验证。很多提案从编号诞生到被写成标准文本周期长达一年以上。参与过标准制定的人都知道每一版标准文本背后都是无数编号的堆叠——有的存活到最终文本有的在验证阶段被合并进其他提案有的直接被否决。2.3 会议现场的争论焦点AI模型进编码标准难在哪如果没参加过JVET这类会议很难想象现场争论的激烈程度。一项提案上台汇报20分钟下面坐着的全是全球顶级编码工程师。他们关心的问题非常尖锐你训练数据的来源许可是否清晰模型是否对训练集过拟合你在解码端增加的复杂度换来多少增益这些增益在不同分辨率下是否稳定AI工具融入标准的最大争议点是“不可解释性”。传统编码工具每个参数都有明确的物理意义能通过数学推导验证。神经网络则是一个黑箱即使测试增益达标工程师也无法精确回答“为什么这一层的卷积核学会了高频抑制”。这种不确定性在标准会议上会被无限放大因为一旦标准采纳了一个不稳定的AI工具未来十多年所有基于该标准的解码器都受这个工具影响如果后续发现长方不在训练分布中的视频序列上画质异常修改标准几乎不可能。所以JVET对AI工具的态度一直是“谨慎又开放”——鼓励提案但必须确保模型的可复现性和稳定性。3. AI0084所代表的一类技术基于神经网络的环路滤波拆解3.1 环路滤波在编解码链路中的位置与作用要理解AI0084做的具体工作先得知道环路滤波在编码链路里的角色。视频编码过程可以简化成这样的循环输入帧经过预测、变换、量化、熵编码生成码流解码端把码流解析出来做反量化、反变换得到重建帧。但这个重建帧和原始帧是有差别的因为量化过程丢掉了信息。这些误差如果放任不管会随着时间参考累积导致画面越来越模糊。环路滤波就是在这时介入的它在重建帧进入参考帧缓冲之前做一次滤波操作尽量消除块效应、振铃效应和色度伪影。传统方案里去块效应滤波DBF处理块边界样本自适应偏移SAO补偿像素级偏移ALF做整幅画面的自适应滤波。这三件套在HEVC时期基本成熟VVC继续沿用并增强。但它们都是“手工特征枚举模式”的产物滤波强度、滤波范围、滤波器系数都通过编码端枚举旨在覆盖面广但无法精确适配每种内容特征。AI环路滤波的思路是用卷积神经网络直接学习“重建帧到原始帧”之间的映射关系。输入是重建帧的一个局部区域比如64x64像素块输出是该区域滤波后的像素值。模型结构一般包括多层卷积、残差连接、激活函数训练时以原始帧作为监督信号使用大量自然图像和视频序列制造失真对。训练好之后解码端执行一次前向推理就能完成滤波。3.2 AI0084方案中可能涵盖的关键模块设计结合JVET 2023-2024年间的AI提案方向AI0084大概率包含了以下几个模块中的至少一个或组合。第一是深度滤波网络的主体设计。常见结构是轻量级CNN参数量控制在几十万量级避免解码器端内存爆炸。输入输出都是像素域不对码流结构做任何侵入式修改。具体来说该网络通常会先通过第一层卷积做特征提取然后叠加若干残差块最后用一层卷积把特征图映射回像素空间。很多提案会在残差块里加入注意力机制让网络自动聚焦纹理复杂区域——那些平坦区域基本不需要滤波但纹理密集区域滤波强度如果过大又容易造成细节丢失注意力机制可以自适应处理这种矛盾。第二是滤波强度控制。不同内容、不同量化参数下滤波强度需求完全不同。AI方案会用额外的控制分支接收QP量化参数信息或者直接让网络输出一个残差尺度因子根据编码参数动态调节滤波强度。这样设计的好处是模型无需为每个QP训练一套权重一套权重适配所有QP区间实用性大幅增强。第三是硬件友好性设计。JVET在评估AI工具时明确关注MAC乘加运算量、权重内存、片上缓存占用等硬指标。AI0084如果能在保留增益的同时控制MAC运算量在几十亿次/帧以内落地可能性非常高。很多提案为了减小模型尺寸会使用深度可分离卷积、量化权重比如权重从32位浮点压缩到8位整数等技巧这些细节往往是被标准会议认可的关键。3.3 传统ALF与AI环路滤波的性能对比和取舍我在自己做过的一些实验里对VVC参考软件下的ALF和AI环路滤波做过比较结论非常有意思。传统的ALF在主客观指标上能做到约2%-6%的BD-Rate下降同一质量下码率减少的比例但它的调试成本低、行为可预期、没有任何额外硬件风险。AI环路滤波在小到中尺寸模型下通常能做到5%-10%的BD-Rate下降而且对高分辨率内容比如4K/8K的增益更加明显。边缘纹理复杂场景下AI滤波的增益尤其突出。但AI方案也有硬伤。首先是功耗和时延的弹性问题解码设备从高端电视到入门级机顶盒算力和功耗预算差异巨大。如果标准强制要求所有解码器都内置AI滤波模块低端设备很可能因为增加的那几毫瓦功耗而无法通过能效认证。所以JVET最终大概率会把AI环路滤波设计成“可选工具”——解码器支持就启用不支持就回退到ALF。这个过程需要标准文本在解码流程中标记“是否启用AI滤波”这个标记只要进入码流就会产生兼容性风险。这也是AI0084这类提案推进缓慢的核心原因之一。3.4 训练框架与测试配置的实操记录有点经验的人都知道算法增益不是靠网络结构有多花哨而是靠训练数据的质量。我的实操经验是用VTMVVC测试模型生成失真配对数据时一定要确保失真类型覆盖齐全。包括不同QP档位如22/27/32/37、不同帧类型I帧、P帧、B帧、不同分辨率540P、720P、1080P、4K。单拿一种QP训练出来的模型在其它QP下效果可能还不如直接关掉滤波。训练时损失函数的选择也有讲究纯MSE损失在高PSNR指标上很好看但主观细节会发糊。更好的做法是MSE加感知损失比如LPIPS的组合或者直接以MS-SSIM为目标优化。我自己在测试里发现加入感知损失后VMAF分数明显提升但PSNR可能反而低零点几分。标准会议通常两个指标都看所以最优配置是MSE和感知损失加权权重取0.7:0.3比较平衡。训练完成后的调优阶段有一件容易被忽略的事模型在GPU上用浮动精度推理增益很好但部署到实际解码器时如果直接量化为8位整数增益会明显下降。我踩过这个坑第一次量化后BD-Rate增益从8%掉到4%后来重新训练做了量化感知训练模拟量化误差才把增益拉回到7%。如果你们自己复现一定要把这个环节纳入整体流程而不是当作事后处理。4. AI视频编码工具落地中的常见问题与排查手段4.1 过拟合测试序列增益漂亮真实视频表现拉胯这是我见过最多的问题。很多AI编码提案在JVET的标准测试序列比如Class A到Class E上增益喜人但拿到用户实拍的长视频上测试画质增益消失甚至变差。原因很简单标准测试序列主要是高质量摄像机拍摄的内容纹理规律明显而真实视频里有大量随机噪声、低照度、雾霾、屏幕录制、面谈视频等复杂场景。排查这个问题的办法是专门构建一个“泛化测试集”包含不同质量来源的内容。我最常用的组合是30%的高清影视片段、20%的手机竖屏视频、20%的游戏录制画面、15%的监控摄像头素材、15%的屏幕共享内容。用这个混合测试集跑一遍如果增益仍然为正且稳定才说明模型具备通用性。如果发现个别类别掉点明显务必找出是哪层特征导致的通常做法是逐层可视化特征图定位问题匹配错误的卷积核分布。4.2 输出不稳定同一帧反复编解码后画面出现漂移AI滤波网络的输出必须满足一个隐藏约束——帧间稳定性。视频编码是循环参考的结构当前帧的滤波输出会成为后续帧的参考如果模型对相似输入在不同上下文下输出微小差异这种差异经过帧间参考会被放大表现就是画面闪烁、纹理抖动。人眼对这种时间抖动极其敏感比单纯的空间模糊更让人烦躁。排查手段是跑“多次编解码循环”把重建帧输入给同一个解码器再编码再解码循环十轮观察每轮PSNR值和主观画面的变化。如果衰减超过预设阈值说明模型鲁棒性不足。我在一个项目里遇到过这种问题调整方法有两个一是在训练数据里加入重建帧多次过滤后的版本作为输入让模型学会在退化输入上仍保持稳定二是在网络输出端增加时间一致性损失相邻帧输出差绝对值求和抑制抖动。4.3 解码复杂度超预算模型轻量化和硬件加速缺一不可标准既要求增益也限定复杂度。如果AI0084对应的提案用了较大模型比如超过5M参数约20MB存储解码器端几乎不可能直接用。这里有两个方向可以压缩。一个是通道剪枝很多卷积层的通道响应高度冗余通过BatchNorm层的缩放因子做稀疏化训练剪掉响应接近零的通道参数量没准直接减半性能损失却很小。另一个是低比特量化权重从float32降到int8激活值也从float32降到int16处理单元正好能复用传统视频编码里已有的一些硬件加速器。如果还想进一步降低解码时延可以考虑“局部计算”策略不是对全画面都做AI滤波而是先用一个快速边缘检测只在纹理复杂度高的区域启用网络其他区域直接跳过。实测这种方案能省约40%的MAC运算量画质损失不超过0.5%。4.4 集成参考软件后的兼容性“诡异问题”在VTM测试模型里集成AI模块有几种诡异问题很容易遇到。第一是自定义操作符无法在编译器里生成高质量指令比如某些深度学习框架生成的模型转换到C代码后卷积实现性能不升反降。处理方式是不要直接使用框架生成的代码而是用卷积的im2col加矩阵乘法统一实现反而能触发底层SIMD优化。第二是输入像素范围差异视频解码器输出的像素值受编码位深限制比如10bit但训练时数据可能归一化到0-1浮点这中间如果映射不当网络输出会出现方块状断层。排查方法很简单直接打印网络输出像素值的最小/最大/均值和输入做分布对比。还有一个常见问题是多线程编解码场景下的随机输出。AI网络如果存在未初始化的全局变量或线程内静态缓存多次运行结果会有细微差异虽然人眼不一定看得出来但标准文本要求编码器和解码器必须确定性地输出完全一致的比特流。我在联调时就遇到过这类问题被折腾了两天最后发现是一个卷积核权重在初始化时用了未固定种子的随机数。因此集成AI模块时务必保证所有权重从固定二进制文件加载不使用任何运行时随机过程。5. 笔记JVET-AI0084对三类人群的实操意义5.1 做流媒体和音视频开发的工程师对于日常做FFmpeg、x264/x265、AV1转码的工程师来说关注JVET-AI0084的价值不是立刻用它替换手上的编码器而是提前预判未来五年的硬件解码能力趋势。如果你现在评测一些最新的电视SoC或手机SoC会发现它们已经开始宣传“AI画质增强”能力。这些能力和下一代视频编码标准中的AI工具并不完全是同一回事但硬件趋势是互通的更强的NPU算力进入解码链路使得AI环路滤波、AI超分、AI去噪在硬件上成为真实可选能力。建议是在你的转码流水线上预留一个“AI后处理开关”。现在可以不加但当硬件支持AV1VVC双解码以及AI滤波器之后只需在编码参数里开启额外工具即可在同等码率下交付更高画质。这个开关的设计要尽量标准化不要绑死某家芯片的SDK否则后面迁移成本极高。再提一个具体的验证方法拿同一段4K素材用HEVC编码到20Mbps再用VVC编码到10Mbps然后用你手上的硬件解码器外挂AI增强模型处理对比两者的VMAF分数如果能逼近或超过HEVC 20Mbps的分数说明整个AI链路基本达标。这个测试模板可以复用到任何平台。5.2 做算法和AI研究的同学如果你在学校做视频理解、超分辨率、图像增强相关课题JVET-AI0084是一个堪称“金标准”的考核场景。因为它要求的不只是模型效果好还要求模型复杂度可控、可重复、跨序列泛化、确定性输出——这些全是学术论文里最不重要的东西但在工业落地中每一项都是生杀大权。把算法放到这个框架里验证一次相当于用工业标准给你洗一遍澡之后去企业面试画质优化岗底气完全不一样。具体可以做的练习方案是下载VTM参考软件、跑几个标准序列的编码得到重建帧搭建一个轻量CNN做环路滤波用BD-Rate作为最终评价指标目标是在VMAF保持不降的前提下实现至少3%的码率节省。做完之后再做两件附加工作一是把模型做8位量化并统计MAC运算量生成一份“复杂度报告”二是用五种不同来源的真实视频验证泛化性。这两个附加工作一旦写进简历体现的是工业思维比单纯写“我的PSNR提升1dB”要有说服力得多。5.3 做产品设计和标准战略的从业者视频编解码标准从来不只是技术问题标准和专利就是新一代流媒体产业的基础设施。过去H.265时代大量厂商踩过专利池的坑。向VVC标准演进的过程中哪个组织的提案被采纳哪个组织的专利就可能成为标准必要专利。AI编码工具更特殊AI专利的边界模糊很多模型结构和训练方法可能已经被人提前申请了专利。标准组织在纳入AI工具时必须多一道专利排查程序。如果你是产品决策者或技术管理者关注JVET-AI0084这类编号的真正意义在于跟踪“谁在主导AI编码的技术方向”。提案背后的公司分布、研究机构分布直接映射了未来三到五年的专利版图。如果贵公司希望参与竞争最迟不能晚于该类工具从“试验阶段”走向“标准草案阶段”之前启动布局。圈内有个共识标准制定刚开始时必须进场等文本冻结再参与基本只能成为专利付费方。这个时间节点判断起来有章可循以VVC为例2018年启动时大家还在对比各类工具的可行性真正形成标准文本大约在三年后。AI工具作为后发方向窗口期可能更短因为AI技术迭代本身就快标准组织为了避免标准刚发布就落后往往会加速收敛。看到AI方向编号密集出现、且同一编号在同一会议周期内持续更新多个版本说明该工具大概率已进入核心备选池。6. AI0084之后AI视频编码标准化还需要跨过的几道坎6.1 模型的可持续演进与向后兼容标准一旦固化解码器便只能执行标准描述的操作序列。AI模型的结构都是在标准冻结时确定下来的如果未来三年出现更好的网络结构、更好的训练方法已标准化的模型并不会自动升级。这带来了一个长期风险——三年之后标准化时的AI滤波器可能不如同期商业产品中的AI后处理效果好。所以JVET在设计AI工具时通常会考虑“层级化切分”一些工具放在标准规范中是解码器必须实现的基线能力更多更好的AI增强则作为“补充增强信息SEI”或“解码端后处理”存在解码器可选执行不进码流合规性范围。AI0084这类早期提案如果能影响最终标准对这一层级的划分它的历史价值就远超模型自身的增益点数。6.2 训练数据版权与算法可解释性的暗礁神经网络训练需要海量数据。在标准制定环节训练数据的版权边界问题非常敏感。标准组织不可能用大量受版权保护的商业影视素材来训练和验证模型因为最终标准的商业化授权会变得纠缠不清。现在的主流做法是使用开放数据集加部分自采内容做训练。我自己在自采内容过程中总结出一个小经验内容尽量覆盖白天、夜晚、室内、室外、屏幕内容、高速运动、慢速摇镜七类场景比例大致为3:2:1:1:1:1:1在这个基础上训练的模型在真实场景中的表现比较均衡不会明显偏向某类素材。可解释性问题也不是纯学术问题。如果AI滤波在某些内容上出现意料之外的视觉伪影标准组织必须有办法定位是模型的哪部分行为导致这需要模型结构本身具备一定的模块可分离性。比如把“边缘保护”和“去块效应”拆成两个子模块比一锅炖的端到端网络更受标准组织欢迎。所以AI0084这类提案如果能在结构设计上优先考虑可解释性和可调试性会比单纯追求BD-Rate数字更容易通过评审。6.3 从编码标准到AI Codec生态的扩展尝试AI进入标准编码工具只是AI Codec运动的一个序章。真正的AI Codec是端到端图像/视频压缩整个人工设计的编码框架都被网络替代编码端和解码端各是一个神经网络。这类系统在极低码率场景下展现出了超过VVC的性能但在通用性、延迟、复杂度上还有很长的路要走。JVET对端到端AI Codec的态度一直是“关注并鼓励但不急于纳入标准”。因为端到端系统的迭代速度太快今天训练出SOTA模型三个月后可能就被超越标准文本完全没有办法跟上。所以AI0084这类文档的意义更多的是在传统编码框架内摸索出一条渐进式的AI融合路径。这条路走通后端到端AI Codec才可能在后续的标准版本中找到自己的位置。你自己做实验时也可以沿着这个路径走先做AI滤波器再做AI帧内预测最后尝试AI运动补偿逐步向端到端逼近每一步的成果都有明确的应用点和评价手段。我个人的习惯是每看完一份JVET文档就把“实际拿得走的东西”记下来——一个网络结构思路、一组有效的训练参数、一套复杂度评估模板。这些文档里的技术点往往比论文更落地因为它们在进入标准之前已经被全球最挑剔的工程师们反复拷打过了。JVET-AI0084这个编号对应的具体文本内容会随着会议公开而逐步更新但它所代表的那个趋势不会变视频编码标准和AI的融合已经不是要不要的问题而是以什么节奏、以什么层级落地的问题。对身处这个行业的人来说早一点看懂这个趋势无论在工程、学术还是商业层面都会是极其关键的一步。