Pure formatting pass — no behavior changes. Most edits are one of: * yapf splitting / re-flowing kwarg-heavy callsites (argparse setup, ``MetricResult(...)`` construction). * ruff auto-fixes around imports (collapsing ``Iterable`` to ``collections.abc``, removing the ``typing.Tuple`` shim where ``tuple[...]`` works, dropping unused imports). * ``zip(..., strict=False)`` added to every two-iterable zip call. * ``getattr(np, "trapz")`` → ``np.trapz`` where the fallback can read the attribute directly (the ``trapezoid`` lookup still uses ``getattr`` because the name itself is the moving target). Verified the test suite still passes after the pass.
FastVideo Documentation
This directory contains the FastVideo documentation built with MkDocs.
Build the docs locally
# Install dependencies
pip install -r requirements-mkdocs.txt
# Serve docs with live reload (recommended for development)
mkdocs serve
# Or build static site
mkdocs build
View the docs
Development server (with live reload)
mkdocs serve
Then open your browser to: http://127.0.0.1:8000
Static build
mkdocs build
python -m http.server -d site/
Then open your browser to: http://localhost:8000
Automatic Deployment
Documentation is automatically built and deployed to GitHub Pages when changes are pushed to the main branch via the .github/workflows/infra-docs.yml workflow.