OWLOWL/← All findings

Playing the same video, display attached: a fixed-function streaming box draws 4–7× less than a general-purpose board — even against the board's own hardware decoder

🟢 Repeatable · measured 2026-07-30 · v1
BBB 1080p60 H.264, local file, screen on, marker-verified: Google TV +0.30 W · Pi 400 hw +1.32 W (4.4×) · Pi 400 sw +1.96 W (6.5×) · Pi 5 sw +2.03 W (6.8×). All 🟢.
SCOPE: Client device layer, display attached (device and monitor metered separately). Local delivery — network/CDN share excluded by design (measured separately at ~+0.3 W on the GTV). One clip, one rung, one board pair + one STB.
OWL Finding: Playing the same video, display attached: a fixed-function streaming box draws 4–7× less than a general-purpose board — even against the board's own hardware decoder measured 2026-07-30 https://wattlab.greeningofstreaming.org/findings/streaming-box-plays-4-7x-cheaper-than-general-purpose Greening of Streaming — wattlab.greeningofstreaming.org
Source measurement
Loading measurement decode/357b087d…
Loading measurement decode/606d5ad3…
Loading measurement decode/d99775a0…
Loading measurement decode/ea55f33b…

Caveats

The result, in one sentence

Playing the same 1080p60 H.264 file from local storage with the screen attached, a Google TV Streamer draws +0.30 W where a Raspberry Pi 400 draws +1.32 W with its hardware decoder and +1.96 W in software, and a Raspberry Pi 5 — which shipped without the H.264 block — draws +2.03 W: purpose-built streaming silicon plays video for 4–7× less energy than a general-purpose board, and the gap survives even when the board's own hardware decoder is engaged.

Why this matters

Decode energy is paid per viewer, per hour — it is the multiplier on every fleet-scale number REM observes. Two consequences follow from this panel:

1. Device class dominates codec choice. The whole hw-vs-sw-vs-silicon spread here (~1.7 W) dwarfs the ≤0.08 W codec spread measured on fixed-function silicon in July. What a viewer watches on matters more than what codec they receive. 2. "It has hardware decode" is not the end of the story. The Pi 400's engaged hardware block still lands 4.4× above the STB — general-purpose platforms pay for compositors, OS overhead and memory paths that fixed-function pipelines avoid. And a device generation that drops a block (Pi 5) hands the whole cost to software.

How it was measured

OWL decode rig (/decode, protocol v3): per-device Tapo P110 mW meters at 1 s cadence, reference-floor idle guard before every baseline, screen attached and metered separately (Lab-E), delivery local (Pi: tmpfs; GTV: adb-pushed file — the ~+0.3 W HTTP delivery share measured separately and excluded). Screen rows carry the in-clip 5 s black·white·black marker head; automated segmentation verified real content on screen for every row (marker swing ~5 W on the shared LCD). All four rows 🟢.

What this finding does not measure

Methodology → (docs/wattlab_traffic_light_confidence.md)
decodeplaybackclient-devicecross-siliconfixed-functionowl-rem-lemprotocol-v3draft