/* * Copyright (C) 2014-2017 Eitan Isaacson * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see: . */ interface espeak_VOICE { [Const] attribute DOMString name; readonly attribute byte[] languages; [Const] attribute DOMString identifier; attribute octet gender; attribute octet age; attribute octet variant; attribute octet xx1; attribute long score; attribute any spare; }; enum espeak_EVENT_TYPE { "espeakEVENT_LIST_TERMINATED", "espeakEVENT_WORD", "espeakEVENT_SENTENCE", "espeakEVENT_MARK", "espeakEVENT_PLAY", "espeakEVENT_END", "espeakEVENT_MSG_TERMINATED", "espeakEVENT_PHONEME", "espeakEVENT_SAMPLERATE" }; interface espeak_EVENT { readonly attribute espeak_EVENT_TYPE type; readonly attribute unsigned long unique_identifier; readonly attribute long text_position; readonly attribute long length; readonly attribute long audio_position; readonly attribute long sample; readonly attribute any user_data; }; interface eSpeakNGWorker { void eSpeakNGWorker(); void synth_(DOMString aText, VoidPtr aCallback); long synth_ipa_(DOMString aText, DOMString virtualFileName); long getSizeOfEventStruct_(); long set_voice(DOMString aName, DOMString aLang, optional octet gender=0, optional octet age=0, optional octet aVariant=0); [Const] attribute espeak_VOICE[] voices; readonly attribute long samplerate; attribute long rate; attribute long pitch; };