GigHive bee gighive

Supported Media Formats

This document describes the media formats GigHive supports for ingestion, and how the Ansible group_vars configuration is intended to drive the PHP upload validation and media-type inference.

Summary

GigHive ingestion support is defined in two ways:

Policy (how we decide what is “supported”)

Supported Video Formats

Video containers / extensions

Common MIME types (explicit allowlist)

Supported Audio Formats

Audio containers / extensions

Common MIME types (explicit allowlist)

How group_vars is used (Ansible -> Docker env -> PHP)

When centralized configuration is enabled, the ingestion allowlists are intended to be defined in the dev inventory here:

Suggested variables (names may vary slightly, but the intent is the same):

Those values are then rendered by Ansible into the Apache container’s .env file:

Docker Compose loads that .env into the Apache/PHP-FPM container environment:

Inside the container:

PHP then uses the allowlists for:

Caveats

AV1

AV1 is a codec, not a file extension or container format. You typically encounter AV1 in containers like .mp4, .mkv, or .webm. Since those containers are supported, AV1 content should work without adding a special .av1 extension.

RED / RED One (.r3d)

RED .r3d is a proprietary RAW camera format. Even if it is allowlisted by extension, ingestion may still fail downstream (MIME sniffing may report application/octet-stream, and tooling like ffprobe/ffmpeg may not reliably parse it in the current build). For now, .r3d is intentionally not included in the supported lists.