传统 reaction 会把原片画面压进自己的视频里再发出去。这带来两个问题。
你在重新分发他人的内容。很多平台本身也不允许纯搬运。
二次压制之后画面糊一层,还要受平台码率和时长的限制。
一条 reaction 里,真正属于你的只有两部分,荧火只保留和分享这两部分。
你的声音,你的创作。分享它没有任何问题。
一串时间戳:第 3 秒暂停,第 15 秒跳到 40 秒。只有「什么时候做了什么」,没有原片的任何内容。
原片由观众自行打开。荧火只在观众的浏览器里,照着你的日志去控制那个播放器:你暂停的地方它也暂停,你快进的地方它也快进,同时放你的解说。观众看到的画面,从头到尾来自他自己合法打开的来源。
因为荧火没有复制、存储或者传输过原片的任何一帧画面、一秒音轨。你分享的内容里,只有你的声音和一串数字。这与把原片剪进视频再发布的做法性质不同。原片的访问,发生在观众和原平台之间,荧火不在这条链路上。
一群朋友各自在家,用自己的正版看同一部电影。你打个电话过去喊「三、二、一,一起按播放」,然后大家一边看一边听你吐槽。荧火做的就是这件事:把大家的播放节奏对齐,把你的解说送到每个人耳朵里。电影本身,每个人都是用自己的渠道在看。
| 原片的画面或音轨 | 从不接触 |
|---|---|
| 你已发布的 reaction 视频链接 | 存,用于搜索和复现 |
| 操作日志(约 3 KB 的时间戳) | 存 |
| 解说音频文件 | 不存。它在你自己发布的那个视频里,或者在你导出的 .reaction 文件里 |
观众拿到的形式不一样,底下是同一件事:日志 + 他自己的原片。
reactioner 把 reaction 当普通视频发在 bilibili 或 YouTube。观众一个标签开原片,一个标签开这条 reaction,荧火把两边对齐——解说声来自那条已发布的视频。如果 reactioner 还把视频链接和日志登记到了荧火,观众搜到后点「一键观看」,这两个标签就由扩展自动配好,不用手动开。两个视频始终由观众自己合法打开。
.reaction 文件reactioner 把解说音频和日志打成一个 .reaction 文件,直接发给对方,不经过我们的服务器。观众用扩展载入这个文件,配上自己打开的原片复现。
荧火记的是操作发生的精确时刻,复现时按这些时刻驱动播放器。正常网络下误差在零点几秒。不同平台快进之后的缓冲速度差别不小,所以「复现」里留了一个 offset,观众随时可以往前往后按秒微调(步进 0.5 秒)。
日志里带着原片的地址,扩展会直接把那一页打开。要付费或者要登录的内容还是得他自己有权限,这一点我们绕不过去,也不打算绕。
日志里是一串秒数和几个动作名,没有画面、没有声音、没有字幕、没有剧情描述。它描述的是你的观看行为,不是那部片子。
那条 reaction 就复现不了了。这是这套做法必然的代价:我们不留副本,所以也补不上。
你打开原片这件事本来就发生在你和那个平台之间,跟平时没区别。荧火不代理、不转发这条流量。详见 隐私政策。
录一段三分钟的,比看十遍说明管用。