Skip to main content

Crate voirs_feedback

Crate voirs_feedback 

Source
Expand description

§VoiRS Feedback

Real-time feedback and interactive training system for VoiRS speech synthesis. This crate provides comprehensive feedback mechanisms, adaptive learning, and user progress tracking for continuous improvement.

§Features

  • Real-time Feedback: Immediate response during speech synthesis
  • Adaptive Learning: ML-driven personalized feedback
  • Progress Tracking: Detailed analytics and improvement metrics
  • Interactive Training: Guided exercises and challenges
  • Gamification: Achievement systems and leaderboards
  • Multi-modal Output: Visual, audio, and haptic feedback

§Quick Start

use voirs_feedback::prelude::*;
use voirs_feedback::FeedbackSystem;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Create feedback system
    let feedback_system = FeedbackSystem::new().await?;
     
    // Create user session
    let mut session = feedback_system.create_session("user123").await?;
     
    // Generate audio and get feedback
    let generated_audio = AudioBuffer::new(vec![0.1; 16000], 16000, 1);
    let expected_text = "Hello world";
     
    let feedback = session.process_synthesis(&generated_audio, expected_text).await?;
     
    // Print feedback items
    for item in &feedback.feedback_items {
        println!("Feedback: {} (Score: {:.1}%)", item.message, item.score * 100.0);
        if let Some(suggestion) = &item.suggestion {
            println!("  Suggestion: {}", suggestion);
        }
    }
     
    // Save progress
    session.save_progress().await?;
     
    Ok(())
}

§Advanced Usage

§Custom Configuration

use voirs_feedback::prelude::*;
use voirs_feedback::realtime::{RealtimeFeedbackSystem, RealtimeConfig};

let config = RealtimeConfig {
    max_latency_ms: 50,
    stream_timeout: std::time::Duration::from_secs(180),
    audio_buffer_size: 1024,
    max_concurrent_streams: 25,
    enable_metrics: true,
    enable_confidence_filtering: true,
    quality_threshold: 0.7,
    pronunciation_threshold: 0.8,
};

let feedback_system = RealtimeFeedbackSystem::with_config(config).await?;

§Training Exercises

use voirs_feedback::prelude::*;
use voirs_feedback::{FeedbackSystem, FocusArea, ExerciseType, SuccessCriteria};

let feedback_system = FeedbackSystem::new().await?;
let mut session = feedback_system.create_session("user123").await?;

// Start a training exercise
let exercise = TrainingExercise {
    exercise_id: "basic_pronunciation".to_string(),
    name: "Basic Pronunciation".to_string(),
    description: "Practice basic phoneme pronunciation".to_string(),
    difficulty: 0.3,
    focus_areas: vec![FocusArea::Pronunciation],
    exercise_type: ExerciseType::Pronunciation,
    target_text: "Hello world".to_string(),
    reference_audio: None,
    success_criteria: SuccessCriteria {
        min_quality_score: 0.7,
        min_pronunciation_score: 0.8,
        consistency_required: 1,
        max_attempts: 3,
        time_limit: Some(std::time::Duration::from_secs(300)),
    },
    estimated_duration: std::time::Duration::from_secs(600),
};

session.start_exercise(&exercise).await?;
let result = session.complete_exercise().await?;
println!("Exercise completed: success = {}", result.success);

Re-exports§

pub use adaptive::core::AdaptiveFeedbackEngine;
pub use progress::core::ProgressAnalyzer;
pub use realtime::stream::FeedbackStream;
pub use realtime::system::RealtimeFeedbackSystem;
pub use training::core::InteractiveTrainer;
pub use traits::*;

Modules§

accessibility
Accessibility Support Module
adaptive
Adaptive feedback and learning system modules
ai_coaching
AI-powered coaching system for personalized pronunciation guidance
analytics
Analytics module
audit_trail
Audit Trail System for Data Access and Compliance
batch_utils
Batch processing utilities for efficient operations.
bi_dashboard
Business Intelligence Dashboard for VoiRS Feedback System
cdn_support
CDN Support for Global Content Delivery
cloud_deployment
Cloud deployment and orchestration for VoiRS feedback microservices
computer_vision
Computer Vision Analysis Module
cultural_adaptation
Cultural Adaptation System
data_anonymization
Data Anonymization Module
data_management
Comprehensive Data Management System for VoiRS Feedback
data_pipeline
Efficient data pipeline for real-time and batch data processing
data_quality
Data Quality Monitoring Framework
data_retention
Data Retention Policies System
deep_learning_feedback
Deep Learning Feedback Generation System
emotional_intelligence
Description
enhanced_performance
Enhanced Performance Monitoring System
enterprise
Description
error_context
Enhanced Error Context System
error_tracking
Error Tracking and Reporting System
float_utils
Float comparison utilities with epsilon-based comparisons.
gamification
Gamification system for user engagement and motivation
gdpr
GDPR Compliance Module
google_classroom
Google Classroom Integration
group_learning
Group Learning Orchestration System
health
System Health Monitoring
i18n_formatting
Advanced Formatting Utilities for I18n
i18n_support
Internationalization (i18n) Support for VoiRS Feedback System
integration
Integration and Platform Support
load_balancer
Load balancing system for distributing feedback requests across multiple workers
memory_monitor
Memory monitoring and leak detection for long-running sessions
metrics_dashboard
Enhanced Metrics Dashboard for Critical Success Factors
microservices
Microservices architecture framework for VoiRS feedback system
natural_language_generation
Natural Language Generation System
oauth2_auth
OAuth 2.0 Authentication Implementation for VoiRS Feedback System
peer_learning
Peer-to-peer learning ecosystem for collaborative pronunciation practice
performance_helpers
Performance monitoring helper functions
performance_monitoring
Comprehensive Performance Monitoring System
persistence
Data persistence system for VoiRS feedback
platform
Multi-platform compatibility support for VoiRS feedback system
prelude
Convenient prelude for common imports Prelude module for convenient imports
progress
Progress tracking and analytics modules
quality_monitor
Automated Quality Monitoring System for VoiRS Feedback
rate_limiting
Rate Limiting and Throttling System for VoiRS Feedback API Protection
realtime
Real-time feedback system implementation
recovery
Automatic recovery mechanisms for long-running VoiRS feedback sessions
secure_sharing
Secure Data Sharing Protocols
statistical_helpers
Statistical analysis helpers for feedback metrics.
third_party_bots
Third-Party Bot Integrations (Slack, Discord, Teams)
timezone_support
Timezone Support Module
training
Interactive training system for speech synthesis
traits
Core traits for the VoiRS feedback system
tts_integration
Text-to-Speech (TTS) Integration for Accessibility
usage_analytics
Comprehensive Usage Analytics for VoiRS Feedback System
user_management
Comprehensive User Management System
utils
Utility functions for VoiRS Feedback system
ux_analytics
User Experience Analytics System - Modular Implementation
validation_helpers
Data validation helpers for ensuring data integrity.
visualization
Visualization and UI components for feedback display
voice_control
Voice Control Support Module
webhooks
Webhook System for Third-Party Integrations

Macros§

error_context
Macro for creating error contexts with source location
t
Convenience macro for translation

Structs§

AudioBuffer
Audio buffer containing synthesized speech
ComparisonResult
Comparison result between two systems/samples
FeedbackSystem
Main feedback system that coordinates all feedback components
FeedbackSystemConfig
Feedback system configuration
FeedbackSystemStats
Feedback system statistics
MemoryUsageStats
Memory usage statistics
PerformanceBenchmark
Performance benchmark results for system analysis
Phoneme
Phoneme representation with IPA symbol and metadata
PhonemeAlignment
Phoneme alignment result
ProfilerConfig
Profiler configuration
PronunciationScore
Pronunciation assessment result
QualityScore
Overall quality score with component breakdown
SystemHealthReport
System health report for monitoring and diagnostics
SystemProfiler
Enhanced system performance profiler
Transcript
Represents a transcribed text with metadata

Enums§

FeedbackAudience
Feedback audience types
FeedbackError
Feedback-specific error types
HealthStatus
System health status categories
LanguageCode
Language code identifier
VoirsError
Main error type for VoiRS operations with enhanced categorization

Constants§

VERSION
Version information

Functions§

calculate_feedback_priority
Calculate feedback priority based on error severity
default_adaptive_config
Create a default adaptive configuration
default_feedback_config
Create a default feedback configuration
default_progress_config
Create a default progress configuration
format_feedback_message
Format feedback message for different audiences
validate_feedback_config
Validate feedback configuration