Reclist file - HeidenBZR/WavConfigTool GitHub Wiki

The reclist file is the only necessary file for WavConfigTool, the .mask and .wtr are optional. This file contains information about phonemes used in the reclist, files, and phonemes in each file.

YAML

The file syntax is YAML, you may want to read about this format: https://en.wikipedia.org/wiki/YAML

Pay attention to:

  • Spaces. They can easily break the whole syntax and file will not be read.
  • Hyphens in the lists of values (for example, list of phonemes or files in our case)
  • Special symbols. If the character is not a number or letter, you probably need to enclose it in quotation marks.

Text Editor

I highly recommend that you use Notepad++ or another program that can display special characters (spaces and TABs) and use this option to help you debug the syntax. In addition, in Notepad++, you can enable Yaml syntax (the Syntax/Yaml menu), which will also help you see the structure.

Content

	Phonemes
	{
		string[] Vowels;
		string[] Consonants;
	}

	WavParams
	{
		string Filename;
		string[] Phonemes;
		string Description = ""; // optional
	}

	Reclist
	{
		Phonemes Phonemes;
		WavParams[] Files;
	}

Here is a short example from CVC RUS:

Phonemes:
  Vowels:
  - a
  Consonants:
  - b
  - v
Files:
- Filename: babab
  Phonemes:
  - b
  - a
  - b
  - a
  - b
  Description: бабаб
- Filename: vavav
  Phonemes:
  - v
  - a
  - v
  - a
  - v
  Description: вавав

Also take a look at the existing files. You can find the Settings archive on Release Page.

WavConfigHelper

WavConfigHelper is a console tool that contains simple WavConfig commands, such as debugging your reclist. It is located in the program folder, open it and write "help" to get a list of commands. The most important part of the check is the YAML syntax.

Phonemes

Things you know about vowels and consonants may not be so important in WavConfigTool and UTAU :)

  • Vowel is a phoneme, that will be stretched, when you stretch the note.
  • Consonant is a phoneme that won't be stretched, when you stretch the note, however, it may, if you want to pronounce the syllable stressed.
  • Rest is a void between phonemes, and also at the beginning and the ending of the file. It has special meaning and used to configure beginning and ending aliases. The - symbol is reserved for rest, so you can't use it as vowel and consonant. If your reclist have such vowel/consonant, put other symbol (like ' for example), and then in .wtr you can replace it back to -.

The pipeline

There are two ways to create a .reclist file, directly or from .wsettings file.

Directly

  1. Create a .reclist file in 'Settings' folder: you have a shortcut in the program folder, and you can open it with menu Folder/Settings in WavConfigTool. The file should have your reclist format (VCV/CV/etc), language, and optionally the reclist author name.
  2. Open it in your text editor. Fill the Phonemes section. You can copy from the existing reclist and replace the phonemes with yours. Remember about special symbols.
  3. Start with the "Files" section. At first you better only fill one or two lines.
  4. Run WavConfigHelper.exe, and test your reclist there. If you see message "Failed to read file. Check YAML settings", re-check your reclist file. Pay attention to the spaces, dashes, and special symbols.
  5. As soon as the helper says reclist is OK, the reclist will also appear in WavConfigTool reclist list.
  6. Now you can fill the rest files. Would be nice idea to run WavConfigHelper several times, to find possible errors as early as possible.

From .wsettings

.wsettings is an old format for old version of WCT (0.1). It may be easier to make reclist with it, and then import the reclist with WavConfigHelper.

  1. Create a text document with any name.
  2. Fill the first line with vowels, separating them with spaces.
  3. The second line is reserved for consonants. However, any symbol, that is not vowel and not "-" (reserved for rests) will be read as a consonant, so you can just leave it blank. But you can't start with wav info from the second line, that will break the file, wav infos are starting from the third line only.
  4. From the third line you can fill the wav info. These are three columns, when first one is filename (must end with .wav for old format), the second is for phonemes, separated with space, and third is for the description. Columns are separated with TAB symbol. Personally, I write this part in Excel-like editor and then just copy and past in the .wsettings file.
  5. Run WavConfigHelper. Write "help" to see the command and how to use it, and convert your reclist. The result will be in the program folder. Move it in Settings folder.
  6. Check you reclist with WavConfigHelper.

Now you have your .reclist ready. With that, all possible aliases will be generated, and the aliases will be formed with default rules. To change that, you'll need .mask and .wtr files.

"Failed to read file. Check YAML syntax".

If you checked any mentioned thing, or just if you made the whole reclist before debug it, it would be difficult to find the error.

To debug your reclist, copy it to any other .reclist file (like test.reclist), or make a backup of your reclist. Then, remove all "files" definitions, except the first one, and check it with the helper. If it failed, you know where to look for the error. If passed, put back all files, and remove half of them. Check again. Keep checking separated parts to define which parts is breaking the file.

There was a request for a detailed YAML debugger, but it's not made for now.

F.A.Q.

My reclist doesn't appear in WavConfigTool.

That means the program can't read it. Check if it has ".reclist" extension. If so, check it with WavConfigHelper, there are probably YAML syntax problems.

After I used my reclist in WavConfigTool, some wrong extra "consonants" appeared there.

That means, you put them somewhere in "Files". Check it and remove from Files and main Phonemes section.

It generates some extra aliases like VCV, which I don't need.

You need .mask file to control, which aliases should be generated.

The alias format is not like it must be, for example, the endings are [a -], and I need [a R]

You need .wtr file to control alias format and replaces.

Where are the tutorials for .mask and .wtr files?

In the future :) I haven't yet made them.

An editor would be nice idea.

Definitely. There are people who wants to help with it, so perhaps we'll have one! Here is the issue, is you want to be in touch: https://github.com/HeidenBZR/WavConfigTool/issues/25