VoxCPM2 v5 音色克隆:脚本、参考音频、游戏对白与状态文档

通过 Voice Design 试听选定各角色参考音色,Style Control 全量克隆并部署到 audio/mp3/tts;清理未引用音频与 audio_1 旧产物。
This commit is contained in:
xsl
2026-05-24 00:34:50 +08:00
parent bb79a69bd2
commit 12eb1eab44
1085 changed files with 1779 additions and 955 deletions
+225
View File
@@ -0,0 +1,225 @@
#!/usr/bin/env python3
"""
《林夏》TTS v2 — VoxCPM2 Style Control 批量生成
输出:audio_2/tts/v2_styled/
用法:
VOXCPM_PORT=8002 bash /home/xsl/tts-server/start-voxcpm.sh
VOXCPM_PORT=8002 python audio_2/scripts/01_gen_tts_styled.py
python audio_2/scripts/01_gen_tts_styled.py --dry-run
python audio_2/scripts/01_gen_tts_styled.py --role linxia --test
"""
import argparse
import base64
import glob
import os
import subprocess
import sys
import tempfile
import time
import requests
PROJECT_DIR = "/home/xsl/blind"
VOICE_DIR = f"{PROJECT_DIR}/voice"
OUT_DIR = f"{PROJECT_DIR}/audio_2/tts/v2_styled"
HOST = os.environ.get("VOXCPM_HOST", "127.0.0.1")
PORT = os.environ.get("VOXCPM_PORT", "8002")
BASE_URL = f"http://{HOST}:{PORT}"
sys.path.insert(0, f"{PROJECT_DIR}/audio")
sys.path.insert(0, f"{PROJECT_DIR}/audio_2")
from batch_tts_voxcpm import ROLES, LINES # noqa: E402
from voice_style_prompts import get_style # noqa: E402
os.makedirs(OUT_DIR, exist_ok=True)
def find_ref_audio(role_key):
role_dir = os.path.join(VOICE_DIR, ROLES[role_key]["dir"])
for ext in ("*.wav", "*.mp3", "*.flac"):
files = sorted(glob.glob(os.path.join(role_dir, ext)))
if files:
return files[0]
return None
def convert_to_wav(src, dst):
subprocess.run(
["ffmpeg", "-y", "-i", src, "-ar", "16000", "-ac", "1", "-acodec", "pcm_s16le", dst],
check=True,
capture_output=True,
)
def wav_to_base64(path):
with open(path, "rb") as f:
return base64.b64encode(f.read()).decode()
def apply_speed(src, speed, dst):
if abs(speed - 1.0) < 0.01:
import shutil
shutil.copy2(src, dst)
return
subprocess.run(
["ffmpeg", "-y", "-i", src, "-filter:a", f"atempo={speed}", "-acodec", "pcm_s16le", dst],
check=True,
capture_output=True,
)
def wav_to_mp3(src, dst):
subprocess.run(
[
"ffmpeg", "-y", "-i", src,
"-codec:a", "libmp3lame", "-b:a", "128k", "-ar", "24000", "-ac", "1",
dst,
],
check=True,
capture_output=True,
)
def check_server():
try:
r = requests.get(f"{BASE_URL}/health", timeout=5)
if r.status_code != 200:
return False
data = r.json()
return data.get("status") == "ok"
except Exception:
return False
def register_voice(wav_path):
r = requests.post(
f"{BASE_URL}/v1/voices",
json={"wav_base64": wav_to_base64(wav_path)},
timeout=60,
)
r.raise_for_status()
return r.json()["voice_id"]
def synthesize_styled(voice_id, text, style, cfg=2.0, steps=10):
r = requests.post(
f"{BASE_URL}/v1/speech/styled",
json={
"text": text,
"style": style,
"voice_id": voice_id,
"cfg_value": cfg,
"inference_timesteps": steps,
},
timeout=180,
)
r.raise_for_status()
return r.content
def main():
parser = argparse.ArgumentParser(description="《林夏》Style Control 批量 TTS → audio_2")
parser.add_argument("--role", help="只合成指定角色")
parser.add_argument("--test", action="store_true", help="只合成第一条")
parser.add_argument("--dry-run", action="store_true", help="只打印 style 分配")
parser.add_argument("--force", action="store_true", help="覆盖已存在文件")
parser.add_argument("--cfg", type=float, default=2.0)
parser.add_argument("--steps", type=int, default=10)
args = parser.parse_args()
lines = LINES
if args.role:
lines = [(f, r, t) for f, r, t in lines if r == args.role or r.startswith(args.role)]
if args.test:
lines = lines[:1]
print(f"\n{'=' * 60}")
print(" 《林夏》TTS v2 — Style Control")
print(f" 服务: {BASE_URL}")
print(f" 输出: {OUT_DIR}")
print(f"{len(lines)}")
print(f"{'=' * 60}\n")
if args.dry_run:
for fname, role, text in lines:
style = get_style(fname, role, text)
out = os.path.join(OUT_DIR, f"{fname}_wav_v2.mp3")
mark = "" if os.path.exists(out) else "·"
print(f" [{mark}] {fname} [{role}]")
print(f" style: {style}")
print(f" text: {text[:50]}{'...' if len(text) > 50 else ''}\n")
return
if not check_server():
print(f"[错误] VoxCPM2 服务未就绪: {BASE_URL}/health")
print("请先启动:")
print(f" VOXCPM_PORT={PORT} bash /home/xsl/tts-server/start-voxcpm.sh")
sys.exit(1)
voice_ids = {}
tmp = tempfile.mkdtemp(prefix="voxcpm2_")
for role_key in sorted(set(r for _, r, _ in lines)):
ref = find_ref_audio(role_key)
if not ref:
print(f" [跳过] {role_key}: 未找到参考音频")
continue
wav = ref if ref.endswith(".wav") else os.path.join(tmp, f"{role_key}.wav")
if not ref.endswith(".wav"):
convert_to_wav(ref, wav)
print(f" 注册音色: {role_key} ... ", end="", flush=True)
voice_ids[role_key] = register_voice(wav)
print(f"ok ({voice_ids[role_key][:10]}...)")
ok = skip = fail = 0
manifest_path = os.path.join(OUT_DIR, "style_manifest.tsv")
manifest_lines = ["filename\trole\tstyle\ttext\n"]
for i, (fname, role, text) in enumerate(lines, 1):
out_mp3 = os.path.join(OUT_DIR, f"{fname}_wav_v2.mp3")
style = get_style(fname, role, text)
manifest_lines.append(
f"{fname}\t{role}\t{style.replace(chr(9), ' ')}\t{text.replace(chr(9), ' ')}\n"
)
if os.path.exists(out_mp3) and not args.force:
print(f" [{i:3d}/{len(lines)}] SKIP {fname}")
skip += 1
continue
if role not in voice_ids:
print(f" [{i:3d}/{len(lines)}] MISS {fname} (无音色)")
fail += 1
continue
print(f" [{i:3d}/{len(lines)}] {fname} ... ", end="", flush=True)
t0 = time.time()
try:
wav_bytes = synthesize_styled(
voice_ids[role], text, style, cfg=args.cfg, steps=args.steps
)
raw_wav = os.path.join(tmp, f"{fname}_raw.wav")
spd_wav = os.path.join(tmp, f"{fname}_spd.wav")
with open(raw_wav, "wb") as f:
f.write(wav_bytes)
apply_speed(raw_wav, ROLES[role]["speed"], spd_wav)
wav_to_mp3(spd_wav, out_mp3)
kb = os.path.getsize(out_mp3) // 1024
print(f"ok ({time.time() - t0:.1f}s, {kb}KB)")
ok += 1
except Exception as e:
print(f"FAIL: {e}")
fail += 1
with open(manifest_path, "w", encoding="utf-8") as f:
f.writelines(manifest_lines)
print(f"\n完成: {ok} ok, {skip} skip, {fail} fail")
print(f"输出: {OUT_DIR}")
print(f"清单: {manifest_path}")
if __name__ == "__main__":
main()
+168
View File
@@ -0,0 +1,168 @@
#!/usr/bin/env python3
"""
《林夏》TTS v3 — VoxCPM2 Voice Design 批量生成
纯提示词生成音色,不使用参考音频。
输出:audio_2/tts/v3_voice_design/
用法:
VOXCPM_PORT=8002 bash /home/xsl/tts-server/start-voxcpm.sh
VOXCPM_PORT=8002 python audio_2/scripts/02_gen_tts_voice_design.py
python audio_2/scripts/02_gen_tts_voice_design.py --dry-run
python audio_2/scripts/02_gen_tts_voice_design.py --role delivery --test
"""
import argparse
import os
import subprocess
import sys
import tempfile
import time
import requests
PROJECT_DIR = "/home/xsl/blind"
OUT_DIR = f"{PROJECT_DIR}/audio_2/tts/v3_voice_design"
HOST = os.environ.get("VOXCPM_HOST", "127.0.0.1")
PORT = os.environ.get("VOXCPM_PORT", "8002")
BASE_URL = f"http://{HOST}:{PORT}"
sys.path.insert(0, f"{PROJECT_DIR}/audio")
sys.path.insert(0, f"{PROJECT_DIR}/audio_2")
from batch_tts_voxcpm import ROLES, LINES # noqa: E402
from voice_style_prompts import get_voice_design # noqa: E402
os.makedirs(OUT_DIR, exist_ok=True)
def apply_speed(src, speed, dst):
if abs(speed - 1.0) < 0.01:
import shutil
shutil.copy2(src, dst)
return
subprocess.run(
["ffmpeg", "-y", "-i", src, "-filter:a", f"atempo={speed}", "-acodec", "pcm_s16le", dst],
check=True,
capture_output=True,
)
def wav_to_mp3(src, dst):
subprocess.run(
[
"ffmpeg", "-y", "-i", src,
"-codec:a", "libmp3lame", "-b:a", "128k", "-ar", "24000", "-ac", "1",
dst,
],
check=True,
capture_output=True,
)
def check_server():
try:
r = requests.get(f"{BASE_URL}/health", timeout=5)
return r.status_code == 200 and r.json().get("status") == "ok"
except Exception:
return False
def synthesize_design(text, style, cfg=2.0, steps=10):
"""Voice Design: 不传 voice_id。"""
r = requests.post(
f"{BASE_URL}/v1/speech/styled",
json={
"text": text,
"style": style,
"voice_id": None,
"cfg_value": cfg,
"inference_timesteps": steps,
},
timeout=180,
)
r.raise_for_status()
return r.content
def main():
parser = argparse.ArgumentParser(description="《林夏》Voice Design 批量 TTS → audio_2")
parser.add_argument("--role", help="只合成指定角色")
parser.add_argument("--test", action="store_true", help="只合成第一条")
parser.add_argument("--dry-run", action="store_true")
parser.add_argument("--force", action="store_true")
parser.add_argument("--cfg", type=float, default=2.0)
parser.add_argument("--steps", type=int, default=10)
args = parser.parse_args()
lines = LINES
if args.role:
lines = [(f, r, t) for f, r, t in lines if r == args.role or r.startswith(args.role)]
if args.test:
lines = lines[:1]
print(f"\n{'=' * 60}")
print(" 《林夏》TTS v3 — Voice Design(无参考音频)")
print(f" 服务: {BASE_URL}")
print(f" 输出: {OUT_DIR}")
print(f"{len(lines)}")
print(f"{'=' * 60}\n")
if args.dry_run:
for fname, role, text in lines:
style = get_voice_design(fname, role, text)
out = os.path.join(OUT_DIR, f"{fname}_wav_v3.mp3")
mark = "" if os.path.exists(out) else "·"
print(f" [{mark}] {fname} [{role}]")
print(f" design: {style}")
print(f" text: {text[:50]}{'...' if len(text) > 50 else ''}\n")
return
if not check_server():
print(f"[错误] VoxCPM2 服务未就绪: {BASE_URL}/health")
print(f" VOXCPM_PORT={PORT} bash /home/xsl/tts-server/start-voxcpm.sh")
sys.exit(1)
tmp = tempfile.mkdtemp(prefix="voxcpm3_")
ok = skip = fail = 0
manifest_path = os.path.join(OUT_DIR, "voice_design_manifest.tsv")
manifest_lines = ["filename\trole\tdesign_prompt\ttext\n"]
for i, (fname, role, text) in enumerate(lines, 1):
out_mp3 = os.path.join(OUT_DIR, f"{fname}_wav_v3.mp3")
style = get_voice_design(fname, role, text)
manifest_lines.append(
f"{fname}\t{role}\t{style.replace(chr(9), ' ')}\t{text.replace(chr(9), ' ')}\n"
)
if os.path.exists(out_mp3) and not args.force:
print(f" [{i:3d}/{len(lines)}] SKIP {fname}")
skip += 1
continue
print(f" [{i:3d}/{len(lines)}] {fname} [{role}] ... ", end="", flush=True)
t0 = time.time()
try:
wav_bytes = synthesize_design(text, style, cfg=args.cfg, steps=args.steps)
raw_wav = os.path.join(tmp, f"{fname}_raw.wav")
spd_wav = os.path.join(tmp, f"{fname}_spd.wav")
with open(raw_wav, "wb") as f:
f.write(wav_bytes)
apply_speed(raw_wav, ROLES[role]["speed"], spd_wav)
wav_to_mp3(spd_wav, out_mp3)
print(f"ok ({time.time() - t0:.1f}s, {os.path.getsize(out_mp3) // 1024}KB)")
ok += 1
except Exception as e:
print(f"FAIL: {e}")
fail += 1
with open(manifest_path, "w", encoding="utf-8") as f:
f.writelines(manifest_lines)
print(f"\n完成: {ok} ok, {skip} skip, {fail} fail")
print(f"输出: {OUT_DIR}")
print(f"清单: {manifest_path}")
if __name__ == "__main__":
main()
+177
View File
@@ -0,0 +1,177 @@
#!/usr/bin/env python3
"""
《林夏》Voice Design 试听样本 — 每角色 5 条约 10 秒音频
输出:audio_2/tts/v4_voice_samples/{role}/{role}_v01.mp3 … v05.mp3
用法:
VOXCPM_PORT=8002 python audio_2/scripts/03_gen_voice_samples.py
python audio_2/scripts/03_gen_voice_samples.py --role delivery
python audio_2/scripts/03_gen_voice_samples.py --dry-run
"""
import argparse
import os
import subprocess
import sys
import tempfile
import time
import requests
PROJECT_DIR = "/home/xsl/blind"
OUT_ROOT = f"{PROJECT_DIR}/audio_2/tts/v4_voice_samples"
os.makedirs(OUT_ROOT, exist_ok=True)
HOST = os.environ.get("VOXCPM_HOST", "127.0.0.1")
PORT = os.environ.get("VOXCPM_PORT", "8002")
BASE_URL = f"http://{HOST}:{PORT}"
sys.path.insert(0, f"{PROJECT_DIR}/audio_2")
from voice_sample_prompts import AUDITION_TEXT, ROLE_VOICE_VARIANTS # noqa: E402
def wav_to_mp3(src, dst):
subprocess.run(
[
"ffmpeg", "-y", "-i", src,
"-codec:a", "libmp3lame", "-b:a", "128k", "-ar", "24000", "-ac", "1",
dst,
],
check=True,
capture_output=True,
)
def wav_duration(path):
r = subprocess.run(
[
"ffprobe", "-v", "error", "-show_entries", "format=duration",
"-of", "default=noprint_wrappers=1:nokey=1", path,
],
capture_output=True,
text=True,
check=True,
)
return float(r.stdout.strip())
def check_server():
try:
r = requests.get(f"{BASE_URL}/health", timeout=5)
return r.status_code == 200 and r.json().get("status") == "ok"
except Exception:
return False
def synthesize_design(text, style, cfg=2.0, steps=10):
r = requests.post(
f"{BASE_URL}/v1/speech/styled",
json={
"text": text,
"style": style,
"voice_id": None,
"cfg_value": cfg,
"inference_timesteps": steps,
},
timeout=180,
)
r.raise_for_status()
return r.content
def main():
parser = argparse.ArgumentParser(description="生成每角色 5 条 Voice Design 试听样本")
parser.add_argument("--role", help="只生成指定角色")
parser.add_argument("--dry-run", action="store_true")
parser.add_argument("--force", action="store_true")
parser.add_argument("--cfg", type=float, default=2.0)
parser.add_argument("--steps", type=int, default=10)
args = parser.parse_args()
roles = sorted(ROLE_VOICE_VARIANTS.keys())
if args.role:
roles = [r for r in roles if r == args.role or r.startswith(args.role)]
if not roles:
print(f"[错误] 未知角色: {args.role}")
sys.exit(1)
total = sum(len(ROLE_VOICE_VARIANTS[r]) for r in roles)
print(f"\n{'=' * 60}")
print(" 《林夏》Voice Design 试听样本(每角色 5 条)")
print(f" 服务: {BASE_URL}")
print(f" 输出: {OUT_ROOT}")
print(f" 角色: {len(roles)} 样本: {total}")
print(f"{'=' * 60}\n")
if args.dry_run:
for role in roles:
text = AUDITION_TEXT[role]
print(f"[{role}] ({len(text)} 字) {text[:40]}...")
for i, prompt in enumerate(ROLE_VOICE_VARIANTS[role], 1):
print(f" v{i:02d}: {prompt}")
print()
return
if not check_server():
print(f"[错误] VoxCPM2 未就绪: {BASE_URL}/health")
sys.exit(1)
os.makedirs(OUT_ROOT, exist_ok=True)
tmp = tempfile.mkdtemp(prefix="voxcpm_sample_")
manifest_path = os.path.join(OUT_ROOT, "samples_manifest.tsv")
manifest = ["role\tvariant\tseconds\tprompt\ttext\tfile\n"]
ok = skip = fail = 0
n = 0
for role in roles:
role_dir = os.path.join(OUT_ROOT, role)
os.makedirs(role_dir, exist_ok=True)
text = AUDITION_TEXT[role]
variants = ROLE_VOICE_VARIANTS[role]
for i, prompt in enumerate(variants, 1):
n += 1
tag = f"v{i:02d}"
out_mp3 = os.path.join(role_dir, f"{role}_{tag}.mp3")
out_wav = os.path.join(role_dir, f"{role}_{tag}.wav")
if os.path.exists(out_mp3) and not args.force:
print(f" [{n}/{total}] SKIP {role}_{tag}")
skip += 1
continue
print(f" [{n}/{total}] {role}_{tag} ... ", end="", flush=True)
t0 = time.time()
try:
wav_bytes = synthesize_design(text, prompt, cfg=args.cfg, steps=args.steps)
raw_wav = os.path.join(tmp, f"{role}_{tag}.wav")
with open(raw_wav, "wb") as f:
f.write(wav_bytes)
subprocess.run(
["ffmpeg", "-y", "-i", raw_wav, "-acodec", "pcm_s16le", "-ar", "24000", "-ac", "1", out_wav],
check=True,
capture_output=True,
)
wav_to_mp3(out_wav, out_mp3)
dur = wav_duration(out_mp3)
manifest.append(
f"{role}\t{tag}\t{dur:.1f}\t{prompt.replace(chr(9), ' ')}\t"
f"{text.replace(chr(9), ' ')}\t{role}/{role}_{tag}.mp3\n"
)
print(f"ok ({time.time() - t0:.1f}s, {dur:.1f}s)")
ok += 1
except Exception as e:
print(f"FAIL: {e}")
fail += 1
with open(manifest_path, "w", encoding="utf-8") as f:
f.writelines(manifest)
print(f"\n完成: {ok} ok, {skip} skip, {fail} fail")
print(f"试听目录: {OUT_ROOT}")
print(f"清单: {manifest_path}")
print("\n选定样本后告诉我,例如: delivery v03, linxia v02")
print("我会把对应 wav 注册为参考音频,再跑全量克隆。")
if __name__ == "__main__":
main()
+271
View File
@@ -0,0 +1,271 @@
#!/usr/bin/env python3
"""
《林夏》TTS v5 — 选定试听样本克隆 + Style Control 表演
参考音频:audio_2/tts/v4_voice_samples/{role}/*.wav(每角色保留 1 条)
输出:audio_2/tts/v5_cloned/*_wav_v5.mp3
部署:audio/mp3/tts/*_wav_v1.mp3(游戏直接可用)
用法:
VOXCPM_PORT=8002 python audio_2/scripts/04_gen_tts_clone.py --force
python audio_2/scripts/04_gen_tts_clone.py --role delivery --test
python audio_2/scripts/04_gen_tts_clone.py --no-deploy
"""
import argparse
import base64
import glob
import os
import shutil
import subprocess
import sys
import tempfile
import time
import requests
PROJECT_DIR = "/home/xsl/blind"
SAMPLE_DIR = f"{PROJECT_DIR}/audio_2/tts/v4_voice_samples"
OUT_DIR = f"{PROJECT_DIR}/audio_2/tts/v5_cloned"
DEPLOY_DIR = f"{PROJECT_DIR}/audio/mp3/tts"
HOST = os.environ.get("VOXCPM_HOST", "127.0.0.1")
PORT = os.environ.get("VOXCPM_PORT", "8002")
BASE_URL = f"http://{HOST}:{PORT}"
sys.path.insert(0, f"{PROJECT_DIR}/audio")
sys.path.insert(0, f"{PROJECT_DIR}/audio_2")
from batch_tts_voxcpm import ROLES, LINES # noqa: E402
from voice_style_prompts import get_clone_style # noqa: E402
# story.js 引用但不在 LINES 中的台词
EXTRA_LINES = [
(
"lv11_0030_self3y_voice_01",
"self_3y",
"哦对,今天是我来北京的第一百天。妈,我没跟你说,我自己数的。"
"这个城市好大。我走了很多路,见了很多人。我觉得我还没准备好,"
"但我又觉得好像准备了很久很久了。你们不用担心我。我很好。"
"以后的我,如果你听到这条,记得要好好的。",
),
(
"lv11_0030_self3y_voice_02",
"self_3y",
"我今天又没睡好。不是失眠,就是睡不踏实。"
"北京这个地方,它会让你觉得你随时都要更好,随时都要更努力。"
"我在努力。但我不知道在努力什么。"
"我就想留下一条记录。今天,今天是……算了,就今天吧。",
),
(
"lv11_0030_self3y_voice_03",
"self_3y",
"是我。23岁的我。我设了三年后打开。"
"我不知道那时候的你怎么样了。如果你很好,就当我多虑了。"
"如果你不好——你看,你熬过来了对不对。"
"你23岁的时候,也觉得很难。但你还是过来了。"
"所以……撑住啊。",
),
("lv11_sys_memo_01", "linxia", "三年前今天,一条未听的录音"),
]
os.makedirs(OUT_DIR, exist_ok=True)
os.makedirs(DEPLOY_DIR, exist_ok=True)
def find_selected_ref(role_key):
role_dir = os.path.join(SAMPLE_DIR, role_key)
wavs = sorted(glob.glob(os.path.join(role_dir, "*.wav")))
if not wavs:
return None
if len(wavs) > 1:
print(f" [警告] {role_key} 有多条参考音频,使用: {os.path.basename(wavs[0])}")
return wavs[0]
def convert_to_wav(src, dst):
subprocess.run(
["ffmpeg", "-y", "-i", src, "-ar", "16000", "-ac", "1", "-acodec", "pcm_s16le", dst],
check=True,
capture_output=True,
)
def wav_to_base64(path):
with open(path, "rb") as f:
return base64.b64encode(f.read()).decode()
def apply_speed(src, speed, dst):
if abs(speed - 1.0) < 0.01:
shutil.copy2(src, dst)
return
subprocess.run(
["ffmpeg", "-y", "-i", src, "-filter:a", f"atempo={speed}", "-acodec", "pcm_s16le", dst],
check=True,
capture_output=True,
)
def wav_to_mp3(src, dst):
subprocess.run(
[
"ffmpeg", "-y", "-i", src,
"-codec:a", "libmp3lame", "-b:a", "128k", "-ar", "24000", "-ac", "1",
dst,
],
check=True,
capture_output=True,
)
def check_server():
try:
r = requests.get(f"{BASE_URL}/health", timeout=5)
return r.status_code == 200 and r.json().get("status") == "ok"
except Exception:
return False
def register_voice(wav_path):
r = requests.post(
f"{BASE_URL}/v1/voices",
json={"wav_base64": wav_to_base64(wav_path)},
timeout=60,
)
r.raise_for_status()
return r.json()["voice_id"]
def synthesize_styled(voice_id, text, style, cfg=2.0, steps=10):
payload = {
"text": text,
"style": style,
"voice_id": voice_id,
"cfg_value": cfg,
"inference_timesteps": steps,
}
r = requests.post(f"{BASE_URL}/v1/speech/styled", json=payload, timeout=180)
r.raise_for_status()
return r.content
def main():
parser = argparse.ArgumentParser(description="选定样本克隆 → v5 + 部署游戏目录")
parser.add_argument("--role", help="只合成指定角色")
parser.add_argument("--test", action="store_true", help="只合成第一条")
parser.add_argument("--dry-run", action="store_true")
parser.add_argument("--force", action="store_true")
parser.add_argument("--no-deploy", action="store_true", help="不复制到 audio/mp3/tts")
parser.add_argument("--cfg", type=float, default=2.0)
parser.add_argument("--steps", type=int, default=10)
args = parser.parse_args()
lines = LINES + EXTRA_LINES
if args.role:
lines = [(f, r, t) for f, r, t in lines if r == args.role or r.startswith(args.role)]
if args.test:
lines = lines[:1]
roles_needed = sorted(set(r for _, r, _ in lines))
print(f"\n{'=' * 60}")
print(" 《林夏》TTS v5 — 试听样本克隆")
print(f" 参考: {SAMPLE_DIR}")
print(f" 输出: {OUT_DIR}")
if not args.no_deploy:
print(f" 部署: {DEPLOY_DIR} (*_wav_v1.mp3)")
print(f" 台词: {len(lines)} 条 角色: {len(roles_needed)}")
print(f"{'=' * 60}\n")
refs = {}
for role in roles_needed:
ref = find_selected_ref(role)
if ref:
refs[role] = ref
print(f" [{role}] ← {os.path.basename(ref)}")
else:
print(f" [{role}] ✗ 未找到参考音频")
if args.dry_run:
print()
for fname, role, text in lines:
style = get_clone_style(fname, role, text) or "(无表演修饰)"
print(f" {fname} [{role}] style={style}")
print(f" ref={'yes' if role in refs else 'NO'} text={text[:40]}...")
return
missing = [r for r in roles_needed if r not in refs]
if missing:
print(f"\n[错误] 缺少参考音频: {', '.join(missing)}")
sys.exit(1)
if not check_server():
print(f"[错误] VoxCPM2 未就绪: {BASE_URL}/health")
sys.exit(1)
tmp = tempfile.mkdtemp(prefix="voxcpm5_")
voice_ids = {}
for role, ref_path in sorted(refs.items()):
wav = os.path.join(tmp, f"{role}_ref.wav")
convert_to_wav(ref_path, wav)
print(f" 注册音色: {role} ... ", end="", flush=True)
voice_ids[role] = register_voice(wav)
print(f"ok ({voice_ids[role][:10]}...)")
ok = skip = fail = 0
manifest_path = os.path.join(OUT_DIR, "clone_manifest.tsv")
manifest_lines = ["filename\trole\tref\tstyle\ttext\n"]
for i, (fname, role, text) in enumerate(lines, 1):
out_v5 = os.path.join(OUT_DIR, f"{fname}_wav_v5.mp3")
out_game = os.path.join(DEPLOY_DIR, f"{fname}_wav_v1.mp3")
style = get_clone_style(fname, role, text)
ref_name = os.path.basename(refs[role])
manifest_lines.append(
f"{fname}\t{role}\t{ref_name}\t{(style or '自然说话').replace(chr(9), ' ')}\t"
f"{text.replace(chr(9), ' ')}\n"
)
if os.path.exists(out_v5) and not args.force:
print(f" [{i:3d}/{len(lines)}] SKIP {fname}")
skip += 1
continue
if role not in voice_ids:
print(f" [{i:3d}/{len(lines)}] MISS {fname}")
fail += 1
continue
print(f" [{i:3d}/{len(lines)}] {fname} [{role}] ... ", end="", flush=True)
t0 = time.time()
try:
wav_bytes = synthesize_styled(
voice_ids[role], text, style, cfg=args.cfg, steps=args.steps
)
raw_wav = os.path.join(tmp, f"{fname}_raw.wav")
spd_wav = os.path.join(tmp, f"{fname}_spd.wav")
with open(raw_wav, "wb") as f:
f.write(wav_bytes)
speed = ROLES.get(role, {}).get("speed", 1.0)
apply_speed(raw_wav, speed, spd_wav)
wav_to_mp3(spd_wav, out_v5)
if not args.no_deploy:
shutil.copy2(out_v5, out_game)
kb = os.path.getsize(out_v5) // 1024
print(f"ok ({time.time() - t0:.1f}s, {kb}KB)")
ok += 1
except Exception as e:
print(f"FAIL: {e}")
fail += 1
with open(manifest_path, "w", encoding="utf-8") as f:
f.writelines(manifest_lines)
print(f"\n完成: {ok} ok, {skip} skip, {fail} fail")
print(f"输出: {OUT_DIR}")
print(f"清单: {manifest_path}")
if not args.no_deploy:
print(f"游戏目录: {DEPLOY_DIR}")
if __name__ == "__main__":
main()
+51
View File
@@ -0,0 +1,51 @@
# Voice Design 试听样本(v4
每角色 **5 条**约 **7–10 秒**试听,用不同提示词生成不同音色。
选定后注册为 `voice/{角色}/` 参考音频,再跑全量 Style Control 克隆。
## 试听目录
```
audio_2/tts/v4_voice_samples/
linxia/ linxia_v01.mp3 … v05.mp3
mom/
azhe/
xiaomei/
xiaomei_drunk/
zhounan/
hr/
anan/
dorm_a/ dorm_b/ dorm_c/
delivery/ ← 5 条均为男声,语速已调慢
self_3y/
```
完整清单(含时长与提示词):`samples_manifest.tsv`
## 外卖小哥(delivery)变体说明
| 编号 | 侧重点 |
|------|--------|
| v01 | 北方男声,中低音,**语速适中偏慢**,礼貌直接 |
| v02 | 偏低沉稳,**语速慢**,熟手外卖员 |
| v03 | 普通青年男声,语速正常 |
| v04 | 略粗中音,语速适中,不催促 |
| v05 | 清爽青年音,**语速偏慢**,清楚有条理 |
## 选定后告诉我
格式示例:
```
linxia v02, mom v01, azhe v03, delivery v02, ...
```
我会把对应 `.wav` 复制到 `voice/{角色}/`,再全量生成最终对白。
## 重新生成某角色样本
```bash
VOXCPM_PORT=8002 python audio_2/scripts/03_gen_voice_samples.py --role delivery --force
```
提示词配置:`audio_2/voice_sample_prompts.py`
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,66 @@
role variant seconds prompt text file
anan v01 7.4 23岁中国女性,甜亮高音女声,语速快,比闺蜜更嗲,像在酒吧里喊,背景略吵 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v01.mp3
anan v02 9.2 22岁中国女性,尖亮女声,兴奋,像在Helens里喊朋友 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v02.mp3
anan v03 10.1 24岁中国女性,偏高女声,带醉意,活泼,像夜场里发语音 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v03.mp3
anan v04 7.6 23岁中国女性,甜腻高音,快语速,像撒娇式喊话 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v04.mp3
anan v05 9.8 22岁中国女性,明亮女声,能量很高,像在嘈杂环境里说话 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v05.mp3
azhe v01 8.1 27岁中国男性,清朗偏低男声,城市口音,理性偏冷,语速平稳,用词克制,略带距离感 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v01.mp3
azhe v02 7.6 28岁中国男性,中低音男声,冷静直接,不多废话,像同事发工作语音 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v02.mp3
azhe v03 7.6 26岁中国男性,偏薄男声,语速正常,礼貌但疏离,都市青年 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v03.mp3
azhe v04 6.9 29岁中国男性,低沉男中音,慢语速,克制,像鼓足勇气打电话 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v04.mp3
azhe v05 8.5 27岁中国男性,清爽男声,平稳,略带紧张,真诚但不油 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v05.mp3
delivery v01 7.9 30岁中国北方男性,男声,中低音,语速适中偏慢,北方口音,礼貌直接,像外卖小哥打电话 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v01.mp3
delivery v02 8.5 32岁中国北方男性,男声,偏低沉稳,语速慢,普通话带北方味,熟手外卖员通知取餐 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v02.mp3
delivery v03 7.1 28岁中国男性,男声,普通青年音,语速正常,清楚有条理,送餐到了打电话 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v03.mp3
delivery v04 6.3 35岁中国北方男性,男声,略粗中音,语速适中,直接但不催,外卖电话 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v04.mp3
delivery v05 7.6 30岁中国男性,男声,清爽青年音,语速偏慢,礼貌清楚,放门口前确认 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v05.mp3
dorm_a v01 7.1 22岁中国女性,兴奋尖亮女声,语速很快,像群里报喜,充满喜悦 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v01.mp3
dorm_a v02 7.7 21岁中国女性,高音女声,极快语速,像刚得知好消息 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v02.mp3
dorm_a v03 7.4 23岁中国女性,明亮女声,兴奋,像室友群里连发 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v03.mp3
dorm_a v04 8.2 22岁中国女性,清脆女声,快,带笑,报喜语气 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v04.mp3
dorm_a v05 7.4 20岁中国女性,年轻尖声,语速很快,像大学生群聊 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v05.mp3
dorm_b v01 7.1 23岁中国女性,普通随和女声,中音,语速正常,像室友起哄 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v01.mp3
dorm_b v02 5.5 22岁中国女性,平和女声,中等语速,像关心室友 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v02.mp3
dorm_b v03 7.7 24岁中国女性,随和中音,正常语速,像群里接话 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v03.mp3
dorm_b v04 10.6 23岁中国女性,略低女声,温和,像怕打扰又忍不住说 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v04.mp3
dorm_b v05 9.3 22岁中国女性,普通青年女声,自然,像宿舍闲聊 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v05.mp3
dorm_c v01 9.8 23岁中国女性,温柔低声女声,语速略慢,像注意到朋友沉默的室友 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v01.mp3
dorm_c v02 11.4 22岁中国女性,轻声女声,慢语速,体贴,像悄悄关心 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v02.mp3
dorm_c v03 8.2 24岁中国女性,温软中音,语速慢,像怕戳痛对方 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v03.mp3
dorm_c v04 9.6 23岁中国女性,低柔女声,轻声,像宿舍熄灯后说话 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v04.mp3
dorm_c v05 9.3 22岁中国女性,温柔女声,慢而稳,像递一杯水那样说话 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v05.mp3
hr v01 8.9 38岁中国女性,成熟职场女声,中音区,知性干练,疲惫的善意,像HR发工作语音 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v01.mp3
hr v02 11.7 40岁中国女性,沉稳职场女声,语速正常,专业但不冷漠 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v02.mp3
hr v03 10.3 36岁中国女性,温和职场女声,像前辈善意提醒 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v03.mp3
hr v04 8.7 38岁中国女性,中低音职场女声,干脆,像办完离职手续的叮嘱 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v04.mp3
hr v05 7.6 42岁中国女性,略哑成熟女声,阅历感,疲惫但真诚 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v05.mp3
linxia v01 9.8 24岁中国女性,中低音女声,声线偏薄,疲惫但清醒,克制有温度,普通话,像深夜发微信语音 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v01.mp3
linxia v02 9.8 24岁中国女性,略带气声的中音,慢语速,柔软但有分寸,像刚下班躺床上回消息 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v02.mp3
linxia v03 6.8 25岁中国女性,稳而轻的中音女声,有距离感但不冷,都市年轻人,普通话标准 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v03.mp3
linxia v04 9.2 23岁中国女性,声线略低,清醒克制,字句短,像怕吵醒室友的轻声 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v04.mp3
linxia v05 7.4 24岁中国女性,清朗中音,疲惫里藏一点温度,语速偏慢,像对自己说话 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v05.mp3
mom v01 9.3 52岁中国女性,温厚中老年女声,音色略哑,轻微西部口音,说话慢而稳,像母亲打电话 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v01.mp3
mom v02 9.0 50岁中国女性,柔和中音,带一点鼻音,语速慢,温柔试探,像怕打扰女儿 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v02.mp3
mom v03 10.0 55岁中国女性,低沉温厚女声,轻微方言感,像回忆往事时说话 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v03.mp3
mom v04 8.4 48岁中国女性,清亮一点的中老年女声,关切但不啰嗦,母亲语气 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v04.mp3
mom v05 8.5 52岁中国女性,沙哑温声,情感克制,像深夜给女儿发长语音 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v05.mp3
self_3y v01 9.0 21岁中国女性,比林夏更亮更高的女声,刚来北京,兴奋带紧张,声音更年轻 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v01.mp3
self_3y v02 7.7 20岁中国女性,明亮高音,年轻,带一点紧张,像初到北京 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v02.mp3
self_3y v03 7.7 22岁中国女性,清亮女声,兴奋,像第一次看见大城市 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v03.mp3
self_3y v04 8.9 21岁中国女性,偏高女声,语速快,紧张又期待,刚毕业 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v04.mp3
self_3y v05 8.7 20岁中国女性,少女音,亮而轻,像给闺蜜发语音报喜 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v05.mp3
xiaomei v01 7.1 24岁中国女性,明亮偏高的女声,语速快,活泼直接,像闺蜜连发语音,能量足 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v01.mp3
xiaomei v02 7.4 23岁中国女性,甜亮高音,语速很快,兴奋,像群里@你 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v02.mp3
xiaomei v03 6.9 25岁中国女性,明亮女声,语速中等偏快,直来直去,闺蜜语气 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v03.mp3
xiaomei v04 9.2 24岁中国女性,偏高女声,带笑说话,活泼,像分享八卦 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v04.mp3
xiaomei v05 6.8 22岁中国女性,清脆女声,快语速,热情,像连珠炮 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v05.mp3
xiaomei_drunk v01 12.0 24岁中国女性,同闺蜜音色但喝醉了,口齿略含糊,情绪起伏大,时而哭时而笑 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v01.mp3
xiaomei_drunk v02 8.5 24岁中国女性,醉态女声,黏糊,语速忽快忽慢,带哭腔 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v02.mp3
xiaomei_drunk v03 6.3 25岁中国女性,喝醉的女声,舌头打结,情绪上来,委屈又笑 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v03.mp3
xiaomei_drunk v04 9.3 23岁中国女性,微醺女声,含混,像深夜酒后的语音 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v04.mp3
xiaomei_drunk v05 9.0 24岁中国女性,醉酒后女声,鼻音重,情绪不稳定,像倾诉秘密 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v05.mp3
zhounan v01 9.0 26岁中国男性,温和偏闷的男中音,略拘谨,语速偏慢,像很久没联系的老同学,真诚不油 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v01.mp3
zhounan v02 12.5 27岁中国男性,低沉男声,慢语速,略带怀旧,像回忆往事 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v02.mp3
zhounan v03 8.4 25岁中国男性,普通青年男声,真诚,略紧张,老同学语气 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v03.mp3
zhounan v04 14.4 28岁中国男性,温厚男中音,语速慢,像生日夜独自说话 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v04.mp3
zhounan v05 7.9 26岁中国男性,清爽男声,克制,小心翼翼,不想打扰对方 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v05.mp3
1 role variant seconds prompt text file
2 anan v01 7.4 23岁中国女性,甜亮高音女声,语速快,比闺蜜更嗲,像在酒吧里喊,背景略吵 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v01.mp3
3 anan v02 9.2 22岁中国女性,尖亮女声,兴奋,像在Helens里喊朋友 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v02.mp3
4 anan v03 10.1 24岁中国女性,偏高女声,带醉意,活泼,像夜场里发语音 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v03.mp3
5 anan v04 7.6 23岁中国女性,甜腻高音,快语速,像撒娇式喊话 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v04.mp3
6 anan v05 9.8 22岁中国女性,明亮女声,能量很高,像在嘈杂环境里说话 夏夏!我在海伦斯呢!要不要过来,我请客!才两杯……好吧三杯,对面那个我给你留了位置,赶紧赶紧! anan/anan_v05.mp3
7 azhe v01 8.1 27岁中国男性,清朗偏低男声,城市口音,理性偏冷,语速平稳,用词克制,略带距离感 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v01.mp3
8 azhe v02 7.6 28岁中国男性,中低音男声,冷静直接,不多废话,像同事发工作语音 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v02.mp3
9 azhe v03 7.6 26岁中国男性,偏薄男声,语速正常,礼貌但疏离,都市青年 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v03.mp3
10 azhe v04 6.9 29岁中国男性,低沉男中音,慢语速,克制,像鼓足勇气打电话 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v04.mp3
11 azhe v05 8.5 27岁中国男性,清爽男声,平稳,略带紧张,真诚但不油 夏夏,我明天要出差。那个充电盒好像落你那儿了,你方便的时候帮我寄一下,地址我等下发你。 azhe/azhe_v05.mp3
12 delivery v01 7.9 30岁中国北方男性,男声,中低音,语速适中偏慢,北方口音,礼貌直接,像外卖小哥打电话 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v01.mp3
13 delivery v02 8.5 32岁中国北方男性,男声,偏低沉稳,语速慢,普通话带北方味,熟手外卖员通知取餐 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v02.mp3
14 delivery v03 7.1 28岁中国男性,男声,普通青年音,语速正常,清楚有条理,送餐到了打电话 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v03.mp3
15 delivery v04 6.3 35岁中国北方男性,男声,略粗中音,语速适中,直接但不催,外卖电话 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v04.mp3
16 delivery v05 7.6 30岁中国男性,男声,清爽青年音,语速偏慢,礼貌清楚,放门口前确认 你好,您的麻辣烫到了,我现在在您楼下。方便的话我放门口,不方便您说一声,我马上上来。 delivery/delivery_v05.mp3
17 dorm_a v01 7.1 22岁中国女性,兴奋尖亮女声,语速很快,像群里报喜,充满喜悦 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v01.mp3
18 dorm_a v02 7.7 21岁中国女性,高音女声,极快语速,像刚得知好消息 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v02.mp3
19 dorm_a v03 7.4 23岁中国女性,明亮女声,兴奋,像室友群里连发 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v03.mp3
20 dorm_a v04 8.2 22岁中国女性,清脆女声,快,带笑,报喜语气 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v04.mp3
21 dorm_a v05 7.4 20岁中国女性,年轻尖声,语速很快,像大学生群聊 夏夏我告诉你个好消息!我升职了!说来话长,我们老板走了我就顶上了,哈哈太厉害了真的! dorm_a/dorm_a_v05.mp3
22 dorm_b v01 7.1 23岁中国女性,普通随和女声,中音,语速正常,像室友起哄 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v01.mp3
23 dorm_b v02 5.5 22岁中国女性,平和女声,中等语速,像关心室友 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v02.mp3
24 dorm_b v03 7.7 24岁中国女性,随和中音,正常语速,像群里接话 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v03.mp3
25 dorm_b v04 10.6 23岁中国女性,略低女声,温和,像怕打扰又忍不住说 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v04.mp3
26 dorm_b v05 9.3 22岁中国女性,普通青年女声,自然,像宿舍闲聊 真的啊恭喜恭喜!太厉害了!你是不是有事啊?没事可以跟我们说,夏夏在忙吧也别硬撑。 dorm_b/dorm_b_v05.mp3
27 dorm_c v01 9.8 23岁中国女性,温柔低声女声,语速略慢,像注意到朋友沉默的室友 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v01.mp3
28 dorm_c v02 11.4 22岁中国女性,轻声女声,慢语速,体贴,像悄悄关心 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v02.mp3
29 dorm_c v03 8.2 24岁中国女性,温软中音,语速慢,像怕戳痛对方 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v03.mp3
30 dorm_c v04 9.6 23岁中国女性,低柔女声,轻声,像宿舍熄灯后说话 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v04.mp3
31 dorm_c v05 9.3 22岁中国女性,温柔女声,慢而稳,像递一杯水那样说话 夏夏,你最近是不是有心事啊?我看你群里不怎么说话了。要是方便的话,可以跟我们聊聊,我们都在。 dorm_c/dorm_c_v05.mp3
32 hr v01 8.9 38岁中国女性,成熟职场女声,中音区,知性干练,疲惫的善意,像HR发工作语音 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v01.mp3
33 hr v02 11.7 40岁中国女性,沉稳职场女声,语速正常,专业但不冷漠 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v02.mp3
34 hr v03 10.3 36岁中国女性,温和职场女声,像前辈善意提醒 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v03.mp3
35 hr v04 8.7 38岁中国女性,中低音职场女声,干脆,像办完离职手续的叮嘱 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v04.mp3
36 hr v05 7.6 42岁中国女性,略哑成熟女声,阅历感,疲惫但真诚 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。 hr/hr_v05.mp3
37 linxia v01 9.8 24岁中国女性,中低音女声,声线偏薄,疲惫但清醒,克制有温度,普通话,像深夜发微信语音 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v01.mp3
38 linxia v02 9.8 24岁中国女性,略带气声的中音,慢语速,柔软但有分寸,像刚下班躺床上回消息 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v02.mp3
39 linxia v03 6.8 25岁中国女性,稳而轻的中音女声,有距离感但不冷,都市年轻人,普通话标准 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v03.mp3
40 linxia v04 9.2 23岁中国女性,声线略低,清醒克制,字句短,像怕吵醒室友的轻声 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v04.mp3
41 linxia v05 7.4 24岁中国女性,清朗中音,疲惫里藏一点温度,语速偏慢,像对自己说话 你刚才发的那句话,我看了很久。其实我不是不想回你,我只是……不知道该怎么开口。 linxia/linxia_v05.mp3
42 mom v01 9.3 52岁中国女性,温厚中老年女声,音色略哑,轻微西部口音,说话慢而稳,像母亲打电话 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v01.mp3
43 mom v02 9.0 50岁中国女性,柔和中音,带一点鼻音,语速慢,温柔试探,像怕打扰女儿 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v02.mp3
44 mom v03 10.0 55岁中国女性,低沉温厚女声,轻微方言感,像回忆往事时说话 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v03.mp3
45 mom v04 8.4 48岁中国女性,清亮一点的中老年女声,关切但不啰嗦,母亲语气 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v04.mp3
46 mom v05 8.5 52岁中国女性,沙哑温声,情感克制,像深夜给女儿发长语音 女儿啊,妈妈今晚给你做了排骨。你在外面别总吃外卖,记得按时吃饭,累了就给家里打个电话。 mom/mom_v05.mp3
47 self_3y v01 9.0 21岁中国女性,比林夏更亮更高的女声,刚来北京,兴奋带紧张,声音更年轻 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v01.mp3
48 self_3y v02 7.7 20岁中国女性,明亮高音,年轻,带一点紧张,像初到北京 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v02.mp3
49 self_3y v03 7.7 22岁中国女性,清亮女声,兴奋,像第一次看见大城市 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v03.mp3
50 self_3y v04 8.9 21岁中国女性,偏高女声,语速快,紧张又期待,刚毕业 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v04.mp3
51 self_3y v05 8.7 20岁中国女性,少女音,亮而轻,像给闺蜜发语音报喜 刚来北京的时候,地铁里人挤人,我还紧张得不敢说话。但是看见国贸的灯,真的觉得一切都值得。 self_3y/self_3y_v05.mp3
52 xiaomei v01 7.1 24岁中国女性,明亮偏高的女声,语速快,活泼直接,像闺蜜连发语音,能量足 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v01.mp3
53 xiaomei v02 7.4 23岁中国女性,甜亮高音,语速很快,兴奋,像群里@你 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v02.mp3
54 xiaomei v03 6.9 25岁中国女性,明亮女声,语速中等偏快,直来直去,闺蜜语气 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v03.mp3
55 xiaomei v04 9.2 24岁中国女性,偏高女声,带笑说话,活泼,像分享八卦 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v04.mp3
56 xiaomei v05 6.8 22岁中国女性,清脆女声,快语速,热情,像连珠炮 夏夏你怎么又不理我!我跟你说啊,今天公司发生一件超离谱的事,你必须得听,笑死我了真的! xiaomei/xiaomei_v05.mp3
57 xiaomei_drunk v01 12.0 24岁中国女性,同闺蜜音色但喝醉了,口齿略含糊,情绪起伏大,时而哭时而笑 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v01.mp3
58 xiaomei_drunk v02 8.5 24岁中国女性,醉态女声,黏糊,语速忽快忽慢,带哭腔 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v02.mp3
59 xiaomei_drunk v03 6.3 25岁中国女性,喝醉的女声,舌头打结,情绪上来,委屈又笑 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v03.mp3
60 xiaomei_drunk v04 9.3 23岁中国女性,微醺女声,含混,像深夜酒后的语音 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v04.mp3
61 xiaomei_drunk v05 9.0 24岁中国女性,醉酒后女声,鼻音重,情绪不稳定,像倾诉秘密 夏夏……我跟你说啊……今天我喝多了……你别嫌我烦,阿哲他……大三那年他还追过我呢…… xiaomei_drunk/xiaomei_drunk_v05.mp3
62 zhounan v01 9.0 26岁中国男性,温和偏闷的男中音,略拘谨,语速偏慢,像很久没联系的老同学,真诚不油 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v01.mp3
63 zhounan v02 12.5 27岁中国男性,低沉男声,慢语速,略带怀旧,像回忆往事 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v02.mp3
64 zhounan v03 8.4 25岁中国男性,普通青年男声,真诚,略紧张,老同学语气 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v03.mp3
65 zhounan v04 14.4 28岁中国男性,温厚男中音,语速慢,像生日夜独自说话 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v04.mp3
66 zhounan v05 7.9 26岁中国男性,清爽男声,克制,小心翼翼,不想打扰对方 今年第一次来北京出差。来之前我想着要不要找你,找了很久,才在一个校友群里看到你。你现在怎么样? zhounan/zhounan_v05.mp3
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+178
View File
@@ -0,0 +1,178 @@
filename role ref style text
lv11_2103_mom_call_01 mom mom_v01.wav 自然说话 今晚煮了你爱吃的排骨,给你拍张照啊。下周五回来一趟,你高中物理老师的儿子,挺好的。
lv11_2115_xiaomei_voice_01 xiaomei xiaomei_v05.wav 自然说话 在吗
lv11_2115_xiaomei_voice_02 xiaomei xiaomei_v05.wav 自然说话 你被甩了我都听说了
lv11_2115_xiaomei_voice_03 xiaomei xiaomei_v05.wav 自然说话 明天晚上喝酒,海底捞旁边那家,不许放鸽子
lv11_2120_delivery_call_01 delivery delivery_v04.wav 自然说话 你好你的麻辣烫到了,放门口可以吗?
lv11_2130_azhe_voice_01 azhe azhe_v03.wav 自然说话 嗯……夏夏。我那个AirPods充电盒,好像落你抽屉里了。你方便的时候帮我寄一下吗,工位还要用。地址我等下发你。
lv11_2145_hr_voice_01 hr hr_v05.wav 自然说话 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。
lv11_2200_anan_voice_01 anan anan_v04.wav 自然说话 夏夏!我在helens!要不要过来!我请客!
lv11_2215_dorm_a_voice_01 dorm_a dorm_a_v03.wav 自然说话 哎你们看,我今天升职了!
lv11_2215_dorm_b_voice_01 dorm_b dorm_b_v02.wav 自然说话 真的啊!恭喜恭喜!太厉害了!
lv11_2215_dorm_c_voice_01 dorm_c dorm_c_v03.wav 自然说话 厉害!那要请客啊!
lv11_2215_dorm_a_voice_02 dorm_a dorm_a_v03.wav 自然说话 哈哈哈必须的!夏夏你怎么不说话呀
lv11_2215_dorm_b_voice_02 dorm_b dorm_b_v02.wav 自然说话 夏夏在忙吧,别打扰她了
lv11_2245_xiaomei_voice_01_seg1 xiaomei_drunk xiaomei_drunk_v05.wav 醉态开场,黏糊 夏夏夏夏夏。你睡了吗?我跟你说,我跟你说啊……今天我喝多了……
lv11_2245_xiaomei_voice_01_seg2 xiaomei_drunk xiaomei_drunk_v05.wav 醉态爆料,情绪上来 你别嫌我烦哈,我跟你说……其实啊……阿哲他,大三那年,他来追过我。我没答应他。我那时候就觉得他这人,呵,差点意思。
lv11_2245_xiaomei_voice_01_seg3 xiaomei_drunk xiaomei_drunk_v05.wav 醉态解释,委屈 你跟他在一起的时候,我没说,因为说了也没意义嘛对吧。现在他甩了你,我才敢说。
lv11_2245_xiaomei_voice_01_seg4 xiaomei_drunk xiaomei_drunk_v05.wav 醉态收尾,失落 夏夏,你听到了吗?你别恨我啊。……喂?算了。
lv11_2300_mom_text_01 mom mom_v01.wav 自然说话 睡了吗?
lv11_2315_azhe_call_01 azhe azhe_v03.wav 电话里略紧张,像鼓足勇气 我能过去拿吗?就5分钟
lv11_2330_zhounan_voice_01 zhounan zhounan_v05.wav 自然说话 林夏,是我,周南。你应该不记得我了吧,初三坐你后桌那个
lv11_2345_zhounan_voice_01 zhounan zhounan_v05.wav 自然说话 其实我一直想找机会跟你说声谢谢。初三那年你借我笔记,那次考试我才没挂科。
lv11_2345_zhounan_voice_02 zhounan zhounan_v05.wav 自然说话 后来高考,我没考好。复读了一年,去了一个二本。然后就回老家了,没什么好说的。
lv11_2345_zhounan_voice_03 zhounan zhounan_v05.wav 自然说话 今年第一次来北京出差。来之前我想着,要不要找你。找了很久,才在一个校友群里看到你。你现在过得怎么样?
lv11_2345_zhounan_voice_04 zhounan zhounan_v05.wav 自然说话 今天我生日。本来就想跟你说一声,对不起这么晚。
lv11_0015_mom_call_01 mom mom_v01.wav 担心女儿,语气轻但着急 夏夏,你不接电话我有点担心。妈妈知道你工作忙,你早点睡。
lv11_0200_mom_voice_01_seg1 mom mom_v01.wav 温柔试探,像怕打扰女儿 夏夏。妈妈知道你今天电话不接。妈妈不催你,就是想跟你说一件事。
lv11_0200_mom_voice_01_seg2 mom mom_v01.wav 平静追忆 你24了对吧。妈妈24那年——你应该没听我说过——
lv11_0200_mom_voice_01_seg3 mom mom_v01.wav 克制回忆痛苦 那时候妈妈在广州,给一个香港老板做秘书,1995年。那年我也被分手过。也被开除过。一模一样的春天。
lv11_0200_mom_voice_01_seg4 mom mom_v01.wav 释然 那年我哭得特别难看。后来呢?后来就没什么后来了。我回了老家,认识了你爸,生了你。
lv11_0200_mom_voice_01_seg5 mom mom_v01.wav 深沉情感,声音更轻 我跟你说这个不是想跟你说什么都会过去——我想跟你说,那年夏天我没死,是因为我外婆每天晚上都给我打一个电话。
lv11_0200_mom_voice_01_seg6 mom mom_v01.wav 极简温柔 她不说什么,就问我今天吃饭了没。
lv11_0200_mom_voice_01_seg7 mom mom_v01.wav 不要求回应的 tender 我现在打给你,你不接也没事。妈妈给你发个语音,你什么时候想听就听。你不用回我。
lv11_0200_mom_voice_01_seg8 mom mom_v01.wav 几乎微笑的晚安 你今天接了好多电话吧。妈妈不打扰你了。晚安。
v2_msg01_linxia_auto linxia linxia_v05.wav 疲惫克制,轻声 嗯……好。
v2_msg02_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 好啊,明天不见不散。
v2_msg02_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 再说吧。
v2_msg02_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你怎么知道的啊?
v2_msg02_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
v2_msg02_react_warm xiaomei xiaomei_v05.wav 语气更温暖积极 行!那我叫上安安!老地方见!别放鸽子啊!
v2_msg02_react_cold xiaomei xiaomei_v05.wav 语气更冷淡 ……好吧。你要是改主意了随时说。
v2_msg02_react_curious xiaomei xiaomei_v05.wav 语气好奇,略追问 还不是阿哲自己发朋友圈!你不知道吗?他发了又秒删……
v2_msg02_react_silent xiaomei xiaomei_v05.wav 语气犹豫,像等对方回应 ??你还活着吗哈哈。好了不烦你了,有事找我。
v2_msg02_react_tap xiaomei xiaomei_v05.wav 自然说话 嗯是什么意思啊哈哈!行吧你休息。
v2_msg02_r3_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 他……发了什么?
v2_msg02_r3_react xiaomei xiaomei_v05.wav 自然说话 就发了一张你们以前的照片,配了一句'值得'。两分钟就删了。
v2_msg03_linxia_auto linxia linxia_v05.wav 疲惫克制,轻声 好,我下来拿。
v2_msg04_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 你那边……还好吗。
v2_msg04_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 知道了。明天寄。
v2_msg04_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你怎么不自己来拿。
v2_msg04_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 好。
v2_msg04_react_warm azhe azhe_v03.wav 语气更温暖积极 我……挺好的。你呢?
v2_msg04_react_cold azhe azhe_v03.wav 语气更冷淡 嗯……谢了。
v2_msg04_react_curious azhe azhe_v03.wav 语气好奇,略追问 我……不太方便过去。
v2_msg04_react_silent azhe azhe_v03.wav 语气犹豫,像等对方回应 那……我晚点再说吧。
v2_msg04_react_tap azhe azhe_v03.wav 自然说话 谢谢。
v2_msg04_r3w_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 不太好。
v2_msg04_r3w_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 挺好的。
v2_msg04_r3w_react_warm azhe azhe_v03.wav 语气更温暖积极 ……对不起。
v2_msg04_r3w_react_cold azhe azhe_v03.wav 语气更冷淡 那就好。
v2_msg04_r3w_react_silent azhe azhe_v03.wav 语气犹豫,像等对方回应 ……那,晚安。
v2_msg04_r3c_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 为什么。
v2_msg04_r3c_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 算了,不问了。
v2_msg04_r3c_react_curious azhe azhe_v03.wav 语气好奇,略追问 我……没什么。你寄吧。
v2_msg05_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 谢谢王姐。
v2_msg05_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 好的,知道了。
v2_msg05_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 王姐……有什么建议吗?
v2_msg05_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 好。
v2_msg05_react_warm hr hr_v05.wav 语气更温暖积极 别客气。你还年轻,出去看看也好。这行业你知道的。
v2_msg05_react_curious hr hr_v05.wav 语气好奇,略追问 你想听真话?别在这行耗了。你有本事,去试试别的。
v2_msg06_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 在哪儿啊?我看看吧。
v2_msg06_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 不了,你们玩好。
v2_msg06_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你喝了多少了?
v2_msg06_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
v2_msg06_react_warm anan anan_v04.wav 语气更温暖积极 对面那个!我给你留了位置!赶紧赶紧!
v2_msg06_react_cold anan anan_v04.wav 语气更冷淡 好吧!那我给你寄一杯!
v2_msg06_react_curious anan anan_v04.wav 语气好奇,略追问 才两杯!我清醒得很!……好吧三杯。快来!
v2_msg06_react_silent anan anan_v04.wav 语气犹豫,像等对方回应 喂?信号不好吗?好吧以后再约!
v2_msg06_react_tap anan anan_v04.wav 自然说话 嗯是来还是不来啊!算了回头聊!
v2_msg07_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 恭喜恭喜!太厉害了!
v2_msg07_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 恭喜。
v2_msg07_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 怎么升的啊?讲讲!
v2_msg07_react_warm dorm_a dorm_a_v03.wav 语气更温暖积极 哈哈谢谢!我请客!你最近怎么样啊?
v2_msg07_react_curious dorm_a dorm_a_v03.wav 语气好奇,略追问 说来话长!我们老板走了我就顶上了哈哈
v2_msg07_react_tap dorm_b dorm_b_v02.wav 自然说话 林夏发表情了哈哈
v2_msg07_r3_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 挺好的~你请客我去!
v2_msg07_r3_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 还行。
v2_msg07_r3_react_cold dorm_b dorm_b_v02.wav 语气更冷淡 你是不是有事啊?没事可以跟我们说
v2_msg09_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 小美……你没事吧。
v2_msg09_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 我知道了。
v2_msg09_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你……为什么现在才说。
v2_msg09_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
v2_msg09_react_warm xiaomei_drunk xiaomei_drunk_v05.wav 语气更温暖积极 我没事……我就是喝多了想告诉你……你别怪我。
v2_msg09_react_curious xiaomei_drunk xiaomei_drunk_v05.wav 语气好奇,略追问 因为你今天……我怕你以后恨我……
v2_msg09_react_tap xiaomei_drunk xiaomei_drunk_v05.wav 自然说话 你不生气吗?算了……当我没说。
v2_msg09_r3_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 我不恨你。
v2_msg09_r3_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 我得想想。
v2_msg09_r3_react_warm xiaomei_drunk xiaomei_drunk_v05.wav 语气更温暖积极 谢谢你……谢谢你林夏。
v2_msg09_r3_react_cold xiaomei_drunk xiaomei_drunk_v05.wav 语气更冷淡 好……对不起。
v2_msg09_r3_react_silent_q xiaomei_drunk xiaomei_drunk_v05.wav 语气犹豫,像等对方回应 你还在吗?
v2_msg10_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 没有,怎么了?
v2_msg10_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 嗯,要睡了。
v2_msg10_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 妈……你能打电话给我吗?
v2_msg10_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
v2_msg10_react_warm mom mom_v01.wav 语气更温暖积极 没事,就是想起来问一下。今天怎么样?
v2_msg10_react_cold mom mom_v01.wav 语气更冷淡 好,早点睡。
v2_msg10_react_silent mom mom_v01.wav 语气犹豫,像等对方回应 看到了回一下。
v2_msg10_react_tap mom mom_v01.wav 自然说话 嗯就是睡了?晚安。
v2_msg10_call_mom mom mom_v01.wav 电话里听到女儿声音不对,担心但克制 怎么了夏夏?你声音不对。
v2_msg10_call_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 没什么……就是有点累。
v2_msg10_call_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 妈,我辞职了。
v2_msg10_call_react_warm mom mom_v01.wav 语气更温暖积极 累了就回家歇几天。妈煮了排骨。
v2_msg10_call_react_curious mom mom_v01.wav 语气好奇,略追问 辞了就辞了。回来再说。
v2_msg10_call_react_silent mom mom_v01.wav 语气犹豫,像等对方回应 不想说就不说。妈在这呢。
v2_msg10_rw_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 还好。
v2_msg10_rw_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 不太好。
v2_msg10_rw_react_warm mom mom_v01.wav 语气更温暖积极 那就好。别太晚了。
v2_msg10_rw_react_curious mom mom_v01.wav 语气好奇,略追问 怎么了?
v2_msg11_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 可以。但只有5分钟。
v2_msg11_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 不方便。我明天寄给你。
v2_msg11_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 为什么非要今天来?
v2_msg11_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 不了。
v2_msg11_react_warm azhe azhe_v03.wav 语气更温暖积极 好,我马上过来。谢谢。
v2_msg11_react_cold azhe azhe_v03.wav 语气更冷淡 好吧……那谢了。
v2_msg11_react_curious azhe azhe_v03.wav 语气好奇,略追问 我……明天要出差。就5分钟。
v2_msg11_react_tap azhe azhe_v03.wav 电话里略紧张,像鼓足勇气 好。
v2_msg12_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 周南!你还记得我啊!
v2_msg12_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 嗯,你好。
v2_msg12_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你怎么有我微信的?
v2_msg12_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯……好久不见。
v2_msg12_react_warm zhounan zhounan_v05.wav 语气更温暖积极 当然记得。你是我们班最安静的那个。
v2_msg12_react_cold zhounan zhounan_v05.wav 语气更冷淡 嗯……好久不见。你现在在哪呢?
v2_msg12_react_curious zhounan zhounan_v05.wav 语气好奇,略追问 你忘了吗?毕业那天你加的我。不过你可能早忘了哈哈。
v2_msg12_react_silent zhounan zhounan_v05.wav 语气犹豫,像等对方回应 你是不是不记得我了?没关系的。就是突然想说声嗨。
v2_msg12_react_tap zhounan zhounan_v05.wav 自然说话 是啊,好久不见。
v2_msg13_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 一个人在北京,还好吗?
v2_msg13_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 你讲了好多。
v2_msg13_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 ……生日快乐。
v2_msg13_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯,我都听到了。
v2_msg13_react_warm zhounan zhounan_v05.wav 语气更温暖积极 还行吧。习惯了。你呢?你在北京过得好吗?
v2_msg13_react_cold zhounan zhounan_v05.wav 语气更冷淡 是吗?不好意思,话太多了。
v2_msg13_react_curious zhounan zhounan_v05.wav 语气好奇,略追问 谢谢你。你是今天第一个跟我说的。
v2_msg13_react_silent zhounan zhounan_v05.wav 语气犹豫,像等对方回应 不好意思突然说这么多……那,晚安。
v2_msg13_react_tap zhounan zhounan_v05.wav 自然说话 嗯。谢谢你听我说。
v2_msg13_r3_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 不太好。今天也是我的坏日子。
v2_msg13_r3_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 还行吧。
v2_msg13_r3_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你为什么突然联系我?
v2_msg13_r3_react_warm zhounan zhounan_v05.wav 语气更温暖积极 那我们算是难兄难妹了。
v2_msg13_r3_react_cold zhounan zhounan_v05.wav 语气更冷淡 那就好。
v2_msg13_r3_react_curious zhounan zhounan_v05.wav 语气好奇,略追问 因为……今天生日嘛,想起以前的事。想起你。
v2_msg14_linxia_auto linxia linxia_v05.wav 疲惫克制,轻声 嗯,我没事。
v2_msg14_mom_ask mom mom_v01.wav 自然说话 真的没事?
v2_msg14_react_linked mom mom_v01.wav 自然说话 好。那早点睡。妈爱你。
v2_msg14_react_unlinked mom mom_v01.wav 自然说话 你今天怎么都不理妈妈?出什么事了吗?
v2_ending_e_zhounan zhounan zhounan_v05.wav 轻快一点,像看到希望 那我下次出差来北京,请你吃饭好不好。
v2_linxia_generic_hmm linxia linxia_v05.wav 自然说话 嗯。
v2_linxia_generic_ok linxia linxia_v05.wav 自然说话 好。
v2_linxia_generic_warm_ok linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 嗯~好啊。
v2_linxia_generic_cold_know linxia linxia_v05.wav 语气冷淡疏离,短促 知道了。
v2_linxia_generic_cold_fine linxia linxia_v05.wav 语气冷淡疏离,短促 行吧。
v2_linxia_generic_curious linxia linxia_v05.wav 语气好奇,略带追问 嗯?
v2_linxia_generic_then linxia linxia_v05.wav 自然说话 然后呢?
v2_ending_a_linxia linxia linxia_v05.wav 结局独白,轻声自语 明天再说。
v2_ending_b_linxia linxia linxia_v05.wav 结局独白,轻声自语 寄出去了。
v2_ending_c_linxia linxia linxia_v05.wav 结局独白,轻声自语 今晚就这样。
v2_ending_d_linxia linxia linxia_v05.wav 结局独白,轻声自语 早上好。
v2_ending_e_linxia linxia linxia_v05.wav 结局独白,轻声自语 好。
v2_sys_wait_reply linxia linxia_v05.wav 平静清晰,像对自己说话 等待回复。
v2_sys_paused linxia linxia_v05.wav 平静清晰,像对自己说话 游戏已暂停。单击继续,三指点击退出。
v2_sys_content_warning linxia linxia_v05.wav 平静清晰,像对自己说话 本游戏涉及孤独、家庭关系等情感话题,请在舒适的状态下体验。
v2_sys_hotline linxia linxia_v05.wav 平静清晰,像对自己说话 如需倾诉,全国心理援助热线,400-161-9995。
v2_msg10_rw_react_silent mom mom_v01.wav 语气犹豫,像等对方回应 那早点睡啊。
v2_msg10_call_react_down mom mom_v01.wav 电话里听到女儿声音不对,担心但克制 没事就好。早点睡。
v2_msg11_r3_react_silent azhe azhe_v03.wav 语气犹豫,像等对方回应 行吧,那我不来了。
lv11_0030_self3y_voice_01 self_3y self_3y_v03.wav 兴奋带紧张,像刚来北京 哦对,今天是我来北京的第一百天。妈,我没跟你说,我自己数的。这个城市好大。我走了很多路,见了很多人。我觉得我还没准备好,但我又觉得好像准备了很久很久了。你们不用担心我。我很好。以后的我,如果你听到这条,记得要好好的。
lv11_0030_self3y_voice_02 self_3y self_3y_v03.wav 疲惫但假装坚强 我今天又没睡好。不是失眠,就是睡不踏实。北京这个地方,它会让你觉得你随时都要更好,随时都要更努力。我在努力。但我不知道在努力什么。我就想留下一条记录。今天,今天是……算了,就今天吧。
lv11_0030_self3y_voice_03 self_3y self_3y_v03.wav 平静有力,像对未来的自己说话 是我。23岁的我。我设了三年后打开。我不知道那时候的你怎么样了。如果你很好,就当我多虑了。如果你不好——你看,你熬过来了对不对。你23岁的时候,也觉得很难。但你还是过来了。所以……撑住啊。
lv11_sys_memo_01 linxia linxia_v05.wav 平静清晰,像对自己说话 三年前今天,一条未听的录音
1 filename role ref style text
2 lv11_2103_mom_call_01 mom mom_v01.wav 自然说话 今晚煮了你爱吃的排骨,给你拍张照啊。下周五回来一趟,你高中物理老师的儿子,挺好的。
3 lv11_2115_xiaomei_voice_01 xiaomei xiaomei_v05.wav 自然说话 在吗
4 lv11_2115_xiaomei_voice_02 xiaomei xiaomei_v05.wav 自然说话 你被甩了我都听说了
5 lv11_2115_xiaomei_voice_03 xiaomei xiaomei_v05.wav 自然说话 明天晚上喝酒,海底捞旁边那家,不许放鸽子
6 lv11_2120_delivery_call_01 delivery delivery_v04.wav 自然说话 你好你的麻辣烫到了,放门口可以吗?
7 lv11_2130_azhe_voice_01 azhe azhe_v03.wav 自然说话 嗯……夏夏。我那个AirPods充电盒,好像落你抽屉里了。你方便的时候帮我寄一下吗,工位还要用。地址我等下发你。
8 lv11_2145_hr_voice_01 hr hr_v05.wav 自然说话 夏夏啊,离职流程你下周三之前办完哈,公积金那边记得跟进。辛苦啦,外面有合适的工作我帮你留意。
9 lv11_2200_anan_voice_01 anan anan_v04.wav 自然说话 夏夏!我在helens!要不要过来!我请客!
10 lv11_2215_dorm_a_voice_01 dorm_a dorm_a_v03.wav 自然说话 哎你们看,我今天升职了!
11 lv11_2215_dorm_b_voice_01 dorm_b dorm_b_v02.wav 自然说话 真的啊!恭喜恭喜!太厉害了!
12 lv11_2215_dorm_c_voice_01 dorm_c dorm_c_v03.wav 自然说话 厉害!那要请客啊!
13 lv11_2215_dorm_a_voice_02 dorm_a dorm_a_v03.wav 自然说话 哈哈哈必须的!夏夏你怎么不说话呀
14 lv11_2215_dorm_b_voice_02 dorm_b dorm_b_v02.wav 自然说话 夏夏在忙吧,别打扰她了
15 lv11_2245_xiaomei_voice_01_seg1 xiaomei_drunk xiaomei_drunk_v05.wav 醉态开场,黏糊 夏夏夏夏夏。你睡了吗?我跟你说,我跟你说啊……今天我喝多了……
16 lv11_2245_xiaomei_voice_01_seg2 xiaomei_drunk xiaomei_drunk_v05.wav 醉态爆料,情绪上来 你别嫌我烦哈,我跟你说……其实啊……阿哲他,大三那年,他来追过我。我没答应他。我那时候就觉得他这人,呵,差点意思。
17 lv11_2245_xiaomei_voice_01_seg3 xiaomei_drunk xiaomei_drunk_v05.wav 醉态解释,委屈 你跟他在一起的时候,我没说,因为说了也没意义嘛对吧。现在他甩了你,我才敢说。
18 lv11_2245_xiaomei_voice_01_seg4 xiaomei_drunk xiaomei_drunk_v05.wav 醉态收尾,失落 夏夏,你听到了吗?你别恨我啊。……喂?算了。
19 lv11_2300_mom_text_01 mom mom_v01.wav 自然说话 睡了吗?
20 lv11_2315_azhe_call_01 azhe azhe_v03.wav 电话里略紧张,像鼓足勇气 我能过去拿吗?就5分钟
21 lv11_2330_zhounan_voice_01 zhounan zhounan_v05.wav 自然说话 林夏,是我,周南。你应该不记得我了吧,初三坐你后桌那个
22 lv11_2345_zhounan_voice_01 zhounan zhounan_v05.wav 自然说话 其实我一直想找机会跟你说声谢谢。初三那年你借我笔记,那次考试我才没挂科。
23 lv11_2345_zhounan_voice_02 zhounan zhounan_v05.wav 自然说话 后来高考,我没考好。复读了一年,去了一个二本。然后就回老家了,没什么好说的。
24 lv11_2345_zhounan_voice_03 zhounan zhounan_v05.wav 自然说话 今年第一次来北京出差。来之前我想着,要不要找你。找了很久,才在一个校友群里看到你。你现在过得怎么样?
25 lv11_2345_zhounan_voice_04 zhounan zhounan_v05.wav 自然说话 今天我生日。本来就想跟你说一声,对不起这么晚。
26 lv11_0015_mom_call_01 mom mom_v01.wav 担心女儿,语气轻但着急 夏夏,你不接电话我有点担心。妈妈知道你工作忙,你早点睡。
27 lv11_0200_mom_voice_01_seg1 mom mom_v01.wav 温柔试探,像怕打扰女儿 夏夏。妈妈知道你今天电话不接。妈妈不催你,就是想跟你说一件事。
28 lv11_0200_mom_voice_01_seg2 mom mom_v01.wav 平静追忆 你24了对吧。妈妈24那年——你应该没听我说过——
29 lv11_0200_mom_voice_01_seg3 mom mom_v01.wav 克制回忆痛苦 那时候妈妈在广州,给一个香港老板做秘书,1995年。那年我也被分手过。也被开除过。一模一样的春天。
30 lv11_0200_mom_voice_01_seg4 mom mom_v01.wav 释然 那年我哭得特别难看。后来呢?后来就没什么后来了。我回了老家,认识了你爸,生了你。
31 lv11_0200_mom_voice_01_seg5 mom mom_v01.wav 深沉情感,声音更轻 我跟你说这个不是想跟你说什么都会过去——我想跟你说,那年夏天我没死,是因为我外婆每天晚上都给我打一个电话。
32 lv11_0200_mom_voice_01_seg6 mom mom_v01.wav 极简温柔 她不说什么,就问我今天吃饭了没。
33 lv11_0200_mom_voice_01_seg7 mom mom_v01.wav 不要求回应的 tender 我现在打给你,你不接也没事。妈妈给你发个语音,你什么时候想听就听。你不用回我。
34 lv11_0200_mom_voice_01_seg8 mom mom_v01.wav 几乎微笑的晚安 你今天接了好多电话吧。妈妈不打扰你了。晚安。
35 v2_msg01_linxia_auto linxia linxia_v05.wav 疲惫克制,轻声 嗯……好。
36 v2_msg02_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 好啊,明天不见不散。
37 v2_msg02_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 再说吧。
38 v2_msg02_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你怎么知道的啊?
39 v2_msg02_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
40 v2_msg02_react_warm xiaomei xiaomei_v05.wav 语气更温暖积极 行!那我叫上安安!老地方见!别放鸽子啊!
41 v2_msg02_react_cold xiaomei xiaomei_v05.wav 语气更冷淡 ……好吧。你要是改主意了随时说。
42 v2_msg02_react_curious xiaomei xiaomei_v05.wav 语气好奇,略追问 还不是阿哲自己发朋友圈!你不知道吗?他发了又秒删……
43 v2_msg02_react_silent xiaomei xiaomei_v05.wav 语气犹豫,像等对方回应 ??你还活着吗哈哈。好了不烦你了,有事找我。
44 v2_msg02_react_tap xiaomei xiaomei_v05.wav 自然说话 嗯是什么意思啊哈哈!行吧你休息。
45 v2_msg02_r3_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 他……发了什么?
46 v2_msg02_r3_react xiaomei xiaomei_v05.wav 自然说话 就发了一张你们以前的照片,配了一句'值得'。两分钟就删了。
47 v2_msg03_linxia_auto linxia linxia_v05.wav 疲惫克制,轻声 好,我下来拿。
48 v2_msg04_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 你那边……还好吗。
49 v2_msg04_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 知道了。明天寄。
50 v2_msg04_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你怎么不自己来拿。
51 v2_msg04_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 好。
52 v2_msg04_react_warm azhe azhe_v03.wav 语气更温暖积极 我……挺好的。你呢?
53 v2_msg04_react_cold azhe azhe_v03.wav 语气更冷淡 嗯……谢了。
54 v2_msg04_react_curious azhe azhe_v03.wav 语气好奇,略追问 我……不太方便过去。
55 v2_msg04_react_silent azhe azhe_v03.wav 语气犹豫,像等对方回应 那……我晚点再说吧。
56 v2_msg04_react_tap azhe azhe_v03.wav 自然说话 谢谢。
57 v2_msg04_r3w_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 不太好。
58 v2_msg04_r3w_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 挺好的。
59 v2_msg04_r3w_react_warm azhe azhe_v03.wav 语气更温暖积极 ……对不起。
60 v2_msg04_r3w_react_cold azhe azhe_v03.wav 语气更冷淡 那就好。
61 v2_msg04_r3w_react_silent azhe azhe_v03.wav 语气犹豫,像等对方回应 ……那,晚安。
62 v2_msg04_r3c_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 为什么。
63 v2_msg04_r3c_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 算了,不问了。
64 v2_msg04_r3c_react_curious azhe azhe_v03.wav 语气好奇,略追问 我……没什么。你寄吧。
65 v2_msg05_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 谢谢王姐。
66 v2_msg05_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 好的,知道了。
67 v2_msg05_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 王姐……有什么建议吗?
68 v2_msg05_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 好。
69 v2_msg05_react_warm hr hr_v05.wav 语气更温暖积极 别客气。你还年轻,出去看看也好。这行业你知道的。
70 v2_msg05_react_curious hr hr_v05.wav 语气好奇,略追问 你想听真话?别在这行耗了。你有本事,去试试别的。
71 v2_msg06_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 在哪儿啊?我看看吧。
72 v2_msg06_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 不了,你们玩好。
73 v2_msg06_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你喝了多少了?
74 v2_msg06_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
75 v2_msg06_react_warm anan anan_v04.wav 语气更温暖积极 对面那个!我给你留了位置!赶紧赶紧!
76 v2_msg06_react_cold anan anan_v04.wav 语气更冷淡 好吧!那我给你寄一杯!
77 v2_msg06_react_curious anan anan_v04.wav 语气好奇,略追问 才两杯!我清醒得很!……好吧三杯。快来!
78 v2_msg06_react_silent anan anan_v04.wav 语气犹豫,像等对方回应 喂?信号不好吗?好吧以后再约!
79 v2_msg06_react_tap anan anan_v04.wav 自然说话 嗯是来还是不来啊!算了回头聊!
80 v2_msg07_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 恭喜恭喜!太厉害了!
81 v2_msg07_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 恭喜。
82 v2_msg07_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 怎么升的啊?讲讲!
83 v2_msg07_react_warm dorm_a dorm_a_v03.wav 语气更温暖积极 哈哈谢谢!我请客!你最近怎么样啊?
84 v2_msg07_react_curious dorm_a dorm_a_v03.wav 语气好奇,略追问 说来话长!我们老板走了我就顶上了哈哈
85 v2_msg07_react_tap dorm_b dorm_b_v02.wav 自然说话 林夏发表情了哈哈
86 v2_msg07_r3_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 挺好的~你请客我去!
87 v2_msg07_r3_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 还行。
88 v2_msg07_r3_react_cold dorm_b dorm_b_v02.wav 语气更冷淡 你是不是有事啊?没事可以跟我们说
89 v2_msg09_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 小美……你没事吧。
90 v2_msg09_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 我知道了。
91 v2_msg09_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你……为什么现在才说。
92 v2_msg09_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
93 v2_msg09_react_warm xiaomei_drunk xiaomei_drunk_v05.wav 语气更温暖积极 我没事……我就是喝多了想告诉你……你别怪我。
94 v2_msg09_react_curious xiaomei_drunk xiaomei_drunk_v05.wav 语气好奇,略追问 因为你今天……我怕你以后恨我……
95 v2_msg09_react_tap xiaomei_drunk xiaomei_drunk_v05.wav 自然说话 你不生气吗?算了……当我没说。
96 v2_msg09_r3_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 我不恨你。
97 v2_msg09_r3_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 我得想想。
98 v2_msg09_r3_react_warm xiaomei_drunk xiaomei_drunk_v05.wav 语气更温暖积极 谢谢你……谢谢你林夏。
99 v2_msg09_r3_react_cold xiaomei_drunk xiaomei_drunk_v05.wav 语气更冷淡 好……对不起。
100 v2_msg09_r3_react_silent_q xiaomei_drunk xiaomei_drunk_v05.wav 语气犹豫,像等对方回应 你还在吗?
101 v2_msg10_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 没有,怎么了?
102 v2_msg10_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 嗯,要睡了。
103 v2_msg10_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 妈……你能打电话给我吗?
104 v2_msg10_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯。
105 v2_msg10_react_warm mom mom_v01.wav 语气更温暖积极 没事,就是想起来问一下。今天怎么样?
106 v2_msg10_react_cold mom mom_v01.wav 语气更冷淡 好,早点睡。
107 v2_msg10_react_silent mom mom_v01.wav 语气犹豫,像等对方回应 看到了回一下。
108 v2_msg10_react_tap mom mom_v01.wav 自然说话 嗯就是睡了?晚安。
109 v2_msg10_call_mom mom mom_v01.wav 电话里听到女儿声音不对,担心但克制 怎么了夏夏?你声音不对。
110 v2_msg10_call_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 没什么……就是有点累。
111 v2_msg10_call_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 妈,我辞职了。
112 v2_msg10_call_react_warm mom mom_v01.wav 语气更温暖积极 累了就回家歇几天。妈煮了排骨。
113 v2_msg10_call_react_curious mom mom_v01.wav 语气好奇,略追问 辞了就辞了。回来再说。
114 v2_msg10_call_react_silent mom mom_v01.wav 语气犹豫,像等对方回应 不想说就不说。妈在这呢。
115 v2_msg10_rw_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 还好。
116 v2_msg10_rw_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 不太好。
117 v2_msg10_rw_react_warm mom mom_v01.wav 语气更温暖积极 那就好。别太晚了。
118 v2_msg10_rw_react_curious mom mom_v01.wav 语气好奇,略追问 怎么了?
119 v2_msg11_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 可以。但只有5分钟。
120 v2_msg11_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 不方便。我明天寄给你。
121 v2_msg11_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 为什么非要今天来?
122 v2_msg11_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 不了。
123 v2_msg11_react_warm azhe azhe_v03.wav 语气更温暖积极 好,我马上过来。谢谢。
124 v2_msg11_react_cold azhe azhe_v03.wav 语气更冷淡 好吧……那谢了。
125 v2_msg11_react_curious azhe azhe_v03.wav 语气好奇,略追问 我……明天要出差。就5分钟。
126 v2_msg11_react_tap azhe azhe_v03.wav 电话里略紧张,像鼓足勇气 好。
127 v2_msg12_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 周南!你还记得我啊!
128 v2_msg12_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 嗯,你好。
129 v2_msg12_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你怎么有我微信的?
130 v2_msg12_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯……好久不见。
131 v2_msg12_react_warm zhounan zhounan_v05.wav 语气更温暖积极 当然记得。你是我们班最安静的那个。
132 v2_msg12_react_cold zhounan zhounan_v05.wav 语气更冷淡 嗯……好久不见。你现在在哪呢?
133 v2_msg12_react_curious zhounan zhounan_v05.wav 语气好奇,略追问 你忘了吗?毕业那天你加的我。不过你可能早忘了哈哈。
134 v2_msg12_react_silent zhounan zhounan_v05.wav 语气犹豫,像等对方回应 你是不是不记得我了?没关系的。就是突然想说声嗨。
135 v2_msg12_react_tap zhounan zhounan_v05.wav 自然说话 是啊,好久不见。
136 v2_msg13_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 一个人在北京,还好吗?
137 v2_msg13_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 你讲了好多。
138 v2_msg13_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 ……生日快乐。
139 v2_msg13_linxia_tap linxia linxia_v05.wav 极简回应,中性敷衍 嗯,我都听到了。
140 v2_msg13_react_warm zhounan zhounan_v05.wav 语气更温暖积极 还行吧。习惯了。你呢?你在北京过得好吗?
141 v2_msg13_react_cold zhounan zhounan_v05.wav 语气更冷淡 是吗?不好意思,话太多了。
142 v2_msg13_react_curious zhounan zhounan_v05.wav 语气好奇,略追问 谢谢你。你是今天第一个跟我说的。
143 v2_msg13_react_silent zhounan zhounan_v05.wav 语气犹豫,像等对方回应 不好意思突然说这么多……那,晚安。
144 v2_msg13_react_tap zhounan zhounan_v05.wav 自然说话 嗯。谢谢你听我说。
145 v2_msg13_r3_linxia_warm linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 不太好。今天也是我的坏日子。
146 v2_msg13_r3_linxia_cold linxia linxia_v05.wav 语气冷淡疏离,短促 还行吧。
147 v2_msg13_r3_linxia_curious linxia linxia_v05.wav 语气好奇,略带追问 你为什么突然联系我?
148 v2_msg13_r3_react_warm zhounan zhounan_v05.wav 语气更温暖积极 那我们算是难兄难妹了。
149 v2_msg13_r3_react_cold zhounan zhounan_v05.wav 语气更冷淡 那就好。
150 v2_msg13_r3_react_curious zhounan zhounan_v05.wav 语气好奇,略追问 因为……今天生日嘛,想起以前的事。想起你。
151 v2_msg14_linxia_auto linxia linxia_v05.wav 疲惫克制,轻声 嗯,我没事。
152 v2_msg14_mom_ask mom mom_v01.wav 自然说话 真的没事?
153 v2_msg14_react_linked mom mom_v01.wav 自然说话 好。那早点睡。妈爱你。
154 v2_msg14_react_unlinked mom mom_v01.wav 自然说话 你今天怎么都不理妈妈?出什么事了吗?
155 v2_ending_e_zhounan zhounan zhounan_v05.wav 轻快一点,像看到希望 那我下次出差来北京,请你吃饭好不好。
156 v2_linxia_generic_hmm linxia linxia_v05.wav 自然说话 嗯。
157 v2_linxia_generic_ok linxia linxia_v05.wav 自然说话 好。
158 v2_linxia_generic_warm_ok linxia linxia_v05.wav 语气温暖开放,柔软但有分寸 嗯~好啊。
159 v2_linxia_generic_cold_know linxia linxia_v05.wav 语气冷淡疏离,短促 知道了。
160 v2_linxia_generic_cold_fine linxia linxia_v05.wav 语气冷淡疏离,短促 行吧。
161 v2_linxia_generic_curious linxia linxia_v05.wav 语气好奇,略带追问 嗯?
162 v2_linxia_generic_then linxia linxia_v05.wav 自然说话 然后呢?
163 v2_ending_a_linxia linxia linxia_v05.wav 结局独白,轻声自语 明天再说。
164 v2_ending_b_linxia linxia linxia_v05.wav 结局独白,轻声自语 寄出去了。
165 v2_ending_c_linxia linxia linxia_v05.wav 结局独白,轻声自语 今晚就这样。
166 v2_ending_d_linxia linxia linxia_v05.wav 结局独白,轻声自语 早上好。
167 v2_ending_e_linxia linxia linxia_v05.wav 结局独白,轻声自语 好。
168 v2_sys_wait_reply linxia linxia_v05.wav 平静清晰,像对自己说话 等待回复。
169 v2_sys_paused linxia linxia_v05.wav 平静清晰,像对自己说话 游戏已暂停。单击继续,三指点击退出。
170 v2_sys_content_warning linxia linxia_v05.wav 平静清晰,像对自己说话 本游戏涉及孤独、家庭关系等情感话题,请在舒适的状态下体验。
171 v2_sys_hotline linxia linxia_v05.wav 平静清晰,像对自己说话 如需倾诉,全国心理援助热线,400-161-9995。
172 v2_msg10_rw_react_silent mom mom_v01.wav 语气犹豫,像等对方回应 那早点睡啊。
173 v2_msg10_call_react_down mom mom_v01.wav 电话里听到女儿声音不对,担心但克制 没事就好。早点睡。
174 v2_msg11_r3_react_silent azhe azhe_v03.wav 语气犹豫,像等对方回应 行吧,那我不来了。
175 lv11_0030_self3y_voice_01 self_3y self_3y_v03.wav 兴奋带紧张,像刚来北京 哦对,今天是我来北京的第一百天。妈,我没跟你说,我自己数的。这个城市好大。我走了很多路,见了很多人。我觉得我还没准备好,但我又觉得好像准备了很久很久了。你们不用担心我。我很好。以后的我,如果你听到这条,记得要好好的。
176 lv11_0030_self3y_voice_02 self_3y self_3y_v03.wav 疲惫但假装坚强 我今天又没睡好。不是失眠,就是睡不踏实。北京这个地方,它会让你觉得你随时都要更好,随时都要更努力。我在努力。但我不知道在努力什么。我就想留下一条记录。今天,今天是……算了,就今天吧。
177 lv11_0030_self3y_voice_03 self_3y self_3y_v03.wav 平静有力,像对未来的自己说话 是我。23岁的我。我设了三年后打开。我不知道那时候的你怎么样了。如果你很好,就当我多虑了。如果你不好——你看,你熬过来了对不对。你23岁的时候,也觉得很难。但你还是过来了。所以……撑住啊。
178 lv11_sys_memo_01 linxia linxia_v05.wav 平静清晰,像对自己说话 三年前今天,一条未听的录音
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More