Spaces:
Running
Running
File size: 47,235 Bytes
1737b09 e46dadc 047c730 e46dadc 047c730 e46dadc 047c730 e46dadc 9a10903 e46dadc 9a10903 8dd4627 9a10903 f0f052d 5ee29ac f0f052d 9a10903 e46dadc 1b08914 e46dadc 6b4a87a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 |
# coding: utf8
import argparse
import json
import os
import random
import re
import tempfile
from pathlib import Path
import librosa
import numpy as np
import torch
from torch import no_grad, LongTensor
import commons
import utils
import gradio as gr
import gradio.utils as gr_utils
import gradio.processing_utils as gr_processing_utils
from models import SynthesizerTrn
from text import text_to_sequence, _clean_text
from mel_processing import spectrogram_torch
limitation = os.getenv("SYSTEM") == "spaces" # limit text and audio length in huggingface spaces
audio_postprocess_ori = gr.Audio.postprocess
def fill_text(tts_input):
tts_input.value = random.choice(text_list)
def audio_postprocess(self, y):
data = audio_postprocess_ori(self, y)
if data is None:
return None
return gr_processing_utils.encode_url_or_file_to_base64(data["name"])
gr.Audio.postprocess = audio_postprocess
def get_text(text, hps, is_symbol):
text_norm = text_to_sequence(text, hps.symbols, [] if is_symbol else hps.data.text_cleaners)
if hps.data.add_blank:
text_norm = commons.intersperse(text_norm, 0)
text_norm = LongTensor(text_norm)
return text_norm
def create_tts_fn(model, hps, speaker_ids):
def tts_fn(text, speaker, speed, is_symbol):
if limitation:
text_len = len(re.sub("\[([A-Z]{2})\]", "", text))
max_len = 150
if is_symbol:
max_len *= 3
if text_len > max_len:
return "Error: Text is too long", None
speaker_id = speaker_ids[speaker]
stn_tst = get_text(text, hps, is_symbol)
with no_grad():
x_tst = stn_tst.unsqueeze(0).to(device)
x_tst_lengths = LongTensor([stn_tst.size(0)]).to(device)
sid = LongTensor([speaker_id]).to(device)
audio = model.infer(x_tst, x_tst_lengths, sid=sid, noise_scale=.667, noise_scale_w=0.8,
length_scale=1.0 / speed)[0][0, 0].data.cpu().float().numpy()
del stn_tst, x_tst, x_tst_lengths, sid
return "Success", (hps.data.sampling_rate, audio)
return tts_fn
def create_vc_fn(model, hps, speaker_ids):
def vc_fn(original_speaker, target_speaker, input_audio):
if input_audio is None:
return "You need to upload an audio", None
sampling_rate, audio = input_audio
duration = audio.shape[0] / sampling_rate
if limitation and duration > 30:
return "Error: Audio is too long", None
original_speaker_id = speaker_ids[original_speaker]
target_speaker_id = speaker_ids[target_speaker]
audio = (audio / np.iinfo(audio.dtype).max).astype(np.float32)
if len(audio.shape) > 1:
audio = librosa.to_mono(audio.transpose(1, 0))
if sampling_rate != hps.data.sampling_rate:
audio = librosa.resample(audio, orig_sr=sampling_rate, target_sr=hps.data.sampling_rate)
with no_grad():
y = torch.FloatTensor(audio)
y = y.unsqueeze(0)
spec = spectrogram_torch(y, hps.data.filter_length,
hps.data.sampling_rate, hps.data.hop_length, hps.data.win_length,
center=False).to(device)
spec_lengths = LongTensor([spec.size(-1)]).to(device)
sid_src = LongTensor([original_speaker_id]).to(device)
sid_tgt = LongTensor([target_speaker_id]).to(device)
audio = model.voice_conversion(spec, spec_lengths, sid_src=sid_src, sid_tgt=sid_tgt)[0][
0, 0].data.cpu().float().numpy()
del y, spec, spec_lengths, sid_src, sid_tgt
return "Success", (hps.data.sampling_rate, audio)
return vc_fn
def create_soft_vc_fn(model, hps, speaker_ids):
def soft_vc_fn(target_speaker, input_audio1, input_audio2):
input_audio = input_audio1
if input_audio is None:
input_audio = input_audio2
if input_audio is None:
return "You need to upload an audio", None
sampling_rate, audio = input_audio
duration = audio.shape[0] / sampling_rate
if limitation and duration > 30:
return "Error: Audio is too long", None
target_speaker_id = speaker_ids[target_speaker]
audio = (audio / np.iinfo(audio.dtype).max).astype(np.float32)
if len(audio.shape) > 1:
audio = librosa.to_mono(audio.transpose(1, 0))
if sampling_rate != 16000:
audio = librosa.resample(audio, orig_sr=sampling_rate, target_sr=16000)
with torch.inference_mode():
units = hubert.units(torch.FloatTensor(audio).unsqueeze(0).unsqueeze(0).to(device))
with no_grad():
unit_lengths = LongTensor([units.size(1)]).to(device)
sid = LongTensor([target_speaker_id]).to(device)
audio = model.infer(units, unit_lengths, sid=sid, noise_scale=.667,
noise_scale_w=0.8)[0][0, 0].data.cpu().float().numpy()
del units, unit_lengths, sid
return "Success", (hps.data.sampling_rate, audio)
return soft_vc_fn
def create_to_symbol_fn(hps):
def to_symbol_fn(is_symbol_input, input_text, temp_text):
return (_clean_text(input_text, hps.data.text_cleaners), input_text) if is_symbol_input \
else (temp_text, temp_text)
return to_symbol_fn
download_audio_js = """
() =>{{
let root = document.querySelector("body > gradio-app");
if (root.shadowRoot != null)
root = root.shadowRoot;
let audio = root.querySelector("#{audio_id}").querySelector("audio");
if (audio == undefined)
return;
audio = audio.src;
let oA = document.createElement("a");
oA.download = Math.floor(Math.random()*100000000)+'.wav';
oA.href = audio;
document.body.appendChild(oA);
oA.click();
oA.remove();
}}
"""
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--device', type=str, default='cpu')
parser.add_argument("--share", action="store_true", default=False, help="share gradio app")
args = parser.parse_args()
device = torch.device(args.device)
models_tts = []
models_vc = []
models_soft_vc = []
with open("saved_model/info.json", "r", encoding="utf-8") as f:
models_info = json.load(f)
for i, info in models_info.items():
name = info["title"]
author = info["author"]
lang = info["lang"]
example = info["example"]
config_path = f"saved_model/{i}/config.json"
model_path = f"saved_model/{i}/model.pth"
cover = info["cover"]
cover_path = f"saved_model/{i}/{cover}" if cover else None
hps = utils.get_hparams_from_file(config_path)
model = SynthesizerTrn(
len(hps.symbols),
hps.data.filter_length // 2 + 1,
hps.train.segment_size // hps.data.hop_length,
n_speakers=hps.data.n_speakers,
**hps.model)
utils.load_checkpoint(model_path, model, None)
model.eval().to(device)
speaker_ids = [sid for sid, name in enumerate(hps.speakers) if name != "None"]
speakers = [name for sid, name in enumerate(hps.speakers) if name != "None"]
t = info["type"]
if t == "vits":
models_tts.append((name, author, cover_path, speakers, lang, example,
hps.symbols, create_tts_fn(model, hps, speaker_ids),
create_to_symbol_fn(hps)))
models_vc.append((name, author, cover_path, speakers, create_vc_fn(model, hps, speaker_ids)))
elif t == "soft-vits-vc":
models_soft_vc.append((name, author, cover_path, speakers, create_soft_vc_fn(model, hps, speaker_ids)))
hubert = torch.hub.load("bshall/hubert:main", "hubert_soft", trust_repo=True).to(device)
app = gr.Blocks()
with app:
with gr.Tabs():
with gr.TabItem("TTS"):
with gr.Tabs():
for i, (name, author, cover_path, speakers, lang, example, symbols, tts_fn,
to_symbol_fn) in enumerate(models_tts):
with gr.TabItem(f"model{i}"):
with gr.Column():
cover_markdown = f"![cover](file/{cover_path})\n\n" if cover_path else ""
gr.Markdown(f"## {name}\n\n"
f"{cover_markdown}"
f"model author: {author}\n\n"
f"language: {lang}\n\n")
tts_input1 = gr.TextArea(label="Text (150 words limitation)", value=example,
elem_id=f"tts-input{i}")
# def fill_text(tts_input1):
# tts_input1.value = random.choice(text_list)
tts_input2 = gr.Dropdown(label="Speaker", choices=speakers,
type="index", value=speakers[0])
tts_input3 = gr.Slider(label="Speed", value=1, minimum=0.5, maximum=2, step=0.1)
with gr.Accordion(label="Advanced Options", open=False):
temp_text_var = gr.Variable()
symbol_input = gr.Checkbox(value=False, label="Symbol input")
symbol_list = gr.Dataset(label="Symbol list", components=[tts_input1],
samples=[[x] for x in symbols],
elem_id=f"symbol-list{i}")
symbol_list_json = gr.Json(value=symbols, visible=False)
fill_button = gr.Button("Random Quotes")
fill_button.click(None, [tts_input1], [],_js=f"""
(i,symbols) => {{
let root = document.querySelector("body > gradio-app");
if (root.shadowRoot != null)
root = root.shadowRoot;
let text_input = root.querySelector("#tts-input{i}").querySelector("textarea");
let text_list = ['ๅคงๅคใชใใจใซๆฐใฅใใพใใ ๅงใใพใ็ด ๆตใงใ','่ฏใใชใ้ฆใใใใพใใใ','ใๅค้ฃใซใใพใใใ ไปๆฅใฏp ไธธใฏๆใใงใ','ใฌใ ใฏใจใฆใไธๆๅฟซใงใ','็คพไผใฎ็ชใ้ใใฆใใฆใ็ด ๆตใงใ','ใใฃใใไผใใงใๆๆฅใใซใใณใใใจใใใ่ฆใใฆใใ ใใใ','ใๅงใกใใโฆใโฆ ใใพใซ่จใ้้ใใใจ็
งใใฆใใพใใพใ','ใฌใ ใฏใใฃใจใใฎๆฅใ
ใฎใใใซ็ใพใใฆใใใใงใใญใ','ไปๆฅใ็ด ๆตใชไธๆฅใซใชใใจใใใงใใญใๅงใใพใ','็ชใฎๅคใ่ฆใฆใใ ใใๆฐๆใกใฎใใๆใงใใ','็ฉใใๆใกใใชใใจใใใใๅงๆงใฎ้ญ
ๅใงใ','ๅญฆๆ กใ็ฒใๆงใงใใ ใฌใ ใฎๆนใใฟใฏใใใใงใใ','่ตคใๅใฟใใใชๅฏ้กโฆใใใใใฃใกใฎ่ฉฑใงใใ','ใใไปฅไธ้
ใใใจๅงๆงใซๆใใใฆใใพใใพใ','ใใกใใกใชใจใใใ็ด ๆตใงใ','ใฌใ ใๅฐใใใจใฆใๅฐใใใใชใๅฐใๆฐใซใชใใพใใ','ใใใชใใจใใใใใใจใฌใ ใใในใฆใใฃใฆใใใพใใ','ๅฐใใใชใใงใใ ใใใใใ้กใ่ตคใใชใฃใฆใใพใใพใใ','้ฌผใ้ฃผใฃใฆใพใใญ','ไบไบบใง็ฌใใชใใๆชๆฅใฎ่ฉฑใใใพใใใ','ใปใ้
ๅปใใฆใใพใใพใใ','ใใใใใพใใใ ใฌใ ใๅฐใใใชใใงใใ ใใ','ๅคงไธๅคซใงใ ใฌใ ใฏใใคใใใชใใฎๅพใใง่ฆๅฎใฃใฆใใพใใใ','็ตถๅฏพ้ ๅโฆไฝใงใใใ?ๅพใงๅงๆงใซ่ใใฆใฟใพใ','็ดใฎใๆๅ
ฅใ ใฌใ ใซๆไผใใใฆใใ ใใใพใใใ','ใฏใใ้ฌผใ้ฃผใฃใฆใพใ','ๅผทๅผใชใฎใใฌใ ใฏๅซใงใฏใใใพใใใใฉ','่ๆใงใใ? ใฌใ ใง่ฏใใใฐๅใใง','ใใใใพใๅชใใใใใฆใฏใใฌใ ใฏใฉใใใฆใใใฎใโฆโฆ','ใใฏใใใใใใพใ','ใใใชๅฎ็งใงใๅซใใใซใใใโฆใฃใใชใใฆใ็
งใใพใใ','ๅฏ้กใจใฆใๅฏๆใใใใฃใใงใ','ใใใชๅใ
ใใ็ฎใง่ฆใคใใใใใจๅฐใฃใฆใใพใใพใ','ใใใใใไผใฟใฎๆ้ใงใใ','ใฌใ ใ็ ใใชใฃใฆใใฆใใพใใพใใ','ใไปไบใ็ฒใๆงใงใใใ้ขจๅใฎๆบๅใไธ็ซฏใงใ','ใใใงใฏๅงใใพใใใใ1ใใโฆใใใใ0ใใ!','ใใ ใซๅ
็ทใงใใฉใใซใ่กใใชใใงใใ ใใใญใ','ๅฎๅฟใใฆใใ ใใใใฌใ ใ็ญ่ทกใ็ไผผใฆไปไบใฏๆธใพใใฆใใใพใใใ','ใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใ','ใใใชๅฏๆใใ ใชใใฆ็
งใใพใ','ๅฏ็ใใใใใฆใใใ ใใฎ่ทกใใคใใฆใใฆใ็ด ๆตใงใใ','็ชใฎๅคใ่ฆใฆใใ ใใๆฐๆใกใฎใใๆใงใใ','่ฏใใชใ้ฆใใใใพใใใ','ใใใชๅใ
ใใ็ฎใง่ฆใคใใใใใจๅฐใฃใฆใใพใใพใ','ๅผทๅผใชใฎใใฌใ ใฏๅซใงใฏใใใพใใใใฉ','ใใ ใซๅ
็ทใงใใฉใใซใ่กใใชใใงใใ ใใใญใ','ใไปไบใ็ฒใๆงใงใใใ้ขจๅใฎๆบๅใไธ็ซฏใงใ','ๅญฆๆ กใ็ฒใๆงใงใใ ใฌใ ใฎๆนใใฟใฏใใใใงใใ','่ๆใงใใ? ใฌใ ใง่ฏใใใฐๅใใง','็ ใใใพใงๆใๆกใฃใฆใใฆใใใใงใใ?','ใใใใฆใใๆ้ใๅซใใใใใใพใใใใฉ','ๅคงๅคใชใใจใซๆฐใฅใใพใใ ๅงใใพใ็ด ๆตใงใ','ไบไบบใง็ฌใใชใใๆชๆฅใฎ่ฉฑใใใพใใใ','ๅฅฝใใช้ฃใน็ฉใฏไฝใงใใ? ใฌใ ใ็ฅใฃใฆใใใใใใงใ','ใใใชๅฎ็งใงใๅซใใใซใใใโฆใ ใชใใฆใ็
งใใพใใ','่ตคใๅใฟใใใชๅฏ้กโฆใใใใใฃใกใฎ่ฉฑใงใใ','ๅฏ้กใจใฆใๅฏๆใใใใฃใใงใ','ใ็ฒใๆงใงใใ่ถใฎๆ้ใซใใพใใใ','ใใใใงใใ?่คใใฆใใใฆใๆงใใพใใใ','ไปๆใฎ็ๆฟใใฏไธไบบใงๅคงไธๅคซใงใใ? ใฌใ ใใๆไผใใพใใใใ?','ใใฏใใใใใใพใ','ใใๅฌ็ ใงใใ?ใใผใๅ่ซใ้ใใพใ','ๆฌๅฝใซๅฐใฃใไบบใงใใญ','ใฏใโฆ ๅงใใพๅฏๆใโฆ','ๅฅฝใๅซใใฏใใใพใใ ใใใใใผใใใฆใใใพใ','ๅฝใใใใฆใใชใใฆใใใฌใ ใฏใใคใงใใใฐใซใใพใใใ','ใใใใใพใใใ ใฌใ ใๅฐใใใชใใงใใ ใใ','ๅฐใใใชใใงใใ ใใใใใ้กใ่ตคใใชใฃใฆใใพใใพใใ','ใใใใใไผใฟใฎๆ้ใงใใ','ในใใฃใใฏในใใชใใฏใน!ใใธใธใฃ!ใกใใใจ่จใใพใใ!','ใใฃใใฟใพใใๅฏ้กใซๅคขไธญใง่ตทใใใฎใๅฟใใฆใใพใใพใใ','ใใไปฅไธ้
ใใใจๅงๆงใซๆใใใฆใใพใใพใ','็ฉใใ่พใใชใใจใใใๅงๆงใฎ้ญ
ๅใงใ','้ฌผใ้ฃผใฃใฆใพใใญ','ใใใใพใๅชใใใใใฆใฏใใฌใ ใฏใฉใใใฆใใใฎใโฆโฆ','ใใใใ่ตทใใฆใใใชใใจใฌใ ใๅฐใฃใฆใใพใใพใ','ใใฃใใไผใใงใๆๆฅใใซใใณใใใจใใใ่ฆใใฆใใ ใใใ','ใใใใงใ ใใใฏๅฎๆใใพใใ','็ด ๆตใงใใๅงๆงใจๅใใใใ','ใฏใใ้ฌผใ้ฃผใฃใฆใพใ','ใๅธฐใใชใใ ไปๆฅใฏ็ใ็ผใ่ๅญใใใใพใใ','ใๅฎขๆงใฃใใใพใ ๅฏใผใใฆใใใฃใใใใฟใใใงใใ','ๅงๆงใฏใๅใ
ใใใฆ่ชไฟกๆบใ
ใชใจใใใใใพใใพใใ','ไปๆฅใฏใฌใผใฃใฆๅงใพใฃใฆใ ใผใง็ตใใๅๅใฎๅฅณใฎๅญใจไธ็ทใซใใใจใใใใจใใใใพใใ','ไปๆฅใ็ด ๆตใชไธๆฅใซใชใใจใใใงใใญใๅงใใพใ','ใใกใใกใชใจใใใ็ด ๆตใงใ','ใฏใโฆใใคใพใง่ฆใฆใใฆใๅฏๆใโฆ','็ตถๅฏพ้ ๅโฆไฝใงใใใ?ๅพใงๅงๆงใซ่ใใฆใฟใพใ','ใปใ้
ๅปใใฆใใพใใพใใ','ใฌใ ใฏใจใฆใไธๆๅฟซใงใ','ใฌใ ใ็ ใใชใฃใฆใใฆใใพใใพใใ','็คพไผใฎ็ชใ้ใใฆใใฆใ็ด ๆตใงใ','ๅฎๅฟใใฆใใ ใใใใฌใ ใ็ญ่ทกใ็ไผผใฆไปไบใฏๆธใพใใฆใใใพใใใ','ใฌใ ใฏใใฃใจใใฎๆฅใ
ใฎใใใซ็ใพใใฆใใใใงใใญใ','ใฌใ ใงใใใฃใใใใคใงใๅผใใงใใ ใใใ','ๅงๆงใฏใๅใ
ใใใฆ่ชไฟกๆบใ
ใชใจใใใใใพใใพใใ','ใใใใใชใใ ไปๆฅใฏ็ใ็ผใ่ๅญใใใใพใใ','ใๅฎขๆงใฃใใใพใ ๅฏใผใใฆใใใฃใใใใฟใใใงใใ','ใใใชใๅฏๆใใ ใชใใฆ็
งใใพใ?','ใฌใ ใงใใใฃใใใใคใงใๅผใใงใใ ใใ','ๅฅฝใๅซใใฏใใใพใใใใฌใ ใใใผใใใฆใใใพใใ','ๅฏ็ใใใใใฆใใใ ใใฎ่ทกใใคใใฆใใฆใ็ด ๆตใงใใ','ใใใใงใใ?่คใใฆใใใฆใๆงใใพใใใ','ๆฅใใงใๆฏๅบฆใๆใฎ็ๆฟใใฏใฌใ ใ','ๅฝใใใใฆใใชใใฆใใใฌใ ใฏใใคใงใใใฐใซใใพใใใ','ไปๆฅใฏใฌใผใฃใฆๅงใพใฃใฆใ ใผใง็ตใใๅๅใฎๅฅณใฎๅญใจไธ็ทใซใใใจใใใใจใใใใพใใ','ใฏใโฆใใคใพใง่ฆใฆใใฆใๅฏๆใโฆ','ใฉใใใฃใฆๆญฆๅจใๆใกๆญฉใใฆใใใใงใใ?ไนๅฅณใฎ็งๅฏใใจๅงใใพใ','ๅฅฝใใช้ฃใน็ฉใฏไฝใงใใ? ใฌใ ใ็ฅใฃใฆใใใใใใงใ','ใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใใซใใ','ใ็ฒใๆงใงใใ่ถใฎๆ้ใซใใพใใใ','ใใใใ่ตทใใฆใใใชใใจใฌใ ใๅฐใฃใฆใใพใใพใ','ๆฌๅฝใซๅฐใฃใไบบใงใใญ','ใใๅฌ็ ใงใใ?ใใผใๅ่ซใ้ใใพใ','ในใใฃใใฏในใใชใใฏใน!ใใธใธใฃ!ใกใใใจ่จใใพใใ!','่งใฏใใฎโฆๆๆใชใฎใงใใใใซ่งฆใใชใใงใใ ใใ','็ฒใใฆใใพใใใ?ๆฒป็้ญๆณใๅฟ
่ฆใงใใ?','่งใซ่งฆใฃใใ่ฒฌไปปใๅใฃใฆใใใใพใ ๅ่ซใงใใ','็ด ๆตใงใใๅงๆงใจๅใใใใใ','ใใใใงใ ใใใฏๅฎๆใใพใใ','็ ใใใพใงๆใๆกใฃใฆใใฆใใใใงใใ?','ๆฏๆฅๆฅฝใใ้ใใใฆใใพใใ? ใฌใ ใฏใจใฆใๅนธใใงใ','ใใใใฆใใๆ้ใๅซใใใใใใพใใใใฉ','ใฏใโฆ ๅงใใพๅฏๆใโฆ','ใใฃใใฟใพใใๅฏ้กใซๅคขไธญใง่ตทใใใฎใๅฟใใฆใใพใใพใใ','ไปๆใฎ็ๆฟใใฏไธไบบใงๅคงไธๅคซใงใใ? ใฌใ ใใๆไผใใพใใใใ?','ใชใ ใฎโฆใชใ ใฎใใใชใใงใ','ใฏใ','ในใใซๅโฆ','ใใใฆใใ ใใ ใใใใโฆใฌใ ใฏโฆ','ในใใซๅใฏโฆใชใใงใใใพใงโฆ','่ตทใใฆใใใพใใใ?','ใใใใใฎใใใใฏใใฎโฆ','ใฌใ ใฎๆนใใใงใ','็ ใฃใฆใใใใฐใๅใ่ฆใใใงใใใใซ่ฆใใใใโฆๆใโฆ','ใใใใๆใซไฝใใใฆใใใใใใใฎใใใใใพใใ','ใใใใชใใใ ใฌใ ใใใใฆไธ็ชๅฌใใใฃใใใจ','ใฏใ ้ญ็ฃใฏใญใบใฏใผใซๆงใใในใฆ็ธๅฝใชใใใพใใ','ใชใฎใงๅชใใฎ็บๅใฎๅฟ้
ใฏใใใพใใ','ใใใฃใฆใฏใใใใงใ','ใฌใ ใฏ้ๅใง ่ขซ็ฝใง ้ฌผๆใฎ่ฝใกใใผใใงใ','ใ ใใใฉใใใฆใๅงๆงใซๅฑใใชใ','ใฌใ ใฏๅงๆงใฎไปฃๆฟๅ','ใใใใใฃใจใใฃใจๅฃใฃใ','้ฉๆใชใใชใใงใ','ใฉใใใฆโฆ ใฌใ ใฎๆนใซ่งใๆฎใฃใฆใใพใฃใใใงใใ','ใฉใใใฆ ๅงๆงใฎๆนใฎ่งใๆฎใใชใใฃใใใงใใ','ใฉใใใฆใๅงใใพใฏ็ใพใใชใใใซ่งใไธๆฌใใๆใฃใฆใใชใใฃใใใงใใ?','ใใใใชใใ ใใใใชใใจใ่จใฃใฆใใพใใพใใ','ๅฟใใฆใใ ใใ','ใกใ้ใใใงใ!','ๆฌๅฝใฎใๅงๆงใฏใใฃใจโฆ','่งใใใใฐใใใช่ฉไพกใซใฏ','ๆฌๅฝใฎๅงๆงใชใใใฃใจใใพใโฆ','ใฌใ ใฏโฆใฌใ ใฏๅงๆงใฎไปฃๆฟๅใ ใฃใฆใใฃใจโฆ','ใงใโฆ','ๆๆฅใฎใใจ?','ใฌใ ใฏ ใจใฃใฆใๅผฑใใงใ','ใงใใใใใฃใจใๅฏใใใใฃใฆใใพใใพใใ','ใๅงใกใใใฏ่งใๆใใ','ๆฌกใๅคฑใฃใ','ใใใใใฏใๅงใกใใ ๅงใใพใใงใใใใจใใในใฆ','ใฌใ ใไปฃใใใซ ใใใใใใซใใชใใฆใฏ','ๅงใใพใชใ ใใใใใฏใ','ๅงๆงใชใใใฃใจใใใใ','ๅงๅฆปใชใใงใใใใจใใชใใใ ใ','ใใใใๆบ่ถณใซใงใใชใ่ชๅใซ','ไพกๅคใชใใฆใชใ','ใใใช่จ่ ๆ
้ทใงไฝๅบฆใใใใฃใ','็ก็ใ็ตใๅบใใฆใ ใพใใง่ถณใใชใ','ๆฑบใพใฃใฆใ ไฝใใใใ่ถณใใฆใชใใใ','ไฝใฎใใใซ็ใใใฎใ','ใในใฆใฏใใฎ็ใฎๅคใซๆใฃใฆใใพใฃใ','่ชๅใธใฎ้ฃๆใฎใใใซ','ไฝใใใใฐ้ฃๆใซใชใใฎใ','ใฌใ ใๅฅชใฃใฆใใพใฃใ ๅงใใพใๆญฉใใฏใใ ใฃใ้ใ','ไฟกๅฟตใ่ฝใจใใฆๅใ้ใใใจใง','ใฌใ ใฎใในใฆใฏๅงๆงใฎๅฃๅๅใชใฎใ ใใ','ๅคงไฝ ๆฅใซ้ใใชใใฎใ ใใ','ใฉใใใใใงใใ','ใชใใชใใงใใในใใซๅ','ใใใชใชใชใทใผ็ฎใง่ฆใคใใใใใจๅฐใฃใฆใใพใใพใ','ๅ ดๆใฏ็ๅ','่ญฆๅใฏไธๅ
จใจๆใใพใใใฉ','ในใใซๅโฆ','ไปใใใฌใ ใฏๆฅใชๆใใคใใงใชใณใฌใไฝฟใฃใๆฐใใๆ็ใฎ้็บใซๅ
ฅใใพใ','ใใฎใใใ้ไธญๅใๅฟ
่ฆใจใใใฎใง','ใใฃใจ่ชฐใใ้จๅฑใๆใๅบใใใใใฆใ','ใชใผใใซใฏในใใซๅใใไธ่ฉฑใซใชใฃใๆนใ
ใใใใฃใใใใฟใใใงใใ','ใใฎๆฉไผใซใ็คผใซไผบใใฎใ่ฏใใใจ','ๅคงไบใชใ่ฉฑใ','ใฌใ ใๆใใใฎใฏ','ๅงๆงใฎๅ้็ผใชใ','ใใฃใจ่ฉณใใ็ถๆณใๆพใใใฏใใงใใใฉ','ใใใใใพใใ ในใใซๅ','ใจใใชใขๆงใฎ่จใใคใใๅฎใใชใใฆใฏ','m ใๅๆ่ฆใงใ','ไปใฏไฝใฎๆฒป็ใๆๅชๅ
ใง','ใใกใชใใงใ','่ก้ใซ้งใใใใฃใฆใใพใฃใฆ','่ฟๅใใๅฟ
่ฆใใใใพใ','้งใ็ใใฎใฏ็ฝใฒใผใงใ','ไธใไธ้ญ้ใใๅ ดๅ','ๅฝใใใใพใใ','็ซ่ใ่ฒธใใฆใใใ ใ ๆฌๅฝใซใใใใจใใใใใพใ','ๆ่ฌใ็ณใไธใใพใ','ไปๆใฎๅ ดๅใ','ๅงๆงใฎ่ช็ใ้ใ่ถใใฆใฌใ ใซไผใใฃใฆใใพใฃใใใฎใ ใจๆใใพใ','ๅฏใคใใชใใฎใง','ๅฐใ่ฉฑใใใใฆ','ใฏใ ใใใฏใใฐใใใใไฟกใใฆใใพใ','ใใใใใใใใงใ','ใใงใชใใฏในๆงใจๅใ','ๆ้ใใใใฆ ใกใใใจๅใๅใฃใฆ','่ชๅใฎๆฐๆใกใ่จ่ใซใใใฐ','ใใฃใจใใใฃใฆใใใใพใ','ในใใซๅใฏ็ด ๆตใชไบบใงใใใ','ใงใใใใใใฎๆฌใฎ็้
ใซใใฌใ ใฎใใจใใ','ใฉใใซใ่กใใชใใงใใ ใใใญใในใใซๅ','ใใฐใใใใธ','ใใฎๆ็ดใในใใซๅใ่ชญใใงใใๆ','ใใฃใจในใใซๅใฏใฌใ ใฎใใจใใจใฆใๆใฃใฆใใใจๆใใพใ','ในใใซๅใ็ฝฎใใฆ','็จฝๅคใ็ฒใๆงใงใใใใฐใใใ','ๆใใพใใ','ๆ
ใใชใใจๆใใใจใจ','ไธ็ทใซใใใใจใจใฏ็็พใใใใใพใใใ','ใใใซๅฝใใใใฆใใชใใฆใ','ใงใใฏใใฃใจๆฎใฃใฆใพใใ','ใฌใ ใใใใใใใใใงใ','ๆๆฅๅบใใใพใใใใใฐใใใ','ใใใซๆฅใฆใใ3ๆฅ้ใฉใใซใ่กใฃใฆใชใใงใใ','ใทใฅใใซๅ!','ใใฐใใ','ใฏใ','ใฉใใใใใงใใ','ใฏใ','ใพใใงๅธๆฐใซไผใฃใใใใช้กใใฆ','ใฏใ','ใใฐใใใใกใใฃใจใใใงใใ','ใใโฆ','ใใกใใใๅฏๅคงใชใ้
ๆ
ฎใซ่จ่ใใใใพใใ','็ขบใใซใใใฎๅนฒๆธใฏใชใ','ใใใ','้ญๅฅณใฎๆญฃๆฐ','ใไธ่ฉฑใซใชใใพใใ','ไปๆฅใพใงใฎใๅฅฝๆใไธปใซไปฃใใใ็คผใ็ณใไธใใพใใ','ๆใ
ใงใใใฉๅๅใๅฃใซใใใใงใ','ใฌใ ใฎๅๅใๅงใใพ','ใใใซโฆใจใกใชใขๆงโฆ','ใใฎใๆนใซใไผใใงใใใ','ไฝใๅคๅใใใใใใใใพใใ','ใใ ใใชใใจ่จ่ใซใใฆใใใฎใโฆ','ในใใซๅใ็นๅฅใ ใใใงใใใใ','ใใฎโฆ','ๆฌๅฝใฏๅฒไธใๅทฎใๆใใ ใใใใชใใฏใใชใใงใใใฉใญ','ใฏใชในๆงใฎใจใใใง','ในใใซๅใ็ฌใๅ ใใฆใใฆใใกใใฃใดใใฌใ ใฏๅนธใใซๆใฃใฆใใใใงใใ','ใๅฑๆทใงใฏในใใซๅใ็น้ธใชใใฆใงใใพใใใใ','ใใฐใใใใๆฉใใงใใใฎใ็ฅใฃใฆใใใฎใซ','ในใใซๅใใจใใชใขๆงใจไบค่ซใใใฃใฆใใใ่ใใฆใใใฎใซ','ๅคงไธๅคซใงใใใญใในใใซๅ','้ฌผใ้ฃใฃใฆ','ใใใไบบใชใใงใใใ','ใไธ่ฉฑใซใชใใพใใ ๆกๅฎถใฎไธปใซไปฃใใ','ใ็คผใ็ณใไธใใพใ','่จใใใใใใพใใ','ใญใบใฏใผใซๆงใฏ ๅฏฎๅ
ใฎ้ขไฟ่
ใฎใจใใใ่จชๅใใใใจใซใชใฃใฆใใฆ','ๆฐๆฅใฏ้็ใใฆใใไบๅฎใง','ๆจๆฅ ใๆจๆถใฎใใใซ','ใชใผใใซใฏใใฐใใใไธๅจใ ใจใใฃใใใฃใฆใใพใใ','้จๅฃซๅฃ่ฉฐๆธใฎๆนใซ ้ญๅฅณๅฟใฎๆ่บใๅ ฑๅใใฆใใพใใ','ใญใบใฏใผใซๆงใฎใๅๅใๅบใใใฎใงใใใฉ','้ญๅฅณๅฟใฏ่ๆฏใไธ้ฎฎๆใงใใใ','็ขบใใใใใฎใชใๅฏๅใๅพใ็ตถใใชใใใใใฆ','ใฉใใใพใใ?','ๆฒนใใฉใใใใใใใงใใ','ใใฐใใใใใใฃใฆ','ใใๅฐใ่ตฐใฃใๅ
ใซ','ใใชใชใฒใซใฎๅคงๆจนใ่ฆใใฆใใใฏใใงใ','ใใใใๅๆฑใซๅใใใฐใใใใใกใคใถใผในใชใขใงใใ','ใใใพใใ','ใใ ใๅ่
ใ้ใใฆ่ฟๆใใพใ','ใใฎ้ใซในใใซๅใฏ้งใๆใๅบใใฆใใ ใใ','ใใใชๆกใใๆใใคใใพใใ','ใฌใ ใฏไปใใฎๆใฎใใใซ็ใพใใฆใใใใงใใญ','ๅคงไธๅคซใงใ','ใฌใ ใฏใใฃใจในใใซๅใฎๅพใใง่ฆๅฎใฃใฆใใพใใใ','ๆใใใฆใจใฆใ็ก็ใงใ','ใใฃ','ไปใฎในใใซๅใฎ่จใๆนใ ใจใพใใง','ใซใฐใใซใงใฏใชใ้ใๅฝใธๅใใใใจใใฆใใใใใช','ใฏใฃ!','ในใใซๅใฎใใจใงใใใ ใฒใใฃใจใใฆไฝใใพใใใใใใจใๆใใคใใใใงใใญ','ใจใใชใขๆงใใญใบใฏใผใซๆงใฎๅฉใใซใชใ!','ใใใชใใจๆฅใซ่จใใใฆใโฆ','้ธใถโฆ','ใฌใ ใฏในใใซๅใจ้ใใใใจใฏใงใใพใใ','ๆชๆฅใฎใ่ฉฑใฏ','็ฌใใชใใใใใชใใใใกใชใใงใใ','ๅๆใใซๅฐ็ใใฆ','ใพใๅฎฟใๅใใพใ','็ๆดปใฎๅบ็คใฏๅฎถใจใไปไบใใใใฐ','ๅนธใ ใฌใ ใฏใญใบใฏใผใซๆงใฎๅใใงๆ่ฒใๅใใฆใใพใใใ','ใซใฉใฉใฎใงใใใใใไปไบใ่ฆใคใใใฎใฏๅฎนๆใ ใจๆใใพใ','ในใใซๅใฏ่ไฝๅดๅใๆขใใฆใใใใ','ใฌใ ใฎ่บซใฎๅใใฎใไธ่ฉฑใใใฆใใใใใจใซ ใชใใใใใใพใใใญ','ๅๅ
ฅใๅฎๅฎใใใ','ใใๅฐใใพใจใใชไฝๅฑ
ใๆขใใพใใใ','ในใใซๅใซใฏใใฎ้','ใกใใใจใใใไปไบใซๅฐฑใใใใซๅๅผทใใฆใใใฃใฆ','ๅฎ้ใซๅใใใใใซใชใใฎใซ1ๅนดใใใฎใใใ','ไบไบบใงๅใใฆ','ใใ็จๅบฆใฎใ้ใ่ฒฏใพใฃใใๅฎถใ่ฒทใฃใฆใใใใใใใใพใใใญ','ไฝใใ่ฆใใใใฆใใใใใใใใพใใ','ๅๆใใฏๅๆฅญใฎ็ใใชๅ ดๆใงใใใ','ใใฃใจในใใซใใใฎใจใฃใดใช็บๆณใๆดปใใใใใจใใใใพใใ','ไปไบใ่ป้ใซไนใฃใใ','ใใฃใใฎๆฅใใใใใงใใใฉ','ๅญไพใจใโฆ','้ฌผใจไบบใฎใใผใใซใชใใฎใง','ใใฃใจใใใฑใใชๅญใ็ใพใใพใ','ใใใใฎๅญใงใใใใชใฎๅญใงใ','ๅๅญใงใไธๅญใงใ','ใใใใๅญใซใชใใพใใ','ใใฃใจๆฅฝใใใใจใฐใใใใใชใใงใใ','ใใใชใซๆณๅ้ใใซไธๆใใใใใจใฐใใใใใชใใจๆใใพใ','็ทใฎๅญใ็ใพใใใซๅฅณใฎๅญใฐใฃใใใ็ถใใฆใใพใฃใฆ','ในใใซๅใๅฎถๅบญๅ
ใง่ฉ่บซใ็ญใใชใใใจใใใใใใใใพใใ','ใงใใงใๅญไพใใกใๅคงใใใชใฃใฆ','ในใใซๅใ้ชๅฃใซๆฑใใใใชใๅนด้ ใซใชใฃใฆใ','ใฌใ ใฏในใใซๅใฎๅณๆนใงใ','ใ่ฟๆใงใฏๆๅใชๆผใๅใๅคซๅฉฆใชใใฆ่จใใใฆใใพใฃใฆ','ใใฃใใๅใใใใซๆใ้ใใใฆใใใฆใ','ในใใซๅใซใฏใใใใชใใใงใใใฉ','ใงใใใฐใฌใ ใๅ
ใซ่กใใใฆใใ ใใ','ใใใใฎไธใงโฆ','ใใฐใใใใซๆใๆกใใใฆ','ๅญไพใใกใใใฎๅญไพใใกใซๅฒใพใใฆ','้ใใซ ใจใ ใฏๅนธใใงใใใฃใฆ','ใใ่จใฃใฆ่ฆ้ใใใฆ','ๅนธใใซๅนธใใซ ไบบ็ใ็ตใใใใจใใงใใใใงใ','ในใใซๅใ็ฌใฃใฆใใฎๆชๆฅใๆใใงใใใใชใ','ใฌใ ใฏใใใใฃใฆๆญปใใงใใใใฃใใจๆฌๆฐใงๆใใพใ','ในใใซๅใจ็ใใฆใใใใชใ','ในใใซๅใ้ใใใใจๆใฃใๆ ใจใ ใจไธ็ทใซใใใใจๆใฃใฆใใใใใจใ','ไปใฏๅฟใฎๅบใใๅฌใใ','ใงใใใกใชใใงใ','ใจใ ใไธ็ชๅฅฝใใชในใใซๅใ็ฝฎใๅปใใซใใฆใใพใใใใชๆฐใใใพใใใ','ไฝใใใฃใใฎใใฌใ ใซ่ฉฑใใฆใใ ใใ','่ฉฑใใชใใฎใชใ ไฟกใใฆใใ ใใ','ใงใใใใฆไปใฏๆปใใพใใใ','ใใฃใใๆ้ใใใใฆ่ฝใก็ใใฆ่ใใใฐ','ไปใจใฏ้ใ็ญใใ่ฆใคใใใใใใใพใใ','ใใฐใใใ','ใงใ ในใใซๅใซใฏไผผๅใใชใ','ในใใซๅใใฉใใชใซ่พใๆใใใใใฎใ','ไฝใ็ฅใฃใฆใใใชใซ่ฆใใใงใใใฎใ ใจใ ใซใฏใใใใพใใ','ใใใใพใใใชใใฆโฆ','่ปฝใฏใใฟใซ่กใฃใฆใฏใใใชใใจใๆใใพใ','ใงใ ใใใงใ','ใใ ใซใ ใฃใฆใใใฃใฆใใใใจใใใใพใ','ในใใซๅใฏ้ไธญใงไฝใใ่ซฆใใใชใใฆใงใใชใไบบใ ใฃใฆใใจใงใ','ใฌใ ใฏ็ฅใฃใฆใใพใ ในใใซๅใฏๆชๆฅใๆใๆ','ใใฎๆชๆฅใ็ฌใฃใฆ่ฉฑใใไบบใ ใฃใฆ็ฅใฃใฆใใพใ','ใฌใ ใฏ็ฅใฃใฆใใพใ','ในใใซๅใๆชๆฅใ่ซฆใใใใชใไบบใ ใฃใฆ็ฅใฃใฆใใพใ','ในใใซๅใฏใฟใใชใ','ใจใใชใขๆงใใๅงๆงใ','ใญใบใฏใผใซๆงใใใขใใชในๆง ไปใฎไบบใฎใใจใ่ซฆใใฆใชใใใใชใใฏใใงใ','ใฌใ ใฏ็ฅใฃใฆใใพใ','ในใใซๅใใฉใใชใซๅ
ใฎ่ฆใใชใๆ้ใฎไธญใงใ','ๆใไผธใฐใใฆใใใๅๆฐใใใไบบใ ใฃใฆใใจ','ในใใซๅใซ้ ญใๆซใงใใใใฎใๅฅฝใใงใ','ๆใฎใฒใใจ้ซชใฎๆฏใ้ใใฆ','ในใใซๅใจ้ใๅใฃใฆใใๆฐใใใใใงใ','ในใใซๅใฎๅฃฐใๅฅฝใใงใ','่จ่ไธใค่ใใใณใซ','ๅฟใๆธฉใใใชใใฎใๆใใใใงใ','ในใใซๅใฎ็ฎใๅฅฝใใงใ','ๆฎๆฎตใฏ้ญใใใงใใใฉ','่ชฐใใซๅชใใใใใใจใใฆใใๆ','ๆใใใใชใใใฎ็ฎใๅฅฝใใงใ','ในใใซๅใฎๆใๅฅฝใใงใ','็ทใฎๅญใชใฎใซ็ถบ้บใชๆใใใฆใใฆ','ใงใๆกใใจใใฃใฑใ็ทใฎๅญใชใใ ใฃใฆๆใใใฆใใใ','ๅผทใใฆ็ดฐใๆใชใใงใ','ในใใซใใใฎๆญฉใๆนใๅฅฝใใงใ','ไธ็ทใซ้ฃใๆญฉใใฆใใใจ','ใใพใซใกใใใจใคใใฆใใฆใใใ็ขบใใใใฟใใใซๆฏใๅใใฆใใใ ใใใชๆญฉใๆนใๅฅฝใใงใ','ในใใซๅใฎๅฏ้กใๅฅฝใใงใ','่ตคใๅใฟใใใซ็ก้ฒๅใง','ใพใคใใชใใใกใใฃใจ้ทใใฆ','้ ฌใซ่งฆใใใจ็ฉใใใซใชใฃใฆ','ใใใใใงๅใซ่งฆใใฆใๆฐใฅใใชใใฆ','ใใใ่ธใ็ใใชใฃใฆโฆ','ในใใซๅใ่ชๅใฎใใจใๅซใใ ใฃใฆใใใใใฎใชใ','ในใใซๅใฎใใใจใใใใใใชใซใใใฃใฆ','Mใ็ฅใฃใฆใใใใจใ็ฅใฃใฆใปใใใชใฃใใใงใ','ใใฎ่ๆใๆฃฎใง','่ชๅใฎใใจใใใใใชใใชใฃใไธ็ใง','ๅใก็ฎใชใใฆใชใใฆ','ใฆใใไธ็ชๆฌฒใใใฃใ่จ่ใ','demใใใพใ','ในใใซๅใๆใฃใฆใใใใฌใ ใไปใใใซใใพใ','ใฌใ ใใใพใ','ในใใซๅใฎ่จ่ใชใไฝใ ใฃใฆ่ใใพใ','ใชใใใงใใ','ใใใช่ชๅใ่จฑใใชใใชใ','่ฌนใใงใๅใใใพใ','ใใใงในใใซๅใ','ใฌใ ใฎ่ฑ้ใ','ในใใซๅ','ใใใใชใใ ๆฐใฅใใชใใฆ','ไบบๆททใฟใซ็ฒใใฆใใพใฃใใใงใใญ','ใใๅฐใใพใ','ในใใซๅใใใใใ่ใใฆใใใฆใใฎใฏ ใฌใ ใซใ ใฃใฆใใใฃใฆใใพใ','ๅผทๅผใชใฎใๅซใใใใใใพใใใใฉ','ใใฃใจใใใฃใใงใใ?','ใใใในใใซๅใฎ ็ด ๆตใชใจใใใ ใจๆใใพใใใฉ','ใฏใใฃ ใใใในใใซๅใฏ็ด ๆตใงใ','้ฉใใพใใ','ใใฎๅฐ็ๆฐใใใใ้ซใใใจใงๆๅใช็จฎ้กใ ใจๆใฃใใใงใใใฉ','ๅฅใซๆใญใฆใพใใใ','ๅฌใใใใงใใญ ในใใซใใ','ๆใใใพใใ','ๆฌๅฝใฏใฌใ ใฏๅๅฏพใชใใงใ','้ญๅฅณใฎๆฎใใใง็ฝๆฏใๅผใๅฏใใใชใใฆ','ๅฑ้บใใใพใ','ในใใซๅใฏ็ด ๆตใงใ','ใใฎใใผใใฃใขใ็ฝๅใฎๅญๅจใ็ฅใใใฆใใใ','ใใฎๅใฎ็็ฑใ่ฉฑใใชใใงใใใใจใใใใใพใ','ใ ใใไฟกใใใใใใ ใจใ','ๅใงไธธใใใใใ ใจใ','ใใใช้ขจใซ่ชๅใ่ฟฝใ่ฉฐใใใใใๅฟ
่ฆใฉใใซใใชใใใงใใ','ใ ใฃใฆใฌใ ใฏ ในใใซๅใไธธใใจไฟกใใฆใใพใใใ','ใฏใใใใใงใใญ','ใฏใใใใใงใใญ','ใฉใใใใใพใใฆ ใงใใ','ใใใซใงใใฎๆนใใใฃใจใใฃใจใใฐใใใใซๆ่ฌใใฆใใใใงใใใ','ใใใใใงใ','ๅฅฅๆงใๆใใฆใใใฃใใใใใงใใญ','้ญๅฅณใญใงใฆโฆ','็ขบใใซ ใใฎๅฏ่ฝๆงใฏ ใญใบใฏใผใซๆงใ ๆใใพใใฆใใพใใ','ไปใฎๅฅ่ฅฒใงๅฐใซ่ฝใจใใฆใใพใใใใฃใใงใ','ใใกใใใใพใงใ','ๅซใชใใงใ','ในใใซๅใๅฐใฃใฆใใๆ','ใฏใใๅฎขๆง','ๅฝๅฎถใฎ้ฃๅใฏใฌใ ใ้ ใใฃใฆใใพใ','ๅงๆงใฏๆ็ใใใพใๅพๆใงใฏใชใใฎใ ','ใฏใใใใงใ','ใใใใใฌใ ใฏๅบๆฌ็ใซๅฎถไบๅ
จ่ฌใๅพๆใงใ','ๆ้คๆดๆฟฏใๅพๆใงใใใๅงใใพใใ','็ณใ่จณใใใพใใใๅฎขๆงๆนใใใฐใใใ','่ฉๅใใใใใใใฎใจ่ถณใ็ญใใใจใจ็ฎใคใใๆใใใจใงใ','ใใพใๅคใชๅฃฐใๅบใใชใใงใใ ใใไธๆๅฟซใงใ','ใญใบใฏใผใซๆงใฎ่กฃ่ฃ
ใ ใฃใใไธๅฏงใใๅชๅ
ใงใใใฉ','ในใใซใใใฎใงใใใฎใง','ใใฎ็ฐ่ฒใฎๆใฎ็ใใใจๅใใใฆ','ๆใฃใฆใใฆใใพใ ไปใใฃใฆใใพใใพใใใใ','ใใใ็ฎ่ฆใใพใใใญใๅงใใพ','ๅงใใพๅงใใพใฉใใใๅฐใๆททไนฑใใใฆใใใฟใใใงใใๅฎขๆง','ใพใ ๆฅตๆฝฐใใฎ็บ่จใงใใ','่ใใพใใๅงๆง','ๅคงๅคใงใใ ไปใๅฎขๆงใฎ้ ญใฎไธญใงๅ็ฅใชๆฅใใใ็ฎใๅใใฆใใพใ ๅงๆงใ','่ใใฆใใ ใใใจใใชใขๆง','ใใฎๆนใซ้
ทใๆฅใใใ็ฎใๅใใพใใๅงๆงใ','ใฏใใจใใชใขๆงๅงๆงใๅ็ใใฆใใพใ','่ฃ็ธซในใญใซ','ในใใซๅใฏใ่ฃ็ธซใๅฅฝใใชใใงใใ?','ๅฟ
่ฆใใใพใใ','ใฌใ ใจๅงๆงใฏใใฎๅถๆใ ใใใใฐๅๅใงใใใ','ใญใบใฏใผใซๆงใฎๅ
ฌๅใซๅ่กใใๆใ','ๅฑๆทใงใฎไปไบใงใฏๅ้กใใใพใใ','่บซๅใ็คบใๆๅณใงใ่ชฌๆใใๅฟ
่ฆใใชใใฆ','ๅ็็ใ ใจๆใใพใใ','ๅงๆงใชใใจใใใ','ใฌใ ใ็้ฃพใฃใฆใ่ชฐใๅใณใพใใใ','ในใใซๅใๅใฐใใฆไฝใ่ฏใใใจใใใใใงใใ?','ไฝใในใใซๅใใใใพใง่จใใใใฎใใฌใ ใซใฏๅใใใใญใพใใญ','ไฝ่จใชใไธ่ฉฑใงใ','ใฏใใใใงใ','ใกใใฃใจใใใฆๆฏๅ
ใๆดใใใ ใใงใ','่ฆๆ ใใๅคใใใจ','ใใใใใใชใใจใฏใ','ใฌใ ใๅฐใใใชใๅฐใ','ใจใฆใๅฐใๆฐใซใชใใฎใฏไบๅฎใงใใใ','ใใ ๅทฎใๅบใใพใใใใจใ่จใฃใฆใใพใฃใใจๆใ','็ณใ่จณใใใพใใใงใใ','ๅๅใจใใฃใฆใในใใซๅใฏใจใใชใขๆงใฎๆฉไบบใง','็ซๅ ดใ้ใใฎใซ','ใใใใใใกใใใไปๆนใฎใชใใใจใ่จใใพใใใ','ๅฟใใฆใใ ใใ','ๆกไปถใงใใ','ใใใใพใใใใชใใชใใจใ่ใใใพใใ','ใจใใชใขๆงใใใฃใใใฃใฆใพใใใใฉ','ในใใซๅใฏๆฌฒใฎใชใไบบใชใใงใใญ','ๆกไปถๅใใใพใใใพใใ','ในใใซๅใฎ็ใใซไนใฃใฆใใใพใ','็ดๆ?','ๅญไพใฏๅ็ฉใจๅใใงไบบ้ๆงใซ้ ไฝไปใใใพใใใ','ๆฌ่ฝ็ใซไพฎใฃใฆใใ็ธๆใใฉใใใใใใใงใใ','ใใใพใใซ่ถณใใใ ใใฎใใฎใในใใซๅใฏใกใใใจๅญไพใใกใซ่ฆใใใใงใใ','็ฉๅฟใใใชใใจใใใๅงๆงใฎ้ญ
ๅใงใ','ใใใใใฐในใใซๅใฎๅๅผทใฎ้ฒใฟๅ
ทๅใฏใฉใใงใใ','ๅงๆงใฏในใใซๅใฎใใๆฐใ็บๅใใใใใจใใใใฆใใๆฏใใพใฃใฆใใใงใใใ','้ฌผใฃใใใ','้ฌผๅฅฝใใชใใงใใ?','ใจใใชใขๆงใซ่จใใคใใพใใ','ๅคงไธๅคซใงใใ?','ใฏใใๅงใใพ','ใญใใใพใญใใใพใกใใฃใจ่ฆใชใ้ใซ','ใๅฎขๆงใๆฟกใใใบใใซใชใฃใฆใพใ','ๅฝไธปใญใบใฏใผใซๆงใใๆปใใซใชใใใพใใ','ใฉใใใๅฑๆทใธ','ใฏใๅคฑ็คผใใพใๅฎขๆง','ใใใใ็ตถๆ็ใซไธๆใใใงใใ','ๆตๆใใชใใงใใใใๆฅฝใซ็ตใใใซใใฆใใใใใจใใงใใพใใ','ใ่ใใใพใ','็ใใใใฏ็ฝฐใใ','ใใใชใใจ่จๆถใซใใใพใ','ใกใคใใจใใฆใฎๅฟๅพใงใ','ใญใใใพใญใใใพ','ใๅฎขๆงใฃใใใฒใใฃใจใใฆใชใใใใฆๅใถๅฐใฃใใๆน','ใใฎๅฟใใใฏ็ซๆดพใ ใจๆใใพใใใฉ','่ฑ็ถใ่ฝใจใใใฎใในใใซใใใงใใ','่ฒใฎ่ฑ็ถใๆใฃใฆใใพใ','่ชๅใงๅขใใใฆ่ชๅใง็ไปใใใไปไบใงใใใใฉ','ไปๆฅใฏในใใซๅใซใใไปฅไธใฎไปไบใฏใงใใใใซใใใพใใใญ','ใใใใฆ่ฆใฆใใจใใฎๆฐใๅคฑใใพใใญ','ๅงๆงใซในใใซๅใไปๆฅใฏๅฝน็ซใใใ ใจไผใใฆใใใพใ','่ๆใงใใญ','่ๆใงใใญ','ๅ
ทๅใๆชใใใงใใ','ๅๆใชใใญใชใ','ใใใใใญใบใฏใผใซๆงใฎใๅฝไปคใๅฎใใชใ','ในใใซๅใซใฌใ ใๅงๆงใไปใๅใ็็ฑใฏ?','ใญใใใพ','ๅงใใพใใพใใใฎ็ฎใฏ','็ต็ใๅใใฆใ','้ญ็ฃใๅข็็ทใ่ถ
ใใฆใใฆใใพใใพใ','้ญ็ฃใฏ้ญๅฅณใ็ใฟๅบใใ็็ฉใง','้ญๅใๆใคไบบ้กใฎๅคๆตใงใ','ๅพ
ใฃใฆใใ ใใใใใชๅคๆญใๅๆใซ','ใญใบใฏใผใซๆงใใไธๅจใฎๆฉใซ','ใใใใๅฑๆทใ็ใฃใ ็จ้ใงใชใใจๆญ่จใงใใพใใ?','ใฉใใใฆใใใพใง','ในใใซๅใจใใฎๆใซใฉใใปใฉ้ขไฟใ','ใใฃ','ไปๆนใชใใงใใญ','ใใ ใฎๅฝใใใใฆใใไปไบใฏ ในใใซๅใฎ็ฃ่ฆใงใใใ','ใฏใ','ใไฟก็จใงใ','่ฟใ็ใ็ฉใฎๅใใใใพใ','ใใใใพใใใ็ฃ่ญใใใใพใใ','ใใ ไปใฏใพใ ๆฏใใใใพใใ','่กฐๅผฑใใฒใฉใใงใ','ใใใฆๅงๆงใใใฎๅ ดใ่ฆใฆใใใฆใใใฐ','ใจใซใใๆฐไผใใงใไธญ้ญๆณใใใใพใ','่ฝใก็ใใฆใใ้ใณๅบใใพใใใ','ใใใซ้ญ็ฃใซ้ฃใใฆ่กใใใใชใ ใใโฆ','ๆฌฒๅผตใใใใฆ','ๆพใฃใฆๆปใใใฏใใ ใฃใใใฎใพใง้ถใ่ฝใจใใใใใใพใใใ','ใใใจใฌใ ใซไฝใฎ้ขไฟใ','็ธๆใฎ่
ๅจใๅใใใฆใใพใใ ๆไบบใใใคๅๆตใใใใ','ๆๆช ใฌใ ใในใใซๅใ ่ฆใคใใใใชใๅฏ่ฝๆงใ ใฃใฆ','ไฝใๆ นๆ ใซ','ในใใซๅใฏใฉใใพใง็ฅใฃใฆโฆ','ใใใใพใใ ็ดๆใใพใใใ','ๆฌๅฝใซ่ฒใ
ใจ่ใใใฆใใใใพใใใใญ','ๅญไพใใกใ้ ใใใ ใใใซๅๆตใใพใ','็ตถๅฏพใซ็ก่ถใฏใใชใใงใใ ใใใญ','้ฌผใฃใใใ','ๅญไพใใกใฏ็กไบๆใซๆปใใพใใ','ๆ้็จผใใ็ฒใๆงใงใ','ใพใฃใใๆญฃ้ขใงใ','่ญฆๆใๆใใใฐๅ่ฒ ใใคใใพใ','ๆใฎ็ฏ็ซใ็ฎๆใใฆ','ๆญปใชใชใใงโฆ ๆญปใชใชใใงโฆ','ๅงๆงใใใ่จใใฎใชใ','ใฏใใฏใใ็ฒใๆง','ๆฅๅฎขใงใใ','ใฌใ ใฏ็ถๆณใฎๆชๅใ้ฒใใ ใ ใใงใ','ในใใซๅใฏใใงใซๆใใ่ฆ่พผใฟใฎใชใ็ถๆณใงใใ','ๅใใใใใพใใ','ในใใซๅๅฐๅฑใฎไธ่ฝใๅฝน็ซใกใกใคใใงใใ','ๅคงไธๅคซใงใใ็ฒใใฆใใพใใพใใใ','ใใฐใใใ','ๆใใฆใใพใ','ๆใใฆใใพใ ในใใซใใ','ใ ใใๅ
จ้จๅคงไธๅคซใชใใงใใ','ๅพ
ใฃใฆใพใใ','ใใใใฆใฌใ ใในใใซๅใๆฑใใใใฆใใใใจใ','ๅ
จ้จใฎ็ญใใงใ','ๅคงๅคใ ใฃใใใงใใญ ในใใซๅ','ไธไบบใงใใใชๅทใคใใฆ','ใงใใใใใใใชๆฒใใๆใใฐใใใใชใใฆๅคงไธๅคซใงใใ','ใใฐใใใใฎๆใ ใฌใ ใๅคใใใพใ','ไฝใใใๅ
จ้จใใฌใ ใซ้ ใใฆ','ไปใฏใใฃใใไผใใง','็ ใฃใฆใใพใฃใฆใใใใงใ','ใใฃ','ใใใใฐใใใใไฝใ','้ใใพใ่ใใฆใใ ใใใใฐใใใ']
let randomIndex = Math.floor(Math.random() * text_list.length);
text_input.value = text_list[randomIndex];
let x = window.scrollX, y = window.scrollY;
text_input.focus();
window.scrollTo(x, y);
return [];
}}""")
tts_submit = gr.Button("Generate", variant="primary")
tts_output1 = gr.Textbox(label="Output Message")
tts_output2 = gr.Audio(label="Output Audio", elem_id=f"tts-audio{i}")
download = gr.Button("Download Audio")
download.click(None, [], [], _js=download_audio_js.format(audio_id=f"tts-audio{i}"))
tts_submit.click(tts_fn, [tts_input1, tts_input2, tts_input3, symbol_input],
[tts_output1, tts_output2],api_name="generate")
symbol_input.change(to_symbol_fn,
[symbol_input, tts_input1, temp_text_var],
[tts_input1, temp_text_var])
symbol_list.click(None, [symbol_list, symbol_list_json], [],
_js=f"""
(i,symbols) => {{
let root = document.querySelector("body > gradio-app");
if (root.shadowRoot != null)
root = root.shadowRoot;
let text_input = root.querySelector("#tts-input{i}").querySelector("textarea");
let startPos = text_input.selectionStart;
let endPos = text_input.selectionEnd;
let oldTxt = text_input.value;
let result = oldTxt.substring(0, startPos) + symbols[i] + oldTxt.substring(endPos);
text_input.value = result;
let x = window.scrollX, y = window.scrollY;
text_input.focus();
text_input.selectionStart = startPos + symbols[i].length;
text_input.selectionEnd = startPos + symbols[i].length;
text_input.blur();
window.scrollTo(x, y);
return [];
}}""")
with gr.TabItem("Voice Conversion"):
with gr.Tabs():
for i, (name, author, cover_path, speakers, vc_fn) in enumerate(models_vc):
with gr.TabItem(f"model{i}"):
cover_markdown = f"![cover](file/{cover_path})\n\n" if cover_path else ""
gr.Markdown(f"## {name}\n\n"
f"{cover_markdown}"
f"model author: {author}")
vc_input1 = gr.Dropdown(label="Original Speaker", choices=speakers, type="index",
value=speakers[0])
vc_input2 = gr.Dropdown(label="Target Speaker", choices=speakers, type="index",
value=speakers[min(len(speakers) - 1, 1)])
vc_input3 = gr.Audio(label="Input Audio (30s limitation)")
vc_submit = gr.Button("Convert", variant="primary")
vc_output1 = gr.Textbox(label="Output Message")
vc_output2 = gr.Audio(label="Output Audio", elem_id=f"vc-audio{i}")
download = gr.Button("Download Audio")
download.click(None, [], [], _js=download_audio_js.format(audio_id=f"vc-audio{i}"))
vc_submit.click(vc_fn, [vc_input1, vc_input2, vc_input3], [vc_output1, vc_output2])
with gr.TabItem("Soft Voice Conversion"):
with gr.Tabs():
for i, (name, author, cover_path, speakers, soft_vc_fn) in enumerate(models_soft_vc):
with gr.TabItem(f"model{i}"):
cover_markdown = f"![cover](file/{cover_path})\n\n" if cover_path else ""
gr.Markdown(f"## {name}\n\n"
f"{cover_markdown}"
f"model author: {author}")
vc_input1 = gr.Dropdown(label="Target Speaker", choices=speakers, type="index",
value=speakers[0])
source_tabs = gr.Tabs()
with source_tabs:
with gr.TabItem("microphone"):
vc_input2 = gr.Audio(label="Input Audio (30s limitation)", source="microphone")
with gr.TabItem("upload"):
vc_input3 = gr.Audio(label="Input Audio (30s limitation)", source="upload")
vc_submit = gr.Button("Convert", variant="primary")
vc_output1 = gr.Textbox(label="Output Message")
vc_output2 = gr.Audio(label="Output Audio", elem_id=f"svc-audio{i}")
download = gr.Button("Download Audio")
download.click(None, [], [], _js=download_audio_js.format(audio_id=f"svc-audio{i}"))
# clear inputs
source_tabs.set_event_trigger("change", None, [], [vc_input2, vc_input3],
js="()=>[null,null]")
vc_submit.click(soft_vc_fn, [vc_input1, vc_input2, vc_input3],
[vc_output1, vc_output2])
app.queue(concurrency_count=3).launch(show_api=False, share=args.share)
|