video-accessibility/backend/app
michael 80d3866d32 feat: add accessible video (MP4 with embedded audio descriptions)
Add new deliverable type that renders video with audio descriptions embedded.
Supports two AI-determined methods:
- Direct Overlay: ducks original audio and overlays AD TTS (for minimal dialogue)
- Pause-Insert: freeze-frame video, insert AD, re-time subtitles (for significant dialogue)

Backend:
- Add Pydantic schemas for Gemini analysis response
- Add Gemini prompt and analyze_accessible_video_placement() method
- Add video_renderer.py service using FFmpeg for both rendering methods
- Add vtt_retimer.py service for pause-insert subtitle adjustment
- Add render_accessible_video.py Celery task
- Modify TTS service to return individual per-cue segments
- Update translate_and_synthesize.py to save segments and trigger rendering
- Update download endpoint to include accessible video outputs

Frontend:
- Add accessible_video_mp4 checkbox to NewJob form
- Update TypeScript types for new deliverable

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 11:06:41 -06:00
..
__pycache__ fixed middleware silent swallowing of exceptions FINALLY 2025-10-08 18:19:59 -05:00
api/v1 feat: add accessible video (MP4 with embedded audio descriptions) 2025-12-26 11:06:41 -06:00
core feat: add TTS settings panel with model, speed, and style options 2025-12-22 15:22:14 -06:00
lib initial commit 2025-08-24 16:28:33 -05:00
middleware fixed overly aggressive security algorithm 2025-10-08 17:49:20 -05:00
migrations add approved_source and qc_feedback job statuses to MongoDB schema 2025-12-22 13:12:14 -06:00
models feat: add accessible video (MP4 with embedded audio descriptions) 2025-12-26 11:06:41 -06:00
prompts feat: add accessible video (MP4 with embedded audio descriptions) 2025-12-26 11:06:41 -06:00
schemas feat: add accessible video (MP4 with embedded audio descriptions) 2025-12-26 11:06:41 -06:00
services feat: add accessible video (MP4 with embedded audio descriptions) 2025-12-26 11:06:41 -06:00
tasks feat: add accessible video (MP4 with embedded audio descriptions) 2025-12-26 11:06:41 -06:00
telemetry initial commit 2025-08-24 16:28:33 -05:00
main.py upgrade TTS to Gemini TTS with voice selection and preview 2025-12-22 14:41:57 -06:00