Puheen muuntaminen tekstiksi: Kuinka luoda yksinkertainen sanelusovellus

Kirjoittaja: Lewis Jackson
Luomispäivä: 13 Saattaa 2021
Päivityspäivä: 1 Heinäkuu 2024
Anonim
Puheen muuntaminen tekstiksi: Kuinka luoda yksinkertainen sanelusovellus - Sovellukset
Puheen muuntaminen tekstiksi: Kuinka luoda yksinkertainen sanelusovellus - Sovellukset

Sisältö


Monet sovellukset, palvelut ja kotitalousvälineet käyttävät puheentunnistusta paremman käyttökokemuksen ja pääsyn parantamiseksi. On olemassa lukemattomia Android-sovelluksia, jotka käyttävät puheentunnistusta - joista merkittävin on Google Assistant - joten miksi et seuraa esimerkkiä ja lisää tämä ominaisuus omiin Android-sovelluksiin?

Tässä artikkelissa jaan nopeaa ja helppoa tapaa aloittaa Androidin puhe tekstiksi -tarkistus, joka voi olla hyödyllinen monissa sovelluksissa. Voit esimerkiksi käyttää puheentunnistusta tylsää manuaalista tietojen syöttämistä, luoda tekstityksiä automaattisesti tai jopa perustaksi käännössovellukselle, joka “kuuntelee” äänisyöttöä, muuntaa sen tekstiksi, kääntää tämän tekstin ja näyttää tulokset. käyttäjä.


Luomastasi sovelluksesta riippumatta puheentunnistus voi parantaa saavutettavuutta tarjoamalla käyttäjille vaihtoehtoisen tavan olla vuorovaikutuksessa sovelluksesi kanssa. Esimerkiksi liikkuvuuteen, taidokkauteen tai näkökykyyn liittyvillä henkilöillä voi olla helpompaa navigoida mobiilisovelluksissa äänikomentojen avulla kosketusnäytön tai näppäimistön sijasta. Lisäksi Maailman terveysjärjestön (WHO) mukaan yli miljardilla ihmisellä on jonkinlainen vammaisuus, mikä vastaa noin 15 prosenttia maailman väestöstä. Esteettömyysominaisuuksien lisääminen sovelluksiin voi lisätä potentiaalista yleisöäsi.

Tämän artikkelin loppuun mennessä olet luonut yksinkertaisen puheeksi -sovelluksen, joka tallentaa äänesi, muuntaa sen tekstiksi ja näyttää tämän tekstin näytöllä.

Puhe tekstiksi -käyttöliittymän rakentaminen

Aloita luomalla uusi Android-projekti “Tyhjennä toiminto” -mallin avulla.


Luomme yksinkertaisen sovelluksen, joka koostuu painikkeesta, joka napautettaessa käynnistää Androidin puhe tekstiksi-intention ja näyttää valintaikkunan, joka osoittaa, että sovelluksesi on valmis hyväksymään puheen syötteen. Kun käyttäjä on lopettanut puhumisen, heidän syötteensä muunnetaan tekstiksi ja näytetään sitten osana TextView-ohjelmaa.

Aloitetaan luomalla asettelumme:

Tämä antaa meille seuraavan asettelun:

Puhetunnistuksen lisääminen Android-sovellukseen

Tallennamme ja käsittelemme puhesyöttöä kahdessa vaiheessa:

1. Käynnistä RecognizerIntent

Helpoin tapa suorittaa puheeksi muuntaminen tekstiksi on käyttää RecognizerIntent.ACTION_RECOGNIZE_SPEECH. Tämä aikomus kehottaa käyttäjää lauluäänentuloon käynnistämällä Androidin tutun mikrofonivalintaikkunan.

Kun käyttäjä lopettaa puhumisen, valintaikkuna sulkeutuu automaattisesti ja ACTION_RECOGNIZE_SPEECH lähettää äänitetyn äänen puheentunnistimen kautta.

Aloitamme RecognizerIntent.ACTION_RECOGNIZE_SPEECH käyttämällä startActivityForResult () -toimintoa mukana toimitetuilla extroilla. Huomaa, että ellei toisin mainita, tunnistin käyttää laitteen oletusaluetta.

public void onClick (View v) {// Käynnistä RecognizerIntent-tarkoitus // Intent intent = uusi tarkoitus (RecognizerIntent.ACTION_RECOGNIZE_SPEECH); kokeile {startActivityForResult (tarkoitus, REQUEST_CODE); } kiinni (ActivityNotFoundException a) {}}

2. Puhevastauksen vastaanottaminen

Kun puheentunnistusoperaatio on valmis, ACTION_RECOGNIZE_SPEECH lähettää tulokset takaisin kutsuvaan toimintaan merkkijonoina.

Koska käynnistimme RecognizerIntent-ohjelman startActivityForResult (): n kautta, käsittelemme tulosdataa ohittamalla puheentunnistuskutsua aloittaneessa toiminnassa onActivityResult (int requestCode, int tulosCode, Intent data).

Tulokset palautetaan alenevassa järjestyksessä puhetunnistimen luottamuksen mukaan. Joten varmistaaksemme, että näytetään tarkin teksti, meidän on otettava nolla-asema palautetusta ArrayListista ja näytettävä se sitten TextView-ohjelmassa.

@Override // Määritä OnActivityResult-menetelmä aikomme soittajan toiminnassa // suojattu tyhjä onActivityResult (int requestCode, int tulosCode, Intent data) {super.onActivityResult (requestCode, resultCode, data); kytkin (requestCode) {tapaus REQUEST_CODE: {// Jos RESULT_OK palautetaan ... // if (resultCode == RESULT_OK && null! = data) {//...hae sitten ArrayList // ArrayList tulos = data.getStringArrayListExtra (RecognizerIntent.EXTRA_RESULTS); // Päivitä TextView // textOutput.setText (tulos.get (0)); } tauko; }}}}

Huomaa, että puhe tekstiksi ei vaadi aktiivista Internet-yhteyttä, joten se toimii oikein, vaikka käyttäjä olisi offline-tilassa.

Kun olet suorittanut kaikki yllä olevat vaiheet, MainActivity-ominaisuutesi pitäisi näyttää noin:

Tuo android.content.ActivityNotFoundException; tuo androidx.appcompat.app.AppCompatActivity; tuo android.os.Bundle; tuo android.content.Intent; Tuo android.speech.RecognizerIntent; tuo android.widget.TextView; Tuo android.view.View; tuo java.util.ArrayList; julkisen luokan MainActivity laajentaa AppCompatActivity {yksityinen staattinen lopullinen int REQUEST_CODE = 100; yksityinen TextView textOutput; @Ohota suojattu tyhjä onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); textOutput = (TextView) findViewById (R.id.textOutput); } // Tätä menetelmää kutsutaan painikkeen ollessa painettuna // public void onClick (View v) // Luo aikomus toiminnolla “RecognizerIntent.ACTION_RECOGNIZE_SPEECH” // // Intent intent = new Intent (RecognizerIntent.ACTION_RECOGNIZE_SPEECH); kokeile {// Käynnistä toiminta ja odota vastausta // startActivityForResult (tarkoitus, REQUEST_CODE); } catch (ActivityNotFoundException a) {}} @Orride // Käsittele tuloksia // suojattu tyhjä onActivityResult (int requestCode, int tulosCode, Intent data) {super.onActivityResult (requestCode, resultCode, data); kytkin (requestCode) {tapaus REQUEST_CODE: {if (resultCode == RESULT_OK && null! = data) {ArrayList tulos = data.getStringArrayListExtra (RecognizerIntent.EXTRA_RESULTS); textOutput.setText (result.get (0)); } tauko; }}}}

Voit ladata valmis projektin GitHubista.

Projektin testaaminen

Hakemuksesi testaaminen:

  • Asenna projekti joko fyysiselle Android-laitteelle tai Android Virtual Device (AVD) -sovellukselle. Jos käytät AVD-laitetta, kehityskoneessa on oltava joko sisäänrakennettu mikrofoni tai voit käyttää ulkoista mikrofonia tai kuulokkeita.
  • Napauta sovelluksen “Aloita sanelu” -painiketta.
  • Kun mikrofoni-valintaikkuna tulee näkyviin, puhu laitteellesi. Muutaman hetken kuluttua sanojesi pitäisi näkyä näytöllä.

Käärimistä

Tässä artikkelissa näimme, kuinka voit nopeasti ja helposti lisätä puheentunnistuksen Android-sovelluksiisi puhe tekstistä -tarkistuksen avulla. Oletko tavannut Android-sovelluksia, jotka käyttävät puheentunnistusta yllättävillä tai innovatiivisilla tavoilla?

Seuraava: Luo laajennetun todellisuuden Android-sovellus Google ARCoren avulla

Realme C1 (2019) ilmoitettiin Intialle

Louise Ward

Heinäkuu 2024

Jo etit pitkäaikaita puhelinta, joka ei riko pankkia, haku aattaa olla ohi - Realme ilmoitti Realme C1: n (2019), joka on yrityken viimeiin lähtötaon älypuhelin....

Oppota irtaantumien jälkeen Realme-älypuhelinten brändillä menee tällä hetkellä erittäin hyvin Intian markkinoille. Nyt näyttää iltä, ​​ett&...

Me Neuvomme