为了账号安全,请及时绑定邮箱和手机立即绑定

安卓中的文本到语音转换离线工作

安卓中的文本到语音转换离线工作

ibeautiful 2022-09-28 09:48:22
我和我的朋友正在开发一个应用程序,使用深度学习和神经网络来帮助视障人士。我们正在寻找一种方法,通过语音将神经网络通过智能手机摄像头获得的信息带回给用户,因此我们需要做TextToSpeech。但是,对于用户来说,让应用程序离线工作是一个巨大的,巨大的交易,并且由于应用程序的所有其他部分都能够在没有互联网连接的情况下运行(神经网络等),我们正在寻找一种离线进行TextToSpeech的方法。该应用程序也是俄语的,因此可以支持多种语言的东西会很棒。我们非常感谢任何关于从哪里开始在Android工作室的安卓上离线文本的提示,谢谢!
查看完整描述

1 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

试试这个。确保在 xml 布局中添加文本输入框和按钮


    import java.util.Locale;

    import android.speech.tts.TextToSpeech;


public class TextToSpeech{


    private EditText write;

    private TextToSpeech t1;

    private Button speakbtn;


@Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate ( savedInstanceState );

        setContentView ( R.layout.activity_text_to_speech );


        write = (EditText) findViewById ( R.id.editText );

        speakbtn = (Button) findViewById ( R.id.board );


  t1 = new TextToSpeech ( getApplicationContext () , new TextToSpeech.OnInitListener () {

            @Override

            public void onInit(int status) {


                if (status != TextToSpeech.ERROR) {

                    t1.setLanguage ( Locale.ENGLISH );


                }


            }

        } );


 speakbtn.setOnClickListener ( new View.OnClickListener () {

            @Override

            public void onClick(View v) {


                String toSpeak = write.getText ().toString ();

                Toast.makeText ( getApplicationContext () , toSpeak , Toast.LENGTH_SHORT ).show ();

                t1.speak ( toSpeak , TextToSpeech.QUEUE_FLUSH , null );


            }

        } );


  }

    @Override

    public void onDestroy() {

        //Dont forget to shut down text to speech

        if (t1 != null) {

            t1.stop ();

            t1.shutdown ();

        }

        super.onDestroy ();

    }


}


查看完整回答
反对 回复 2022-09-28
  • 1 回答
  • 0 关注
  • 54 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信