社区

网站翻译由林建有提供支持

1 组织

FFmpeg项目通过一个致力于全球共识的社区进行组织。

决策由活跃成员整体通过投票制定,并得到两个委员会的支持。

2 大会

活跃成员整体被称为大会 (GA)。

大会对FFmpeg项目的所有决策都具有主权和合法性。

大会由活跃贡献者组成。

如果贡献者在过去36个月内在主要FFmpeg存储库中提交了超过20个补丁,或者被大会通过投票选入,他们将被视为“活跃贡献者”。

活跃贡献者名单每年更新两次,即1月1日和7月1日的UTC时间0:00。

通过大会成员提议后,经投票添加额外成员到大会。他们将是大会成员两年,之后需要大会确认。

生成大会当前成员(不包括经投票选入的成员)的脚本可以在‘tools/general_assembly.pl‘中找到。

3 投票

投票通过排名投票系统进行,目前运行在 https://vote.ffmpeg.org/。

多数票意味着超过50%的表达投票。

4 技术委员会

技术委员会 (TC) 负责仲裁并在项目中发生技术冲突时做出决策。他们会考虑所有立场的优点,进行评估并做出决定。

TC解决技术冲突,但并不是技术指导委员会。

TC的决策对所有贡献者具有约束力。

TC的决策可以在1年后或由大会大多数投票成员要求重新审议。

TC由大会选举产生,任期为1年,由5名成员组成。成员可以选择连任。如大会多数票通过,可触发TC的新选举。

TC成员可以从GA外部选拔。选举候选人可以推荐或自荐。

冲突解决流程详见决议流程文件。

可通过 <tc@ffmpeg> 联系TC。

4.1 决议流程

技术委员会 (TC) 负责仲裁并在发生技术冲突时作出决策。

TC的主要角色是解决技术冲突。它不是技术指导委员会,但理解到某些决策可能会影响项目的未来。

4.1.1 提交

TC可以接管任何其认为合适的技术事项。

要引入TC参与某个事项,发送电子邮件给tc或在正在进行的讨论中抄送给他们。

由于TC成员也是开发者,他们也可以发送电子邮件给tc以提出问题。

4.1.2 公告

TC一旦接管,必须通过主邮件列表宣布,并带有[TC]标记。

TC有2种操作模式:RFC模式和内部模式。

如果TC认为需要更广泛社区的输入,可以启动RFC请求。否则,他们可以自行决策。

使用RFC流程或内部讨论的决定是TC的自由裁量权。

TC也可以拒绝接管,例如由于以下原因:先前讨论不足;缺乏对问题做出有益决策的专业知识;问题过于琐碎。

4.1.3 RFC请求

在RFC模式下,TC的一名成员会在邮件列表中发布技术问题并请求社区输入。

邮件将具有以下规范:

一个精准标题 一个特定的标记[TC RFC] 一个顶级邮件 包含一个不超过100字的精准问题,开发者可以回答 如果认为必要,可能有额外描述或链接到先前讨论 包含一个回答结束时间的明确日期。

社区的答案必须在主邮件列表上,并且具有以下规范:

保持标记和标题不变 限制在400个字以内 顶级回复,直接回答主要邮件 回答该问题。

进一步的回答是允许的,但需要符合社区礼貌标准,限制在100个单词以内,且最多嵌套一次。(最大深度=2)

结束日期之后,线程中的邮件将被忽略。

违反这些规则将通过社区委员会进行上报。

所有邮件到达后,TC有96小时时间做出最终决策。特殊情况下,TC可以要求额外延迟,并将通知邮件列表。

4.1.4 内部处理

在内部情况下,TC有96小时的时间做出最终决策。特殊情况下,TC可以要求额外延迟。

4.1.5 决策

TC的决策将在邮件列表上发布,并带有[TC]标记。

内部而言,TC应采用多数票或排名投票方式做出决策。

每个TC成员必须根据自己认为对项目最好的方式进行投票。

如果TC成员认为自己因个案涉及利益冲突,应宣布并自行退出TC讨论和投票。

当TC成员对案件结果有个人利益(如财务)时,推定为利益冲突。

TC的决策应附上导致此决策的原因总结。

TC的决策是最终的,除非事项在不少于一年后重新讨论。

5 社区委员会

社区委员会 (CC) 负责仲裁并在项目中发生人际冲突时作出决策。它会迅速决定并采取行动,以维护项目利益。

CC可以撤销违规成员的权限,包括撤销提交权限和临时禁止参与社区。

CC的决策可以在1年后或由大会多数票成员要求重新审议。从社区无限期禁令需要通过大会的多数投票确认。

CC由大会选举产生,任期为1年,由5名成员组成。成员可以选择连任。如大会多数票通过,可触发CC的新选举。

CC成员可以从GA外部选拔。选举候选人可以推荐或自荐。

CC负责维护并执行行为准则。

可通过 <cc@ffmpeg> 联系CC。

6 行为准则

对他人和第三方友好且尊重。 以你自己希望被对待的方式对待别人。

要体谅。并非每个人都与你拥有一样的观点和优先级。 不同的意见和解释有助于项目。 从不同的角度看问题有助于开发。

不要将事情归咎于恶意,实际上可能只是错误。即便 是恶意,也很少从这一假设开始是好的。

即使有人行为相悖,也要保持友好。 每个人都会偶尔遇到糟糕的一天。 如果您自己度过了糟糕的一天或感到生气,请尝试休息后再次回复,避免带着愤怒。

尽力帮助其他团队成员并合作。

软件开发的目标是创造技术卓越,而不是某个 个人表现得更好并“战胜”其他人。 大型软件项目的成功依赖于团队合作。

如果有人遇到困难,不要贬低他们。相反,给予他们帮助, 指引他们正确的方向。

最后,记住比尔和泰德的不朽话语: "彼此杰出。"

此文件通过以下工具生成makeinfo.

托管由以下提供telepoint.bg