From acad79ac33be427c8d7b973d96e2b343eb6d8c30 Mon Sep 17 00:00:00 2001 From: quillotm Date: Fri, 20 Aug 2021 11:49:39 +0200 Subject: [PATCH] Generate wav file from lst one. --- volia/skyrim.py | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 volia/skyrim.py diff --git a/volia/skyrim.py b/volia/skyrim.py new file mode 100644 index 0000000..71457de --- /dev/null +++ b/volia/skyrim.py @@ -0,0 +1,55 @@ + +import argparse +from utils import SubCommandRunner +from core.data import read_lst +import os + + + +def lst2wav(lst: str, root: str, outfile: str): + lst_ = read_lst(lst) + + with open(outfile, "w") as f: + for id_ in lst_: + # Split id + splited = id_.split(",") + + # Get language + language = None + if splited[0] == "en-us": + language = "english" + elif splited[0] == "": + language = "french" + + # Create wav filename + splited3 = splited[3].splited(".") + wav = "-".join(splited3) + ".wav" + + # Create full path + full_path = os.path.join(language, "wave-audio", wav) + + f.write(f"{id_} {full_path}\n") + pass + pass + + +if __name__ == '__main__': + # Main parser + parser = argparse.ArgumentParser(description="Skyrim data-management commands") + subparsers = parser.add_subparsers(title="action") + + parser_lst2wav = subparsers.add_parser("lst2wav", help="Generate wav file from lst") + parser_lst2wav.add_argument("--lst", type=str, help="list file .lst") + parser_lst2wav.add_argument("--root", type=str, help="root directory with audio files") + parser_lst2wav.add_argument("--outfile", type=str, help="output wav.scp-like file") + parser_lst2wav.set_defaults(which="lst2wav") + + # Parse + args = parser.parse_args() + + # Run commands + runner = SubCommandRunner({ + "lst2wav" : lst2wav + }) + + runner.run(args.which, args.__dict__, remove="which") -- 1.8.2.3