Skip to main content

Phase 3: Voice Management System

Timeline: Weeks 9-12 Status: Planned


Core Goal

Build admin tools for managing voice actors, samples, and gallery content.


Admin Features

Voice Actor Management

  • Add/edit voice actor profiles
  • Upload voice samples and demos
  • Set availability status
  • Manage voice characteristics
  • Track performance metrics

Sample Library Management

  • Upload and organize samples
  • Categorize by type/language/style
  • Preview and quality control
  • Sample approval workflow
  • Version management
  • Curate featured voices
  • Set display order
  • Tag and categorize
  • Enable/disable voices
  • Bulk operations

Enhanced Client Experience

  • Advanced filtering (gender, accent, style)
  • Extended sample previews
  • Voice characteristics display
  • Availability indicators
  • Favorites/bookmarks

Voice Search & Discovery

  • Keyword search
  • Filter combinations
  • Sort options (popular, new, A-Z)
  • Sample playback history

Voice Actor Workflows

Onboarding Flow

Sample Management Flow


Voice Actor Profile Structure

Profile Fields

FieldTypeRequiredDescription
NameStringYesActor display name
BioTextNoBrief description
AvatarImageNoProfile photo
LanguagesArrayYesSupported languages
AccentsArrayYesAvailable accents
StylesArrayYesVoice styles/tones
Sample RateStringYesPrice tier
AvailabilityBooleanYesAvailable for requests

Voice Characteristics Tags

Gender:

  • Male
  • Female
  • Non-binary

Age Range:

  • Young (18-30)
  • Adult (31-50)
  • Mature (51+)

Tone:

  • Warm
  • Professional
  • Energetic
  • Calm
  • Authoritative

Accent:

  • American
  • British
  • Australian
  • Neutral

Sample Library Structure

Sample Types

  1. Demo Reels

    • Showcase range and versatility
    • 30-60 seconds
    • Multiple styles
  2. Character Samples

    • Specific voice types
    • 15-30 seconds
    • Tagged by style
  3. Script Samples

    • Common use cases
    • Professional reads
    • Various tones

Sample Metadata

{
"sampleId": "uuid",
"voiceActorId": "uuid",
"type": "demo|character|script",
"duration": 30,
"language": "en-US",
"tags": ["warm", "professional"],
"fileUrl": "https://cdn.micdots.com/samples/uuid.mp3",
"uploadedAt": "2024-11-08T10:00:00Z",
"status": "approved|pending|rejected"
}

Acceptance Criteria

F3.1 - Voice Actor Profile Management

User Story: As admin, I want to manage voice actor profiles for diverse options.

Acceptance Criteria:

  • AC3.1.1: Given I'm admin, when I access voice management, then list of actors with status (active/inactive/pending)
  • AC3.1.2: Given I add actor, when I click "Add", then form with: name, bio, languages, specialties, contact, rates
  • AC3.1.3: Given I create profile, when I enter required fields, then can save as "draft" before samples
  • AC3.1.4: Given I edit actor, when I click edit, then populated form with all current info editable
  • AC3.1.5: Given I update info, when I save, then modifications tracked with timestamp and admin user
  • AC3.1.6: Given I deactivate actor, when status changed, then not in client selection but existing requests unaffected
  • AC3.1.7: Given actor disputes info, when complaint received, then full edit history and contact visible

F3.2 - Voice Sample Library Management

User Story: As admin, I want to upload and organize voice samples.

Acceptance Criteria:

  • AC3.2.1: Given I view actor profile, when I access samples, then all uploaded samples with metadata shown
  • AC3.2.2: Given I upload sample, when I drag file, then validated (.mp3/.wav, under 10MB, 15-60 sec)
  • AC3.2.3: Given valid upload, when processing completes, then sample appears with auto-generated waveform
  • AC3.2.4: Given I organize samples, when I view list, then can add tags and categorize by style
  • AC3.2.5: Given I replace sample, when I upload new, then old archived and new becomes active
  • AC3.2.6: Given I preview, when I click play, then audio plays with controls and note-taking option
  • AC3.2.7: Given quality issues, when I review, then can mark "needs improvement" with feedback
  • AC3.2.8: Given I approve sample, when status changed, then available for client selection immediately
  • AC3.2.9: Given I remove sample, when deactivated, then hidden from clients but accessible for admin

User Story: As client, I want improved voice gallery for better selections.

Acceptance Criteria:

  • AC3.3.1: Given I'm on voice selection, when page loads, then grid with photos, names, sample count
  • AC3.3.2: Given I filter, when I use options, then can filter by: gender, age, accent, style, availability
  • AC3.3.3: Given I click actor, when expanded, then multiple samples and detailed bio shown
  • AC3.3.4: Given I listen to samples, when I play, then clear controls and easy comparison
  • AC3.3.5: Given I select voice, when chosen, then selection clearly indicated and can proceed
  • AC3.3.6: Given actor unavailable, when I select, then availability info and estimated return date shown
  • AC3.3.7: Given I view actor, when on page, then "similar voices" suggestions shown
  • AC3.3.8: Given mobile use, when I browse, then voice cards appropriately sized and controls work
  • AC3.3.9: Given assistive tech, when I navigate, then all info accessible via screen reader

F3.4 - Voice Quality Management

User Story: As admin, I want to maintain quality standards.

Acceptance Criteria:

  • AC3.4.1: Given new samples, when I review, then checklist for: clear speech, volume, minimal noise, proper format
  • AC3.4.2: Given sample fails, when I reject, then specific feedback: audio quality, delivery, technical issues
  • AC3.4.3: Given I approve, when marked approved, then auto-tagged with approval date and admin
  • AC3.4.4: Given I set standards, when I access guidelines, then can update: volume, noise tolerance, speed, clarity
  • AC3.4.5: Given consistent quality, when I review work, then can mark actor "preferred" for recommendations
  • AC3.4.6: Given quality issues, when I identify patterns, then can generate reports on common problems
  • AC3.4.7: Given client complaint, when I investigate, then can trace decision history and take action

API Endpoints

Create Voice Actor

Endpoint: POST /api/v1/admin/voice-actors

Request Body:

{
"name": "Jane Doe",
"email": "jane@example.com",
"languages": ["en-US", "en-GB"],
"accents": ["American", "British"],
"styles": ["warm", "professional"],
"availability": true
}

Response: 201 Created

{
"success": true,
"data": {
"id": "uuid",
"name": "Jane Doe",
"status": "active"
}
}

Upload Voice Sample

Endpoint: POST /api/v1/admin/voice-samples

Headers:

Authorization: Bearer ADMIN_TOKEN
Content-Type: multipart/form-data

Form Data:

  • voiceActorId (string)
  • type (demo|character|script)
  • tags (array)
  • audioFile (file)

Testing Examples

Create Voice Actor

curl -X POST http://localhost:5000/api/v1/admin/voice-actors \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ADMIN_TOKEN" \
-d '{
"name": "John Smith",
"email": "john@example.com",
"languages": ["en-US"],
"accents": ["American"],
"styles": ["professional", "energetic"],
"availability": true
}'

Upload Sample

curl -X POST http://localhost:5000/api/v1/admin/voice-samples \
-H "Authorization: Bearer ADMIN_TOKEN" \
-F "voiceActorId=uuid" \
-F "type=demo" \
-F "tags[]=warm" \
-F "tags[]=professional" \
-F "audioFile=@sample.mp3"

Success Criteria

Functionality

  • ✅ Admin can manage voice actors
  • ✅ Samples upload and preview work
  • ✅ Gallery displays correctly
  • ✅ Filtering and search functional
  • ✅ Quality control workflow operational

Performance

  • Sample upload < 10 seconds
  • Gallery load < 2 seconds
  • Search results < 1 second

Quality

  • Audio samples high quality
  • Categorization accurate
  • Search results relevant

Deliverables

  1. Admin Tools

    • Voice actor CRUD
    • Sample management
    • Gallery curation
  2. Client Gallery

    • Enhanced browsing
    • Advanced filtering
    • Sample playback
  3. Voice Actor Portal (Optional)

    • Sample upload interface
    • Profile management
    • Analytics dashboard
  4. Documentation

    • Admin guide
    • Voice actor onboarding
    • Sample requirements

Next Phase

➡️ Phase 4: Narrator Area