-1

誰も私を助けたり、アラビア語の音声認識についての手がかりを教えてくれますか?

私は音声認識を行うシンプルなアプリを開発したいと思っています - これをオンラインで行うのと同じようにオフラインで行う方法を知っています...これを効率的に行うオープンソースプロジェクトまたは購入するライブラリへの提案またはリンクがあれば、それは驚くべきことです.

前もって感謝します。

4

2 に答える 2

0

このアドレスには、多言語の音声からテキストへのプロジェクトがあります

https://github.com/MaryamAzhdari/speechToTextMultiLanguage

夏までに、次のコードを追加する必要があります。

imv_arabic.setOnClickListener{
        val intent = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH)
        intent.putExtra(
            RecognizerIntent.EXTRA_LANGUAGE_MODEL,
            RecognizerIntent.LANGUAGE_MODEL_FREE_FORM
        )
        //For some county you can use both of the below lines
        //intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.FRANCE)
        //intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "fr-FR")//French (France)

        //Some countries not define in Locale
        //You can use this page for finding your language
        //https://cloud.google.com/speech-to-text/docs/languages
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "ar-AE")//Arabic (United Arab Emirates)
        intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Need to speak")

        try {
            startActivityForResult(intent, REQ_CODE)
        } catch (a: ActivityNotFoundException) {
            Toast.makeText(
                applicationContext,
                "Sorry! Your device not supported",
                Toast.LENGTH_SHORT
            ).show()
        }
    }


override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)

    if(requestCode==REQ_CODE){
        if (resultCode == RESULT_OK && data!=null) {
            val result = data
                .getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS)
            tv_result?.text=result[0].toString()
        }
    }
}

この権限もマニフェストに追加します。

<uses-permission android:name="android.permission.RECORD_AUDIO" />

および6を超えるAndroidのこのコード:

  private fun setupPermissions() {
    val permission = ContextCompat.checkSelfPermission(this,
        Manifest.permission.RECORD_AUDIO)

    if (permission != PackageManager.PERMISSION_GRANTED) {
        //Log.i(Tag, "Permission to record denied")
    }
}

言語を見つけるには、次のアドレスを参照してください。

https://cloud.google.com/speech-to-text/docs/languages

于 2019-07-22T04:55:25.077 に答える