피드로 돌아가기
Dev.toAI/ML
원문 읽기
VFR-CFR 불일치 해결 및 Webhook 기반 비동기 렌더링 파이프라인 구축
Replacing Myself with an AI Talking Avatar in 48 Hours
AI 요약
Context
현지화된 영상 50개를 촉박한 기한 내에 생성해야 하는 상황에서 A100 GPU 기반의 로컬 Wav2Lip 파이프라인을 설계함. 하지만 VFR(Variable Framerate) 소스 영상과 CFR(Constant Framerate) 모델 간의 불일치로 인한 Audio Drift 현상이 발생하여 렌더링 품질 및 처리 속도가 저하됨.
Technical Solution
- FFmpeg의
mpdecimate및-vsync cfr옵션을 통한 소스 영상의 Constant Framerate(30fps) 강제 변환으로 Audio Drift 제거 - 로컬 인퍼런스의 시간 복잡도 및 리소스 한계를 극복하기 위해 외부 Managed API로 렌더링 연산 오프로딩
- HTTP Connection Timeout 방지를 위해 FastAPI와 Celery를 결합한 비동기 Webhook 아키텍처 설계
- API 서버의 요청을 즉시 수신 후 200 OK 응답을 반환하는 ACK 패턴을 통해 연결 유실 방지
- Celery Worker를 통한 백그라운드 다운로드 및 재시도 로직(Retry Logic) 구현으로 네트워크 불안정성 대응
실천 포인트
- AI 모델 적용 전 입력 데이터의 Framerate 및 Resolution 정규화 여부 확인 - 외부 API 연동 시 타임아웃 방지를 위한 비동기 콜백(Webhook) + 메시지 큐(Message Queue) 패턴 적용 - 외부 시스템의 Retry 정책에 따른 Idempotency(멱등성) 보장 설계 검토