【ArchSummit 】会议即将开幕,一起来看架构师在AI时代的“生存法则”总结! 了解详情
写点什么

流量超过谷歌,TikTok 在扩张过程中被质疑“偷窃”OBS 代码

  • 2021-12-23
  • 本文字数:2430 字

    阅读完需:约 8 分钟

流量超过谷歌,TikTok在扩张过程中被质疑“偷窃”OBS代码

开源 GPL 协议的事儿,能叫“偷”吗?


12 月 20 日,Cloudflare 发布了 2021 年互联网流量报告。根据 Cloudflare 的数据,TikTok.com 已超过 Google.com(包括地图、翻译、照片、航班、图书和新闻等),成为 2021 年最受欢迎域名的 Top 1。有媒体指出,TikTok 是前十名中唯一的非美国平台,这可能是时代在发生改变的一个重要标志。


TikTok 显然也在不断扩张版图,虽然目前主要是移动端应用,但据 TechCrunch 在 12 月 16 日的报道,TikTok 已经悄悄在少部分用户群体中测试 Windows 版桌面软件 Live Studio。


只不过 Live Studio 产品马上被网友发现使用了免费直播软件 Open Broadcaster Software (OBS) 中的代码,但是并没有遵守 OBS 的开源许可。有人甚至认为 TikTok 相当于直接照搬了 OBS、只是套上了自己的用户界面外壳。OBS 方面也证实了 Live Studio 确实使用了他们的开源代码,所以有些网友反应非常激烈,认为 TikTok 的行为类似于“偷窃”。


TikTok 的扩张步伐


根据最近的报道,TikTok 已经开始测试 Windows 版桌面软件,名为 TikTok Live Studio,这标志着 TikTok 向桌面战场的正式进军。


对于一些视频创作者们来说,桌面流媒体软件必不可少,毕竟虽然手机端的游戏直播观众确实不少,但桌面端的观看体验一般更好些。也许 Live Studio 的推出能帮助 TikTok 用户逐渐养成在电脑上刷视频的习惯。



TikTok Live Studio


下载这款软件之后,用户可以直接使用自己的 TikTok 账户完成登录并通过 TikTok Live 完成流媒体直播。在程序中,用户不仅可以通过聊天功能与观众交流,还可以从桌面端、手机端甚至游戏主机端传输流媒体内容。TikTok 在采访中表示,这款程序目前正以测试形式向少数西方市场的几千名用户限量开放。


在此之前,创作者们就在使用各类 TikTok 直播工具获利并扩大自己的粉丝影响力,包括接收提示、安排活动、使用实时问答工具、与其他用户一起直播、过滤某些关键字并指定直播间房管等。目前,TikTok Live Studio 已经能支持用户启用打赏和评论功能,并设置关键字过滤器;但分配房管和安排直播日程等其他直播功能尚未出现,也许会在更成熟的后续版本中与用户见面。



Live Studio 提供风景和人像等场景选项。支持源包括游戏画面捕捉、手机画面捕捉、视频捕捉、程序捕捉以及部分文本 / 图像。不支持以浏览器作为画面源、也无法为流内警报设置提示。用户仅可使用库存内表情符号。

— Zach Bussey (@zachbussey) 2021 年 12 月 16 日


在海外,TikTok 开放的这项功能有望将更多优秀创作者留在自家阵营之内,用不着再跑到 Twitch 或者 YouTube Gaming 上放送直播内容。从 TikTok 的宣传图来看,公司似乎主要想迎合那些喜欢看主播玩游戏的群体。不过就测试情况来看,TikTok Live Studio 在功能完备性上并不及 OBS 或 Streamlabs 等成熟的直播软件。例如我们虽然能够将游戏主机直接接入 TikTok Live Studio,但无法以浏览器窗口作为画面源,也不能为流内警报设置提示或新的关注。


Live Studio 涉嫌违反 OBS 的许可


作为 TikTok 的 Windows 版全新直播软件,Live Studio 引起了广泛关注,不过仅一天时间,事情的发展就有一些不对劲了。



据称 Live Studio 使用了免费直播软件 Open Broadcaster Software (OBS) 中的代码。其实只要符合许可协议,这种拿来主义并没什么大问题,毕竟 OBS 本身是个开源项目。但根据相关说法,TikTok 并未遵守 OBS 的许可要求。




在某用户发布了疑似 Live Studio 代码的截屏之后,Twitter 上很快爆发了讨论。最初发布截屏的这位程序员表示,该软件属于“OBS 的非法分支”,并声称 TikTok 相当于直接照搬了 OBS、只是套上了自己的用户界面外壳。


另一位用户也指出,如果 TikTOk 确实使用了 OBS 代码,那么 Live Studio 平台需要根据 GNU 通用公共许可证(GPL)第 2 版的要求公开发布源代码。如果未公开,则 OBS 有权对 Live Studio 平台采取法律行动。



OBS 业务专员 Ben Torell 后来回复了这条推文,但表示 OBS 希望以开放的态度与 TikTok 合作:“我们承诺将认真处理有违 GPL 的行为。只要 TikTok/ByteDance 遵守许可要求,我们就乐于同对方建立友好的工作关系。”同时也明确地表示,反编译证明 TikTok 在实际构建中使用了 OBS 代码实例,比如游戏捕获。




GPL 许可协议的主旨是说,如果你的软件使用了受 GPL 保护的代码,那么你的软件源代码也要公开出来。不同的开发者对 GPL 条款的诠释有所偏重,但不管怎样,遵循 GPL 协议是要付出一定代价的。


有不少网友评论此事时认为“TikTok 在偷窃 OBS 的代码”。有些人对使用“剽窃代码”和“窃贼”这样的字眼来形容违反 GPL 协议的行为有些异议,不过事实就是如此:源代码出现在 TikTok 的产品里已成事实,但 TikTok 并没有为此付出任何代价。目前为止,TikTok 没有给出相应回应。


很多开发者(包括企业高层如 CEO/CTO)对使用受 GPL 保护的代码所产生的后果装作不在意。他们从对自己有利的角度来解释 GPL 条款:


  • “使用 GPL 代码没有任何问题,只要我们把改动的代码也贡献出来。”

  • “我们只使用了少量受 GPL 保护的代码,所以我们有权使用它们。”

  • “我们通过其它方式回报社区,这样就平衡了。”


以上这些说法,包括其它很多对 GPL 的误读,都不符合 GPL 的协议精神。


遵循 GPL 协议的所要承担的义务是显而易见的,GPL 的主旨很容易理解:如果你在自己的软件里使用了受 GPL 保护的代码,那么你也要公开自己的代码。在遵循 GPL 协议的前提下,你要把源代码提供给那些安装了你的软件的人。公开你的代码,这就是遵循 GPL 协议需要付出的代价。


大部分开发者认为为 GPL 付出的代价是完全合乎情理的,不过有些人则无法接受。这需要在从他人的代码中获取的好处与公开你的代码造成的损失之间做出权衡。


参考链接:


https://blog.cloudflare.com/popular-domains-year-in-review-2021/


https://www.theverge.com/2021/12/20/22847213/tiktoks-live-studio-obs-open-source-policy


https://techcrunch.com/2021/12/15/tiktok-is-testing-a-desktop-streaming-software-called-tiktok-live-studio/


2021-12-23 15:522929

评论 1 条评论

发布
用户头像
拿来主义,遵守GPL没什么难的,像谷歌一样做接口层
2021-12-27 09:00
回复
没有更多了
发现更多内容

ThreadLocal源码分析

做梦都在改BUG

Java 源码 多线程 ThreadLocal

《人间失格》

后台技术汇

三周年连更 人间失格

面试官:介绍一下什么是缓存雪崩、缓存击穿、缓存穿透?

Java你猿哥

redis 面试题 缓存穿透 缓存击穿 缓存雪崩

Tars-Cpp 协程实现分析

vivo互联网技术

协程 TARS

简直人生外挂,直接涨薪25K,跪谢这份Java性能调优实战宝典

做梦都在改BUG

Java 性能优化 JVM 性能调优

阿里p8强烈推荐这部《从零开始学架构》堪称GitHub最强!

Java你猿哥

Java 架构 ssm 架构设计

中国浙江|浙江省级人才计划申报指南来了!

科兴未来News

双创比赛

java 开发 SSM 框架整合之 MyBatis 动态 SQL

Java你猿哥

Java sql mybatis SSM框架 if

Guava的EventBus事件机制实现

Java你猿哥

Java 源码 ssm Guava EventBus

七大关键技术,华为云数据库GaussD承载金融级核心系统

平平无奇爱好科技

云计算,

Bytebase 体验官之 MySQL 「SQL 审核」

朱亚光

已献出膝盖!GitHub上的宝藏级SpringBoot核心宝典,讲得太清晰了

做梦都在改BUG

Java 架构 微服务 Spring Boot 框架

数据灾备方案,华为云为何受众多企业信赖与选择?

平平无奇爱好科技

ES的索引结构与算法解析

京东科技开发者

搜索引擎 elasticsearch 索引结构 ES 企业号 4 月 PK 榜

Android C++系列:C++11函数特殊特性

轻口味

c++ 三周年连更

【堡垒机】免费堡垒机介绍以及下载看这里!

行云管家

堡垒机 运维审计 免费 小微企业

如何用DataTester设计并创建可视化实验

字节跳动数据平台

AB testing实战 A/B测试 企业号 4 月 PK 榜

共享电单车生产厂家如何选择

共享电单车厂家

共享电动车厂家 共享电单车生产 共享电动车厂商 本铯智能共享电动车商家

基于STM32设计的音乐播放器

DS小龙哥

三周年连更

企业数据的最后防线——华为云数据灾备

YG科技

云计算,

Spring循环依赖为何使用三级缓存?

Java你猿哥

Java spring 缓存 bean spring ioc

商业堡垒机是什么意思?有免费版的商业堡垒机吗?

行云管家

网络安全 堡垒机 运维审计

阿里开发实录:慢SQL拖垮数据库并引发故障

Java永远的神

数据库 sql 程序员 后端 架构师

阿里P8架构师珍藏版:SpringBoot入门到进阶笔记(面面俱到,太全了)

采菊东篱下

编程 微服务

GitHub排名第一《lntellij IDEA软件开发与应用实战手册》限时开源

Java你猿哥

Java spring ssm IDEA

阿里云机器学习PAI发布基于HLO的全自动分布式系统 TePDist,并宣布开源!

阿里云大数据AI技术

深度学习 分布式系统 开源项目 企业号 4 月 PK 榜

每个Java程序员都必须知道的四种负载均衡算法

做梦都在改BUG

Java 负载均衡 负载均衡算法

华为云开源项目OpenTiny中TinyVue有什么优势?

英勇无比的消炎药

开源 Vue 组件库

NPM 实用命令与快捷方式

SEAL安全

JavaScript npm 企业号 4 月 PK 榜

从原理聊JVM(二):从串行收集器到分区收集开创者G1

京东科技开发者

G1 JVM 垃圾回收器 java 企业号 4 月 PK 榜

掌握动态规划,从“什么问题适合用”及“解题思路”入手

华为云开发者联盟

人工智能 AI 华为云 华为云开发者联盟 企业号 4 月 PK 榜

流量超过谷歌,TikTok在扩张过程中被质疑“偷窃”OBS代码_开源_核子可乐_InfoQ精选文章