🍺 BREW Explorer

← all formulae

h26forge

brew install h26forge v2024-07-06 MIT

Tool for making syntactically valid but semantically spec-noncompliant videos

30-day installs
1
90-day · #25530
94
365-day · #9348
329
★ GitHub stars · updated 1y ago

Build dependencies

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [
    "rust"
  ],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Tool for making syntactically valid but semantically spec-noncompliant videos",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:38:31+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "h26forge",
  "github_default_branch": "main",
  "github_last_commit_at": "2024-11-26T22:02:14Z",
  "github_readme_excerpt": "# H26Forge\n\nH26Forge is domain-specific infrastructure for analyzing, generating, and manipulating syntactically correct but semantically spec-non-compliant H.264 video files.\n\nH26Forge has three key features:\n1. Given an Annex B H.264 file, randomly mutate the syntax elements.\n2. Given an Annex B H.264 file and a Python script, programmatically modify the syntax elements.\n3. Generate Annex B H.264 with random syntax elements, which can be written to files or streamed over RTP\n\nThis tool and its findings are described in the [H26Forge paper](https://wrv.github.io/h26forge.pdf).\n\n## Motivation\n\nSee [MOTIVATION.md](docs/MOTIVATION.md) to see how a H26Forge simplifies a previously manual PoC generation process.\n\n## Release\n\nYou can downloaded the latest build on the [releases](https://github.com/h26forge/h26forge/releases) page.\n\n## Building\n\nAn up-to-date version of Rust is required to build H26Forge. Be sure to call `rustup update`.\n\nPython 3 is required for editing videos.\n\n**Linux/Mac**\n```\n./make.sh\n```\n\n**Windows**\n```\n./make.bat\n```\n\nThese scripts just call `cargo build --release` and copy the binary to the top level directory.\n\n## Quickstart\n\nTo generate a video with the default configuration, run:\n```\n./h26forge generate -o out.264\n```\n\nTo use a custom randomness range, modify (or copy and create a new file) the syntax element range in [config/default.json](config/default.json) and run:\n```\n./h26forge generate -o out.264 -c config/default.json\n```\n\nA [simple script](scripts/gen_100_videos.sh) is included to generate a batch of 100 videos to a temporary folder. You can run it via:\n```\n./scripts/gen_100_videos.sh\n```\nThe videos will be output to `tmp/`.\n\n\n[Another script](scripts/gen_100_chrome_videos.sh) is included to generate 100 videos using [config/chrome.json](config/chrome.json).\n```\n./scripts/gen_100_chrome_videos.sh\n```\nYou can open the videos in a browser by opening `tmp/\u003coutput\u003e/play_videos.html`.\n\n\nSee [GETTINGSTARTED.md](docs/GETTINGSTARTED.md) for ",
  "github_repo": "h26forge/h26forge",
  "github_stars": 329,
  "github_topics": [],
  "homepage": "https://github.com/h26forge/h26forge",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": null,
  "installs_365d": 94,
  "installs_90d": 1,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "h26forge",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": null,
  "rank_365d": 9348,
  "rank_90d": 25530,
  "raw_hash": "48653bbe63999237",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/h/h26forge.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [
    "llvm"
  ],
  "version_head": null,
  "version_stable": "2024-07-06",
  "versioned_formulae": [],
  "why_use_this": null
}