C#nedir?com
 
YAZAR HAKKINDA
Emrah Yiğit
Emrah Yiğit
http://www.csharpnedir.com/
İletişme geçmek için tıklayın.
6 Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için tıklayın.
Yayınlanan diğer makaleleri için tıklayın.
İlgili etiketler: axagent basinda disposing karakter kismini oldugu private programlar programlarda programlarin speech textbox?a uygulamamiz windows yaziyi C# / VC#/.NET Emrah Yiğit
 
YAZI HAKKINDA
Türü : Makale
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi : Orta
Kategori : C# / VC#/.NET
Yayınlanma Tarihi : 20.6.2005
Okunma Sayısı : 20725
Yorum Sayısı : 1     yorum yaz
Site İçi AramaSİTE İÇİ ARAMA
Üye Girişini AçÜye GİRİŞİ
Üye girişi için tıklayın.
Kullanıcı Adı
Şifre
 
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
 
Şifremi / Kullanıcı Adımı unuttum.
 
.net TV RSS Serbest KÖŞE (?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
emre TAŞ
XML - Deniz Kılınç
emre TAŞ
yazının devamı >
emre TAŞ
Decompiling and Reverse Engineering .Net Radyo
emre TAŞ
yazının devamı >
emre TAŞ
Masaüstü mü ? İnternet Mi? .Net Radyo
emre TAŞ
yazının devamı >
emre TAŞ
.Net Kavramları - .Net Radyo
emre TAŞ
yazının devamı >
emre TAŞ
Yeni Başlayanlar için - .Net Radyo
emre TAŞ
yazının devamı >
Makale Gönder Bende Yazmak İstiyorum
.net TV RSSBlogroll
Turhal Temizer
Conda install environment.yml Package 12.4.2021
Turhal Temizer
Mac OS/X Removing CUDA 12.4.2021
Burak Selim Şenyurt
Tie Fighter Değil, Project Tye! 12.4.2021
Burak Selim Şenyurt
Stackoverflow Sevgi Anketinde Yıllardır Bir Numara Çıkan Programlama Dili Rust Kimdir? 12.4.2021
  Diğer Herşey
Sponsorlar
BT Akademi
Medya Portakal
Video Hosting Sponsoru
Csharpnedir.com bir Ineta üyesidir
Uzman Abi
Her Yönüyle C# - Sefer Algan
MS Speech SKD 5.0 ve MS Agent
 
Kapat
Sayfayı Yazdır Sık Kullanılanlara Ekle Arkadaşıma Gönder MySpace Del.Ico.Us Digg Facebook Google Mixx Reddit StumbleUpon
Bu makalemizde Microsoft’un Windows ortamın ses bazlı programlar için hazırlamış olduğu MS Speech SDK 5.0 ve bu tür programlarda kullanabileceğimiz ve daha çok eğitim amaçlı programlarda oldukça yararlı olan MS Agent teknolojisini birlikte nasıl kullanabileceğimizi göreceğiz.

Günümüzde bilgisayarımızın ses ile yönetilmesi, ses bazlı programların yapılması gibi teknolojilerin daha çok yeni olmasına karşın, bir çok topluluk tarafından hayranlık toplamış durumda olduğunu görürüz. Klavye başında saatlerimizi geçirdğimiz programların , sadece ses dalgaları ile çalıştırılması muhtemelen hepimizi heyecanlandırır. Böylece hem sağlığımızı korumakla kalmayız ayrıca bu işi daha zevkli bir hale getirmiş oluruz :)

MS Speech SDK + MS Agent Yazı dizimizin ilk başında bu iki teknolojiyi başlangıç düzeyde nasıl kullanabileceğimizi gösterelim. Uygulamamız TextBox’a girilen değerleri sesli olarak okuyan bir karakterden oluşacak. Uygulamamızın Ses kısmını MS Speech ve karakter kısmını MS Agent ile hazırlayacağız.Şimdi isterseniz uygulamamıza geçelim. İlk olarak Visual Studio.Net’ de Visual C# Windows Application açalım ve uygulamamıza 3 tane referans ekleyelim. Bunlar Interop.AgentObjects, AxInterop.AgentObjects ve SpeechLib.



Şimdi sıra geldi formumuzu tasarlamaya. Bu aşamada da iki küçük eklenti yapacağız.Bunların biri "TextBox" ve diğeri bir "Button".



Şimdi sıra programımızı yazmaya geldi. Programımızda konuşan karakter hepinizin Speech programlarından tanıdığı "Merlin" olacak.

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using AgentObjects;
using SpeechLib; namespace makale
{
    public class Form1 : System.Windows.Forms.Form
    {
        private System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.Button button1;
        private AxAgentObjects.AxAgent temsil = new AxAgentObjects.AxAgent(); // Ilk olarak programızda kullanacağımız AxAgent objemizi,
        private AgentObjects.IAgentCtlCharacterEx karakter; // Sonrada konuşan karakterimizi,
        private SpeechLib.SpVoice ses = new SpeechLib.SpVoice(); // Son olarakta konuşmayı yapacak, ses yaratacak (speech) objemizi tanımlıyoruz.

        private System.ComponentModel.Container components = null;

        public Form1()
        {
            InitializeComponent();
            this.Controls.Add(temsil); // AxAgent bir control olduğu için bunuda Formumuza "kesinlikle" eklemeliyiz...
        }

        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if (components != null)
                {
                    components.Dispose();
                }
            }
            base.Dispose( disposing );
        }

        +region Windows Form Designer generated code
   
        static void Main()
        {
            Application.Run(new Form1());
        }

        private void Form1_Load(object sender, System.EventArgs e)
        {
            temsil.Characters.Load("Merlin", (object)"C:/Windows/MsAgent/chars/merlin.acs"); // AxAgent ile önce         karakteri belirliyoruz. Karakterimiz Merlin Windows XP içinde hazır olarak bulunmaktadır.
            karakter = temsil.Characters["Merlin"]; // AxAgent ile belirlediğimiz karakteri en üstte oluşturduğumuz         "karakter" adlı objemize atama yapıyoruz.
            karakter.Show(null); // Karakterimizi Ekranda Gösteriyoruz...
            karakter.Speak("Hello Emrah I Will read what you write on the textbox!", ""); // Karakterimizin ilk görünür     olduğunda ekrana yazacağı yazıyı belirtiyoruz.
            ses.Rate = 1; // Hemen ardından gelecek sesin hızını ayarlıyoruz.
            ses.Speak("Hello Emrah. I Will read what you write on the textbox", 0); // Speech sistemiminin okuyacağı     yazıyı yazıyoruz. Bu Merlin’in kafası üzerinde çıkan yazı ile aynı olmalıdır.
        }

        private void button1_Click(object sender, System.EventArgs e)
        {
            if (textBox1.Text != "") // TextBox içinde yazı varsa aşağıdakileri yaptırıyoruz.
            {
                karakter.Speak(textBox1.Text,""); // TextBox içindeki yazıyı önce Merlin gösteriyor.
                ses.Speak(textBox1.Text, 0); // ve Sesli Okuma hemen ardından geliyor.
            }
        }
    }
}


Yukarıda gördüğünüz gibi uygulamamız gayet basit bir yapıdadır. Şimdi projemizi açalım ve sonuçları görelim.


Projemizin ilk açıldığındaki görüntüsü...


Son olarakta TextBox’a yazdığımız bir yazının okunması.

Microsoft .NET Speech SDK nin şuan da Windows Xp de sadece ingilizce destekli sürümü bulunmakta. Bu yüzden hazırladığımız uygulamamızda ingilizce dilini taban almış bir sistemin, Türkçe ifadeleri okumakta ne kadar zor duruma düşeceğine tanık olacaksınız. Bu ilerde türkçe olarak geliştireceğimiz uygulamalarımızda bize zorluk çıkartabilir. Diğer bir yandan piyasada bir çok Türkçe speech özelliği olan programlar görüyoruz ki buda bizim bu teknoloji yolunda büyük adımlar attığımızı gösteriyor.

MS .NET Speech SDK + MS Agent yazı dizisinin bir dahaki makalesinde görüşmek üzere.

Emrah YİĞİT
emrahyigit@gmail.com
Makale:
MS Speech SKD 5.0 ve MS Agent C#, Visual C# ve .NET Emrah Yiğit
  • Yazılan Yorumlar
  • Yorum Yaz
OCA
7
2010
msagentları powerpointte nasıl aktif edebilirz yada çıkartabiliriz?
Sayfalar : 1 
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için tıklayın.
Üye değilseniz Üyel Ol linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
 
  • Bu Konuda Son 10
  • Eklenen Son 10
  • Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor