1. ওভারভিউ
Google ক্লাউড টেক্সট-টু-স্পীচ এপিআই (বিটা) বিকাশকারীদের তাদের অ্যাপ্লিকেশনগুলিতে বাজানো অডিও হিসাবে প্রাকৃতিক-শব্দযুক্ত, সিন্থেটিক মানুষের বক্তৃতা অন্তর্ভুক্ত করার অনুমতি দেয়। টেক্সট-টু-স্পিচ API পাঠ্য বা স্পিচ সিন্থেসিস মার্কআপ ল্যাঙ্গুয়েজ (SSML) ইনপুটকে MP3 বা LINEAR16 (WAV ফাইলে ব্যবহৃত এনকোডিং) এর মতো অডিও ডেটাতে রূপান্তর করে।
এই কোডল্যাবে, আপনি C# এর সাথে Text-to-Speech API ব্যবহার করার উপর ফোকাস করবেন। আপনি কীভাবে উপলব্ধ ভয়েসগুলি তালিকাভুক্ত করবেন এবং পাঠ্য থেকে অডিও সংশ্লেষিত করবেন তা শিখবেন।
আপনি কি শিখবেন
- ক্লাউড শেল কিভাবে ব্যবহার করবেন
- কিভাবে টেক্সট-টু-স্পীচ এপিআই সক্ষম করবেন
- কীভাবে API অনুরোধগুলি প্রমাণীকরণ করবেন
- সি# এর জন্য গুগল ক্লাউড ক্লায়েন্ট লাইব্রেরি কীভাবে ইনস্টল করবেন
- উপলব্ধ ভয়েস তালিকা কিভাবে
- কিভাবে পাঠ্য থেকে অডিও সংশ্লেষিত করা যায়
আপনি কি প্রয়োজন হবে
- একটি Google ক্লাউড প্ল্যাটফর্ম প্রকল্প
- একটি ব্রাউজার, যেমন ক্রোম বা ফায়ারফক্স
- C# ব্যবহার করে পরিচিতি
সমীক্ষা
আপনি কিভাবে এই টিউটোরিয়াল ব্যবহার করবেন?
আপনি C# এর সাথে আপনার অভিজ্ঞতাকে কীভাবে মূল্যায়ন করবেন?
আপনি Google ক্লাউড প্ল্যাটফর্ম পরিষেবাগুলি ব্যবহার করার বিষয়ে আপনার অভিজ্ঞতাকে কীভাবে মূল্যায়ন করবেন?
2. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
ক্লাউড শেল শুরু করুন
যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।
ক্লাউড শেল সক্রিয় করুন
- ক্লাউড কনসোল থেকে, ক্লাউড শেল সক্রিয় করুন ক্লিক করুন .
যদি এটি আপনার প্রথমবার ক্লাউড শেল শুরু হয়, তাহলে এটি কী তা বর্ণনা করে আপনাকে একটি মধ্যবর্তী স্ক্রীন উপস্থাপন করা হবে। যদি আপনি একটি মধ্যবর্তী স্ক্রীনের সাথে উপস্থাপিত হন, তবে চালিয়ে যান ক্লিক করুন।
ক্লাউড শেলের সাথে সংযোগ করতে এবং সংযোগ করতে এটির মাত্র কয়েক মুহূর্ত লাগবে৷
এই ভার্চুয়াল মেশিনটি প্রয়োজনীয় সমস্ত বিকাশের সরঞ্জাম দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5 GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার অনেক কাজ, যদি সব না হয়, ব্রাউজার দিয়ে করা যেতে পারে।
একবার ক্লাউড শেলের সাথে সংযুক্ত হয়ে গেলে, আপনি দেখতে পাবেন যে আপনি প্রমাণীকৃত হয়েছেন এবং প্রকল্পটি আপনার প্রকল্প আইডিতে সেট করা আছে।
- আপনি প্রমাণীকৃত কিনা তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:
gcloud auth list
কমান্ড আউটপুট
Credentialed Accounts ACTIVE ACCOUNT * <my_account>@<my_domain.com> To set the active account, run: $ gcloud config set account `ACCOUNT`
- gcloud কমান্ড আপনার প্রকল্প সম্পর্কে জানে তা নিশ্চিত করতে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:
gcloud config list project
কমান্ড আউটপুট
[core] project = <PROJECT_ID>
যদি এটি না হয়, আপনি এই কমান্ড দিয়ে এটি সেট করতে পারেন:
gcloud config set project <PROJECT_ID>
কমান্ড আউটপুট
Updated property [core/project].
3. টেক্সট-টু-স্পিচ API সক্রিয় করুন
আপনি টেক্সট-টু-স্পিচ API ব্যবহার শুরু করার আগে, আপনাকে অবশ্যই API সক্রিয় করতে হবে। আপনি ক্লাউড শেলে নিম্নলিখিত কমান্ডটি ব্যবহার করে API সক্ষম করতে পারেন:
gcloud services enable texttospeech.googleapis.com
4. C# এর জন্য Google ক্লাউড টেক্সট-টু-স্পীচ API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন
প্রথমে, একটি সাধারণ C# কনসোল অ্যাপ্লিকেশন তৈরি করুন যা আপনি টেক্সট-টু-স্পিচ API নমুনাগুলি চালানোর জন্য ব্যবহার করবেন:
dotnet new console -n TextToSpeechApiDemo
আপনি অ্যাপ্লিকেশন তৈরি করা এবং নির্ভরতা সমাধান করা দেখতে হবে:
The template "Console Application" was created successfully.
Processing post-creation actions...
...
Restore succeeded.
এরপরে, TextToSpeechApiDemo
ফোল্ডারে নেভিগেট করুন:
cd TextToSpeechApiDemo/
এবং প্রকল্পে Google.Cloud.TextToSpeech.V1
NuGet প্যাকেজ যোগ করুন:
dotnet add package Google.Cloud.TextToSpeech.V1
info : Adding PackageReference for package 'Google.Cloud.TextToSpeech.V1' into project '/home/atameldev/TextToSpeechDemo/TextToSpeechDemo.csproj'.
log : Restoring packages for /home/atameldev/TextToSpeechDemo/TextToSpeechDemo.csproj...
...
info : PackageReference for package 'Google.Cloud.TextToSpeech.V1' version '1.0.0-beta01' added to file '/home/atameldev/TextToSpeechDemo/TextToSpeechDemo.csproj'.
এখন, আপনি Text-to-Speech API ব্যবহার করতে প্রস্তুত!
5. উপলব্ধ ভয়েস তালিকা
এই বিভাগে, আপনি প্রথমে অডিও সংশ্লেষণের জন্য ইংরেজিতে সমস্ত উপলব্ধ ভয়েস তালিকাভুক্ত করবেন।
প্রথমে, ক্লাউড শেলের উপরের ডান দিক থেকে কোড এডিটর খুলুন:
TextToSpeechApiDemo
ফোল্ডারের ভিতরে Program.cs
ফাইলে নেভিগেট করুন এবং নিম্নলিখিত কোডটি প্রতিস্থাপন করুন:
using Google.Cloud.TextToSpeech.V1;
using System;
namespace TextToSpeechApiDemo
{
class Program
{
static void Main(string[] args)
{
var client = TextToSpeechClient.Create();
var response = client.ListVoices("en");
foreach (var voice in response.Voices)
{
Console.WriteLine($"{voice.Name} ({voice.SsmlGender}); Language codes: {string.Join(", ", voice.LanguageCodes)}");
}
}
}
}
কোডটি অধ্যয়ন করতে এক বা দুই মিনিট সময় নিন*।* ক্লাউড শেল-এ ফিরে যান, অ্যাপটি চালান:
dotnet run
আপনি নিম্নলিখিত আউটপুট দেখতে হবে:
en-US-Wavenet-D (Male); Language codes: en-US
en-AU-Wavenet-A (Female); Language codes: en-AU
en-AU-Wavenet-B (Male); Language codes: en-AU
en-AU-Wavenet-C (Female); Language codes: en-AU
en-AU-Wavenet-D (Male); Language codes: en-AU
en-GB-Wavenet-A (Female); Language codes: en-GB
en-GB-Wavenet-B (Male); Language codes: en-GB
en-GB-Wavenet-C (Female); Language codes: en-GB
...
en-GB-Standard-A (Female); Language codes: en-GB
en-GB-Standard-B (Male); Language codes: en-GB
en-AU-Standard-D (Male); Language codes: en-AU
সারাংশ
এই ধাপে, আপনি অডিও সংশ্লেষণের জন্য সমস্ত উপলব্ধ ভয়েস ইংরেজিতে তালিকাভুক্ত করতে সক্ষম হয়েছেন। আপনি সমর্থিত ভয়েস পৃষ্ঠায় উপলব্ধ ভয়েসের সম্পূর্ণ তালিকা খুঁজে পেতে পারেন।
6. পাঠ্য থেকে অডিও সংশ্লেষণ করুন
আপনি একটি স্ট্রিংকে অডিও ডেটাতে রূপান্তর করতে টেক্সট-টু-স্পিচ API ব্যবহার করতে পারেন। আপনি বিভিন্ন উপায়ে বক্তৃতা সংশ্লেষণের আউটপুট কনফিগার করতে পারেন, যার মধ্যে একটি অনন্য ভয়েস নির্বাচন করা বা পিচ, ভলিউম, স্পিকিং রেট এবং নমুনা হারে আউটপুট মডিউল করা ।
পাঠ্য থেকে একটি অডিও ফাইল সংশ্লেষণ করতে, TextToSpeechApiDemo
ফোল্ডারের ভিতরে Program.cs
ফাইলে নেভিগেট করুন এবং নিম্নলিখিত কোডটি দিয়ে প্রতিস্থাপন করুন:
using Google.Cloud.TextToSpeech.V1;
using System;
using System.IO;
namespace TextToSpeechApiDemo
{
class Program
{
static void Main(string[] args)
{
var client = TextToSpeechClient.Create();
// The input to be synthesized, can be provided as text or SSML.
var input = new SynthesisInput
{
Text = "This is a demonstration of the Google Cloud Text-to-Speech API"
};
// Build the voice request.
var voiceSelection = new VoiceSelectionParams
{
LanguageCode = "en-US",
SsmlGender = SsmlVoiceGender.Female
};
// Specify the type of audio file.
var audioConfig = new AudioConfig
{
AudioEncoding = AudioEncoding.Mp3
};
// Perform the text-to-speech request.
var response = client.SynthesizeSpeech(input, voiceSelection, audioConfig);
// Write the response to the output file.
using (var output = File.Create("output.mp3"))
{
response.AudioContent.WriteTo(output);
}
Console.WriteLine("Audio content written to file \"output.mp3\"");
}
}
}
কোডটি অধ্যয়ন করতে এক বা দুই মিনিট সময় নিন এবং দেখুন কিভাবে এটি পাঠ্য* থেকে একটি অডিও ফাইল তৈরি করতে ব্যবহৃত হয়।*
ক্লাউড শেলে ফিরে, অ্যাপটি চালান:
dotnet run
আপনি নিম্নলিখিত আউটপুট দেখতে হবে:
Audio content written to file "output.mp3"
কোড এডিটরের ভিতরে, আপনি mp3 ফাইলটি ডাউনলোড করতে পারেন এবং আপনার মেশিনে স্থানীয়ভাবে এটি চালাতে পারেন।
সারাংশ
এই ধাপে, আপনি একটি স্ট্রিংকে একটি অডিও mp3 ফাইলে রূপান্তর করতে টেক্সট-টু-স্পীচ API ব্যবহার করতে সক্ষম হয়েছেন। ভয়েস অডিও ফাইল তৈরি সম্পর্কে আরও পড়ুন।
7. অভিনন্দন!
আপনি শিখেছেন কিভাবে অডিও ফাইলে বিভিন্ন ধরনের ট্রান্সক্রিপশন করতে C# ব্যবহার করে Text-to-Speech API ব্যবহার করতে হয়!
পরিষ্কার করুন
এই কুইকস্টার্টে ব্যবহৃত রিসোর্সের জন্য আপনার Google ক্লাউড প্ল্যাটফর্ম অ্যাকাউন্টে চার্জ এড়াতে:
- ক্লাউড প্ল্যাটফর্ম কনসোলে যান।
- আপনি যে প্রকল্পটি বন্ধ করতে চান সেটি নির্বাচন করুন, তারপরে শীর্ষে 'মুছুন' এ ক্লিক করুন: এটি মুছে ফেলার জন্য প্রকল্পের সময়সূচী করে।
আরও জানুন
- Google Cloud Text-to-Speech API: https://cloud.google.com/text-to-speech/docs
- Google ক্লাউড প্ল্যাটফর্মে C#/.NET: https://cloud.google.com/dotnet/
- Google Cloud .NET ক্লায়েন্ট: https://googlecloudplatform.github.io/google-cloud-dotnet/
লাইসেন্স
এই কাজটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন 2.0 জেনেরিক লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত।