Nhiệm vụ: Thêm tính năng phát âm trên trình duyệt cho các chữ cái, âm tiết và từ đơn
Thêm tính năng phát âm trên trình duyệt cho các chữ cái, âm tiết và từ đơn
Sử dụng Web Speech API để phát các đơn vị học tập: chữ cái, âm tiết và từ đơn.
Mục tiêu
Thêm tính năng phát âm tài liệu học tập đơn giản trên trình duyệt mà không cần backend TTS riêng biệt.
Kịch bản chính:
- trẻ nhìn thấy một chữ cái, âm tiết hoặc từ;
- nhấn nút phát;
- trình duyệt phát âm văn bản tương ứng.
Cơ sở kỹ thuật
Sử dụng Web Speech API của trình duyệt:
SpeechSynthesisUtterance;window.speechSynthesis.speak();window.speechSynthesis.cancel();speechSynthesis.getVoices()để chọn giọng đọc tiếng Nga phù hợp;utterance.lang = 'ru-RU'.
Các tính năng cần hỗ trợ
- các chữ cái đơn lẻ;
- âm tiết;
- các từ đơn;
- phát lại nhiều lần;
- hủy phát lại hiện tại trước khi bắt đầu phát mới;
- chọn giọng đọc tiếng Nga nếu có sẵn;
- xử lý việc tải bất đồng bộ danh sách giọng đọc thông qua sự kiện
voiceschanged.
Quan trọng
Ở giai đoạn đầu, nhiệm vụ chỉ tập trung vào tính năng phát âm sẵn có của trình duyệt. Không kết hợp nó với các thử nghiệm về bộ tổng hợp giọng nói tự chế và phân tích PCM.
Ворклоги
Tiện độ: Giới hạn và Điểm kỳ lạ của SpeechSynthesis trên trình duyệt
Tính năng đọc văn bản tích hợp sẵn của trình duyệt đã được kiểm tra trên các từ đơn lẻ, âm tiết và chữ cái. Đối với các từ nguyên vẹn, API hoạt động ở mức chấp nhận được trong nhiều trường hợp, nhưng các lỗi diễn giải văn bản đáng chú ý và khó lường xuất hiện trên các âm tiết ngắn và chữ cái đơn lẻ.
Những gì phát ra âm thanh bình thường
Собака— được phát âm bình thường.Ры— được phát âm bình thường.Свинья— được phát âm bình thường.Пель— bất ngờ được phát âm bình thường.
Các lỗi quan sát được
Со— phát âm nghe gần giống như chỉ có chữС.Р— nghe giống chữЭhơn.Ре— cũng nghe gần giống chữЭ.Свинь— thay vì đọc là một âm tiết, nó bắt đầu đọc thành tên các chữ cái: đại loại làEs Ve En Myagkiy znak. Đồng thời,ИvàНkhông được phát âm riêng lẻ như mong đợi, và một phần của chuỗi được diễn giải làEn.Ковь— cũng bị vỡ ra thành đọc từng chữ cái.Солн— cũng được đọc từng chữ cái / không phải là âm tiết.Ко— nghe nhưКа.Ар— nghe nhưА.Де— nghe nhưДэ.
Kết luận chính
SpeechSynthesisUtterance rất phù hợp cho các từ và cụm từ thông thường, nhưng không đảm bảo phát âm chính xác đối với các âm tiết được tách rời nhân tạo và các chữ cái đơn lẻ.
Công cụ TTS cố gắng diễn giải một chuỗi ngắn thành văn bản tự nhiên, tên chữ cái, chữ viết tắt hoặc một từ vựng không xác định. Do đó, cùng một chuỗi ký tự có thể được phát âm khác nhau tùy thuộc vào độ dài và ngữ cảnh.
Các thành phần có vấn đề đặc biệt:
- các phụ âm đơn;
- các âm tiết ngắn gồm 2 chữ cái;
- các âm tiết có chứa dấu mềm
ь; - các phần bị cắt ngắn của từ không phải là từ độc lập;
- các tổ hợp trông giống như chữ viết tắt.
Hệ quả thực tế
Không thể coi TTS của trình duyệt là nguồn phát âm chính xác phổ quát cho cơ chế học tập chữ cái → âm tiết → từ.
Đối với các từ nguyên vẹn, bạn có thể sử dụng trực tiếp, nhưng đối với các chữ cái và âm tiết, bạn sẽ cần một trong các phương án sau:
- ngoại lệ thủ công / từ điển các chuỗi thay thế cho một TTS cụ thể;
- các tệp âm thanh được ghi âm sẵn;
- một công cụ TTS/SSML riêng biệt có khả năng kiểm soát phát âm tốt hơn;
- kết hợp lai: từ đọc qua TTS của trình duyệt, các chữ cái/âm tiết có vấn đề — qua âm thanh đã chuẩn bị.
Quan trọng
Những quan sát này áp dụng cho hành vi thực tế của giọng đọc trình duyệt/hệ thống hiện tại. Trên hệ điều hành khác, trình duyệt khác hoặc SpeechSynthesisVoice khác, kết quả có thể khác nhau, vì vậy những ngoại lệ này không thể được coi là phổ quát cho tất cả các thiết bị.