🎬 第一章 编程之美与内功修为
📄 一句话概括

方向没有绝对好坏,只有权重差别——同一组实力换个权重排名就翻(Demo 2);选方向真正的动作是先给自己的权重排序。

📝 本节和前面几节的关系

1.1 讲怎么练,这一节讲往哪儿练。判断依据从【哪个方向好】换成【我要什么】。

一、方向没有好坏,只有权重

【哪个方向好】这句话缺个主语:对谁好、在什么阶段好。 把方向拆成四个维度就能谈:入门容易度、岗位需求、天花板、兴趣。 每个维度打 1~5 分,再给维度配权重——权重不同,排名就不同。 Demo 2 里同一组分数,只是把【先求能上手】换成【先求走多远】,第一名和第四名直接对调。 所以争论【哪个方向好】多半是白争——你们的权重不一样。

二、音视频这个方向

门槛高:要懂信号与采样、懂编解码原理、懂封装与协议——不是几周能补上的。 天花板高:播放器、转码、直播、实时通信,一条很长的纵深,够走很多年。 人少:会敲 FFmpeg 命令的多,说得清【为什么这样能省一半码率】的少。 门槛高正是人少的原因——它同时是障碍和护城河。 本书作者是典型样本:二十年摸爬,从播放器一路做到全套直播系统。

三、什么时候该定下来

别无限期观望。先选一个,做满三个月。 三个月的判据不是【有没有做成】,而是:你会不会主动想把它搞懂。 主动去查一个没要求你查的参数——这就是选对了的信号。 如果三个月过去还是靠意志力撑着,那就换;换方向的成本,永远低于在错的方向上再耗三年。

四、这本课在系列里的位置

本课是【FFmpeg 音视频流媒体系列】的第一部,只讲原理——声音怎么变数字、画面怎么变数字、怎么压小、怎么放回来。 第二部讲流媒体直播,第三部讲命令行与音视频特效。 顺序不能颠倒:不先弄明白压的原理,后面那些命令行参数就只是死记的咒语。

五、动手 Demo:四个方向,换个权重就换排名

【哪个方向好】这句话缺个主语:对谁好、在什么阶段好。 先给四个维度打分(5 分=对我更有利),再谈权重。

dirs = {
    "音视频": [2, 4, 5, 5],
    "后端":   [3, 5, 4, 3],
    "前端":   [5, 4, 3, 2],
    "算法":   [1, 3, 5, 4],
}
plans = {
    "先求能上手": [0.45, 0.25, 0.15, 0.15],
    "先求走多远": [0.10, 0.20, 0.45, 0.25],
}

for pname, w in plans.items():
    rows = sorted(dirs.items(),
                  key=lambda kv: -sum(a * b for a, b in zip(kv[1], w)))
    print("%s -> %s" % (pname, " > ".join(n for n, _ in rows)))

实跑输出:

--------------------------------------------------------------------
四个方向,换个权重就换排名
--------------------------------------------------------------------

【哪个方向好】这句话缺个主语:对谁好、在什么阶段好。
先给四个维度打分(5 分=对我更有利),再谈权重。

  方向       入门容易     岗位需求     天花板     兴趣
  -----------------------------------------------------
  音视频     2            4            5          5
  后端       3            5            4          3
  前端       5            4            3          2
  算法       1            3            5          4

  方案 A:先求能上手
    权重:入门容易 45% / 岗位需求 25% / 天花板 15% / 兴趣 15%

  方向       加权分     排名
  ---------------------------
  前端       4.00       1
  后端       3.65       2
  音视频     3.40       3
  算法       2.55       4

  方案 B:先求走多远
    权重:入门容易 10% / 岗位需求 20% / 天花板 45% / 兴趣 25%

  方向       加权分     排名
  ---------------------------
  音视频     4.50       1
  算法       3.95       2
  后端       3.85       3
  前端       3.15       4

  同一组分数,只是权重换了一下:
    前端    第 1 名 → 第 4 名
    音视频  第 3 名 → 第 1 名
  所以【选方向】真正的动作是:先给自己的权重排个序。

两套权重之下,排名几乎完全翻转:前端从第 1 掉到第 4,音视频从第 3 升到第 1。 分数是你对自己的评估,权重是你要什么——先排权重,再谈方向。

30 秒实验

  1. 把你在考虑的两三个方向填进那张四维表,自己打分(别抄别人的)。
  2. 分别用【先求能上手】和【先求走多远】两套权重算一遍,看排名会不会翻。

常见误区

  1. 问【哪个方向最有前途】。前途是统计量,你的权重是个体量。
  2. 因为门槛高就不敢碰音视频。门槛高正是人少的原因。
  3. 一直观望不选。做得久比选得对更重要——选错可以换,不选就没得换。
自测三问(点开对答案) 1. 为什么 Demo 2 里排名会翻转? —— 权重换了。同一组分数在不同目标下排序本来就不同。 2. 音视频方向的门槛体现在哪? —— 要懂信号、编解码、协议,不是几周能补的;这也正是它的护城河。 3. 选好方向之后第一件该做的事是什么? —— 先给它三个月,看自己会不会主动想把它搞懂。

相关笔记