public void RecordSpeech(string jsonString)
    {
        SpeechHistory  history     = JsonUtility.FromJson <SpeechHistory>(jsonString);
        TextRecord     textRecord  = new TextRecord(history.durationSec);
        VoiceRecord    voiceRecord = new VoiceRecord(history.durationSec, history.fileID);
        TimelineRecord timeline    = timelineRecords.Find(t => t.timeSec == history.timeSec);

        if (timeline == null)
        {
            timeline         = new TimelineRecord();
            timeline.timeSec = history.timeSec;
            timeline.text    = textRecord;
            timeline.voice   = voiceRecord;
            timelineRecords.Add(timeline);
            return;
        }

        if (timeline.text == null)
        {
            timeline.text = textRecord;
        }

        if (timeline.voice == null)
        {
            timeline.voice = voiceRecord;
        }
        else
        {
            Utilities.MergeValues(timeline.voice, voiceRecord);
        }
    }
示例#2
0
        public virtual void Log(VoiceRecord record)
        {
            if (null == record)
            {
                throw new ArgumentNullException(nameof(record));
            }

            _repository.Insert(record);
        }