Skip to content

Repository files navigation

MediaBridge

MediaBridge app icon

Verified media safety-copy and cataloging for macOS DIT workflows.
Native, local-first, and designed around evidence you can review.

Build and Test Latest release MIT License macOS 14+ Swift 5.10+

English · 简体中文 · 日本語 · 한국어

MediaBridge is a native macOS application for digital imaging technicians and small production teams that need a clear, repeatable chain of custody for media. It freezes the source scope, copies to independent destinations, reads every target back, and records the evidence in local catalogs and audit trails.

The application runs locally. There is no account system, cloud sync, or telemetry.

Development preview: Public builds are ad-hoc signed and are not notarized by Apple. MediaBridge complements — and does not replace — established on-set media procedures, human review, and disaster-recovery plans.

Why MediaBridge

Media work is not complete when bytes have been written. A dependable handoff needs to answer three questions:

  1. What was selected from the source?
  2. Which independent destinations received it?
  3. What evidence proves that each destination can be read back correctly?

MediaBridge makes those questions explicit in the workflow and preserves the answers as inspectable records.

Core capabilities

Verified transfers

  • Preflight checks before any destination write.
  • One source read fanned out to 1–8 destinations.
  • Internal/external volume detection, connection details, capacity, permissions, and physical-device topology.
  • Full target read-back before a file can be marked complete.
  • Atomic commit from a verified temporary file; existing destination paths are blocked rather than overwritten.

Recovery and evidence

  • BLAKE3 checkpoint boundaries for resumable transfers.
  • XXH64 and SHA-256 verification.
  • ASC MHL 2.0, C4 chain, JSONL forward audit chain, and JSON/CSV/PDF reports.
  • Recovery revalidates source identity, trusted offsets, and the final full read-back.

Catalog and review

  • SQLite WAL + FTS5 local media catalog.
  • Creation and modification timestamps, category filters, ratings, color labels, and Quick Look thumbnails.
  • Source top-level folder filters and a file-level preview that controls the actual copy scope.
  • Non-destructive proxy, LUT, and color-recipe data models.

Extensibility and isolation

  • Stable isolated plugin-host boundary for vendor-authorized RAW SDK adapters.
  • Separate developer test mode with its own catalog, audit trail, cache, plugin directory, and sample media root.
  • Probe, thumbnail, proxy, and plugin failures cannot alter a verified copy result.

Format boundary

Every file format can be copied and verified as opaque bytes. Native decoding or playback for Sony X-OCN, ARRIRAW/HDE, RED R3D, Blackmagic RAW, and similar formats requires the appropriate vendor SDK, license, real media samples, and certification. The repository provides a plugin host but does not include or simulate unauthorized decoders. Built-in probing and proxy support depend on the codecs available through macOS AVFoundation and Quick Look.

Safety model

Stage Guarantee
Scope Source files and selected top-level folders are frozen before the job starts.
Preflight Failed checks produce zero destination writes.
Transfer Each target receives a temporary file on the same volume as its final path.
Verification The closed target is read back in full and compared with the source digest.
Commit Only a verified temporary file can be atomically committed. Conflicts are blocked.
Evidence MHL, audit events, checkpoints, reports, and catalog records remain locally inspectable.

MediaBridge never creates, deletes, formats, or renames content inside the source root.

Download

Download the latest Apple Silicon build from Releases:

  1. Download MediaBridge-<version>-macos-arm64.zip and SHA256SUMS.txt.
  2. Verify the ZIP checksum before opening it.
  3. Extract MediaBridge.app to /Applications.
  4. On first launch, use Open from Finder's context menu if macOS shows a security prompt.

The published preview is for Apple Silicon and uses ad-hoc signing. Developer ID signing and notarization are not yet part of the public release pipeline.

Build from source

Requirements

  • macOS 14 or later
  • Xcode 16 or a compatible Swift 5.10+ toolchain
SWIFT_MODULECACHE_PATH="$PWD/.build/module-cache" \
CLANG_MODULE_CACHE_PATH="$PWD/.build/clang-cache" \
swift test --disable-sandbox

bash scripts/build-app.sh <version>

The build script writes versioned output to dist/MediaBridge-<version>-macos-<arch>/, refuses to overwrite an existing release directory, and compiles in an anonymous temporary build root so local machine paths do not enter release artifacts.

GitHub Actions runs the build and test suite on macOS 14 for every pull request and every update to main.

Project layout

Sources/MediaBridgeCore/   Copy engine, catalogs, hashing, audit, reports, plugins
Sources/MediaBridgeApp/    SwiftUI application and design system
Tests/                     Deterministic unit and integration tests
Packaging/                 App metadata and icon assets
Docs/                      Architecture and plugin boundary documentation
scripts/                   Reproducible local build helpers

Contributing

Start with CONTRIBUTING.md and DEVELOPMENT.md. In particular:

  • Keep the source read-only and preserve the verification invariants.
  • Add tests for copy, checkpoint, audit, catalog, and migration changes.
  • Do not commit real production media, customer information, device serials, credentials, signing material, or absolute local paths.
  • Report security issues privately using SECURITY.md.

Documentation

License

MediaBridge is released under the MIT License. Vendor SDKs, codecs, sample media, and third-party plugins remain subject to their own licenses and distribution terms.

About

Native macOS DIT media safety-copy and cataloging with read-back verification, resumable transfers, ASC MHL, and audit trails.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages