I must admit, generating voice files one by one with manual corrections is not for me. It takes too much time, and I’d rather do other things. But xVAsynth has now reached the level sufficient for use without supervision.

Here is my method of generating voice files for Oblivion, starting from the text in the quest window and ending with MP3 and LIP files that actually work in-game. I do it as a batch, and it isn’t as straight-forward as one might have hoped.

The tools

First, download the tools:

You will also need a spreadsheet program.

Export dialogue text

There are many ways to export the dialogue text and none of it is compatible with xVAsynth, so some post-processing is required.

I tried xEdit (TES4Edit) using a script from “Apply script” menu. It does it per quest, it’s quick but the output is not very usable as I was not able to sensibly import it into a spreadsheet for processing.

You can do it with the CS (or CSE), it produces good usable output, but the process is very slow. If you do it per quest, the waiting time is bearable, but you get a file per quest, which is a pain. If you do it from the Character menu (Export Dialogue), the CS hangs forever.

To export dialogue per quest with the CS, open the quest window, select your quest, and there on the first tab (Quest Data), there’s a button on the right entitled “Export Dialogue”. Click it and prepare to wait. It takes unreasonably long but the system is working, it isn’t hanging. It will be worth it in the end.

Preparing text data

Once you’ve got your dialogue file(s), you need to convert them to CSV for xVAsynth to read in. Note that modern CSV does not actually have to be comma-separated but can be separated with various delimiters. The one produced by the CS is tab-separated. The files have extension .txt, and I wasn’t able to fool my Windows into believing them to be CSV files, so I had to rename them. Then I could open them with a spreadsheet program. I use Libre Office, but any spreadsheet will do, I think.

Make sure to indicate on import that your delimiter is a tab. Import the file and save it straight away with the new delimiter: comma. Because comma is what is required by xVAsynth. Now edit the file.

The columns that you’ve got there are not what you want but they can be converted. Open xVAsynth, click Batch Mode (the “table” icon in the top row) and click “Generate Sample”. This will create a sample CSV file that has the format expected by xVAsynth. By default it is stored in subfolder resources\app\batch of the xVAsynth installation directory. Open this CSV file in your spreadsheet program.

Important points here are these:

  • The columns can be in any order, but you need the first row with the column headings.
  • The columns shown in the sample file are the only columns that are allowed to be in the file.
  • Where it says “leave blank” it actually means to delete the column altogether. If you fill it with blank values, you’ll get an error.
  • Remove the “vocoder” column unless you know what you’re doing.
  • Voice IDs correspond to file names of models found in the resources\app\models\oblivion folder of the installation directory. You will find several races together according to the grouping in the game per voice actor. You have to fill in each voice ID manually (well, copy and paste but not an automatic conversion).
  • The out_path column is very handy as you can list the file name for each voice line, just as it is listed in the generated file from the CS. The path is relative to what you enter in the xVAsynth window (more on it later). Basically, just leave it as is.

So, prepare your CSV file, save it and make sure that it is actually comma-separated and not anything else.

Set up xVAsynth

Start up xVAsynth, select Oblivion and make sure that all the necessary voices are listed on the left. If some are missing, fix that first. Note that not all models are available, you just need to make sure that all the models listed in your CSV file are loaded.

Click the “gear” button in the top right corner – settings. Make sure that output format is set to MP3 and audio sample rate is set to 44100. Click anywhere on the main window to close the settings.

Now click the “table” button in the top row: batch mode. Drag and drop your CSV into the big box. If there are errors, sort them out before proceeding.

When your lines are loaded correctly, you are almost ready to start. In the input box just under the table you need to enter the root folder for your output paths. This must contain the drive letter as well. For example, I want to save my voice files directly in my Oblivion\Data folder, so I enter there the path to the installation folder: e:\Games\GOG\Oblivion. Note that the file paths of the voice files in the table start with Data\Sound\Voice\… – the usual Oblivion path for voice files. The xVAsynth will create whatever folders need creating.

Generate voice files

Ready! Click “Generate”.

Generate lip sync files

Once the MP3 files are generated, go back to the CS (I use CSE) and select from the menu Character -> Batch generate LIP files. For me this usually fails half of the times the first time, so I do it again, and then it manages to generate all of the LIP files for the currently active mod.

Testing

Yes, you need to test it in-game. Sometimes things go wrong and even though you can play the MP3 files by clicking them, they won’t play in game. If that happens, you can fix them with an MP3 fixer-upper. I use mp3-quality-modifier which is a freeware program you can download off the ‘net.

The settings should be like this (thank you ir4n):

  • Frequency to 44100 Hz
  • Bit Rate to 64 kbps cbr (constant bit rate)
  • Channels to mono

Manual fine-tuning

You’re supposed to be able to manually fine-tune the voice files by clicking “Edit” against the line you want to change. This takes you to the main window, but try it as I might, I never managed to get it to work. So I gave up (perhaps too quickly). Something for another time.

Advertisement
Privacy Settings