Skyrim Special Edition
0 of 0

File information

Last updated

Original upload

Created by

aedenthorn and DanRuta

Uploaded by

DanRuta

Virus scan

Some files not scanned

Tags for this mod

About this mod

A plugin to connect xVASynth up to Fuz Ro Bork, enabling xVASynth voices to be used in the Fuz Ro Bork mod.

Permissions and credits
Changelogs
This is an xVASynth plugin, to be used together with the Fuz Ro Bork mod. The author Fuz Ro Bork (aedenthorn) and I collaborated to join the two together, such that Skyrim (and other games') voices from xVASynth can be used in aedenthorn's amazing real time player TTS mod.

Watch the following video for a brief demo, showing some scenes in-game:



Installation

1. Install the main Fuz Ro Bork mod. You need at least version 1.0.0
2. Install xVASynth (v2.1.1+, or use the Steam version for auto-updates), as well as some voices that you may want to use for your character.
3. Install this plugin into the xVASynth app's ./resources/app/plugins/<here> directory, such that you end up with the following example file path: ./resources/app/plugins/skyrim_fuz_ro_bork/plugin.json  (and the other files too)

4. (Optional, but heavily recommended) Download pre-cached voice files from the optional section, and install them following their folder structure, into the xVASynth app files.
5. (Optional, but recommended) Install xVADict-Elder Scrolls, and enable all the words in the ARPAbet screen - this will tell xVASynth voices (v2.0+) how to pronounce the unique words in Elder Scrolls

The plugin gives you the option (enabled by default) to cache player lines to disk, such that any repeat lines are returned instantly, instead of lagging for a second or two, while the line is being generated. The pre-cached files in the optional downloads are copies of all the vanilla player dialogue lines, for several voices, to already start you off with most (if not all) the lines already being ready to go.


Usage

Make sure to have the xVASynth app running while playing, for things to work. To use an xVASynth voice, select it in Fuz Ro Bork's MCM settings.
The pitch and tempo of the voice can be changed in the Fuz Ro Bork settings (cached files can still be used with these).
This is just a plugin to bridge the communication between the two projects. Refer to Fuz Ro Bork's mod page for more info to learn how to use it, and refer to the xVASynth page for further instructions with that.

You can use the "Use only models at least v2" setting at the bottom of the plugin's settings in the xVASynth settings menu to only expose v2+ models to Fuz Ro Bork.


Available pre-cached voices

Note: these are just pre-generated audio files to help avoid heavy compute, where possible. You still need to install the actual voice models from the xVASynth page, else the voices won't show up in the MCM

Any xVASynth voice can be used, and pre-cached files can be generated for any (see below). However, to start people off, the voices included in the downloads on this page are:

Skyrim: sk_femaleargonian, sk_femalecommander, sk_femaledarkelf, sk_femaleeventoned, sk_femalekhajiit, sk_femalenord, sk_femaleorc, sk_femalesultry, sk_femaleyoungeager, sk_florentius, sk_isran, sk_karliah, sk_maleargonian, sk_malecommander, sk_maledunmer, sk_maleelfhaughty, sk_maleeventoned, sk_maleguard, sk_malekhajiit, sk_malenord, sk_malenordcommander, sk_maleoldgrumpy, sk_maleoldkindly, sk_maleorc, sk_arngeir, sk_serana, sk_femalecondescendin, sk_malebrut, sk_maleyoungeage, sk_fre, sk_maleeventonedaccente, sk_maledrun, sk_galma, sk_esber, sk_tuliu, sk_ulfric, sk_kodlakwhiteman

Fallout 4: f4_nate, f4_nora

Morrowind: mw_maledunmer

Cyberpunk 2077: cp_v_female, cp_johnny

Witcher: w_triss, w_yennefer, w_cirilla

Age of Empires 4: aoe_narrator_4

Mass Effect: me_fshepard, me_joker

More may be uploaded in the future, as more voices are updated to v2+ (for the quality/pronunciations). All pre-cached files were generated with v2.0/v2.1 voice models, using version v1.0.4 of xVADict-Elder Scrolls



Generating your own pre-cached files

IMPORTANT: Keep the audio Hz set to 22050 in the xVASynth settings when batch generating, otherwise the pitch will be off, when used in-game.

Also in the optional downloads section is a file containing a batch file that you can run through xVASynth's batch mode to generate all the vanilla player lines for a particular voice. Open the .csv file IN NOTEPAD (or sublime, etc, not Excel), and Find+Replace the voice_id from sk_femalenord to whatever voice ID you want, and skyrim to whatever game ID your voice belongs to. Make sure to install and enable the xVADict dictionary to get the lines to pronounce unique words correctly. When the files have all finished generating, move them from the output folder to alongside the other pre-cached files, and the app+plugin should use them.



Generating pre-cache files for other mods

The pre-cache files included (and the batch file) cover the vanilla game lines. If you'd like to pre-generate voice data for player lines from a mod, you need to create a batch file for it with the new lines, similar to the included file (use a text editor, not excel, as excel sometimes breaks the formatting). Each file needs to be named after the md5 hash of the text, formatted like this:  `1|1|${your_text}`. Have a look through the code in the main.js plugin file to see exactly how the game line is md5'd to be assigned to its cache file.

I've included an utility .exe file in the Miscellaneous section which you can use for converting .txt files exported from xEdit into the batch file needed by xVASynth to generate pre-cache lines. The file generates a file for the sk_femalenord voice.

Follow this guide from Confessoru for how to do this (also stickied in the comments):

I just went through the whole process of extracting dialogue from a mod to pre-cache generation so here are the steps.

You can do it in two ways. You can load the plugins you want to pull from in CK, then in upper tabs choose Character > Export Dialogue. Caveat is that will also export vanilla dialogue, that's why I find it more convenient to use xedit. This is the second way, load your order in xedit, then click on the desired mod, Apply Script, choose Export Dialogue. I believe you can select multiple mods too. Save your file.

Now, your dialogue txt file needs to be converted for voice generation. DanRuta made a great conversion tool, get it from the misc files of this mod. Put the exe and your dialogue file in the same folder.
Before you run the exe, we need to prepare txt for conversion, removing npc lines so only player lines remain. If you open it in a notepad (other than Notepad++ etc), you will probably see a mess, this is because it's not really a txt file, it's a .csv with values that are separated by tabs. I recommend opening it in Excel, or in my case uploading it to Google Spreadsheets because I don't have Excel. You can safely delete any number of columns, but make sure your text occupies the fourth column like this. Do not remove or misplace everything under column TOPIC TEXT, as these are player dialogue lines.
Next thing you want it to save it, and it needs to be saved as txt. In Google Spreadsheets, go to file, download, choose Tab Separated Values (.tsv). This is important, when you're saving the file, rename the extension from .tsv to .txt. 

You're done! Place your newly saved dialogue file in the same folder as the converter. Run it, it will take any number of .txt files in the same folder and merge them into batch.csv. Open it in notepad to see if everything looks in order. From this point you can follow the steps on the description page (Generating your own pre-cached files). Read it carefully!