Spaces:
Sleeping
Sleeping
| """ | |
| Configuration settings for F5-TTS Thai WebUI | |
| """ | |
| # Model configurations | |
| DEFAULT_MODEL_BASE = "hf://VIZINTZOR/F5-TTS-THAI/model_1000000.pt" | |
| FP16_MODEL_BASE = "hf://VIZINTZOR/F5-TTS-THAI/model_650000_FP16.pt" | |
| VOCAB_BASE = "./vocab/vocab.txt" | |
| VOCAB_HF = "hf://VIZINTZOR/F5-TTS-THAI/vocab.txt" | |
| MODEL_CHOICES = ["Default", "FP16", "Custom"] | |
| # F5TTS model configuration | |
| F5TTS_MODEL_CFG = { | |
| "dim": 1024, | |
| "depth": 22, | |
| "heads": 16, | |
| "ff_mult": 2, | |
| "text_dim": 512, | |
| "conv_layers": 4 | |
| } | |
| # Audio settings | |
| TARGET_SAMPLE_RATE = 24000 | |
| HOP_LENGTH = 256 | |
| # UI settings | |
| MAX_SPEECH_TYPES = 100 | |
| MAX_SEGMENTS = 20 | |
| # Default TTS settings | |
| DEFAULT_TTS_SETTINGS = { | |
| "remove_silence": True, | |
| "cross_fade_duration": 0.15, | |
| "nfe_step": 32, | |
| "speed": 1.0, | |
| "cfg_strength": 2.0, | |
| "max_chars": 250, | |
| "seed": -1, | |
| "no_ref_audio": False | |
| } | |
| # Whisper model settings | |
| WHISPER_MODELS = ['base', 'small', 'medium', 'large-v2', 'large-v3', 'large-v3-turbo'] | |
| WHISPER_COMPUTE_TYPES = ["float32", "float16", "int8_float16", "int8"] | |
| WHISPER_LANGUAGES = { | |
| "source": ["Auto", 'th', "en"], | |
| "target": ['th', "en"] | |
| } | |
| # Example configurations | |
| EXAMPLES = [ | |
| [ | |
| "./src/f5_tts/infer/examples/thai_examples/ref_gen_1.wav", | |
| "ได้รับข่าวคราวของเราที่จะหาที่มันเป็นไปที่จะจัดขึ้น.", | |
| "พรุ่งนี้มีประชุมสำคัญ อย่าลืมเตรียมเอกสารให้เรียบร้อย" | |
| ], | |
| [ | |
| "./src/f5_tts/infer/examples/thai_examples/ref_gen_2.wav", | |
| "ฉันเดินทางไปเที่ยวที่จังหวัดเชียงใหม่ในช่วงฤดูหนาวเพื่อสัมผัสอากาศเย็นสบาย.", | |
| "ฉันชอบฟังเพลงขณะขับรถ เพราะช่วยให้รู้สึกผ่อนคลาย" | |
| ], | |
| [ | |
| "./src/f5_tts/infer/examples/thai_examples/ref_gen_3.wav", | |
| "กู้ดอาฟเต้อนูนไนท์ทูมีทยู.", | |
| "วันนี้อากาศดีมาก เหมาะกับการไปเดินเล่นที่สวนสาธารณะ" | |
| ], | |
| [ | |
| "./src/f5_tts/infer/examples/thai_examples/ref_gen_4.wav", | |
| "เราอยากจะตื่นขึ้นมามั้ยคะ.", | |
| "เมื่อวานฉันไปเดินเล่นที่ชายหาด เสียงคลื่นซัดฝั่งเป็นจังหวะที่ชวนให้ใจสงบ." | |
| ] | |
| ] | |
| TIPS_TEXT = """ | |
| - สามารถตั้งค่า "ตัวอักษรสูงสุดต่อส่วน" หรือ max_chars เพื่อลดความผิดพลาดการอ่าน แต่ความเร็วในการสร้างจะช้าลง สามารถปรับลด NFE Step เพื่อเพิ่มความเร็วได้ | |
| ปรับ NFE Step เหลือ 7 สามารถเพิ่มความเร็วการในการสร้างได้มาก แต่เสียงที่ได้พอฟังได้. | |
| - อย่าลืมเว้นวรรคประโยคเพื่อให้สามารถแบ่งส่วนในการสร้างได้. | |
| - สำหรับ ref_text หรือ ข้อความตันฉบับ แนะนำให้ใช้เป็นภาษาไทยหรือคำอ่านภาษาไทยสำหรับเสียงภาษาอื่น เพื่อให้การอ่านภาษาไทยดีขึ้น เช่น Good Morning > กู้ดมอร์นิ่ง. | |
| - สำหรับเสียงต้นแบบ ควรใช้ความยาวไม่เกิน 10 วินาที ถ้าเป็นไปได้ห้ามมีเสียงรบกวน. | |
| - สามารถปรับลดความเร็วให้ช้าลง ถ้าเสียงต้นฉบับมีความยาวไม่มาก เช่น 2-5 วินาที | |
| - การอ่านข้อความยาวๆ หรือบางคำ ยังไม่ถูกต้อง สามารถปรับลดความเร็วเพื่อให้การอ่านถูกต้องได้ เช่น ถ้าเสียงต้นฉบับมีความยาว 1-3 วินาที อาจจะต้องประความเร็วเหลือ 0.8-0.9. | |
| - โมเดลตอนนี้ยังเน้นการอ่านภาษาไทยเป็นหลัก การอ่านภาษาไทยผสมกับภาษาอังกฤษยังต้องปรับปรุง. | |
| """ | |
| MULTISPEECH_EXAMPLE_TEXT = """ | |
| **ตัวอย่าง:** | |
| {ปกติ} สวัสดีครับ มีอะไรให้ผมช่วยไหมครับ | |
| {เศร้า} ผมเครียดจริงๆ นะตอนนี้... | |
| {โกรธ} รู้ไหม! เธอไม่ควรอยู่ที่นี่! | |
| {กระซิบ} ฉันมีอะไรจะบอกคุณ แต่มันเป็นความลับนะ. | |
| """ | |
| MULTISPEECH_PLACEHOLDER = """ป้อนสคริปต์โดยใส่ชื่อผู้พูด (หรือลักษณะอารมณ์) ไว้ที่ต้นแต่ละบล็อก ตัวอย่างเช่น: | |
| {ปกติ} สวัสดีครับ มีอะไรให้ผมช่วยไหมครับ | |
| {เศร้า} ผมเครียดจริงๆ นะตอนนี้... | |
| {โกรธ} รู้ไหม! เธอไม่ควรอยู่ที่นี่! | |
| {กระซิบ} ฉันมีอะไรจะบอกคุณ แต่มันเป็นความลับนะ.""" |