OmniStream platform: HLS/DASH video streaming + social cross-promotion, Kafka microservices, FFmpeg.
48
Short description (exactly 100 chars — verified):
OmniStream platform: HLS/DASH video streaming + social cross-promotion, Kafka microservices, FFmpeg.
Categories: Integration & Delivery / Developer Tools / Monitoring & Observability
Applies to: credkellar/omnistream-api-gateway (live now) and the other 13 credkellar/omnistream-* service images as they publish.
An enterprise-grade platform unifying high-performance video streaming with multi-channel cross-promotion across YouTube, Meta (Facebook + Instagram), X, and Snapchat. Fourteen Python microservices and two clients: presigned direct-to-blob ingest, FFmpeg transcoding to HLS/DASH (plus 9:16 vertical cuts), ABR manifest delivery to an HTML5/hls.js player, Kafka-driven social publishing, Fernet-encrypted auto-refreshing OAuth2 tokens, PostgreSQL metadata, and Redis caching — with Terraform (AWS) and Kubernetes/Helm infrastructure.
Scope honesty: the platform code, containers, CI, and infrastructure are real and tested (10-test suite, all passing). The social adapters simulate their platform API calls at the publish step (marked in code) — live publishing needs real platform credentials and app approvals.
This image is the API gateway, the platform's entry point:
docker pull credkellar/omnistream-api-gateway:latest
docker run --rm -p 8080:8080 credkellar/omnistream-api-gateway:latest
Tags: latest and main (~180 MB). Interactive API docs at http://localhost:8080/docs once running.
Run the full platform (all 14 services + Kafka + Redis + PostgreSQL) from source:
git clone https://github.com/ddkellar01/omni-stream-platform.git
cd omni-stream-platform
make up
Publish all 14 service images yourself:
docker login
bash scripts/publish-docker.sh
| Service | Port | Role |
|---|---|---|
| api-gateway (this image) | 8080 | Unified proxy, routing, JWT validation |
| metadata-service | 8081 | PostgreSQL metadata + Alembic migrations |
| promotion-orchestrator | 8082 | Campaign fan-out over Kafka |
| auth-manager | 8083 | OAuth2 token vault (Fernet) + refresh daemon |
| video-ingest-service | 8084 | Presigned-URL direct-to-blob uploads |
| streaming-service | 8085 | ABR manifest router (HLS/DASH), Redis-cached |
| transcoding-worker | — | FFmpeg multi-resolution HLS rendering |
| media-transformer | — | 9:16 vertical re-framing + compression |
| analytics-aggregator | — | Cross-platform engagement metrics |
| facebook / instagram / snapchat / x / youtube adapters | — | Native publishing per platform |
pytest -q — 10 passed (structural guards: poisoned filenames, Dockerfiles, unique ports, Terraform references, app imports); flake8 critical gate clean.Content type
Image
Digest
sha256:df0b1e1df…
Size
71.7 MB
Last updated
about 9 hours ago
docker pull credkellar/omnistream-youtube-adapter:main