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
VoiRSFeedback System - cdn_
support - CDN Support for Global Content Delivery
- cloud_
deployment - Cloud deployment and orchestration for
VoiRSfeedback microservices - computer_
vision - Computer Vision Analysis Module
- cultural_
adaptation - Cultural Adaptation System
- data_
anonymization - Data Anonymization Module
- data_
management - Comprehensive Data Management System for
VoiRSFeedback - 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
VoiRSFeedback 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
VoiRSfeedback system - natural_
language_ generation - Natural Language Generation System
- oauth2_
auth - OAuth 2.0 Authentication Implementation for
VoiRSFeedback 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
VoiRSfeedback - platform
- Multi-platform compatibility support for
VoiRSfeedback 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
VoiRSFeedback - rate_
limiting - Rate Limiting and Throttling System for
VoiRSFeedback API Protection - realtime
- Real-time feedback system implementation
- recovery
- Automatic recovery mechanisms for long-running
VoiRSfeedback 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
VoiRSfeedback system - tts_
integration - Text-to-Speech (TTS) Integration for Accessibility
- usage_
analytics - Comprehensive Usage Analytics for
VoiRSFeedback System - user_
management - Comprehensive User Management System
- utils
- Utility functions for
VoiRSFeedback 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§
- Audio
Buffer - Audio buffer containing synthesized speech
- Comparison
Result - Comparison result between two systems/samples
- Feedback
System - Main feedback system that coordinates all feedback components
- Feedback
System Config - Feedback system configuration
- Feedback
System Stats - Feedback system statistics
- Memory
Usage Stats - Memory usage statistics
- Performance
Benchmark - Performance benchmark results for system analysis
- Phoneme
- Phoneme representation with IPA symbol and metadata
- Phoneme
Alignment - Phoneme alignment result
- Profiler
Config - Profiler configuration
- Pronunciation
Score - Pronunciation assessment result
- Quality
Score - Overall quality score with component breakdown
- System
Health Report - System health report for monitoring and diagnostics
- System
Profiler - Enhanced system performance profiler
- Transcript
- Represents a transcribed text with metadata
Enums§
- Feedback
Audience - Feedback audience types
- Feedback
Error - Feedback-specific error types
- Health
Status - System health status categories
- Language
Code - Language code identifier
- Voirs
Error - 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