SpeechSynthesizer 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
설치된 음성 합성 엔진의 기능에 액세스할 수 있습니다.
public ref class SpeechSynthesizer sealed : IDisposable
public sealed class SpeechSynthesizer : IDisposable
type SpeechSynthesizer = class
interface IDisposable
Public NotInheritable Class SpeechSynthesizer
Implements IDisposable
- 상속
-
SpeechSynthesizer
- 구현
예제
다음 예제는 초기화 하는 콘솔 애플리케이션의 일부를 SpeechSynthesizer 개체 및 문자열을 말합니다.
using System;
using System.Speech.Synthesis;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
SpeechSynthesizer synth = new SpeechSynthesizer();
// Configure the audio output.
synth.SetOutputToDefaultAudioDevice();
// Speak a string.
synth.Speak("This example demonstrates a basic use of Speech Synthesizer");
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
설명
새 SpeechSynthesizer 개체를 만들 때 기본 시스템 음성을 사용합니다. 설치된 음성 합성(텍스트 음성 변환) 음성 중 하나를 사용하도록 를 구성 SpeechSynthesizer 하려면 또는 SelectVoiceByHints 메서드를 SelectVoice 사용합니다. 설치된 음성에 대한 정보를 얻으려면 메서드와 클래스를 GetInstalledVoicesVoiceInfo 사용합니다.
또한 이 클래스는 음성 합성의 다음 측면을 제어합니다.
개체에 대한 출력을 SpeechSynthesizer 구성하려면 , , SetOutputToDefaultAudioDeviceSetOutputToNull및 SetOutputToWaveFile 메서드를 SetOutputToAudioStream사용합니다.
음성을 생성하려면 , , SpeakAsyncSpeakSsml또는 SpeakSsmlAsync 메서드를 Speak사용합니다. 는 SpeechSynthesizer 텍스트, Prompt 또는 개체 또는 SSML(Speech Synthesis Markup Language) 버전 1.0에서 음성을 생성할 수 있습니다.PromptBuilder
어휘집을 추가하거나 제거하려면 및 RemoveLexicon 메서드를 AddLexicon 사용합니다. 는 SpeechSynthesizer 하나 이상의 어휘를 사용하여 단어의 발음을 안내할 수 있습니다.
는 SpeechSynthesizer 프롬프트에서 특정 기능(BookmarkReached, , PhonemeReachedVisemeReached및 SpeakProgress)이 발견되면 이벤트를 발생합니다. 또한 말하기 작업의 시작() 및 끝(SpeakStarted)과 말하기 음성VoiceChange(SpeakCompleted)의 변경에 대해 보고하는 이벤트를 발생합니다.
참고
Dispose에 대한 마지막 참조를 해제하기 전에 반드시 SpeechSynthesizer를 호출하십시오. 이렇게 하지 않으면 가비지 수집기가 SpeechSynthesizer 개체의 Finalize 메서드를 호출할 때까지 사용 중인 리소스가 해제되지 않습니다.
생성자
SpeechSynthesizer() |
SpeechSynthesizer 클래스의 새 인스턴스를 초기화합니다. |
속성
Rate |
SpeechSynthesizer 개체의 읽어주기 속도를 가져오거나 설정합니다. |
State |
SpeechSynthesizer 개체의 현재 말하기 상태를 가져옵니다. |
Voice |
SpeechSynthesizer 개체의 현재 음성에 대한 정보를 가져옵니다. |
Volume |
SpeechSynthesizer 개체의 출력 볼륨을 가져오거나 설정합니다. |
메서드
AddLexicon(Uri, String) |
SpeechSynthesizer 개체에 어휘집을 추가합니다. |
Dispose() |
SpeechSynthesizer 개체를 삭제하고 세션 중에 사용되는 리소스를 해제합니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
Finalize() |
Dispose() 메서드가 호출되지 않을 경우 리소스를 정리하는 보호 기능으로 사용됩니다. |
GetCurrentlySpokenPrompt() |
SpeechSynthesizer에서 말하는 프롬프트를 가져옵니다. |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetInstalledVoices() |
설치된 음성의 모든 설치된 합성 음성(텍스트 음성 변환)을 반환합니다. |
GetInstalledVoices(CultureInfo) |
특정 로캘을 지원하는 설치된 모든 음성 합성(텍스트 음성 변환) 음성을 반환합니다. |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
Pause() |
SpeechSynthesizer 개체를 일시 정지합니다. |
RemoveLexicon(Uri) |
SpeechSynthesizer 개체에서 어휘집을 제거합니다. |
Resume() |
일시 중지된 후 SpeechSynthesizer 개체를 다시 시작합니다. |
SelectVoice(String) |
특정 음성 이름으로 선택합니다. |
SelectVoiceByHints(VoiceGender) |
음성을 사용하여 특정 성별을 선택합니다. |
SelectVoiceByHints(VoiceGender, VoiceAge) |
음성을 사용 하 여 특정 성별 및 시대를 선택합니다. |
SelectVoiceByHints(VoiceGender, VoiceAge, Int32) |
음성이 정렬되는 위치를 기준으로 특정 성별과 나이의 음성을 선택합니다. |
SelectVoiceByHints(VoiceGender, VoiceAge, Int32, CultureInfo) |
음성이 정렬되는 위치를 기준으로 특정 성별과 나이, 로캘의 음성을 선택합니다. |
SetOutputToAudioStream(Stream, SpeechAudioFormatInfo) |
오디오 스트림에 출력을 추가하도록 SpeechSynthesizer 개체를 구성합니다. |
SetOutputToDefaultAudioDevice() |
기본 오디오 디바이스에 출력을 보내도록 SpeechSynthesizer 개체를 구성합니다. |
SetOutputToNull() |
합성 작업에서 디바이스, 파일 또는 스트림으로 출력을 보내지 않도록 SpeechSynthesizer 개체를 구성합니다. |
SetOutputToWaveFile(String) |
Waveform 형식 오디오를 포함하는 파일에 출력을 추가하도록 SpeechSynthesizer 개체를 구성합니다. |
SetOutputToWaveFile(String, SpeechAudioFormatInfo) |
지정된 형식의 Waveform 오디오 형식 파일에 출력을 추가하도록 SpeechSynthesizer 개체를 구성합니다. |
SetOutputToWaveStream(Stream) |
Waveform 형식 오디오를 포함하는 스트림에 출력을 추가하도록 SpeechSynthesizer 개체를 구성합니다. |
Speak(Prompt) |
Prompt 객체의 내용을 동기적으로 말합니다. |
Speak(PromptBuilder) |
PromptBuilder 객체의 내용을 동기적으로 말합니다. |
Speak(String) |
문자열의 내용을 동기적으로 말합니다. |
SpeakAsync(Prompt) |
Prompt 개체의 내용을 비동기적으로 말합니다. |
SpeakAsync(PromptBuilder) |
PromptBuilder 개체의 내용을 비동기적으로 말합니다. |
SpeakAsync(String) |
문자열의 내용을 비동기적으로 말합니다. |
SpeakAsyncCancel(Prompt) |
쿼리된 프롬프트에 대한 비동기 합성 작업을 취소합니다. |
SpeakAsyncCancelAll() |
모든 쿼리된 비동기 음성 합성 작업을 취소합니다. |
SpeakSsml(String) |
SSML 태그를 포함하는 String을 동기적으로 말합니다. |
SpeakSsmlAsync(String) |
SSML 태그를 포함하는 String을 비동기적으로 말합니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
이벤트
BookmarkReached |
SpeechSynthesizer가 프롬프트에서 책갈피를 발견할 때 발생했습니다. |
PhonemeReached |
음소가 달성될 때 발생했습니다. |
SpeakCompleted |
SpeechSynthesizer가 프롬프트에 대해 말하기를 완료할 때 발생했습니다. |
SpeakProgress |
SpeechSynthesizer가 프롬프트의 개개의 단어를 말한 후에 발생했습니다. |
SpeakStarted |
SpeechSynthesizer가 프롬프트를 말하기 시작할 때 발생했습니다. |
StateChanged |
SpeechSynthesizer의 상태가 변경될 때 발생했습니다. |
VisemeReached |
viseme가 달성될 때 발생했습니다. |
VoiceChange |
SpeechSynthesizer의 보이스가 변경될 때 발생했습니다. |
적용 대상
추가 정보
.NET