Page actions
instrument / verified-clean
Data Rate / Storage Planner (Camera Codecs)
The current ledger marks this instrument verified clean within the source-bound verification corpus.
Inspectable records
Ledger state
The current ledger marks this instrument verified clean within the source-bound verification corpus.
- Area
- Audio, Music, Photography & Color
- Tranche
- tranche-7
- Evidence ID
- t7-040
- Ledger rows
- 1
No ledger note is attached.
Review findings
The arithmetic method is valid after explicit unit and lookup-key conventions are added. The current specification is incomplete because it claims resolution/fps-aware codec lookup and card-count output without listing resolution, fps, or card capacity as required inputs, and it does not define decimal GB versus GiB. The honest-label warning about manufacturer-published nominal rates and scene-dependent VBR is appropriate but should also mention audio/container overhead and recommend a safety margin.
Formula and scope findings
- storage = dataRate(MB/s) × duration(s) is correct only when the rate is truly in decimal MB/s; if the lookup table stores Mbps, the required conversion is dataRate(Mbps) ÷ 8.
- The advertised storage GB output requires an explicit convention: decimal GB = MB ÷ 1000, or binary GiB = MiB ÷ 1024. These are not interchangeable.
- The specification does not state the formula for cards needed. Under the stated storage-planning purpose it should be cardsNeeded = ceil(storageGB ÷ cardCapacityGB), with card capacity using the same decimal/binary convention.
- Resolution and frame rate are mentioned in the computation claim but are absent from the listed inputs and are required lookup keys for most codec-rate tables.
- A single nominal rate is not generally valid for VBR H.264 or H.265; scene complexity, encoder settings, audio, container overhead, and camera-specific implementation can change the actual rate.
- The codec preset lookup must identify the manufacturer, codec profile, resolution, frame rate, bit depth, chroma subsampling, and intra/inter-frame mode; names such as H.264 or ProRes alone are insufficient.
Unit assumptions
- The vectors use decimal megabytes and gigabytes: 1 MB = 1,000,000 bytes and 1 GB = 1,000 MB.
- When a table value is in megabits per second, conversion is Mbps ÷ 8 = MB/s.
- Duration is in seconds and must be nonnegative.
- Card capacity is treated as decimal GB and must be positive.
- Cards needed is rounded upward with the mathematical ceiling function; zero-duration input produces zero required storage and zero cards under the literal formula.
- Nominal codec rates exclude or ignore possible audio, container, metadata, filesystem, and formatting overhead unless the selected table explicitly includes them.
Boundary hardening
BREAK_CLAIMED · SELF_FLAGGED
A card size of exactly zero makes the cards-needed calculation undefined due to division by zero; the instrument should reject that input. The convention probe also shows materially different results if duration units are misread.
Errata and corrections
No applied erratum is attached to this unique-name record.
Inspectable example
4 review vectors are recorded. One source-bound sample is shown below.
{
"inputs": {
"codec_preset": "Apple ProRes 422 HQ",
"resolution": "3840x2160",
"fps": 30,
"duration_s": 3600,
"card_capacity_GB": 128
},
"expected_outputs": {
"data_rate_Mbps": 707,
"data_rate_MB_s": 88.375,
"storage_GB": 318.15,
"cards_needed": 3
},
"reference_data": {
"codec": "Apple ProRes 422 HQ",
"resolution": "3840x2160",
"fps": 30,
"nominal_data_rate_Mbps": 707,
"source_convention": "widely tabulated standard value; Apple ProRes manufacturer nominal-rate table"
},
"working": "1. Convert rate: 707 Mbps ÷ 8 = 88.375 MB/s. 2. Storage: 88.375 MB/s × 3,600 s = 318,150 MB. 3. Convert to decimal GB: 318,150 MB ÷ 1,000 = 318.15 GB. 4. Cards: ceil(318.15 GB ÷ 128 GB) = ceil(2.485546875) = 3 cards."
}Related workflows
No source-defined multi-instrument workflow membership is recorded.
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.json · VERIFIED_CLEANevidence-tranche7/tranche7-results.jsonBOUNDARY_HAZARD_CATALOG.json