Trong bài viết này, mình sẽ chia sẻ cho các bạn cách để chuyển văn bản thành giọng nói cực kỳ đơn giản trong C#. Vì đây là bài viết đầu tiên của chuỗi bài viết trình bày về vấn đề này (chuyển văn bản thành giọng nói trong C#), nên bài viết này chỉ hướng dẫn cách thực hiện ở mức độ rất đơn giản. Thông qua các bài viết tiếp theo, mình sẽ trình bày nhiều vấn đề hơn.

Để thực hiện, đầu tiên các bạn thêm thư viện System.Speech.Synthesis vào như sau:

using System.Speech.Synthesis;

Ngoài ra, mình xây dựng chương trình dạng Console nên sẽ cần thêm 1 số thư viện cần thiết khác như sau:

using System;

Xây dựng chương trình đơn giản:

using System;
using System.Speech.Synthesis;

namespace TextToSpeech
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SpeechSynthesizer synthesizer = new SpeechSynthesizer()) // Khởi tạo SpeechSynthesizer.
            {
                synthesizer.SetOutputToDefaultAudioDevice(); //Định cấu hình đầu ra âm thanh.
                Console.Write("Text: ");
                string text = Console.ReadLine(); // Nhập vào văn bản cần chuyển thành giọng nói.
                synthesizer.Speak(text); // Khi gọi phương thức này, chương trình sẽ đọc văn bản của bạn đã nhập vào.
            }

            Console.ReadKey();
        }
    }
}

Lưu ý: Mình chỉ mới thực hiện trên 2 ngôn ngữ đó tiếng Anh và tiếng Pháp, còn đối các ngôn ngữ khác thì hiện tại (thời điểm viết bài này) mình không nắm rõ.

Tham khảo

Tìm hiểu về System.Speech.Synthesis tại đây: https://docs.microsoft.com/en-us/dotnet/api/system.speech.synthesis.speechsynthesizer?view=netframework-4.8.

Lời kết

Như vậy, trong bài viết này mình đã chia sẻ cách chuyển văn bản thành giọng nói cực kỳ đơn giản trong C#, đối với các bài viết tiếp theo, mình sẽ tiếp tục trình bày đến cách để đổi giọng đọc, xuất âm thanh ra dạng file,…

Cuối cùng, cảm ơn các bạn đã đọc hết bài viết này, nếu các bạn có vấn đề cần giải đáp, hãy để lại bình luận cho mình nhé!

Categorized in:

Tagged in: