跳转至

DiT as Real-Time Rerenderer: Streaming Video Stylization with Autoregressive Diffusion Transformer

会议: ECCV2026
论文: ECCV 原文
领域: 视频生成
关键词: 视频风格化、自回归 DiT、实时流式生成、分布匹配蒸馏、KV cache

一句话总结

RTR-DiT 先自建一套文本/参考图配对的视频风格化数据微调出双向 DiT 教师,再用自强制(Self Forcing)与分布匹配蒸馏(DMD)把它蒸馏成 2 步因果自回归生成器,配合"参考保持"的 KV cache 更新策略,在单张 H20 上对任意长度视频做流式风格化,并支持运行中实时切换文本提示或参考图。

研究背景与动机

基于扩散模型的视频风格化已经研究了很多年,早期路线基本沿两条走:一类用 DDIM 反转把视频映射到隐空间再注入风格特征,另一类借 ControlNet 之类框架从场景里抽出结构和运动先验、在这些先验上做重新渲染。为了处理长视频,这些方法通常只风格化关键帧,再用帧传播策略铺满整段。问题是这两条路线都建在 LDM(U-Net)骨架上:帧与帧之间的一致性靠额外约束(光流、特征对应)硬拉,风格化只停留在局部纹理或几何图案的迁移;而"关键帧 + 传播"的流程天然是离线的,一段视频要跑几分钟,根本进不了实时场景。

DiT 出现后情况变了——生成质量和时序一致性都明显优于 LDM,已经有工作(如 StyleMaster)通过微调 DiT block 做风格化,也有 VACE 这类大一统视频编辑框架把风格化当成子任务。但 DiT block 里的 3D full attention 在时间维是双向的:第 n 帧的估计同时依赖过去帧和未来帧,意味着必须等整段视频就绪才能开始算。这与"流式、实时、任意长度"三个需求直接冲突。另一侧,加速方向的技术其实已经攒了不少——DMD 能把多步采样器蒸成一步或几步生成器,加上因果掩码就能得到自回归 DiT,Diffusion Forcing / Self Forcing 则用来压制长 rollout 的误差累积。只是这些技术大多是围绕视频生成验证的,把它们可靠地拼到长时流式的 video-to-video 迁移上仍不容易:在线推理时参考条件会随 KV cache 滚动被挤出,风格随之漂移。

本文的角度是把视频风格化显式重构成"带因果时间建模 + 高效推理的流式过程",并给这个过程配一套专门的条件保持机制。核心 idea:把预训练双向 DiT 先做成风格化教师、再蒸馏成少步因果自回归生成器以拿到实时性,同时用"参考 token 永久锚定在 KV cache 队首"的更新策略同时解决长视频漂移与在线换风格两件事。

方法详解

作者把这个过程称为 rerendering——编辑画面的外观与风格,但保留原场景的结构与固有属性。它包含两种模式:文本引导的 TV2V(Text-guided video-to-video)和参考图引导的 RV2V(Reference-guided video-to-video)。

整体框架

数据侧,作者先收集 5,000 段互联网视频(覆盖人物、动物、自然场景),用 Qwen3-VL 生成多条风格化文本提示,再用 Kling 生成对应的风格化视频,构成配对的训练数据。TV2V 直接把 Qwen3-VL 生成的提示当文本条件;RV2V 则从目标视频里随机取一帧当参考图,引导文本固定为"把视频风格迁移成与参考图一致"。

模型侧,主干是 DiT 架构的 Wan。训练时源视频 \(V_s\) 与目标视频 \(V_t\) 分别过 VAE,得到 N 帧隐变量 \(x_{1:N}\)\(z^0_{1:N}\);参考图(如果有)也过 VAE 得到 \(c_{\text{ref}}\),文本经文本编码器得到 \(c_{\text{text}}\)。干净的 \(z_0\) 按连续时间步 \(t\) 加噪得 \(z_t\),与源视频隐变量沿通道维拼接后 patchify 成 token 序列;参考隐变量经一个轻量 adapter 处理后按时间维前置到序列最前面。这些 token 一起进 DiT block,在 3D 注意力里施加时间因果掩码,从而获得逐帧自回归预测的能力。

训练分三段推进:先微调双向教师 → 用固定时间步序列初始化少步学生 → 后训练蒸馏加对抗训练。推理阶段用滚动 KV cache 做流式生成,并对参考 token 做锚定;换条件时重置 cross attention cache 完成在线风格切换。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["源视频 · 目标视频 · 参考图<br/>VAE 编码"] --> B["源视频通道拼接的重渲染条件"]
    B --> C["因果 3D 注意力的流式自回归"]
    C --> D["自强制 + DMD + 对抗的少步后训练"]
    D --> E["参考保持的 KV cache<br/>与实时风格切换"]
    E --> F["实时风格化视频"]

关键设计

1. 源视频通道拼接的重渲染条件:把"换外观"和"保结构"拆成两个互补输入

视频风格化的核心难点是既要不丢原内容、又要换掉风格。如果只给模型文本或参考图条件,它没有拿到原视频空间布局与运动模式的显式通路,长视频里很容易变成"重新生成一段内容相似的视频",而不是"在原视频上换皮"。这里的做法是把加噪目标隐变量 \(z_t\) 与源视频隐变量 \(x\) 沿通道维拼接后再 patchify:源隐变量编码了原视频的布局与运动线索,等于给每个待去噪 token 直接挂上它对应的源内容,让风格迁移变成一个受结构约束的去噪问题。注意这一步不改变 token 数量、也不改注意力结构,因此不引入额外开销。

风格条件分两路注入,且共用同一套 token 布局:文本经文本编码器(T5)得到 \(c_{\text{text}}\),走 cross attention 注入;参考图的 VAE 隐变量 \(c_{\text{ref}}\) 经轻量 adapter 后按时间维前置到 token 序列(相当于在第一帧之前多出一帧)。这样参考风格与源视频落在同一个时空注意力场里对齐,模型可以在场景与物体这一语义层面迁移风格,而不是只匹配局部纹理;条件记法上 TV2V 用 \(c = \{\varnothing, c_{\text{text}}\}\)、RV2V 用 \(c = \{c_{\text{ref}}, c_{\text{text}}\}\),两种模式结构相同,所以可以直接混合训练。

2. 因果 3D 注意力的流式自回归:用固定少步时间表替换密集去噪

教师的每个 block 用 full 3D 时空注意力、时间维双向建模,这一条直接堵死了流式编辑——训练时就得看到未来帧。作者的改法是在 3D 注意力上加时间因果掩码,让加噪隐帧 \(z_t^n\) 的 token 只能注意到当前帧与历史帧 \(\{z_t^1, \dots, z_t^n\}\)

\[ \text{Attn}(Q,K,V) = \mathrm{softmax}\!\left(\frac{QK^\top}{\sqrt{d}} + M\right)V,\qquad M^{ij}=\begin{cases}0 & \lfloor j/k\rfloor \le \lfloor i/k\rfloor\\ -\infty & \text{otherwise}\end{cases} \]

其中 \(d\) 是注意力头维度、\(k\) 是每个隐帧的 token 数,\(\lfloor \cdot \rfloor\) 的整数比较保证同一帧内的 token 互相可见、跨帧只允许从过去看向现在(⚠️ 缓存中该式 OCR 残缺,此处按因果掩码的标准形式补全,以原文为准)。同时去噪不再在整条时间轴上密集迭代,而是沿一个固定时间步序列 \(\{s_1, \dots, s_K\}\) 走,得到少步自回归生成器 \(G_\phi\);正文实验取 \(K=2\),是在生成质量与推理速度之间取得的最佳折中。

这两个改动分别对应"能流式"和"能实时":因果掩码把每帧的可见范围限制成历史,前向即可逐帧出图、无需等待后续帧;固定少步序列则把每帧的模型前向从几十次压到 2 次。代价同样直接——因果化且少步化之后模型质量会明显塌陷,这必须由后续的后训练补回来。

3. 自强制 + DMD + 对抗的少步后训练:把因果少步模型拉回教师水平

因果化 + 少步化让指标掉得很厉害(TV2V 上 AQ 从 0.6514 掉到 0.5446、IQ 从 0.7406 掉到 0.6380),而且还有一层更隐蔽的落差:训练时每帧以真值历史为条件,推理时却只能以模型自己生成的历史为条件,曝光偏差会在长 rollout 中不断累积。作者用三件事一起解决。其一是 Self Forcing,让训练时每帧以模型自己 rollout 出来的历史帧为条件,于是条件生成分布按帧拆成 \(p_\phi(\mathbf{z}_0^{1:N}\mid c)=\prod_{n=1}^{N} p_\phi(\hat{\mathbf{z}}_0^{n}\mid \hat{\mathbf{z}}_0^{<n}, c)\),训练与推理的条件来源对齐。其二是 DMD,把多步双向教师蒸成少步 \(G_\phi\):用教师权重初始化两个 score 网络——冻结的 \(N_{\text{data}}\) 估真实数据分布分数、可训练的 \(N_{\text{gen}}\) 估生成分布分数,最小化两者诱导分布之间的反向 KL,其梯度可写成两个 score 之差乘上游导数:

\[ \nabla_\phi \mathcal{L}_{\text{DMD}} = \mathbb{E}\left[\Big(S_{\text{data}}\big(F(G_\phi(\mathbf{z}_t,\mathbf{x},c),t),t\big) - S_{\text{gen}}\big(F(G_\phi(\mathbf{z}_t,\mathbf{x},c),t),t\big)\Big)\frac{dG}{d\phi}\right] \]

其中 \(F\) 是前向加噪过程。每更新一次 \(G_\phi\)\(N_{\text{gen}}\) 要更新 5 次以追上当前生成分布。其三是对抗后训练:直接在 \(N_{\text{gen}}\) 上挂一个分类分支当判别器 \(D\),用标准 GAN 目标(真样本 \(\log D\)、生成样本 \(-\log D\))继续提感知质量。

三者的分工很明确:Self Forcing 修训练-推理落差,DMD 提供分布级的监督信号(比逐样本回归更契合少步生成),对抗项补感知质量。合起来的效果是 2 步因果模型在多项指标上追平甚至反超耗时 1.43 分钟的双向教师,而推理时间保持在 0.12 分钟这一档。

4. 参考保持的 KV cache 更新与实时风格切换:让参考 token 永远留在队首

长视频靠滚动 KV cache 实现:对 3D 注意力和 cross attention 各初始化一个定长 cache,新生成的帧追加进去,满了就淘汰最老的帧。这对 TV2V 尚可,但 RV2V 会出事——参考图本来前置在序列最前面,cache 一填满它就被挤出去,之后所有帧再也看不到参考风格,画面逐渐退化、风格明显漂移。作者的对策是参考保持(reference-preserving)更新:cache 填满后把参考图 token 永久锚定在队首,其余位置继续随新帧向前滚动。参考从"序列里的一个位置"变成"cache 里的常驻槽位",于是无论视频多长,每一帧都还能 attend 到参考图。

这套机制顺带解决了在线换风格。当用户中途给出新的文本提示或新的参考图,cross attention 的 KV cache 被重新初始化(丢掉旧文本条件),而 3D 注意力的 cache 保留最近一帧作为衔接,让新旧风格之间的过渡保持平滑、不至于闪一下;如果新条件本身是参考图,同样锚定到队首。之所以要保留最近一帧而不是整个清空,是因为清空等于让模型在没有任何历史的情况下"重新起头",切换点会硬断;留一帧作为条件,等价于把切换点变成一个软过渡。

损失函数 / 训练策略

三段式训练。① 在自建风格化数据上微调双向教师,10,000 步,用 flow matching 目标;② 用固定时间步序列 \(\{s_1,\dots,s_K\}\) 初始化少步学生,训 10,000 步拿到一个强初始化;③ 后训练蒸馏(Self Forcing + DMD + 对抗),5,000 步。所有实验取 \(K=2\)。训练时 TV2V 与 RV2V 样本混合。

教师的 flow matching 目标与加噪形式为

\[ \mathcal{L}_{\text{FM}} = \mathbb{E}_{\mathbf{z}, c, t}\big\| v_\theta(\mathbf{z}_t, \mathbf{c}, t) - (\mathbf{z}_1 - \mathbf{z}_0)\big\|^2,\qquad \mathbf{z}_t = (1-t)\,\mathbf{z}_0 + t\,\mathbf{z}_1,\quad t \sim \mathcal{U}(0,1) \]

\(\mathbf{z}_0\) 是数据编码出的干净隐变量,\(\mathbf{z}_1 \sim \mathcal{N}(0, I)\) 为标准高斯噪声,\(v_\theta\) 是预测的速度场。对抗项则取标准形式 \(\mathcal{L}_{\text{GAN}} = \mathbb{E}[\log D(\mathbf{z}_0, \mathbf{x}, c)] + \mathbb{E}[-\log D(F(G_\phi(\mathbf{z}_t, \mathbf{x}, c), t), \mathbf{x}, c)]\)。⚠️ 缓存中公式 (1)(2) 的 OCR 残缺(式 2 缺失 \(\mathbf{z}_0\) 项),此处按 flow matching 的标准形式补全,以原文为准。

实验关键数据

主实验

评测集从 Pexels 收集 50 段视频。TV2V 准备 10 个多样化风格提示(如水墨、Minecraft),随机配对文本与视频;RV2V 取每段视频首帧、用 Kling 做随机风格变换得到参考图。所有视频统一为 5 秒、832×640、24 fps;除商用模型外均在单张 H20 上测试。指标包括 CLIP-T(文-视频相似度)、CLIP-F(帧内相似度,衡量时序一致性)、VBench 的 AestheticQuality(AQ)与 ImagingQuality(IQ)、CSD-Score(参考图与视频帧的风格相似度),以及每段视频的生成时间。

文本引导(TV2V)对比:

方法 CLIP-T ↑ CLIP-F ↑ AQ ↑ IQ ↑ 时间 (min) ↓
Rerender-A-Video 0.2272 0.9883 0.5730 0.7012 4.5
FRESCO 0.1970 0.9907 0.6060 0.6834 7.3
TokenWarping 0.2122 0.9857 0.6093 0.7324 3.2
RTR-DiT 0.2585 0.9914 0.6302 0.7279 0.12

参考图引导(RV2V,CSD-Score 取代 CLIP-T):

方法 CSD-Score ↑ CLIP-F ↑ AQ ↑ IQ ↑ 时间 (min) ↓
VACE 0.4046 0.9905 0.6012 0.7165 27.6
StyleMaster 0.4275 0.9892 0.6536 0.7247 28.5
Gen-4 Aleph(商用) 0.8312 0.9925 0.6336 0.7378 3.5
RTR-DiT 0.7958 0.9909 0.6714 0.7321 0.12

需要说明时间口径:0.12 min ≈ 7.2 秒,是按 5 秒片段计的总生成时间;折算到 120 帧约 60 ms/帧(约 16 fps),比次快的 TokenWarping(3.2 min)快约 27 倍。因此论文所称"实时"更多是指流式逐帧低延迟这一部署形态(配合滚动 cache 无需等待后续帧),严格意义上 5 秒片段端到端 7.2 秒并不是快于实时的播放速度;表中未给出单帧延迟,此处为按帧数折算的估计(⚠️ 以原文为准)。

消融实验

后训练与因果化的影响(同一评测集,上为 TV2V、下为 RV2V):

训练阶段 CLIP-T / CSD ↑ CLIP-F ↑ AQ ↑ IQ ↑ 时间 (min) ↓
双向教师(TV2V) 0.2463 0.9931 0.6514 0.7406 1.43
因果模型(无后训练,TV2V) 0.2284 0.9948 0.5446 0.6380 0.12
RTR-DiT(后训练后,TV2V) 0.2585 0.9914 0.6302 0.7279 0.12
双向教师(RV2V) 0.8050 0.9930 0.6583 0.7144 1.43
因果模型(无后训练,RV2V) 0.6002 0.9956 0.5897 0.6021 0.12
RTR-DiT(后训练后,RV2V) 0.7958 0.9909 0.6714 0.7321 0.12

参考保持(RP)KV cache 策略的效果只给了定性对比:不做锚定时,随着推理推进生成的帧逐渐退化、偏离参考图风格;锚定后长视频风格保持稳定(约 1 分钟量级的真实场景长视频)。⚠️ 该策略没有对应定量指标,是本篇消融里最薄弱的一环。

关键发现

  • 后训练是因果化的必要条件,而不是锦上添花:因果模型去掉后训练后 AQ 掉 0.1069(0.6514 → 0.5446)、IQ 掉 0.1026(0.7406 → 0.6380),RV2V 的 CSD-Score 掉 0.2050(0.8050 → 0.6002),说明"因果掩码 + 固定少步"本身会显著损伤质量;补上 Self Forcing + DMD + 对抗后,指标不但回到教师水平,还在 CLIP-T(0.2585 vs 0.2463)、AQ(RV2V 0.6714 vs 0.6583)等项上反超教师。
  • CLIP-F 与质量指标存在反向关系:因果模型(含未后训练)的 CLIP-F 反而最高(TV2V 0.9948、RV2V 0.9956),高于双向教师。CLIP-F 衡量帧内相似度,画面越糊、越"平"它越高,所以这一项不能单独用来证明时序一致性,需与 AQ/IQ 和定性结果一起看。
  • 速度是量级差距而非百分比差距:TV2V 三种 LDM/传播类基线要 3.2–7.3 分钟,RV2V 的 VACE/StyleMaster 要 27.6/28.5 分钟,RTR-DiT 统一 0.12 分钟;商用 Gen-4 Aleph 表内 3.5 分钟,但论文指出实际使用还要排队等待。
  • 风格保真度上仍落后商用模型:RV2V 的 CSD-Score 0.7958 明显低于 Gen-4 Aleph 的 0.8312,AQ(0.6714 vs 0.6336)与 IQ(0.7321 vs 0.7378)互有胜负。论文的定位是"开源方法中最好、与商用模型可比",而不是全面超越。
  • 用户研究支持同一结论:12 名被试、16 组随机对比(每个设置 8 组),在条件/风格对齐、视觉质量、整体偏好三项上取平均排名(越低越好):
设置 方法 对齐 ↓ 质量 ↓ 整体 ↓
TV2V Rerender-A-Video / FRESCO / TokenWarping 2.78 / 3.25 / 2.83 3.05 / 2.48 / 3.15 2.91 / 2.74 / 3.10
TV2V RTR-DiT 1.14 1.32 1.25
RV2V VACE / StyleMaster / Gen-4 Aleph 3.88 / 3.07 / 1.76 3.20 / 3.58 / 1.60 3.48 / 3.45 / 1.64
RV2V RTR-DiT 1.29 1.61 1.44

TV2V 三项全部第一;RV2V 上对齐与整体偏好第一,视觉质量 1.61 与 Gen-4 Aleph 的 1.60 基本持平——即"在实时推理条件下达到商用模型的观感水平"。

亮点与洞察

  • 把"参考"从序列位置提升为 cache 常驻槽位:滚动 KV cache 原本对所有 token 一视同仁地按时间淘汰,但条件 token 失效的代价远大于历史帧失效——一个参考图被挤出去,后面所有帧就永久失去了风格锚点。把参考锚在队首是一个改动极小、收益很大的设计,这个思路可以直接迁移到任何"长流式 + 有持久条件"的任务(如流式音频驱动、长视频里的身份保持、流式 agent 的系统提示保持)。
  • 换条件时保留最近一帧做软过渡:风格切换最容易出的问题是硬断和闪烁。清空全部 cache 等于让模型重开一段视频,而保留最近一帧相当于给新旧风格之间留了一个条件化的过渡点。这是很实用的工程 trick,代价几乎为零。
  • 三段式训练的分工很干净:双向教师负责质量上限,固定少步初始化负责给因果学生一个好起点,Self Forcing + DMD + 对抗负责把起点拉回上限。消融(Tab. 2)恰好证明了这三段各自不可省——尤其是"因果无后训练"这一行,说明光有因果掩码拿不到可用质量。
  • 用源视频通道拼接代替结构控制网络:ControlNet 类方法需要额外分支和额外前向,而这里只是沿通道维拼一个源隐变量,不改 token 数、不改注意力、不加推理开销,却拿到了结构保持。这种"零结构成本的条件注入"值得在其他 video-to-video 任务里复用。
  • 文本与参考图共用一个 token 布局:把参考图当作一段额外的隐帧前置,使 TV2V 与 RV2V 在结构上完全同构,于是可以混合训练、也能在同一套 KV cache 机制下互相切换。这是"多条件统一表示"的一个好例子。

局限与展望

  • 作者没有给出 RP KV cache 策略的定量消融,只有定性图(Fig. 6b),无法判断它相对朴素滚动的具体增益幅度;这恰好是本文的核心贡献之一,缺定量支撑比较可惜。
  • 评测规模偏小:50 段视频、TV2V 仅 10 条提示、RV2V 的参考图是从目标视频首帧经 Kling 变换得到的(用一种模型生成的风格当参考、又用同类风格做评测,存在与训练数据同源的风险)。RV2V 的配对方式虽然简化了标准化比较,但也弱化了"跨域参考图"这一真实使用场景的考核。
  • "实时"的证据链不够完整:正文只报每段 5 秒视频的总耗时(0.12 min),没有给单帧延迟、cache 容量、显存占用或吞吐;而真实应用中消费者更关心的是首帧延迟与稳定帧率。按 120 帧折算约 60 ms/帧(约 16 fps),距离 24 fps 的原生帧率仍有差距,⚠️ 该折算未经原文确认。
  • 训练数据依赖 Kling 等商用模型生成目标视频,风格分布被上游模型的能力与偏好限制;自建数据的规模(5,000 段源视频)相对视频生成领域的常见规模也偏小。
  • 可改进方向:① 给 RP cache 补一个定量消融(例如固定 cache 长度、比较锚定/不锚定的 CSD-Score 随帧号的变化曲线);② 报告单帧延迟与首帧延迟,并尝试把推理压到 24 fps 以上;③ 把锚定机制从"参考图"推广到多参考(如多张风格图、风格插值),支持风格强度的连续调节;④ 目前换条件需要重置 cross attention cache,可以研究是否可以做到更细粒度、逐区域的局部风格切换。

相关工作与启发

  • vs Rerender-A-Video / FRESCO / TokenWarping(LDM 传播类):它们风格化关键帧再用光流或 token 变形把结果传播到其余帧,因此必须离线处理一整段视频(3.2–7.3 min),且 CLIP-T/AQ 都明显低于本文。本文用因果自回归逐帧"重渲染",把条件保持交给 KV cache 而不是传播算法,这是"实时"与"质量"能同时拿到的根本原因。代价是本文强依赖一个已在大规模视频上预训练过的 DiT 主干,而传播类方法可以挂在现成的图像风格化模型上、零训练使用。
  • vs VACE / StyleMaster(DiT 编辑类):它们同样是 DiT 架构,但沿用双向 3D 注意力,长视频只能离线跑(27.6/28.5 min),RV2V 上 VACE 甚至只调了亮度、抓不住参考风格(CSD 0.4046)。本文的关键差别在于因果化 + 少步蒸馏 + 锚定 cache 这三件套,它们共同把"离线、高质"换成了"流式、近实时、质量略降"。
  • vs Gen-4 Aleph(商用):CSD-Score(0.8312 vs 0.7958)上商用模型更强,说明参考风格保真度还有提升空间;但本文的 AQ 更高、且没有排队等待。一个可借鉴的方向是:把本文的锚定 cache 机制和商用模型更强的风格编码能力结合,或反过来用本文的流式框架去蒸馏更强的教师。
  • vs Self Forcing / DMD(自回归视频生成):这两者是为生成设计的,本文把 Self Forcing 用来关掉"以真值历史为条件"的训练-推理落差、把 DMD 用来压到 2 步,并额外加了对抗项,是把已有加速技术迁移到 video-to-video 的一个较完整范例。启发是:任何"要实时的条件生成任务"都可以复用这套 教师微调 → 少步初始化 → Self Forcing + DMD + 对抗 的三段式配方,真正要自己设计的是条件如何在流式状态里保持(本文给出了答:锚定)。

评分

  • 新颖性: ⭐⭐⭐⭐ 首个基于 DiT 的实时视频风格化框架;但因果掩码、Self Forcing、DMD、滚动 KV cache 都是已有组件,本文的新意主要在系统级组合与参考保持的 cache 策略。
  • 实验充分度: ⭐⭐⭐ 主实验 + 三阶段消融 + 用户研究齐全,但核心的 RP cache 策略只有定性对比;评测集仅 50 段视频、TV2V 只用了 10 条提示。
  • 写作质量: ⭐⭐⭐⭐ 结构清楚、动机链条完整;不足在于部分指标(AQ/IQ/CSD)未在正文定义、时间口径与"实时"的说法容易被误读。
  • 价值: ⭐⭐⭐⭐ 长视频实时风格化 + 在线切换风格对 VR/AR、直播、数字内容创作有直接价值,且已落地成手机前端 + 服务端的实际应用。