Serveur Rust : Reels (client FFmpeg, file de rendus, Remotion)

Portage de services/ffmpeg.ts, services/reels/*, ttsSync.ts et
routes/reels.ts : même file persistante reel_jobs (FOR UPDATE SKIP
LOCKED, tentatives, battement de cœur, synchronisation des colonnes
generation_* des posts), mêmes validations (messages zod reproduits,
paramètres stockés en JSON camelCase compatibles avec les jobs de
l'ancien serveur), mêmes réponses JSON.

Le rendu Remotion passe par un nouveau service Node (remotion-service/) :
POST /renders, suivi de la progression, téléchargement du MP4 en flux,
mêmes réglages d'encodage. Sans REMOTION_RENDERER_URL, repli sur le
rendu FFmpeg.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013qMexTfVRaegbPAgsagCAJ
This commit is contained in:
Claude committed 2026-10-12 17:36:20 +00:00
1 parent f9828d4887
commit d2293f846e
15 files changed
+6628 -17

No files matched your search

+24
View File
@@ -0,0 +1,24 @@
{
"name": "socialflow-remotion-service",
"version": "1.0.0",
"private": true,
"description": "Service de rendu Remotion des Reels SocialFlow (sous-titres animés, logo, effet de fin)",
"type": "module",
"license": "MIT",
"main": "server.mjs",
"scripts": {
"start": "node server.mjs",
"prepare-render": "node server.mjs --prepare"
},
"engines": {
"node": ">=20"
},
"dependencies": {
"@fontsource/montserrat": "5.3.0",
"@remotion/bundler": "4.0.438",
"@remotion/renderer": "4.0.438",
"react": "18.3.1",
"react-dom": "18.3.1",
"remotion": "4.0.438"
}
}