Microsoft MVP성태의 닷넷 이야기
글쓴 사람
음성인식
홈페이지
첨부 파일
 

간단한 예제입니다.

유투브 동영상에서는 되는 데 그대로 베껴 쓴 제 code에서는 오류네요.
https://www.youtube.com/watch?v=EgfsGUbhH54
이런 때가 참 혈압이 많이 오르는 때입니다.

[오류메시지] 문법에 사용된 언어가 음성 인식기의 언어와 일치하지 않습니다.

[설치 Assembly] System.Speech


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Speech;
using System.Speech.Synthesis;

using System.Threading;
using System.Speech.Recognition;

namespace VoiceVocabulary
{
    public partial class Form1 : Form
    {
        SpeechSynthesizer ss = new SpeechSynthesizer();
        PromptBuilder pb = new PromptBuilder();
        SpeechRecognitionEngine sre = new SpeechRecognitionEngine();
        Choices clist = new Choices();

        public Form1()
        {
            InitializeComponent();
        }

        private void btnStart_Click(object sender, EventArgs e)
        {
            btnStart.Enabled = false;
            btnStop.Enabled = true;
            clist.Add(new string[] { "Hello", "Good morning", "Welcome", "Thank you" });
            Grammar gr = new Grammar(new GrammarBuilder(clist));

            try
            {
                sre.RequestRecognizerUpdate();
                sre.LoadGrammar(gr);
                sre.SpeechRecognized += sre_SpeechRecognized;
                sre.SetInputToDefaultAudioDevice();
                sre.RecognizeAsync(RecognizeMode.Multiple);

            }
            catch (Exception ex)
            {
                MessageBox.Show("error: " + ex.Message);
            }
        }

        private void sre_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
        {
            textBox1.Text = textBox1.Text + e.Result.ToString() + Environment.NewLine;
        }








[최초 등록일: ]
[최종 수정일: 1/8/2023]


비밀번호

댓글 작성자
 



2023-01-08 11시33분
오류 메시지 그대로입니다. 현재 아마도 한글 윈도우라 한글 관련 라이브러리만 설치했을 것입니다. 영문을 함께 설치해 주세요. 아래 글도 참고해 보시고.

C#으로 만드는 음성인식/TTS 프로그램
; https://www.sysnet.pe.kr/2/0/1228

그런데, 사실 이제 와서 윈도우의 음성인식/TTS는 간단한 토이 프로젝트가 아니고서는 별다르게 쓸모가 없을 것입니다.
정성태
2023-01-08 11시40분
[카하이] 대단히 감사합니다. 심야에 답글 주셨군요.
알고 있습니다. 구글 등 서비스업체에서 API형태로 많이 쏴주는군요.
제가 원하는 건 유투브 영어동영상을 틀어놓으면 텍스트로 바뀌는 건데
이건 상용 API를 쓰긴 해야겠네요. 저번 pdf건은 OCR로 재 도전해볼려고
합니다. 그 건도 감사드려요.

지금 제가 하고 있는 건 패스워드 정도 걸 수 있는 수준이네요.
역시 Win32부터 총체적인 지식과 경험이 탑을 이뤄야
취미로 시작했다가 좋은 세월 참 많이 보낸것같습니다. ㅜㅜ
감사합니다.

오기입니다 왜 이게 안되지 내 눈에는 되는 걸로 보이는데
항상 답글주신 것처럼 경험이 가져주는 1가지 조건이 빠져서
오류가 나는 것같습니다.
[guest]

... 76  77  78  79  80  81  82  [83]  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
406이진형6/21/200613836처음에 스마트클라이언트 로딩하는 속도 [1]
4036/20/200612678Invoke 관련 문의 드립니다. [2]
4086/22/200611566    답변글 invoke 관련하여...
401김용국6/19/200612535SmartClient에서 동적 어셈블리 관련 문의 드립니다 [1]
402김용국6/20/200611689    답변글 [답변]: SmartClient에서 동적 어셈블리 관련 문의 드립니다 ... 다시 문의 드립니다! [1]
404김용국6/20/200611813        답변글 [답변]: [답변]: SmartClient에서 동적 어셈블리 관련 문의 드립니다 ... 다시 문의 드립니다! [1]
405김용국6/21/200612299            답변글 잘 되네요~~ ^^ 고맙습니다!
407김용국6/21/200611689                답변글 [답변]: 다시한번 문의드립니다!
398김성호6/17/200612235IE프로그래밍 관련하여 질문이
400정성태6/19/200611843    답변글 [답변]: IE프로그래밍 관련하여 질문이 [5]
396guest6/13/200611769CallByName 을 어떻게 처리해야 할지 ....조언 부탁합니다.
397정성태6/15/200611443    답변글 [답변]: CallByName 을 어떻게 처리해야 할지 ....조언 부탁합니다.
399guest6/19/200611066        답변글 [답변]: [답변]: CallByName 을 어떻게 처리해야 할지 ....조언 부탁합니다.
392이상식6/9/200611888스마트클라이언트 실행환경 관련 질문입니다.
394정성태6/12/200611699    답변글 [답변]: 스마트클라이언트 실행 환경 관련 질문입니다.
395이상식6/12/200612114        답변글 [답변]: [답변]: 스마트클라이언트 실행환경 관련 질문입니다.
391심현철6/9/200612015Win32 platform과 .NET platform간의 성능이 어느정도 차이가 날까요?
393정성태6/12/200611671    답변글 [답변]: Win32 platform과 .NET platform간의 성능이 어느정도 차이가 날까요?
390이현행6/6/200611898정말 답답해서 그렇습니다. [1]
389임경훈6/2/200621747sql과 oracle 사용시 파라메타 차이점
387창민 6/1/200613683안녕하세요.문제가 걸렸는데 해결기미가 안보여서 답답해서.. 혹시 아시면 문제 채질이라도...파일 다운로드1
388정성태6/1/200613279    답변글 [답변]: 안녕하세요.문제가 걸렸는데 해결기미가 안보여서 답답해서.. 혹시 아시면 문제 채질이라도...
385오윤섭5/31/200611006SmartClient 동적호출
386정성태6/1/200611401    답변글 [답변]: SmartClient 동적 호출
380윤용한5/29/200611494ATL Event에서 스크립트가 값을 다시 돌려주는 방법은?파일 다운로드1
381윤용한5/29/200611142    답변글 [답변]: ATL Event에서 스크립트가 값을 다시 돌려주는 방법은?
... 76  77  78  79  80  81  82  [83]  84  85  86  87  88  89  90  ...