/// <summary> Construct the struct from json data. </summary>
        public static PhonemesRaw FromJson(string json)
        {
            //Format json for unity
            json = "{\"phonemes\":" + json + "}";

            PhonemesRaw raw = JsonUtility.FromJson <PhonemesRaw>(json);

            //Read data from sentences
            string       phonemes    = "";
            List <float> end_times   = new List <float>();
            float        lastEndTime = 0.0f;

            for (int i = 0; i < raw.phonemes.Length; i++)
            {
                phonemes += raw.phonemes[i].phonemes;
                for (int j = 0; j < raw.phonemes[i].end_times.Length; j++)
                {
                    end_times.Add(raw.phonemes[i].end_times[j] + lastEndTime);
                    if (j == raw.phonemes[i].end_times.Length - 1)
                    {
                        lastEndTime += raw.phonemes[i].end_times[j];
                    }
                }
            }
            raw.phonemesChars = phonemes.ToCharArray();
            raw.end_times     = end_times.ToArray();

            return(raw);
        }
Ejemplo n.º 2
0
 public void SetPhonemesRaw(PhonemesRaw raw)
 {
     phonemes = new PhonemeData(raw, speech.phonemeTable);
 }
 public virtual Phonemes RefineData(PhonemesRaw raw)
 {
     Debug.LogError("Refine not implemented");
     return(null);
 }
 public void SetData(PhonemesRaw raw, PhonemeTable table)
 {
     this.raw = raw;
     refined  = table == null || raw.end_times == null ? null : table.RefineData(raw);
 }
 public PhonemeData(PhonemesRaw raw, PhonemeTable table)
 {
     this.raw = raw;
     refined  = table == null ? null : table.RefineData(raw);
 }