• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Eyevinn / mp4ff / 28998478488
83%
master: 83%

Build:
Build:
LAST BUILD BRANCH: feat-ivf
DEFAULT BRANCH: master
Ran 09 Jul 2026 06:22AM UTC
Jobs 1
Files 200
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

08 Jul 2026 07:28PM UTC coverage: 82.745% (-0.02%) from 82.761%
28998478488

Pull #525

github

tobbee
refactor(crypto): immutable InitProtectData with per-sequence FragmentEncryptor

The AV1 protection-range function captures a mutable frame-header decoder whose
reference-frame state accumulates across samples in decode order. Storing it in the
long-lived, apparently-shareable InitProtectData (as ProtFunc did) made it unsafe to
reuse across segments or share between concurrent encryptions.

Split immutable config from per-run state: InitProtectData now holds an unexported
sampleProtector factory (no ProtFunc field, ProtectionRangeFunc removed) and is safe to
share. A new FragmentEncryptor (InitProtectData.NewFragmentEncryptor) owns the mutable,
decode-order state, and EncryptFragments encrypts a whole decode sequence with one fresh
protector - the correct entry point for multi-fragment AV1 segments. EncryptFragment
remains for a single self-contained fragment.

HEVC parameter sets are now parsed once per run instead of per sample. mp4ff-encrypt uses
one FragmentEncryptor per media segment. Adds a concurrency test that shares one
InitProtectData across goroutines encrypting AV1 (race-free, identical output).
Pull Request #525: refactor(crypto): immutable InitProtectData with per-sequence FragmentEncryptor

67 of 98 new or added lines in 2 files covered. (68.37%)

3 existing lines in 2 files now uncovered.

23153 of 27981 relevant lines covered (82.75%)

0.92 hits per line

Uncovered Changes

Lines Coverage ∆ File
29
81.2
-0.31% mp4/crypto.go
2
86.9
-1.05% cmd/mp4ff-encrypt/main.go

Coverage Regressions

Lines Coverage ∆ File
2
81.2
-0.31% mp4/crypto.go
1
86.9
-1.05% cmd/mp4ff-encrypt/main.go
Jobs
ID Job ID Ran Files Coverage
1 28998478488.1 09 Jul 2026 06:22AM UTC 200
82.75
GitHub Action Run
Source Files on build 28998478488
  • Tree
  • List 200
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #525
  • PR Base - master (#28960911985)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc