# help_content.py # pylint: disable=no-member class AllTalkHelpContent: """CSS and help content for help_content.py""" custom_css = """ /* Add this to your existing CSS */ .gradio-container .prose { max-width: none !important; padding: 0.5rem !important; /* Reduced padding */ margin: 0 !important; } .custom-markdown div { border: none !important; /* Remove the inner border */ margin-top: 0 !important; /* Remove top margin */ margin-bottom: 0 !important; /* Remove bottom margin */ padding-top: 0 !important; /* Remove top padding */ padding-bottom: 0 !important; /* Remove bottom padding */ } /* Update the existing custom-markdown class */ .custom-markdown { font-size: 15px !important; line-height: 1.6 !important; color: var(--body-text-color) !important; background-color: var(--background-fill-primary) !important; border: 1px solid var(--border-color-primary) !important; border-radius: 8px !important; padding: 0.5rem !important; margin: 0 !important; /* Changed from 1rem 0 to 0 */ max-width: 100% !important; box-sizing: border-box !important; /* Default text color for all content (grey) */ color: rgba(156, 163, 175, 1) !important; /* Adjust this grey value to match your interface */ } /* Make headings white */ .custom-markdown h1, .custom-markdown h2, .custom-markdown h3, .custom-markdown h4, .custom-markdown h5, .custom-markdown h6 { color: var(--heading-text-color, var(--body-text-color)) !important; font-weight: 600 !important; } /* Keep all other elements in the grey color */ .custom-markdown p, .custom-markdown li, .custom-markdown ul, .custom-markdown ol { color: rgba(156, 163, 175, 1) !important; /* Same grey as the base text */ } /* Additional targeting for any wrapping elements */ .gradio-container .prose > * { margin: 0 !important; padding: 0 !important; } /* Update the list item spacing in your existing CSS */ .custom-markdown li { font-size: 0.95rem !important; margin-bottom: 0.2rem !important; /* Reduced from 0.5rem to 0.3rem */ } /* Add specific styling for definition-style lists (like your Default, Recommendation, Tip items) */ .custom-markdown li p { margin: 0 !important; /* Remove paragraph margins within list items */ } /* If you need even tighter spacing for specific types of lists */ .custom-markdown li + li { margin-top: 0.2rem !important; /* Space between consecutive list items */ } /* Ensure nested lists maintain proper spacing */ .custom-markdown li > ul, .custom-markdown li > ol { margin: 0.2rem 0 0.2rem 1rem !important; /* Reduced from 0.5rem */ } /* Consistent heading styles */ .custom-markdown h2 { font-size: 1.2rem !important; /* Fixed size relative to root */ font-weight: 600 !important; margin: 1.5rem 0 1rem !important; color: var(--heading-text-color, var(--body-text-color)) !important; border-bottom: 1px solid var(--border-color-primary) !important; padding-bottom: 0.5rem !important; } /* First paragraph styling */ .custom-markdown p:first-of-type { font-size: 0.95rem !important; /* Match base size */ font-weight: 400 !important; margin-bottom: 1rem !important; } /* Regular paragraphs */ .custom-markdown p { font-size: 0.95rem !important; margin: 0.8rem 0 !important; } /* List styling */ .custom-markdown ul, .custom-markdown ol { margin: 0.8rem 0 !important; padding-left: 1.5rem !important; } /* Code styling */ .custom-markdown code { font-family: ui-monospace, monospace !important; background-color: var(--background-fill-secondary) !important; padding: 0.2rem 0.4rem !important; border-radius: 4px !important; font-size: 0.8rem !important; /* Slightly smaller than regular text */ color: var(--body-text-color) !important; } /* Add styles for bold and emphasis */ .custom-markdown strong { font-weight: 600 !important; color: var(--body-text-color) !important; } .custom-markdown em { font-style: italic !important; } /* Ensure both columns take equal width */ .gradio-row > div { flex: 1 1 50% !important; min-width: 0 !important; /* Prevents flex items from overflowing */ } """ ENGINE_INFORMATION = """ ## 🔊 TTS Engine Capabilities Help This guide explains the various capabilities that **may** be available in different TTS engines and models. Each capability affects how the TTS engine processes and generates speech output. """ ENGINE_INFORMATION1 = """ ## 🚀 Performance Features - **DeepSpeed Capable**: Enables GPU acceleration using the DeepSpeed optimization library. - **Requires**: NVIDIA GPU with CUDA support - **Benefit**: Significantly faster text-to-speech generation - **Note**: Model must specifically support DeepSpeed inference - **Low VRAM Capable**: Optimized for systems with limited GPU memory. - **Benefit**: Efficient memory management between CPU and GPU - **Use Case**: Ideal when running alongside other GPU-intensive applications like LLMs - **Note**: May trade speed for memory efficiency - **Streaming Capable**: Enables real-time speech generation. - **Benefit**: Immediate playback without generating entire audio first - **Use Case**: Interactive applications and real-time responses - **Note**: Not all output formats support streaming ## 🎵 Voice Control Features - **Pitch Capable**: Allows adjustment of voice pitch. - **Benefit**: Creates more expressive and varied speech output - **Use Case**: Customizing voice characteristics - **Note**: Adjustment range varies by model - **Generation Speed Capable**: Controls speech rate. - **Benefit**: Adjustable playback speed during generation - **Use Case**: Creating faster or slower speech output - **Note**: May affect audio quality at extreme settings - **Temperature Capable**: Controls output randomness. - **Benefit**: Adjustable speech variation and creativity - **Use Case**: Balancing consistency vs. naturality - **Note**: Higher values increase variation but may reduce quality """ ENGINE_INFORMATION2 = """ ## 🎯 Quality Enhancement Features - **Repetition Penalty Capable**: Prevents unnatural speech patterns. - **Benefit**: Reduces repeated sounds and phrases - **Use Case**: Improving natural flow of longer texts - **Note**: Strength of penalty may be adjustable ## 🌐 Multi-Feature Support - **Multi-Languages Capable Models**: Each model Supports multiple languages. - **Benefit**: Generate speech in different languages - **Note**: Quality may vary between languages - **Tip**: Check model-specific language support - **Multi-Voice Capable**: Supports multiple speaking voices. - **Benefit**: Different voices or speaking styles - **Types**: Pre-trained voices or voice cloning - **Note**: Voice quality may vary by model - **Multi-Model Capable Engine**: Supports multiple TTS models. - **Benefit**: Flexibility in model selection - **Use Case**: Switching between models for different needs - **Note**: Each model may have different capabilities ## 📁 Technical Features - **Default Audio Output Format**: Specifies output file format. - **Common Formats**: WAV, MP3, FLAC, Opus, AAC, PCM - **Note**: Transcoding to different formats adds processing time - **Warning**: Not all formats support streaming - **Platform Support**: Operating system compatibility. - **Platforms**: Windows, Linux, macOS - **Note**: Additional setup may be required - **Warning**: Support level may vary by platform """ DEFAULT_SETTINGS = """ ## 🎯 TTS Engine Settings Help This guide explains the settings and configuration options available for individual Text-to-Speech engines within AllTalk. """ DEFAULT_SETTINGS1 = """ ## 🎚️ Engine Capabilities & Controls - **Low VRAM Mode** - Optimizes memory usage for systems with limited GPU memory - Efficiently manages resources by moving data between CPU and GPU - Recommended for systems with less than 4GB VRAM or when running alongside other GPU-intensive applications - **DeepSpeed Capability** - Accelerates TTS generation using optimized inference - Only available for engines and models that support DeepSpeed - Requires NVIDIA GPU with CUDA support - **Temperature Control** - Adjusts the variability in speech generation - **Range**: 0.0 to 1.0 - **Lower values** (0.1-0.5): More consistent, stable output - **Higher values** (0.6-1.0): More variable, potentially more natural-sounding output - **Repetition Penalty** - Helps prevent repetitive speech patterns - **Range**: 1.0 to 15.0 - Higher values more strongly discourage repetition - Typically most effective between 1.0-3.0 - **Pitch Adjustment** - Modifies the voice pitch when supported - **Range**: -20 to +20 - Use subtle adjustments for most natural results - **Generation Speed** - Controls the pace of generated speech - **Range**: 0.5 to 2.0 - 1.0 represents normal speed """ DEFAULT_SETTINGS2 = """ ## 🗣️ Voice Configuration ### OpenAI Voice Mappings - Only relevant when using the OpenAI-compatible API endpoint - Maps OpenAI's six standard voices to equivalent voices in the current engine: - `alloy` - `echo` - `fable` - `nova` - `onyx` - `shimmer` - Essential for maintaining compatibility with OpenAI API calls - Each mapping can be customized to any available voice in the current engine Information on the OpenAI Endpoint is available in the [Github Wiki](https://github.com/erew123/alltalk_tts/wiki) ### Default Voices - **Default/Character Voice**: Used when no specific voice is specified in API calls - **Narrator Voice**: Separate default for narrator-specific text - These defaults are engine-specific and won't affect other TTS engines - Can be overridden by explicitly specifying voices in API calls ## ⚙️ Important Notes - Settings availability is determined by engine capabilities - Grayed-out options indicate features not supported by the current engine - Changes only affect the currently selected TTS engine - Settings here act as defaults but can be overridden via API parameters - All changes require clicking "Update Settings" to take effect - Some settings require an engine reload to take effect """ HELP_PAGE = """ ## 🎯 VITS TTS Engine Help VITS (Conditional Variational Autoencoder with Adversarial Learning) is an end-to-end text-to-speech model that combines advanced techniques for high-quality voice synthesis. """ HELP_PAGE1 = """ ## 🎚️ Engine Capabilities & Controls - **Low VRAM Mode** - Enabled for optimized memory usage - Efficiently manages resources between CPU and GPU - Recommended when running alongside other GPU applications - **Multi-Model Support** - Supports multiple model types: - Single-speaker models - Multi-speaker models e.g. `tts_models--en--vctk--vits` - Multi-language models - Models can be switched without restarting ## 🗣️ Voice System ### Model Types - **Single-Speaker Models** - Contains one voice - Uses `default` as the speaker name - Requires `config.json` and `model_file.pth` - **Multi-Speaker Models** - Contains multiple voices in one model - Uses `speaker_ids.json` to define available voices - Requires `config.json`, `model_file.pth`, and `speaker_ids.json` - **Multi-Language Models** - Supports multiple languages and speakers e.g. `tts_models--en--vctk--vits` - Requires `config.json`, `model_file.pth.tar`, `speaker_ids.json`, and `language_ids.json` - Allows language switching within the same model ### Language Support - Wide range of languages available: - English (VCTK dataset) - German (Thorsten, CSS10) - French (CSS10) - Spanish (CSS10) - Italian (Mai) - And many more specialized models """ HELP_PAGE2 = """ ## 📝 Model Management - **Model Storage** - Models stored in `/alltalk_tts/models/vits/` - Each model has its own subfolder - Required files vary by model type - **Output Files** - Generated audio saved to `/alltalk_tts/outputs/` - Automatic cleanup available via `Del WAV's older than` - Set to `Disabled` to preserve all outputs ## ⚠️ Known Limitations - No support for: - DeepSpeed acceleration - Pitch adjustment - Generation speed control - Repetition penalty - Temperature adjustment - Streaming generation ## 🔧 System Requirements - Runs on all major operating systems: - Windows - Linux - macOS - Outputs in WAV format - GPU recommended for optimal performance """