About this mod
Plugin for xVASynth software that adds DeepMoji software, which analyses English text and predicts what emoticons/emojis may apply to the text. This allow to guess the sentiment and amplify emotional speech to the xVASynth v3 models.
- Requirements
- Permissions and credits
- within the xVASynth editor one of the four emotional values is not zero when checking through the dropdown menu (Energy/Pitch/<Emotion>)
- check for '[deepmoji_plugin]' appearing in the xVASynth server.log file
Note: xVASynth is the console window above Mantella's; voice echoes are not a part of this mod right now
How it works?
During TTS synthesis, the plugin adjusts the 4 possible emotional modifier values of phonemes equaly for xVAPitch (v3) models.
- Text is given to DeepMoji for analysis and it returns the probabilities of what emojis would humans attach to that text. Also a previous sentence is added for better flow.
- By default, 10 out of the 64 highest probable emojis are taken from the DeepMoji analysis
- emoji_unicode_emotions.csv file contains the 64 emojis and how they may affect the 4 emotional modifiers of xVASynth. 0-100
- The 10 emojis are compared against the CSV and their values summed up
- Emotional modifiers (Angry, Happy, Sad) are exclusive, only the highest scored one gets applied.
- Surprise emotion is always somewhat applied. Unless when the sum of Surprise and Happy values are too high, then only one is applied. "More than happy" 😬
- There is also a ratio amplifier. Which gets increased if there are one or more exclamation marks within the sentence. This ratio is multiplied with the final emotional modifier values.
- At a certain sadness value threshold, the audio length will be increased.
DeepMoji project demo video:
Online Demo on HuggingFace - https://huggingface.co/spaces/Pendrokar/DeepMoji
xVASynth Online Demo on HuggingFace with DeepMoji plugin - https://huggingface.co/spaces/Pendrokar/xVASynth
DeepMoji project Credits:
Bjarke Felbo¹, Alan Mislove², Anders Søgaard³, Iyad Rahwan¹, Sune Lehmann⁴
¹ Media Lab, Massachusetts Institute of Technology
² College of Computer and Information Science, Northeastern University
³ Department of Computer Science, University of Copenhagen
⁴ DTU Compute, Technical University of Denmark
Plugin source code:
https://github.com/Pendrokar/xvasynth_deepmoji/tree/main
The old version (v0.8.x) installation instructions, not needed for v0.9+ as it already includes these:
- Unarchive deepmoji_plugin ZIP in
resources\app\plugins\
of xVASynth - Get TorchMoji files from: https://huggingface.co/Uberduck/torchmoji/tree/main
- Place those the files in
deepmoji_plugin\DeepMoji\model
- Enable the plugin through xVASynth or the plugins.txt file by adding an asterix to plugin name. DeepMoji model will take around 100 MB of extra RAM while xVASynth is active.
- Replace this file within xVASynth, otherwise the plugin will have no effect.
https://github.com/Pendrokar/xVA-Synth/blob/Pendrokar/issue58/python/xvapitch/xvapitch_model.py