/// <summary> /// Initializes a new instance of the MixedVoiceSynthesizer class. /// </summary> /// <param name="donator">Service provider the donator.</param> /// <param name="receiver">Service provider the receiver.</param> /// <param name="config">Config object.</param> public MixedVoiceSynthesizer(ServiceProvider donator, ServiceProvider receiver, MixedVoiceSynthesizerConfig config) { if (donator == null) { throw new ArgumentNullException("donator"); } if (receiver == null) { throw new ArgumentNullException("receiver"); } if (config == null) { throw new ArgumentNullException("config"); } _donator = donator; _receiver = receiver; _config = config; _donator.Engine.AcousticProsodyTagger.Processed += new EventHandler<TtsModuleEventArgs>(OnDonatorAcousticProcessed); _receiver.Engine.AcousticProsodyTagger.Processed += new EventHandler<TtsModuleEventArgs>(OnReceiverAcousticProcessed); if (!string.IsNullOrEmpty(config.LogFile)) { _logger = new TextLogger(config.LogFile); _logger.Reset(); } }
/// <summary> /// Parse config snippet and create the config object. /// </summary> /// <param name="nsmgr">Namespace manager.</param> /// <param name="configNode">Xml node containing the config.</param> /// <returns>The config object.</returns> public static MixedVoiceSynthesizerConfig ParseConfig(XmlNamespaceManager nsmgr, XmlNode configNode) { MixedVoiceSynthesizerConfig config = null; if (nsmgr != null && configNode != null) { config = new MixedVoiceSynthesizerConfig(); config.Load(nsmgr, configNode); } return config; }