
- Auto language detection using OpenAI Whisper during video upload
- Editable transcript interface for reviewing/correcting transcriptions
- Updated translation pipeline to use edited transcripts when available
- Migrated from JWT to Google OAuth-only authentication for better security
- Added complete Docker containerization with docker-compose.yml
- Updated database schema with language detection and transcript editing fields
- Enhanced API documentation and workflow in README
- Added comprehensive environment variable configuration
🤖 Generated with BackendIM
Co-Authored-By: Claude <noreply@anthropic.com>
32 lines
1.0 KiB
Python
32 lines
1.0 KiB
Python
"""Add language detection and editable transcript features
|
|
|
|
Revision ID: 005_add_language_detection_and_editable_transcript
|
|
Revises: 004_add_google_oauth_fields
|
|
Create Date: 2024-01-01 12:00:00.000000
|
|
|
|
"""
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = '005_add_language_detection_and_editable_transcript'
|
|
down_revision = '004_add_google_oauth_fields'
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade():
|
|
# Add source_language column to videos table
|
|
op.add_column('videos', sa.Column('source_language', sa.String(), nullable=True))
|
|
|
|
# Add edited_text and is_edited columns to transcriptions table
|
|
op.add_column('transcriptions', sa.Column('edited_text', sa.Text(), nullable=True))
|
|
op.add_column('transcriptions', sa.Column('is_edited', sa.Boolean(), nullable=True, default=False))
|
|
|
|
|
|
def downgrade():
|
|
# Remove columns in reverse order
|
|
op.drop_column('transcriptions', 'is_edited')
|
|
op.drop_column('transcriptions', 'edited_text')
|
|
op.drop_column('videos', 'source_language') |