简体   繁体   English

C#System.speech.synthesis后处理

[英]C# System.speech.synthesis post processing

Is there any way to apply post processing effects(change speed, pitch, volume) of the output from system.speech.synthesis in C#. 有什么方法可以应用C#中system.speech.synthesis的输出的后处理效果(更改速度,音高,音量)。 To be more clear I am calling system.speech.synthesis.SpeechSynthisizer.Speak(String); 更清楚地说,我正在调用system.speech.synthesis.SpeechSynthisizer.Speak(String); and I want to edit the output. 我想编辑输出。 Thank you for your help. 谢谢您的帮助。

you can change the volume and rate using the property Volume and Rate 您可以使用音量费率属性更改音量费率

        static void Main(string[] args)
        {
            SpeechSynthesizer synthesizer = new SpeechSynthesizer();
            synthesizer.Volume = 100;  // 0...100
            synthesizer.Rate = -2;     // -10...10

            // Synchronous
            synthesizer.Speak("Hello World");

            // Asynchronous
            synthesizer.SpeakAsync("Hello World");
        }

SpeechSynthesizer let's you set a lot of properties that you mentioned here. SpeechSynthesizer使您可以设置此处提到的许多属性。 What do you mean by post processing effects? 后处理效果是什么意思? Once you call the Speak function, any changes to the Synthesizer will not apply towards the output. 调用语音功能后,对合成器的任何更改都将不适用于输出。 You could potentially save the output to file and try to apply additional effects if you wanted. 您可以将输出保存到文件中,并根据需要尝试应用其他效果。 Perhaps us this function provided on the Synthesizer. 也许我们在合成器上提供了功能。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM