How simon300000/genshin-voice works
Genshin Voice is a multilingual voice-line dataset and the tooling that refreshes and distributes it. The main workflow downloads game voice packages, extracts audio, enriches each WAV with game-provided speaker, language, trigger, and transcription metadata, then builds and publishes a Hugging Face dataset. Users can load and filter that dataset; a separate script mirrors it to ModelScope. The README documents these dataset uses and incomplete annotations. Extractor internals were not sampled, so their detailed processing links are omitted.
Main entry points: update.ts Metadata enrichment · index.ts Audio unpack entry · parquet.py Dataset builder · HoyoDown HoyoDown
Components 18
Audio acquisition
- Package downloader
download.ts - HoyoDown
HoyoDown - Audio assets
AudioAssets - Audio unpack entry
index.ts - Extractor tools
hoyo-voice-extractor - Extracted WAVs
result
Metadata enrichment
- Game metadata
GenshinData - Metadata enrichment
update.ts - Voice annotations
Dataset publishing
- Dataset metadata
result - Dataset builder
parquet.py - Hugging Face dataset
- ModelScope mirror
modelscope.py - ModelScope dataset
Dataset use
- Load and filter example
example.py - User audio and text
Other components
- Game voice packages
- Dataset user
Connections 19
- Package downloader → HoyoDown: runs
- HoyoDown → Game voice packages: downloads packages
- HoyoDown → Audio assets: writes packages
- Audio unpack entry → Audio assets: reads packages
- Audio unpack entry → Extractor tools: calls unpacker
- Audio unpack entry → Extracted WAVs: writes WAVs
- Metadata enrichment → Extracted WAVs: reads WAVs
- Metadata enrichment → Game metadata: reads metadata
- Metadata enrichment → Extractor tools: calls helpers
- Metadata enrichment → Voice annotations: writes annotations
- Metadata enrichment → Dataset metadata: writes metadata
- Dataset builder → Dataset metadata: reads metadata
- Dataset builder → Extracted WAVs: reads audio
- Dataset builder → Hugging Face dataset: publishes dataset
- ModelScope mirror → Hugging Face dataset: downloads snapshot
- ModelScope mirror → ModelScope dataset: uploads snapshot
- Dataset user → Load and filter example: runs example
- Load and filter example → Hugging Face dataset: loads dataset
- Load and filter example → User audio and text: writes audio and text