-
-
Notifications
You must be signed in to change notification settings - Fork 2
Export Voice
DemoTracer 会处理两类 demo-backed 交流数据:
-
Voice 语音:可选导出,写成每回合
.dtvsidecar。 -
Chat 文字聊天:默认导出,写进
manifest.json,不需要额外开关。
它们都来自 demo 本身。Demo 没有对应数据时,DemoTracer 不会凭空生成语音或聊天内容。
GUI 中 Export voice if present 默认启用。常规流程是选择 .dem、Analyze、Convert。
如果 demo 中存在可用游戏内语音,输出目录会包含 voice/roundXX.dtv。如果 demo 没有
可用 voice frame,路线 replay 仍会正常导出,只是不会生成 voice/。
文字聊天不需要 GUI 选项。可用聊天事件会随 manifest.json 自动写入
rounds[].chat_messages。
CLI 默认不会导出语音。要导出 demo 自带游戏内语音,在正常 convert 命令后加
--export-voice:
cs2-demotracer.exe convert --demo "<demo.dem>" --output "<output-dir>" --export-voice转换后应该看到类似结构:
<output-dir>/
<demo-id>/
manifest.json
round00/t/*.dtr
round00/ct/*.dtr
voice/
round00.dtv
round01.dtv
voice/roundXX.dtv 就是语音 sidecar。只复制 .dtr 不会带上语音。
聊天不在单独文件中。它在:
manifest.json -> rounds[].chat_messages
因为聊天是低频短文本 metadata,通常体积很小,默认放在 manifest 中更合适。
更可能包含语音:
- 社区服 demo。
- FACEIT demo。
- 5E demo。
- 其他保留游戏内 voice netmessage 的服务器录像。
没有生成 voice/ 时,先检查:
- 转换命令有没有传
--export-voice。 - demo 本身是否录到了游戏内语音。
- 玩家是不是实际使用了游戏内语音。
- 平台是否剥离了 voice data。
语音和饰品互相独立。要同时导出语音和 demo-backed 饰品证据:
cs2-demotracer.exe convert --demo "<demo.dem>" --output "<output-dir>" --export-voice --export-cosmetics --acknowledge-cosmetic-gslt-risk --accept-cosmetic-export-disclaimer贴纸和挂件也需要时:
cs2-demotracer.exe convert --demo "<demo.dem>" --output "<output-dir>" --export-voice --export-cosmetics --export-stickers --export-charms --acknowledge-cosmetic-gslt-risk --accept-cosmetic-export-disclaimer在服务器控制台开启自动语音,然后播放 manifest:
dtr_voice_auto on
dtr_chat_auto on
dtr_go seq "<manifest.json>" 0
dtr_chat_auto 默认就是 on,显式写出来只是方便测试链路更清楚。
完整本地测试 preset:
dtr_replay_identity steam; dtr_align full; dtr_match full; dtr_cosmetics full; dtr_partial 1; dtr_handoff death_contact_c4 slot; dtr_voice_auto on; dtr_chat_auto on; dtr_go seq "<manifest.json>" 0
如果你在观察者位置测试原生玩家文字聊天,需要先设置:
sv_full_alltalk 1
单独 sv_allchat 1 不足以保证 spectator 看到 replay bot 发出的 native text chat。
如果听不到声音,优先看:
dtr_voice_auto status
dtr_chat_auto status
dtr_runtime
dtr_status
常见问题:
-
voice_auto=unavailable:更新完整 server bundle,尤其是 BotController。 -
voice_auto=map_failed:sidecar speaker 没有映射到当前 loaded replay bot。 -
voice_auto=no_human_recipients:服务器里没有可接收语音的 live human client。 - 文字聊天没有出现:确认
manifest.json中存在rounds[].chat_messages,且dtr_chat_auto status为on。观察者看不到 native text chat 时先设置sv_full_alltalk 1。
更完整的语音/聊天机制、多人同时说话、freezetime 和队伍听音说明见 Voice and Chat Replay。
Start here
Convert
Playback
Reference