সি শার্প টিউটোরিয়ালঃ ৪ – সি শার্প প্রজেক্টে সাউন্ডের ব্যবহার

সি শার্প টিউটোরিয়াল সিরিজের আজকের পর্বে আপনাদের সবাইকে স্বাগতম জানাচ্ছি। আজকের পোষ্টে আমরা শিখব সি শার্প প্রজেক্টে কিভাবে সাউন্ড ব্যবহার করতে হয়। সি শার্প টিউটোরিয়ালের ২য় পর্বে আমরা সাউন্ড ব্যবহারের একটা পদ্ধতি শিখেছিলাম। যেখানে সাউন্ড ব্যবহারের জন্য সাউন্ডফাইলের প্রয়োজন হত। মাঝে মাঝে এমন হতে পারে যে একটা প্রজেক্টে আমাদের সাউন্ড ব্যবহারের প্রয়োজন/ইচ্ছা হল কিন্তু যে সাউন্ডটা ব্যবহার করতে চাই তার কোন রেকর্ড করা ফাইল আমাদের কাছে নেই। সেক্ষেত্রে আমাদেরকে অন্যকোন উপায় ব্যবহার করতে হবে। আজকের পোষ্টে আমরা সাউন্ডফাইল ছাড়া একটা প্রজেক্টে সাউন্ড ব্যবহার করার পদ্ধতি শিখব।
এজন্য আমাদেরকে .নেট ফ্রেমওর্য়াকের দুইটা লাইব্রেরী ব্যবহার করতে হবে। এগুলো হলঃ

     using System.Speech;
     using System.Speech.Synthesis;

এরপর আমাদেরকে SpeechSynthesizer ক্লাসের একটা ইন্সট্যান্স ডিক্লায়ার করতে হবে। ইন্সট্যান্স ডিক্লায়ার করার সিনট্যাক্স হলঃ

     SpeechSynthesizer instance_name = new SpeechSynthesizer();

এক্ষেত্রে যে কম্পোনেন্টের জন্য আমাদের সাউন্ডটা কাজ করবে ঐই কম্পোনেন্টের কোডের বাইরে ইন্সট্যান্সটা ডিক্লায়ার করা ভাল [উদাহরনঃ মনেকরুন একটা ফর্মের বাটন কম্পোনেন্ট ক্লিক করলে আমাদের সাউন্ড কাজ করবে, যেক্ষেত্রে ঐই বাটনের ক্লিক ইভেন্টের কোডের বাইরে ইন্সট্যান্ট ডিক্লায়ার করব]। এতে যে উপকার হয় তা হলঃ একই ফাইল/ফর্মের অন্যকোন কম্পোনেন্টের জন্য সাউন্ড ব্যবহার করতে চাইলে আমরা সরাসরি পূর্বের ডিক্লায়ার করা ইন্সট্যান্সটা ব্যবহার করতে পারব। আমাদেরকে শুধুমাত্র Dispose() ফাংশনটা কল করে ঐই ইন্সট্যান্সের সব রিসোর্স ক্লিয়ার করে দিলে হবে। সেক্ষত্রে আমাদের কোডের একটা অংশ এই রকম হবেঃ

	SpeechSynthesizer spch = new SpeechSynthesizer();
	private void button_Login_Click(object sender, EventArgs e)
        {
		spch.Dispose();
         	spch = new SpeechSynthesizer();
		... ...
		... ...
	}

উপরের কোডে আমরা button_login নামের বাটনের জন্য সাউন্ড ব্যবহার করছি…
সাউন্ড ব্যবহারের জন্য SpeechSynthesizer ক্লাসের দুইটা ফাংশন আছেঃ

       Speak(string); - synchronous
       SpeakAsync(string); - asynchronous

এই দুইটা ফাংশনের প্যারামিটার হিসাবে স্ট্রিং ভ্যারিয়েবল ইনপুট দিতে হয়। স্ট্রিং ভ্যারিয়াবলে আমরা যাই ইনপুট দিব তাই সাউন্ড হিসাবে শুনাবে। তবে এই দুইটার মধ্যে ২য় টা ব্যবহার করা ভাল।

আমরা সাউন্ডের জন্য নিচের কোডটা লিখতে পারিঃ

     SpeechSynthesizer spch = new SpeechSynthesizer();
     private void button_Login_Click(object sender, EventArgs e)
     {
          spch.Dispose();
          spch = new SpeechSynthesizer();
	  spch.SpeakAsync(“Thank You”);
     }

আরো জানতে চাইলে এখানে ভিজিট করতে পারেনঃ
১। .NET System.Speech.Synthesis Namespaces
২। .NET System.Speech Namespaces

আশাকরি আজকের পোষ্টটা আমরা সবাই বুঝতে পারছি। আগামী পোষ্টে আমরা শিখব কিভাবে সি শার্প প্রজেক্টে মাইএসকিউএল (MySQL) ডাটাবেইজ ব্যবহার করতে হয়।