檔案怎麼管、來源怎麼證,過去三天處理的都是「已經拍到的東西」。今天回到更前面一格:還沒拍到之前的那一段時間。從你在觀景窗裡看見一個動作,到感光元件真的開始曝光,中間隔著三段互相疊加的延遲;而就算曝光開始了,一張照片也不是在同一瞬間完成的。這篇要把這條時間鏈上的每一段拆出來、量出來,並且說明近幾年各家的「預拍緩衝」到底繞過了哪一段、又是用什麼代價換來的。

📖 學

一條被忽略的延遲鏈

按下快門不是一個事件,是至少四個事件排隊。第一段是感光元件把畫面送到觀景窗的時間;第二段是你的視覺系統辨認出「就是現在」並下達運動指令的時間;第三段是手指真的把按鈕壓到底的時間;第四段是相機從「按鈕到底」到「曝光開始」的時間。只有第四段有國際標準:ISO 15781:2015《Photography — Digital cameras — Measuring shooting lag, shutter release time lag, shooting rate, and start-up time》把 shutter release time lag 定義為「從按鈕被完全壓下,到曝光開始」的時間。注意這個定義的起點——它從按鈕到底才起算,所以規格表上那個漂亮的毫秒數字,完全沒有涵蓋前面三段。

前三段的量級要從別的地方找。EVF 顯示延遲方面,Jim Kasson 對 Sony a9 做過直接量測,結果是螢幕上緣約 35 ms、下緣略低於 30 ms——注意 EVF 與 LCD 本身也是逐行更新的,所以延遲在畫面上下並不一樣。較新機身的 EVF 在論壇量測中常落在 10–20 ms 區間,但這類數字缺乏統一方法,已標存疑。人的部分反而比較有文獻可依:視覺簡單反應時間在大樣本研究裡的平均值大約落在 230–250 ms,例如一份 1,469 人的研究報告平均 231 ms、扣除硬體延遲後 213 ms;更早期文獻常引用的 180–200 ms,則是量測精度較差年代的數字。

把這條鏈攤開來:

環節量級依據能否消除
感光元件 → EVF 顯示約 10–35 msKasson 對 a9 實測上緣 35 ms;新機身較低但方法不一,存疑只能靠硬體改善
視覺辨認 + 運動指令約 230 ms大樣本 SRT 研究平均 231 ms(n=1469)不能,這是生理下限
手指壓到底數十 ms依按鈕行程與力道,個人差異大半按預壓可縮短
按鈕到底 → 曝光開始數十 msISO 15781:2015 定義的區間部分可,靠韌體與預對焦

合計大約 270–330 ms。這個數字放進實務就很刺眼:以 30 fps 連拍計,300 ms 是 8 到 9 張;一位時速 36 公里(10 m/s)的短跑選手在這段時間裡跑掉 3 公尺;蜂鳥的翅膀在 300 ms 裡拍動了十幾個完整週期。所謂「按下去就慢了」不是心理作用,是可以標定量級的物理事實,而且其中最大的一段(230 ms)在你身上,不在相機上。

曝光不是一個瞬間,是一次掃描

第二個被忽略的時間是讀出時間(readout time)。除了全域快門(global shutter),電子快門是逐行讀出的:第一行開始曝光的時刻,和最後一行開始曝光的時刻,相差一整個讀出時間。這意味著一張照片內部就存在時間梯度。

Horshack 維護的 RollingShutter 量測資料庫提供了目前最一致的一組數字:Nikon Z8 靜態拍攝模式的讀出時間是 3.73 ms(約 1/268 秒),Sony a1 是 3.91 ms。這兩台是 stacked 感光元件的代表,也常被說成「幾乎沒有果凍效應」。但「幾乎沒有」不等於零,而它到底夠不夠,要看主體多快。做一個算式:一具 2,400 rpm 的螺旋槳等於每秒 40 轉,在 3.73 ms 內轉過 40 × 0.00373 = 0.149 轉,約 54 度。54 度的葉片扭曲在照片上絕對看得見。「stacked 就沒事」只在主體角速度不高時成立。

換個方向看同一件事:要讓失真控制在肉眼不可見,你需要的是主體在讀出時間內的位移小於一個可容忍的像素數。所以讀出時間是一個「規格」而不是一個「特性」——它可以被算、可以被要求,也可以被廠商在不同模式之間悄悄換掉。這一點是後面兩節的關鍵。

預拍緩衝:把「決定」的時刻往後挪一秒

近幾年各家都做了同一件事:半按快門時,相機就開始把畫面連續寫進 DRAM 環形緩衝區;只有在全按的那一刻,才把緩衝區裡最近 n 秒的影像真的寫進記憶卡。前面那條 300 ms 的延遲鏈因此被繞過去了——不是縮短,是繞過。你事後從緩衝區裡撈出「按下之前」的那幾張。

各家名稱與規格不同,而規格差異直接決定它在你的題材上有沒有用:

機身 / 系統功能名稱預拍長度硬條件
Nikon Z8 / Z9Pre-Release Capture最長 1 秒必須選 C30 / C60 / C120 高速幀擷取,只出 JPEG;C120 為 1,100 萬像素
Sony a9 IIIPre-Capture0.05 – 1.0 秒可設會吃掉快門後的緩衝(選 1 秒前置,後段約剩 0.6 秒)
Canon EOS R5 Mark IIPre-Continuous Shooting最多 15 張30 fps 時約 0.5 秒、20 fps 時約 0.75 秒
OM System OM-1Pro Capture約 70 張需高速電子快門模式
OM System OM-1 Mark IIPro Capture約 99 張SH1 最高約 120 fps
Fujifilm(X-T3 起)Pre-Shot ES約 0.5 – 1 秒必須電子快門 + 高速連拍檔

Nikon 的實作是 Z9 韌體 3.00(2022 年 10 月)加進來的,這個順序值得記住:預拍不是感光元件功能,是韌體功能;它需要的是足夠的緩衝記憶體和足夠快的讀出,而不是新的硬體。這也解釋了為什麼它能靠韌體下放到既有機身。

預拍的隱藏代價:讀出速度會掉檔

這是最容易漏掉、也最反直覺的一段。Nikon Z8/Z9 在一般靜態模式下讀出時間是 3.73 ms(1/268 秒),但 Horshack 的量測顯示,C60 與 C120 這些能開預拍的高速模式,讀出速率掉到約 1/90 秒(C60,全尺寸 DX 區域 JPEG)1/173 秒(C120,小尺寸 FX 區域 JPEG)。原因是這些高速模式走的是感光元件的影片管線,而影片管線的讀出比靜態管線慢得多。

把數字換算回剛才那具螺旋槳:1/90 秒 = 11.1 ms,40 轉/秒 × 0.0111 = 0.44 轉,約 160 度;1/173 秒 = 5.78 ms,約 83 度。也就是說,你為了搶那 300 ms 而切進 C60,換來的是果凍效應失真放大到原本的三倍。對翅膀高速拍動的鳥、對螺旋槳、對高爾夫球桿頭,這個代價會直接毀掉照片。在同一台機身上,預拍與低失真是互斥的兩種模式,不是可以同時要的兩個優點。

第二個代價是畫質。Nikon 高速幀擷取只出 JPEG,C120 還降到 1,100 萬像素;C120 在 AE/AF 追蹤下畫質更固定為 JPEG normal。這不是廠商偷懶,推算一下就知道原因:一張 4,500 萬像素、14-bit 無損壓縮 RAW 大約 50 MB,30 fps 就是約 1.5 GB/s 的持續資料率,已經頂到 CFexpress Type B 常見持續寫入速度(約 1.4–1.7 GB/s)的上緣;60 fps、120 fps 完全沒有空間。這裡的 50 MB 與卡速區間是量級推算而非實測,但方向足以解釋 JPEG-only 的限制從哪來。順帶一提,Sony a9 III 採用 CFexpress Type A 而非 Type B,在 2023 年發表時就被 PetaPixel 點名為寫入瓶頸;這與 a9 III 的預拍會侵蝕後段緩衝,是同一個問題的兩面。

第三個代價比較樸素:半按的那段時間,感光元件與處理器都在全速運轉,耗電與發熱都在燒。長時間掛在半按上等鳥的人會很快發現電池掉得比平常快。各家手冊也都有「半按維持過久後停止緩衝」的行為,具體秒數依機身而異,需查各機身手冊,已標存疑

緩衝區的算術:為什麼上限是 1 秒,而不是 5 秒

預拍用的是環形緩衝區(ring buffer):一塊固定大小的 DRAM,寫滿了就從頭覆蓋,永遠只保留最近的 n 張。所以「預拍長度」本質上是一道除法——可用緩衝容量除以每張影像的大小,再除以幀率。這解釋了規格表上那些看起來很任意的數字。

以 Nikon 的 C120 為例:降到 1,100 萬像素 JPEG,每張大約 5 MB 量級,120 fps 就是每秒約 600 MB 進緩衝;要撐滿 1 秒,大約需要 600 MB 的緩衝空間,而這塊記憶體還得同時服務快門後的連拍與寫卡佇列。如果不降解析度、不降位元深度,同樣的 1 秒要吃掉數 GB——這才是「為什麼只出 JPEG」的真正答案,不是廠商吝嗇。同理,Canon EOS R5 Mark II 的預拍規格是「最多 15 張」而不是「最多 0.5 秒」:張數是硬體常數,秒數只是張數除以你當下設定的幀率,所以 30 fps 給你 0.5 秒、20 fps 給你 0.75 秒。看規格時,優先找張數,而不是秒數,因為張數才是那台機器真正的限制。

上面的 5 MB 與 600 MB 是依像素數與常見 JPEG 壓縮比做的量級推算,並非官方公布值,已標存疑;但除法的結構是確定的,而這個結構足以讓你在買機身之前自己算一遍。

預拍那幾張的曝光與對焦,是誰決定的

半按的瞬間,除了緩衝開始填,AE 與 AF 也已經在跑。這帶來一個容易忽略的後果:預拍撈回來的那幾張,用的是半按當時的曝光與對焦決策,不是全按當時的。如果主體在這一秒內從陰影走進陽光,你撈回來的前半段可能是欠曝的;如果主體正朝你逼近,前半段的合焦面也可能落在它後方。

追蹤要算力,而算力得從別的地方挪。Nikon 的規格就直接說了這件事:C120 在開啟 AE/AF 追蹤時,畫質固定為 JPEG normal——換句話說,「一邊 120 fps 緩衝、一邊持續追焦測光」這件事有價,價錢就是壓縮品質。實務上的處置很直接:半按不要提前太久,大約在事件前半秒到一秒之間半按最理想;主體光線會劇烈變化的場合,先把曝光鎖成手動,不要讓 AE 在緩衝期間亂跑。

還有一個判準值得記下來,它決定你到底該不該用預拍:分水嶺在「事件有沒有前兆」。鳥起飛前會蹲低、投手投球前會舉手、跳者起跳前會屈膝——這些有前兆的動作,靠預判加連拍就足夠,不必付預拍的畫質與失真代價。真正該用預拍的是沒有前兆的事件:鳥在空中突然轉向、氣球破裂、玻璃碎裂、孩子毫無預警的那個表情。預拍不是通用的升級,它是針對「無法預判」這一類題材的專用工具。

三個要更正的說法

「無反相機沒有快門延遲。」 不對。無反確實少了反光鏡上抬的機械時間,但 ISO 15781:2015 量的那一段只是整條鏈的最後一節,而無反在最前面新增了一節 EVF 顯示延遲(a9 實測上緣 35 ms)。單反的光學觀景窗延遲是零,無反不是;兩邊各有一段快、一段慢,總延遲並沒有歸零。

「電子快門是瞬間曝光。」 不對。除全域快門外,「3.73 ms 讀出」的意思正是:同一張照片的最上緣和最下緣,拍到的是相差 3.73 ms 的兩個世界。這是曝光時間之外的第二條時間軸,而它不受快門速度影響——你把快門調到 1/8000 秒,讀出時間還是 3.73 ms。

「有預拍就不用預判了。」 不對,而且這是最值得想清楚的一句。預拍的起點是半按,而半按是一個判斷:你判斷「接下來這一秒內會發生」。它沒有取消預判,只是把預判的容錯從「必須精準到零毫秒」放寬到「落在緩衝長度之內就行」。從 ±0 ms 放寬到 ±500 ms 是巨大的進步,但半按太早、緩衝被沖掉,一樣什麼都沒有。談決定性瞬間時,決定的是快門那一刻;預拍把決定往前挪到半按那一刻,並把「哪一張是決定性的」交給事後挑選——這是工作方式的轉移,不是判斷的消失。

🧠 記

  • 從看見到曝光開始,總延遲約 270–330 ms:EVF 顯示 10–35 ms、視覺反應約 230 ms、按壓與快門釋放各數十 ms。最大的一段在人身上。
  • ISO 15781:2015 定義的 shutter release time lag 只涵蓋「按鈕到底 → 曝光開始」,不含 EVF 延遲與人的反應,規格上的毫秒數不能當總延遲讀。
  • 讀出時間是曝光時間之外的第二條時間軸,且與快門速度無關:Nikon Z8 靜態 3.73 ms、Sony a1 3.91 ms(Horshack RollingShutter)。
  • 2,400 rpm(40 轉/秒)的螺旋槳在 3.73 ms 內轉過約 54 度;在 C60 的 1/90 秒(11.1 ms)內轉過約 160 度。
  • 預拍不是繞過所有代價:Z8/Z9 的 C60/C120 走影片管線,讀出掉到 1/90 與 1/173 秒,失真放大約三倍;且只出 JPEG,C120 降為 1,100 萬像素。
  • 看預拍規格要找張數而不是秒數:張數是環形緩衝區的硬體常數,秒數只是張數除以幀率(R5 II 的 15 張在 30 fps 是 0.5 秒、20 fps 是 0.75 秒)。
  • 預拍撈回來的那幾張,用的是半按當時的 AE/AF 決策。光線會變的場合先鎖手動曝光,半按提前量控制在半秒到一秒。
  • 該不該用預拍看「事件有沒有前兆」:有前兆(鳥蹲低、投手舉手)靠預判就夠;沒有前兆(空中轉向、氣球破裂)才是預拍的戰場。
  • 預拍的起點是半按,半按本身就是預判。它把容錯從 ±0 ms 放寬到緩衝長度,並沒有取消判斷。

✍️ 實踐

今天的動作:用一支毫秒碼表,量出你自己那條延遲鏈的實際數字。(約 20–25 分鐘)

器材:相機一台、手機一支(開毫秒碼表,顯示到 1/100 秒)、桌面或腳架、室內光即可。

步驟:

  1. 手機開啟碼表 App,顯示要能看到百分之一秒在跑,平放桌上,補足光線讓螢幕清楚可讀。
  2. 相機設 M 模式、1/500 秒、f/5.6、Auto ISO,取景讓碼表數字約占畫面三分之一。先用 AF-S 對好焦,然後切到手動對焦鎖住——這一步是為了把對焦延遲從實驗裡排除掉。
  3. 設定單張拍攝。透過 EVF 觀察,決定一個固定目標:「看到十分位變成 0 的那一刻就全按」。連續做 10 次,每次都從半按預壓開始(手指已經停在半按位置,只補全按那一段)。
  4. 回放這 10 張,把每張實際拍到的數字減去你的目標值,記下 10 個差值。取平均值 = 你的總延遲;取最大減最小 = 你的離散度。
  5. 換成機背 LCD 取景,重做 10 次。差值通常會變化,這一段差異就是兩個顯示路徑的延遲差。
  6. 若機身有機械快門與電子快門可切,各做 10 次比較;若有預拍功能,開啟 0.5 秒預拍再做 10 次,看看能不能把目標數字撈回來。

自我檢查:

  • 我的平均總延遲是幾毫秒?落在 270–330 ms 這個區間內,還是明顯更長?
  • 我的離散度(最大減最小)有多大?若超過 100 ms,說明是我的節奏不穩,而不是相機慢。
  • 「半按預壓」與「從零開始按」兩種做法,我能否量到明顯差異?差幾毫秒?
  • EVF 與 LCD 的差值,方向符合預期嗎(哪一個比較快)?
  • 開啟預拍後,我能穩定撈回目標數字嗎?撈回來的那張,解析度與檔案格式各是什麼?
  • 我的機身在高速預拍模式下讀出速率是否掉檔?我有沒有查到對應數字,或至少知道去哪裡查?

🔗 延伸學習

💬 問 AI

我想把「按下快門之前那 300 毫秒」這件事,從概念變成我器材上的具體設定。
 
【我的器材與拍攝情境】
- 機身:[             ](請一併說明是否為 stacked 感光元件)
- 記憶卡:[ CFexpress Type A / Type B / SD UHS-II ],型號 [           ]
- 主要題材:[ 飛鳥起飛 / 球類擊球瞬間 / 舞台跳躍 / 兒童 / 賽車 / 其他           ]
- 主體最快的那個動作,大致速度或角速度:[           ](不確定就寫不確定)
- 我最常失手的情況:[ 按太晚 / 按太早 / 對焦沒跟上 / 拍到了但變形           ]
 
【請依序做】
1. 針對我這台機身,列出這條延遲鏈上每一段目前已知的數字:
   EVF 顯示延遲、ISO 15781 定義的快門釋放延遲、靜態模式讀出時間。
   每一項都要註明來源與量測方法;查不到的直接寫「查不到」,
   不要用同級或同代機身的數字代替。
2. 告訴我這台機身有沒有預拍功能。如果有,請列出:功能名稱、可設定的預拍長度或張數、
   啟用它的硬條件(必須切到哪個連拍檔、是否強制 JPEG、是否降解析度或裁切),
   以及它會不會壓縮快門後的緩衝深度。
3. 關鍵的一題:啟用預拍所需的那個高速模式,讀出時間是否比一般靜態模式慢?
   慢多少?如果有量測數據請給數字,沒有就說沒有,不要用「應該差不多」帶過。
4. 用我上面填的主體速度,幫我算一次:在一般靜態模式的讀出時間內、以及在預拍模式的
   讀出時間內,我的主體各會位移或轉動多少。把算式寫出來讓我能自己驗算。
5. 根據 1–4 的結果,給我兩套具體設定:
   (a)「優先搶到瞬間」的設定,以及我要接受什麼畫質與失真代價;
   (b)「優先畫質與低失真」的設定,以及我要靠什麼補回時機(半按時機、預判提前量、
       連拍節奏、對焦模式)。
6. 最後給我一個 30 分鐘內做得完的驗證方法,用來確認 (a) 與 (b) 哪一套更適合我的題材。
 
【限制】
- 不要給「多練習就會抓到」這種建議,我要的是可設定的參數與可驗算的數字。
- 所有毫秒數、fps、張數、像素數都必須附來源(官方手冊、規格頁或具名量測),
  並標註日期。無法佐證的一律標「未查證」,不要補完。
- 明確區分「官方規格寫的」、「第三方量測的」、「你的推算」三類資訊。
- 如果我的題材其實根本不需要預拍,請直接說,並告訴我該把注意力放在哪一項
  (對焦模式、連拍節奏、快門速度,還是站位)。
- 韌體會改變行為。請告訴我哪些結論是綁定特定韌體版本的,以及我該怎麼自己確認。