
Features: - JWT authentication with user registration and login - Video upload to Amazon S3 with file validation (200MB limit) - Audio transcription using OpenAI Whisper API - Text translation using GPT-4 API - Voice cloning and audio synthesis using ElevenLabs API - Video processing with ffmpeg for audio replacement - Complete SQLite database with proper models and migrations - Background task processing for long-running operations - Health endpoint and comprehensive API documentation Tech stack: - FastAPI with SQLAlchemy ORM - SQLite database with Alembic migrations - Amazon S3 for file storage - OpenAI APIs for transcription and translation - ElevenLabs API for voice cloning - ffmpeg for video processing - JWT authentication with bcrypt password hashing
12 lines
441 B
Python
12 lines
441 B
Python
from sqlalchemy import Column, Integer, DateTime, ForeignKey, Text
|
|
from sqlalchemy.sql import func
|
|
from app.db.base import Base
|
|
|
|
|
|
class Transcription(Base):
|
|
__tablename__ = "transcriptions"
|
|
|
|
id = Column(Integer, primary_key=True, index=True)
|
|
video_id = Column(Integer, ForeignKey("videos.id"), nullable=False)
|
|
text = Column(Text, nullable=False)
|
|
created_at = Column(DateTime(timezone=True), server_default=func.now()) |