前几天整理旧物,翻出一台索尼爱立信 K770i。插上充电器,屏幕亮起,熟悉的 Sony Ericsson 标识把时间拉回到 2007 年。严格来说,这款机器并不是当年的旗舰,但它集合了当时很多用户关心的关键词:3G 视频通话、Cyber-shot 拍照、320 万像素、WCDMA 网络。它既不是第一台 3G 手机,也不是拍照最强的手机,却因为克制而均衡的硬件选择,成为观察那个时代通信与影像技术非常好的样本。
这篇文章不是怀旧散文,而是以 K770 为线索,把三件事拆开聊:3G 视频通话到底是怎么实现的,为什么它当时看起来惊艳却没能成为日常;Cyber-shot 影像体系在当时的手机上有多少技术含量;以及从功能机到智能手机的演进过程中,那些通信协议、硬件协同和生态设计的经验,对今天做音视频开发的人有什么借鉴意义。
如果你经历过功能机时代,可以边看边对照回忆;如果你想了解移动通信从电路域到 IP 域的演进,或者正在学习音视频开发,这篇文章也值得收藏起来慢慢看。涉及内容较多,建议先读目录,再按兴趣章节展开。
1. 背景与核心概念:2007 年的 3G 与视频通话
1.1 2007 年左右的移动通信环境
2007 年前后,移动通信市场正处在一个明显分水岭。欧美和日本等地区已经陆续商用 WCDMA/HSPA 网络,3G 不再只是实验室里的演示;而不少其他市场仍然以 GSM 为主,3G 牌照都还没有发放。那几年手机用户对 3G 的感知基本可以概括成三个词:网速更快、可视电话、套餐更贵。
当时的手机形态也很有意思。智能手机开始冒头,但大多数人手里用的还是功能机。索尼爱立信在 Symphony、Walkman 之外,把影像产品线单独拉出来,和索尼数码相机品牌 Cyber-shot 绑定,推出了 K 系列拍照手机。K770 就诞生在这样一个产品逻辑里:用更低的门槛,让普通用户也能获得接近 Cyber-shot 相机风格的拍照体验,同时补上 3G 视频通话需要的前置摄像头。
从技术视角看,2007 年的 K770 恰好跨越了两个世界:一边是传统的电路交换语音网络,一边是刚刚开始走向实用化的分组数据业务。它身上既有打电话的老基因,又有视频通话这种新需求,所以非常适合用来理解 3G 早期的技术形态。
1.2 3G 视频通话到底是什么
今天只要手机能上网,打开微信、FaceTime 或 Teams 就能打视频电话,大家会默认“视频通话 = 一个网络应用”。但在 3G 早期,“视频通话”更多指运营商提供的可视电话业务,走的是移动通信网络里的电路域,也就是 CS 域。
所谓 CS 域,全称是 Circuit Switched Domain,电路交换域。它的思路和传统电话一模一样:通话前先建立一条连接,整个通话过程中这条连接被独占。优点是时延稳定,服务质量容易保证;缺点是资源利用率低,即使不说话,线路也为你保留着。
早期 3G 视频通话正是建立在这种独占通道之上。WCDMA 网络会为一次视频通话分配一条上下行各 64 kbps 左右的业务信道,视频数据在信道里稳定传输,不受普通上网数据的干扰。这也解释了为什么 3G 视频通话的收费标准更像“通话”而不是“流量”。
与之对应的是 PS 域,也就是 Packet Switched Domain,分组交换域。我们平时用的移动数据、上网浏览、App 通讯都走 PS 域。PS 域灵活,资源复用率高,但早期网络对 QoS 的保障能力有限,不适合承载高质量实时通话。这个 CS 与 PS 的差异,是理解 3G 视频通话后续命运的关键。
1.3 K770 在当时产品线中的位置
K770 并不是顶级旗舰,它的角色更接近“让 3G 视频通话和 Cyber-shot 拍照下沉到中端价位”。为了方便理解,这里列出几个当时比较有代表性的规格:
| 项目 | 典型情况 |
|---|---|
| 产品定位 | Cyber-shot 系列拍照手机,中等价位 |
| 网络能力 | GSM/GPRS/EDGE,并支持 WCDMA 3G 网络,具体频段因地区版本有差异 |
| 主屏幕 | 约 2.0 英寸级别,26 万色 TFT 屏,分辨率约为 QVGA 级 |
| 后置摄像头 | 320 万像素 Cyber-shot 影像系统 |
| 视频通话 | 支持,屏幕上方设有辅助前置摄像头 |
| 存储扩展 | 使用 Memory Stick Micro(M2)记忆棒 |
| 操作系统 | 索尼爱立信自有功能机平台,受限的 Java 扩展能力 |
注意,这里描述的是“典型情况”,不同市场、不同批次的具体参数可能略有差异。放到当时的索尼爱立信产品线里,K770 的定位很有意思:它比旗舰 K850 更轻巧,比入门拍照机 K550 多出了完整的 3G 视频通话能力,属于“在 3G 普及前夜做出来的大众 3G 手机”。
为什么这篇文章选它来拆,而不是选一台旗舰?因为旗舰手机的功能堆料多,容易掩盖“为了一个功能需要做哪些取舍”。K770 这种中端机,每一个硬件模块都必须有明确用途,反而更能体现 3G 视频通话和拍照影像带给整机设计的真实压力。
2. 3G 视频通话技术拆解:CS 域、64kbps 与 3G-324M
2.1 为什么需要一套专门协议
要在 3G 网络上做视频通话,第一个问题是:语音有现成的话音编码和呼叫流程,视频数据该按什么格式传?两台不同品牌的手机之间怎么保证能互相解码?如果大家都用私有协议,联通用户和移动用户、诺基亚手机和索爱手机之间就没法互通。
于是国际电信联盟 ITU 在 H.324 系列标准基础上做了面向移动环境的扩展,产生了 H.324M,有时也叫 3G-324M。3GPP 把它纳入 3G 电路域可视电话的核心标准后,它就成为 WCDMA 网络里终端之间做视频通话的通用语言。
3G-324M 解决的核心问题,是把“视频通话”当作一次有质量保障的呼叫来完成:用户拨号、对方响铃、接通后双向音视频同时传输,最后挂断释放资源。整个过程不需要借用 IP 网络,也不依赖互联网上的服务器,完全在移动通信网络内闭环。
2.2 3G-324M 协议栈中的几个角色
3G-324M 并不是只有一个协议,它是一组协议协作的结果。为了方便理解,可以把它想象成一个洋葱,每一层都有自己的任务。下面用一个非常简化的协议栈来表示:
+----------------------------------------------+ | 音频数据:AMR-NB | 视频数据:H.263/MPEG-4 | | 系统控制:H.245 控制消息 | +----------------------------------------------+ | H.223 适配层:把音频帧、视频帧进行分段打包 | +----------------------------------------------+ | H.223 复用层:把多路数据复用到一条信道 | +----------------------------------------------+ | 3G 电路域承载:经典场景下为 64 kbps 速率 | +----------------------------------------------+H.245 负责控制。通话双方接通后,会通过 H.245 消息交换“能力集”,告诉对方我支持什么视频编码、什么音频编码、最大分辨率是多少、能开几条逻辑信道。这个过程非常像今天 WebRTC 里的 SDP 协商,本质都是“先商量好共同语言,再开始传数据”。
H.263 是当时最流行的低码率视频编码之一,后来也支持 MPEG-4。为什么不用 H.264?不是技术不允许,而是当时 H.264 的复杂度更高,终端处理能力有限,专利授权也还没有像后来那样形成统一框架。AMR-NB 则是 3GPP 定义的窄带语音编码,主要面向语音传输,即使只用来打电话,它也是 WCDMA 网络的默认语音编码方案。
H.223 要做的是复用。可以把视频帧、音频帧、控制信令都拆成小段,按照逻辑信道号打上标识,然后按优先级混合进同一条 64 kbps 连接,到达对端后再按标识拆开、恢复成原始数据。这个“多路复用”思想,和我们在计算机网络里学到的时分复用、分组复用是同一种底层逻辑。
2.3 64kbps 能带来什么样的画面
现在的问题来了:64 kbps 能跑出多么清晰的视频?答案是比较勉强。
一次 3G 视频通话中,这 64 kbps 并不是全部留给视频。音频 AMR-NB 通常要占掉 4.75 kbps 到 12.2 kbps,H.223 复用层和无线信道编码也要消耗一部分开销。真正留给视频的码率,在很多终端上可能只有 20 kbps 到 40 kbps。
为了在这个码率下保证帧率,视频编码的分辨率通常会被压得很低。常见选择是 QCIF,也就是 176×144 像素,稍微好一点能跑到 CIF 级别的 352×288。这是什么概念?如果用今天的眼光看,一个普通头像在视频通话里都会被压缩到非常模糊;如果画面里有运动,马赛克会非常明显。
实际体验往往是“能看见对方,但好像在隔着毛玻璃看慢动作”。摄像头素质一般、屏幕分辨率不高、网络在移动中还会产生抖动,这些问题叠加在一起,让 3G 视频通话在商用后很难形成真正的用户粘性。技术可行性,和用户体验之间,仍然隔着一条很长的路。
3. K770 硬件解析:一台 3G 视频手机要解决什么问题
3.1 前置摄像头的位置不是随便定的
今天的每一台智能手机都有前置摄像头,大家已经习以为常。但在 2007 年,屏幕上方存在摄像头并不常见。K770 的屏幕上方听筒旁,隐藏着一个低分辨率辅助摄像头,专门服务视频通话。
这颗前置摄像头的位置经过反复考量。它必须尽量靠近屏幕中央上方,这样用户盯着屏幕看对方时,视线才能接近镜头方向,形成“对视感”。如果镜头放在角落,通话时用户眼睛看屏幕,对方看到的就是“眼神飘忽”的画面。今天很多笔记本摄像头放在屏幕边框上方,也是同一个道理。
这颗摄像头的规格并不高,因为视频通话的最终画面会被压缩到 QCIF 分辨率,传感器拍得再清晰,经过编码和传输后也体现不出来。倒不如降低规格,减少成本和功耗。这种“业务驱动硬件选型”的思路,在手机设计里非常典型。
3.2 3G 射频、天线与整机功耗
支持 3G 不是只加一颗芯片那么简单。WCDMA 增加了新的频段和发射功率要求,手机内部需要增加对应的射频前端、功放和天线匹配电路。K770 这类轻薄中端机,要在有限机身里塞下 2G/3G 多频段射频模块,同时还得保证通话信号不衰减,给天线设计提出了很高要求。
3G 视频通话的功耗比普通语音通话大得多。语音通话属于间歇性发包,而视频通话需要持续上传和下载,手机射频和基带芯片长时间处于工作状态,主板发热和电池消耗会明显上升。如果整机结构设计时没做好天线隔离,打电话时手握位置可能产生严重的信号衰耗。
这些问题在 3G 手机早期很常见。厂商一边宣传视频通话是卖点,一边要偷偷做大量的天线优化和电源管理。K770 作为中端机,不可能把电池做太大,只能在“功耗、手感、信号、成本”之间反复权衡。今天做智能硬件的人依然会面对同样矛盾,只是平台从手机换成了可穿戴设备或物联网模组。
3.3 视频编码靠谁来执行
现在智能手机要打视频电话,调用系统的 AVCaptureSession 或 MediaProjection 接口就能拿到摄像头帧,再交给硬件编码器 H.264/HEVC 处理。一切都有现成框架。但在 2007 年的封闭功能机上,故事完全不同。
那时手机里通常没有为普通开发者准备的视频通话 API。3G 视频通话是一个深度集成到固件里的系统功能,视频采集、编码、复用、网络控制都由底层完成。很多任务并不在主 CPU 上跑,而是交给 DSP(数字信号处理器)或专用媒体处理芯片,CPU 只负责控制界面和简单逻辑。
这也是为什么当时你不能随便下载一个 App 就实现微信视频。不是因为开发者懒,而是底层硬件资源和管理权限都没有开放。K770 上只有厂商自己或合作伙伴,才能把一套完整的 3G-324M 协议栈和硬件驱动紧密耦合在一起。这给后来的开发者留下的启示是:硬件边界决定软件能力上限,代码写得好,还要硬件平台愿意给你接口。
4. Cyber-shot 影像体系:320 万像素背后的工程故事
4.1 Cyber-shot 给 K770 带来了什么
Cyber-shot 是索尼数码相机很有名的产品线,代表“便携、时尚、不错成像”。当索尼爱立信把它移植到手机上,核心目标不只是贴牌,而是让用户产生“用这台手机拍照,画质接近数码相机”的心理预期。
为了撑起这种期待,K770 在影像相关设计上做了很多努力。它有专门的快门按键,半按可以锁定对焦;有独立的相册浏览逻辑;色彩调校也刻意往 Cyber-shot 风格靠拢,强调蓝天更蓝、肤色更自然。这一套体验设计,让手机拍照从“玩具”变得像一个正经工具。
但必须客观地说,2007 年的手机拍照,和今天的计算摄影之间差距非常大。当时摄像头传感器尺寸小,进光量有限,也没有强大的多帧合成算法,光线稍差时噪点非常明显。所谓的 Cyber-shot 影像引擎,更多是在色彩还原、白平衡、降噪、锐化这些方向上做一些“后期润色”,而不是改变物理成像极限。
4.2 一张照片的完整处理链路
K770 这类手机拍照后,图像数据并不只是简单的传感器直接输出 JPEG,而是要经过一条比较长的处理链路。用一个简化的示意图来表示:
外界光线 -> 镜头组 -> CMOS 感光器 -> 模拟前端 AFE / 初步模数转换 -> ISP 处理(去马赛克、白平衡、色彩校正、降噪、锐化) -> JPEG 编码压缩 -> 写入 M2 记忆棒或内部存储这里面每一环都会影响最终画质。镜头负责汇聚光线,CMOS 负责把光信号变成电信号,ISP 负责把原始的马赛克数据解码成人眼能够理解的彩色图像。320 万像素指的是 CMOS 上感光单元的数量,像素高不一定代表画质好,感光尺寸、镜头素质、ISP 算法往往更重要。
K770 所在的年代,成本更倾向于 CMOS 传感器和镜头组,ISP 能力有限。为了保证照片观感,厂商经常会做比较激进的降噪和锐化,结果就是照片在手机小屏幕上看起来很清楚,放到电脑大屏幕上后就会发现细节涂抹严重。这种“屏幕自产自销”的现象,也是当时手机影像局限性的体现。
4.3 多摄像头最初的形态:业务分工而非画质分工
今天智能手机标配多摄像头,有广角、超广角、长焦,主要目的是覆盖不同焦段。但 2007 年的 K770 已经出现了“双摄”,只是它不是为了焦段,而是为了业务分工:主摄负责拍照,前置副摄负责视频通话。两个摄像头在接口、分辨率、帧率、功耗需求上完全不同,硬件上可以独立工作。
这种设计的直接好处是降低成本。视频通话只需要 QCIF 画质,副摄用非常小的传感器就能满足要求;主摄则把更大成本花在 320 万像素和成像质量上。如果强行用同一颗数千万像素摄像头完成所有任务,处理功耗和成本都会成倍增长。
当厂商开始为不同业务配置不同摄像头时,系统的软件框架也要跟着变化。系统需要支持摄像头之间的切换,需要为不同摄像头分配不同的数据通路,这些经验后来被 iPhone 4 时代的“自拍视频通话”和今天的“多摄平滑切换”继承下来。可以说,3G 视频通话是手机多摄最早的商业化驱动力之一。
5. 端到端流程复盘:从 K770 发起一次 3G 视频通话
5.1 一次通话的宏观流程
为了让前面讲的概念串起来,这里模拟一次完整的 3G 视频通话流程。命令和消息名称保持简化,重点理解过程。
[主叫 K770] 用户选择“视频呼叫”并拨号 -> 网络完成主叫侧 CS 呼叫建立 -> 网络寻呼被叫 K770,提示“视频通话请求” -> 被叫用户接听 -> 网络为双方分配 64 kbps 上下行业务承载 -> 双方通过 H.245 进行多媒体能力协商 -> 协商视频编码、音频编码、分辨率、逻辑信道数量 -> 打开逻辑信道,开始双向传输视频和音频 -> 通话过程中,H.223 将多路数据复用到一条信道 -> 用户挂断,关闭逻辑信道,释放 CS 承载这条流程里最大的特点是:视频通话依然被当作一次“电话呼叫”来管理。它可以被呼叫、被拒接、被转接,网络侧也能对它进行计费,而不是像网络视频那样由 App 自己管理服务器。
5.2 信道建立与寻呼
当用户按下视频通话键,手机并不会立即开始传视频,而是先要在无线网络里建立一条电路域连接。网络会找到被叫用户所在的基站,发送一个带有“视频呼叫指示”的寻呼消息。被叫手机屏幕会弹出类似“邀请你进行视频通话”的界面。
如果被叫用户接听,网络才继续为通话分配专用的业务资源。也就是说,在业务信道建立之前,视频编码器并不会启动。这是为了节约资源和功耗,也符合“先建立连接,再传输媒体”的普遍逻辑。
5.3 H.245 协商与逻辑信道打开
连接建立后,两个终端之间就开始通过 H.245 交换控制消息。这里最大的难点是:一台 K770 要和一个完全未知的手机模型通信,双方必须确定用哪一种视频编码、哪一种音频编码。K770 视频可能支持 H.263 和 MPEG-4,音频一定支持 AMR-NB;如果对端手机只支持 H.263,那么 K770 也会自动同意用 H.263,而不是坚持用自己更偏好的 MPEG-4。
协商完成后,双方通过 H.245 打开“逻辑信道”。逻辑信道可以理解成传送特定数据的通道,视频一路、音频一路。每路数据在 H.245 中都有一个标识,H.223 复用层会根据这个标识把不同的包区分开。只要这些逻辑信道正常打开并保持,视频和音频就能持续传输。如果用户中途切到后台或网络质量变差,某些厂商的手机还会尝试通过 H.245 重新协商降分辨率、降帧率,尽量保住通话。
5.4 通话质量的关键:唇音同步、回声抑制与功耗
即使技术上成功接通,体验也还有许多隐藏问题。视频和音频编码器独立工作,网络传输时延也可能不同,如果视频比声音慢了几百毫秒,就会出现“口型对不上”的别扭感;扬声器播放对方声音时,又会被麦克风重新拾取形成回声,必须做回声消除。这些问题到今天的 WebRTC 和视频会议系统里依然存在,只是算法和算力更成熟了。
另外必须强调的是,视频通话过程中手机射频持续工作,屏幕长亮,编解码器满载,电池消耗非常快。中端 3G 手机如果连续打半小时视频电话,掉电量会远超普通语音通话。这个细节也解释了为什么当年运营商广告里的视频通话演示只持续一两分钟,很少展示长时间续航场景。
6. 为什么 3G 视频通话最终没有成为主流
6.1 成本、资费与体验门槛
回顾 3G 视频通话从