You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中STT包阿拉伯语语音转文本无元音符号问题求助

Flutter stt包阿拉伯语语音转文本缺失元音符号(Harakat)的解决办法

问题描述

使用Flutter的stt包实现语音转文本时,阿拉伯语输出缺少元音符号(harakat)。例如输入语音“مرحبا”,输出仅为无元音的“مرحبا”,无法得到带完整元音符号的“مَرحباَ”。

代码示例

void startListening() async {
  bool available = await _speech.initialize();

  if (available) {
    setState(() => isListening = true);
    _speech.listen(
      onResult: (result) {
        setState(() {
          recognizedText = result.recognizedWords;
        });
      },
      localeId: "ar-SA", // Supports better diacritical marks (Tajweed).
    );
  }
}

解决方案

1. 尝试配置原生识别引擎参数

stt包封装了Android/iOS的原生语音识别引擎,部分引擎支持开启返回带元音的结果:

  • Android端:初始化时添加androidIntentExtras参数,尝试启用harakat支持(效果取决于设备系统和引擎版本):
    void startListening() async {
      bool available = await _speech.initialize(
        androidIntentExtras: {
          "android.speech.extra.ENABLE_HARAKAT": true,
        },
      );
    
      if (available) {
        setState(() => isListening = true);
        _speech.listen(
          onResult: (result) {
            setState(() {
              recognizedText = result.recognizedWords;
            });
          },
          localeId: "ar-SA",
        );
      }
    }
    
  • iOS端:SFSpeechRecognizer默认不支持返回带harakat的文本,若stt包未提供相关参数,需考虑其他方案。

2. 后处理补全元音符号

如果原生引擎无法返回带元音的文本,可使用第三方工具对识别结果进行后处理:

  • 添加Flutter依赖包arabic_diacritics:
    dependencies:
      arabic_diacritics: ^0.1.0
    
  • 在识别结果回调中处理文本:
    import 'package:arabic_diacritics/arabic_diacritics.dart';
    
    // ...
    
    _speech.listen(
      onResult: (result) {
        setState(() {
          String rawText = result.recognizedWords;
          // 为识别文本添加元音符号
          recognizedText = ArabicDiacritics().diacritize(rawText);
        });
      },
      localeId: "ar-SA",
    );
    

3. 更换支持元音识别的云服务

若stt包的原生引擎无法满足需求,可切换到支持阿拉伯语元音识别的云API(如Google Cloud Speech-to-Text、AWS Transcribe),这类服务通常提供参数开启返回带diacritics的结果,在Flutter中通过HTTP请求调用即可。

内容的提问来源于stack exchange,提问作者amjad daher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 05:22:18