目录
1 组织
FFmpeg 项目是通过一个致力于达成全球共识的社区来组织的。
决策由全体活跃成员通过投票做出,并由两个委员会协助。
2 全体大会
全体活跃成员被称为全体大会(GA)。
全体大会对其关于 FFmpeg 项目的所有决策具有主权和合法性。
全体大会由活跃的贡献者组成。
如果贡献者在过去 36 个月内在 FFmpeg 主仓库中贡献了超过 20 个补丁,或者他们被全体大会投票选入,则被认为是“活跃的贡献者”。
活跃贡献者名单每年更新两次,分别在 1 月 1 日和 7 月 1 日 0:00 UTC。
通过全体大会成员的提议,并通过投票,其他成员可以加入全体大会。他们将成为全体大会成员两年,之后需要全体大会的确认。
可以在 ‘tools/general_assembly.pl’ 中找到一个脚本来生成当前全体大会的成员(不包括投票选入的成员)。
3 投票
投票采用排名投票系统,目前在 https://vote.ffmpeg.org/ 上运行。
多数票意味着超过 50% 的有效选票。
4 技术委员会
技术委员会(TC)在此处仲裁和做出项目中的技术冲突决策。他们将考虑所有立场的优点,对其进行判断并做出决定。
技术委员会解决技术冲突,但不是技术指导委员会。
技术委员会的决定对所有贡献者具有约束力。
技术委员会的决定可以在 1 年后重新开启,或者由全体大会的多数票要求,由全体大会成员之一提出。
技术委员会由全体大会选举产生,任期 1 年,由 5 名成员组成。如果他们愿意,成员可以再次当选。全体大会的多数票可以触发技术委员会的重新选举。
技术委员会的成员可以从全体大会之外选举产生。候选人可以通过建议或自我提名产生。
冲突解决流程在决议流程文档中详细说明。
可以通过 <tc@ffmpeg> 联系技术委员会。
4.1 决议流程
技术委员会(TC)在此处仲裁和做出项目中的技术冲突决策。
技术委员会的主要作用是解决技术冲突。因此,它不是技术指导委员会,但可以理解的是,某些决策可能会影响项目的未来。
4.1.1 受理
技术委员会可以接管其认为合适的任何技术问题。
要使技术委员会介入某一事项,请发送电子邮件至 tc 或在正在进行的讨论中抄送他们。
由于技术委员会的成员也是开发人员,他们也可以通过电子邮件发送至 tc 来提出问题。
4.1.2 公告
一旦受理,技术委员会必须在主邮件列表中宣布,并带有 [TC] 标签。
技术委员会具有 2 种运行模式:一种是征求意见(RFC)模式,另一种是内部模式。
如果技术委员会认为需要更广泛的社区的意见,则技术委员会可以请求征求意见。否则,它可以自行决定。
是否使用征求意见流程或内部讨论的决定是技术委员会的酌情决定。
技术委员会也可以以一些原因拒绝受理,例如:该事项之前没有经过充分讨论;缺乏在该事项上做出有益决策的专业知识;或者该事项过于琐碎。
4.1.3 征求意见(RFC)
在征求意见模式下,技术委员会的一名成员将在邮件列表中发布技术问题,并征求社区的意见。
该邮件将具有以下规范
精确的标题;特定的标签 [TC RFC];顶层电子邮件包含一个不超过 100 字的精确问题,该问题可由开发人员回答;如果认为有必要,可以包含额外的描述或指向先前讨论的链接;包含答案的精确截止日期。
社区的答案必须在主邮件列表中,并且必须具有以下规范
保持标签和标题不变;限制在 400 字以内;第一级,直接回答主电子邮件;回答问题。
允许进一步回复答案,只要它们符合社区礼貌标准,限制为 100 字,并且嵌套深度不超过一次。(最大深度 = 2)
截止日期后,该主题上的邮件将被忽略。
违反这些规则的行为将通过社区委员会升级处理。
在收到所有电子邮件后,技术委员会有 96 小时的时间给出最终决定。在特殊情况下,技术委员会可以请求额外的延迟,这将在邮件列表中通知。
4.1.4 技术委员会内部
在内部情况下,技术委员会有 96 小时的时间给出最终决定。在特殊情况下,技术委员会可以请求额外的延迟。
4.1.5 决策
技术委员会的决定将通过带有 [TC] 标签的邮件发送到邮件列表。
在内部,技术委员会应以多数票或使用排序选择投票做出决定。
每个技术委员会成员必须根据他们认为对项目最有利的观点,对此类决定进行投票。
如果技术委员会成员认为他们在案件中存在利益冲突,他们应宣布这一点并回避技术委员会的讨论和投票。
当技术委员会成员在案件的特定结果中具有个人利益(例如,经济利益)时,则假定存在利益冲突。
技术委员会的决定应发布,并概述导致该决定的原因。
技术委员会的决定是最终决定,直到该事项在不少于一年后重新开启。
5 社区委员会
社区委员会(CC)在此处仲裁和做出项目中的人际冲突决策。为了项目的利益,它将快速做出决定并采取行动。
社区委员会可以撤销违规成员的权限,包括撤销提交权限和暂时禁止加入社区。
社区委员会的决定可以在 1 年后重新开启,或者由全体大会的多数票要求。无限期禁止加入社区必须由全体大会以多数票确认。
社区委员会由全体大会选举产生,任期 1 年,由 5 名成员组成。如果他们愿意,成员可以再次当选。全体大会的多数票可以触发社区委员会的重新选举。
社区委员会的成员可以从全体大会之外选举产生。候选人可以通过建议或自我提名产生。
社区委员会受《行为准则》管辖并负责执行《行为准则》。
可以通过 <cc@ffmpeg> 联系社区委员会。
6 行为准则
对他人和第三方保持友好和尊重。像您自己希望被对待那样对待他人。
考虑周到。并非所有人都持有与您相同的观点和优先级。不同的意见和解释有助于项目。从不同的角度看待问题有助于开发。
不要将可以归因于不称职的事情视为恶意。即使是恶意,以恶意作为最初的假设也很少是好的。
即使有人行为相反,也要保持友好。每个人偶尔都会有糟糕的一天。如果你自己心情不好或生气,那就试着休息一下,等你冷静下来,不再愤怒时再回复(如果必须回复的话)。
尽力帮助其他团队成员,如果可以的话,请合作。
软件开发的目标是创造卓越的技术,而不是让任何个人比其他人更好、并“胜出”。大型软件项目只有通过团队合作才有可能成功。
如果有人遇到困难,不要贬低他们。相反,伸出援手,并为他们指明正确的方向。
最后,请记住比尔和泰德的不朽名言:“善待彼此。”
本文档于 2025年1月21日 使用 makeinfo 生成。
由 telepoint.bg 提供托管服务