Avvio rapido: Eseguire l'app di esempio Speech Devices SDK in Windows, Linux o Android

In questa Guida introduttiva, si apprenderà come usare Speech Devices SDK per Windows per compilare un prodotto abilitato al riconoscimento vocale o usarlo come dispositivo di trascrizione conversazione. Per la trascrizione conversazione è supportato solo Azure Kinect DK. Per altri tipi di riconoscimento vocale sono supportati gruppi di microfoni lineari che forniscono una geometria per gruppi di microfoni.

L'applicazione è compilata con il pacchetto Speech SDK ed Eclipse Java IDE (v4) in Windows a 64 bit. Viene eseguito su un ambiente Java 8 runtime a 64 bit (JRE).

Per riprodurre le procedure di questa guida, è necessario un account di Servizi cognitivi di Azure con una risorsa del servizio Voce.

Il codice sorgente dell'applicazione di esempio è incluso in Speech Devices SDK ed è anche disponibile in GitHub.

Prerequisiti

Questa guida introduttiva richiede:

Se si prevede di usare la finalità è necessaria una sottoscrizione al servizio LUIS (Language Understanding). Per altre informazioni su LUIS e sul riconoscimento delle finalità, vedere Riconoscere le finalità voce con LUIS, C#. Un modello LUIS di esempio è disponibile per questa app.

Creare e configurare il progetto

  1. Avviare Eclipse.

  2. Nell’utilità di avvio di Eclipse, nel campo Area di lavoro, inserire il nome di una nuova directory dell’area di lavoro. Selezionare quindi Avvio.

    Screenshot che mostra l'utilità di avvio di Eclipse in cui immettere il nome della directory dell'area di lavoro.

  3. Dopo qualche istante verrà visualizzata la finestra principale dell'IDE di Eclipse. Se è presente, chiudere la schermata iniziale.

  4. Dalla barra dei menu di Eclipse, creare un nuovo progetto selezionando File > New > Java Project. Se non è disponibile scegliere Progetto e quindi Progetto Java.

  5. Viene avviata la procedura guidata Nuovo progetto Java. Sfogliare per cercare il percorso del progetto di esempio. Selezionare Fine.

    Screenshot della procedura guidata Nuovo progetto Java.

  6. In Esplora pacchetti, fare clic con il pulsante destro del mouse sul progetto. Selezionare Configura > Converti in progetto Maven dal menu di scelta rapida. Selezionare Fine.

    Screenshot di Esplora pacchetti

  7. Aprire il file pom.xml e modificarlo.

    Alla fine del file, prima del tag di chiusura </project>, creare elementi repositories e dependencies, come illustrato di seguito, e verificare che version corrisponda alla versione corrente:

    <repositories>
         <repository>
             <id>maven-cognitiveservices-speech</id>
             <name>Microsoft Cognitive Services Speech Maven Repository</name>
             <url>https://csspeechstorage.blob.core.windows.net/maven/</url>
         </repository>
    </repositories>
    
    <dependencies>
        <dependency>
             <groupId>com.microsoft.cognitiveservices.speech</groupId>
             <artifactId>client-sdk</artifactId>
             <version>1.15.0</version>
        </dependency>
    </dependencies>
    
  8. Copiare il contenuto di Windows-x64 nel percorso del progetto Java, ad esempio C:\SDSDK\JRE-Sample-Release

  9. Copiare kws.table, participants.properties e Microsoft.CognitiveServices.Speech.extension.pma.dll nella cartella del progetto target/classes

Configurare l'applicazione di esempio

  1. Aggiungere la chiave di sottoscrizione del Servizio di riconoscimento vocale al codice sorgente. Se si vuole provare la funzionalità Riconoscimento finalità, aggiungere anche la chiave di sottoscrizione e l'ID applicazione del servizio Language Understanding.

    Per il riconoscimento vocale e LUIS, le informazioni vanno in FunctionsList.java:

     // Subscription
     private static String SpeechSubscriptionKey = "<enter your subscription info here>";
     private static String SpeechRegion = "westus"; // You can change this if your speech region is different.
     private static String LuisSubscriptionKey = "<enter your subscription info here>";
     private static String LuisRegion = "westus2"; // you can change this, if you want to test the intent, and your LUIS region is different.
     private static String LuisAppId = "<enter your LUIS AppId>";
    

    Se si usa la trascrizione conversazione, le informazioni sulla chiave di riconoscimento e sull'area sono necessarie anche in Cts.java:

     private static final String CTSKey = "<Conversation Transcription Service Key>";
     private static final String CTSRegion="<Conversation Transcription Service Region>";// Region may be "centralus" or "eastasia"
    
  2. La parola chiave predefinita è "Computer". È anche possibile provare una delle altre parole chiave disponibili, come "Machine" o "Assistant". I file di risorse per queste parole chiave alternative sono disponibili nella cartella keyword di Speech Devices SDK. C:\SDSDK\JRE-Sample-Release\keyword\Computer, ad esempio, contiene i file usati per la parola chiave "Computer".

    Suggerimento

    È anche possibile creare una parola chiave personalizzata.

    Per usare una nuova parola chiave, aggiornare la riga seguente in FunctionsList.java e copiare la parola chiave nell'app. Ad esempio, per usare la parola chiave 'Machine' del pacchetto di parole chiave machine.zip:

    • Copiare il file kws.table dal pacchetto ZIP nella cartella del progetto target/classes.

    • Aggiornare FunctionsList.java con il nome della parola chiave:

      private static final String Keyword = "Machine";
      

Eseguire l'applicazione di esempio da Eclipse

  1. Dalla barra dei menu di Eclipse scegliere Run > Run As > Java Application. Quindi selezionare FunctionsList e OK.

    Screenshot di Select Java Application

  2. L'applicazione di esempio di Speech Devices SDK viene avviata e visualizza le opzioni seguenti:

    Screenshot di un'applicazione di esempio di Speech Devices SDK e opzioni.

  3. Provare la nuova demo di Trascrizione conversazione. Avviare la trascrizione con Avvia > sessione. Per impostazione predefinita, ogni utente è un guest. Se però si hanno le firme vocali dei partecipanti, è possibile inserirle in un file participants.properties nella cartella del progetto target/classes. Per generare la firma vocale, vedere Trascrivere le conversazioni (SDK).

    Screenshot di un'applicazione demo di trascrizione conversazione.

Creare ed eseguire un'applicazione autonoma

  1. In Esplora pacchetti, fare clic con il pulsante destro del mouse sul progetto. Scegliere Esporta.

  2. Verrà visualizzata la finestra Esporta. Espandere Java e selezionare Runnable JAR file (File JAR eseguibile) e quindi selezionare Avanti.

    Screenshot che mostra la finestra Esporta in cui selezionare il file JAR eseguibile.

  3. Verrà visualizzata la finestra Runnable JAR File Export. Scegliere una destinazione di esportazione per l'applicazione e quindi selezionare Fine.

    Screenshot che mostra la finestra di esportazione file del file JAR eseguibile in cui scegliere la destinazione di esportazione.

  4. Inserire kws.table, participants.properties, unimic_runtime.dll, pma.dll e Microsoft.CognitiveServices.Speech.extension.pma.dll nella cartella di destinazione selezionata in precedenza perché questi file sono necessari per l'applicazione.

  5. Per eseguire l'applicazione autonoma

    java -jar SpeechDemo.jar
    

In questa Guida introduttiva, si apprenderà come usare Speech Devices SDK per Linux per compilare un prodotto abilitato al riconoscimento vocale o usarlo come dispositivo di trascrizione conversazione. Attualmente solo Azure Kinect DK è supportato.

L'applicazione è compilata con il pacchetto Speech SDK ed Eclipse Java IDE (v4) su Linux a 64 bit (Ubuntu 16.04, Ubuntu 18.04, Debian 9, RHEL 7/8, CentOS 7/8). Viene eseguito su un ambiente Java 8 runtime a 64 bit (JRE).

Per riprodurre le procedure di questa guida, è necessario un account di Servizi cognitivi di Azure con una risorsa del servizio Voce.

Il codice sorgente dell'applicazione di esempio è incluso in Speech Devices SDK ed è anche disponibile in GitHub.

Prerequisiti

Questa guida introduttiva richiede:

Assicurarsi che queste dipendenze siano installate prima di avviare Eclipse.

  • In Ubuntu:

    sudo apt-get update
    sudo apt-get install libssl1.0.0 libasound2
    
  • In Debian 9:

    sudo apt-get update
    sudo apt-get install libssl1.0.2 libasound2
    
  • In RHEL/CentOS:

    sudo yum update
    sudo yum install alsa-lib openssl
    

    Nota

La trascrizione conversazione è attualmente disponibile solo per "en-US" e "zh-CN", nelle aree geografiche "centralus" e "eastasia". È necessario avere una chiave di riconoscimento vocale in una di queste aree per usare la trascrizione conversazione.

Se si prevede di usare la finalità è necessaria una sottoscrizione al servizio LUIS (Language Understanding). Per altre informazioni su LUIS e sul riconoscimento delle finalità, vedere Riconoscere le finalità voce con LUIS, C#. Un modello LUIS di esempio è disponibile per questa app.

Creare e configurare il progetto

  1. Avviare Eclipse.

  2. Nell’utilità di avvio di Eclipse, nel campo Area di lavoro, inserire il nome di una nuova directory dell’area di lavoro. Selezionare quindi Avvio.

    Screenshot che mostra l'utilità di avvio di Eclipse.

  3. Dopo qualche istante verrà visualizzata la finestra principale dell'IDE di Eclipse. Se è presente, chiudere la schermata iniziale.

  4. Dalla barra dei menu di Eclipse, creare un nuovo progetto selezionando File > New > Java Project. Se non è disponibile scegliere Progetto e quindi Progetto Java.

  5. Viene avviata la procedura guidata Nuovo progetto Java. Sfogliare per cercare il percorso del progetto di esempio. Selezionare Fine.

    Screenshot della procedura guidata Nuovo progetto Java

  6. In Esplora pacchetti, fare clic con il pulsante destro del mouse sul progetto. Selezionare Configura > Converti in progetto Maven dal menu di scelta rapida. Selezionare Fine.

    Screenshot di Esplora pacchetti

  7. Aprire il file pom.xml e modificarlo.

    Alla fine del file, prima del tag di chiusura </project>, creare elementi repositories e dependencies, come illustrato di seguito, e verificare che version corrisponda alla versione corrente:

    <repositories>
         <repository>
             <id>maven-cognitiveservices-speech</id>
             <name>Microsoft Cognitive Services Speech Maven Repository</name>
             <url>https://csspeechstorage.blob.core.windows.net/maven/</url>
         </repository>
    </repositories>
    
    <dependencies>
        <dependency>
             <groupId>com.microsoft.cognitiveservices.speech</groupId>
             <artifactId>client-sdk</artifactId>
             <version>1.15.0</version>
        </dependency>
    </dependencies>
    
  8. In Esplora pacchetti, fare clic con il pulsante destro del mouse sul progetto. Scegliere Proprietà, quindi Esegui/Impostazioni di debug > Nuovo… > Applicazione Java.

  9. Viene visualizzata la finestra Modifica configurazione. Nel campo Nome immettere Main e usare Cerca per cercare la Main class e trovare e selezionare com.microsoft.cognitiveservices.speech.samples.FunctionsList.

    Screenshot di Modifica configurazione

  10. Copiare i file binari audio per l'architettura di destinazione, da Linux-arm o Linux-x64, nel percorso del progetto Java, ad esempio /home/wcaltest/JRE-Sample-Release

  11. Sempre dalla finestra Modifica configurazione selezionare la pagina Ambiente e quindi Nuovo. Verrà visualizzata la finestra Nuova variabile di ambiente. Nel campo Nome immettere LD_LIBRARY_PATH e nel campo valore immettere la cartella contenente i file *.so, ad esempio /home/wcaltest/JRE-Sample-Release

  12. Copiare kws.table e participants.properties nella cartella del progetto target/classes

Configurare l'applicazione di esempio

  1. Aggiungere la chiave di sottoscrizione del Servizio di riconoscimento vocale al codice sorgente. Se si vuole provare la funzionalità Riconoscimento finalità, aggiungere anche la chiave di sottoscrizione e l'ID applicazione del servizio Language Understanding.

    Per il riconoscimento vocale e LUIS, le informazioni vanno in FunctionsList.java:

     // Subscription
     private static String SpeechSubscriptionKey = "<enter your subscription info here>";
     private static String SpeechRegion = "westus"; // You can change this if your speech region is different.
     private static String LuisSubscriptionKey = "<enter your subscription info here>";
     private static String LuisRegion = "westus2"; // you can change this, if you want to test the intent, and your LUIS region is different.
     private static String LuisAppId = "<enter your LUIS AppId>";
    

    Se si usa la trascrizione conversazione, le informazioni sulla chiave di riconoscimento e sull'area sono necessarie anche in Cts.java:

     private static final String CTSKey = "<Conversation Transcription Service Key>";
     private static final String CTSRegion="<Conversation Transcription Service Region>";// Region may be "centralus" or "eastasia"
    
  2. La parola chiave predefinita è "Computer". È anche possibile provare una delle altre parole chiave disponibili, come "Machine" o "Assistant". I file di risorse per queste parole chiave alternative sono disponibili nella cartella keyword di Speech Devices SDK. /home/wcaltest/JRE-Sample-Release/keyword/Computer, ad esempio, contiene i file usati per la parola chiave "Computer".

    Suggerimento

    È anche possibile creare una parola chiave personalizzata.

    Per usare una nuova parola chiave, aggiornare la riga seguente in FunctionsList.java e copiare la parola chiave nell'app. Ad esempio, per usare la parola chiave 'Machine' del pacchetto di parole chiave machine.zip:

    • Copiare il file kws.table dal pacchetto ZIP nella cartella del progetto target/classes.

    • Aggiornare FunctionsList.java con il nome della parola chiave:

      private static final String Keyword = "Machine";
      

Eseguire l'applicazione di esempio da Eclipse

  1. Dalla barra dei menu di Eclipse scegliere Run > Run

  2. L'applicazione di esempio di Speech Devices SDK viene avviata e visualizza le opzioni seguenti:

    Screenshot che mostra un'applicazione di esempio di Speech Devices SDK e le opzioni.

  3. Provare la nuova demo di Trascrizione conversazione. Avviare la trascrizione con Avvia > sessione. Per impostazione predefinita, ogni utente è un guest. Se però si hanno le firme vocali dei partecipanti, è possibile inserirle in participants.properties nella cartella del progetto target/classes. Per generare la firma vocale, vedere Trascrivere le conversazioni (SDK).

    Screenshot che mostra un'applicazione demo di trascrizione conversazione.

Creare ed eseguire l'applicazione autonoma

  1. In Esplora pacchetti, fare clic con il pulsante destro del mouse sul progetto. Scegliere Esporta.

  2. Verrà visualizzata la finestra Esporta. Espandere Java e selezionare Runnable JAR file (File JAR eseguibile) e quindi selezionare Avanti.

    Screenshot che mostra la finestra di esportazione.

  3. Verrà visualizzata la finestra Runnable JAR File Export. Scegliere una destinazione di esportazione per l'applicazione e quindi selezionare Fine.

    Screenshot che mostra la finestra Runnable JAR File Export.

  4. Inserire kws.table e participants.properties nella cartella di destinazione selezionata in precedenza perché questi file sono necessari per l'applicazione.

  5. Impostare LD_LIBRARY_LIB sulla cartella contenente i file *.so

    export LD_LIBRARY_PATH=/home/wcaltest/JRE-Sample-Release
    
  6. Per eseguire l'applicazione autonoma

    java -jar SpeechDemo.jar
    

In questa guida di avvio rapido si apprenderà come usare Speech Devices SDK per Android per compilare un prodotto abilitato al riconoscimento vocale o usarlo come dispositivo di trascrizione conversazione.

Per riprodurre le procedure di questa guida, è necessario un account di Servizi cognitivi di Azure con una risorsa del servizio Voce.

Il codice sorgente dell'applicazione di esempio è incluso in Speech Devices SDK ed è anche disponibile in GitHub.

Prerequisiti

Prima di iniziare a usare Speech Devices SDK, è necessario:

Configurare il dispositivo

  1. Avviare Vysor nel computer.

    Vysor

  2. Il dispositivo dovrebbe essere incluso nell'elenco Choose a device (Scegli un dispositivo). Selezionare clic sul pulsante View (Visualizza) accanto al dispositivo.

  3. Connettersi alla rete wireless facendo clic sull'icona della cartella e quindi su Impostazioni > WLAN.

    Vysor WLAN

    Nota

    Se la società prevede criteri per la connessione dei dispositivi al sistema Wi-Fi, è necessario ottenere l'indirizzo MAC e contattare il reparto IT per sapere come connettersi al sistema Wi-Fi aziendale.

    Per trovare l'indirizzo MAC del kit di sviluppo, selezionare l'icona della cartella file sul desktop del kit di sviluppo.

    Cartella di file Vysor

    Selezionare Impostazioni. Cercare "indirizzo mac" e quindi selezionare Mac address > Advanced WLAN (Indirizzo MAC > WLAN avanzata). Prendere nota dell'indirizzo MAC che viene visualizzato nella parte inferiore della finestra di dialogo.

    Indirizzo MAC Vysor

    Alcune società possono inoltre prevedere un limite al tempo in cui un dispositivo può rimanere connesso al sistema Wi-Fi aziendale. Può quindi essere necessario prolungare la registrazione del kit di sviluppo al sistema Wi-Fi dopo un certo numero di giorni.

Eseguire l'applicazione di esempio

Per convalidare la configurazione del kit di sviluppo, compilare e installare l'applicazione di esempio:

  1. Avviare Android Studio.

  2. Selezionare Open an existing Android Studio project (Apri un progetto di Android Studio esistente).

    Android Studio: apertura di un progetto esistente

  3. Passare a C:\SDSDK\Android-Sample-Release\example. Fare clic su OK per aprire il progetto di esempio.

  4. Configurare Gradle per fare riferimento a Speech SDK. I file seguenti sono disponibili in Gradle Scripts (Script Gradle) in Android Studio.

    Aggiornare build.gradle(Project:example) , il blocco allprojects dovrebbe corrispondere a quando riportato di seguito, aggiungendo le righe Maven.

    allprojects {
        repositories {
            google()
            jcenter()
            mavenCentral()
            maven {
                url 'https://csspeechstorage.blob.core.windows.net/maven/'
            }
        }
    }
    

    Aggiornare build.gradle(Module:app) aggiungendo questa riga alla sezione dipendenze.

    implementation'com.microsoft.cognitiveservices.speech:client-sdk:1.17.0'
    
  5. Aggiungere la chiave di sottoscrizione del Servizio di riconoscimento vocale al codice sorgente. Se si vuole provare la funzionalità Riconoscimento finalità, aggiungere anche la chiave di sottoscrizione e l'ID applicazione del servizio Language Understanding.

    Per il riconoscimento vocale e LUIS, le informazioni vanno in MainActivity.java:

     // Subscription
     private static String SpeechSubscriptionKey = "<enter your subscription info here>";
     private static String SpeechRegion = "westus"; // You can change this if your speech region is different.
     private static String LuisSubscriptionKey = "<enter your subscription info here>";
     private static String LuisRegion = "westus2"; // you can change this, if you want to test the intent, and your LUIS region is different.
     private static String LuisAppId = "<enter your LUIS AppId>";
    

    Se si usa la trascrizione conversazione, le informazioni sulla chiave di riconoscimento vocale e sull'area sono necessarie anche in conversation.java:

     private static final String CTSKey = "<Conversation Transcription Service Key>";
     private static final String CTSRegion="<Conversation Transcription Service Region>";// Region may be "centralus" or "eastasia"
    
  6. La parola chiave predefinita è "Computer". È anche possibile provare una delle altre parole chiave disponibili, come "Machine" o "Assistant". I file di risorse per queste parole chiave alternative sono disponibili nella cartella keyword di Speech Devices SDK. La cartella C:\SDSDK\Android-Sample-Release\keyword\Computer contiene ad esempio i file usati per la parola chiave "Computer".

    Suggerimento

    È anche possibile creare una parola chiave personalizzata.

    Per usare una nuova parola chiave, aggiornare le due righe seguenti in MainActivity.java e copiare il pacchetto di parole chiave nell'app. Ad esempio, per usare la parola chiave 'Machine' del pacchetto di parole chiave kws-machine.zip:

    • Copiare il pacchetto di parole chiave nella cartella "C:\SDSDK\Android-Sample-Release\example\app\src\main\assets\".

    • Aggiornare MainActivity.java con la parola chiave e il nome del pacchetto:

      private static final String Keyword = "Machine";
      private static final String KeywordModel = "kws-machine.zip" // set your own keyword package name.
      
  7. Aggiornare le righe seguenti, che contengono le impostazioni per la geometria dell'array di microfoni:

    private static final String DeviceGeometry = "Circular6+1";
    private static final String SelectedGeometry = "Circular6+1";
    

    Questa tabella elenca i valori supportati:

    Variabile Significato Valori disponibili
    DeviceGeometry Configurazione microfoni fisica Per un kit di sviluppo circolare: Circular6+1
    Per un kit di sviluppo lineare: Linear4
    SelectedGeometry Configurazione microfoni software Per un kit di sviluppo circolare che usa tutti i microfoni: Circular6+1
    Per un kit di sviluppo circolare che usa quattro microfoni: Circular3+1
    Per un kit di sviluppo lineare che usa tutti i microfoni: Linear4
    Per un kit di sviluppo lineare che usa due microfoni: Linear2
  8. Per compilare l'applicazione, nel menu Run (Esegui) selezionare Run 'app' (Esegui 'app'). Viene visualizzata la finestra di dialogo Select Deployment Target (Seleziona destinazione di distribuzione).

  9. Selezionare il dispositivo e quindi fare clic su OK per distribuire l'applicazione nel dispositivo.

    Finestra di dialogo Select Deployment Target (Seleziona destinazione di distribuzione)

  10. L'applicazione di esempio di Speech Devices SDK viene avviata e visualizza le opzioni seguenti:

    Applicazione di esempio di Speech Devices SDK e opzioni

  11. Provare la nuova demo di Trascrizione conversazione. Avviare la trascrizione con "Avvia sessione". Per impostazione predefinita, ogni utente è un guest. Se però si hanno le firme vocali dei partecipanti, è possibile inserirle in un file /video/participants.properties nel dispositivo. Per generare la firma vocale, vedere Trascrivere le conversazioni (SDK).

    Applicazione demo di Trascrizione conversazione

  12. A questo punto, non resta che sperimentare.

Risoluzione dei problemi

Se non è possibile connettersi al dispositivo di riconoscimento vocale, digitare il comando seguente in una finestra del prompt dei comandi. Verrà restituito un elenco di dispositivi.

 adb devices

Nota

Questo comando usa Android Debug Bridge, adb.exe, che fa parte dell'installazione di Android Studio. Questo strumento si trova in C:\Utenti[nome utente]\AppData\Local\Android\Sdk\platform-tools. Per richiamare più facilmente adb, è possibile aggiungere questa directory al percorso. In caso contrario, è necessario specificare il percorso completo dell'installazione di adb.exe in ogni comando che richiama adb.

Se viene visualizzato un errore no devices/emulators found, verificare che il cavo USB sia collegato e che sia un cavo di alta qualità.

Passaggi successivi