With the development of artificial intelligence technology, speech recognition is becoming more and more mature and popular. Google Cloud Speech-to-Text API is a powerful speech recognition service that helps developers perform speech recognition and conversion. In this article, we will discuss how to use Google Cloud Speech-to-Text API in PHP for text conversion and analysis.
Before using the Google Cloud Speech-to-Text API, you need to complete the following things:
a. Obtain Google Cloud access key. Google Cloud offers a free trial period during which you can use the Speech-to-Text API for free. However, after the trial period ends, you will need to purchase a Google Cloud service plan to continue using the Speech-to-Text API.
b. Install PHP 7 or newer. Google Cloud provides a PHP version of the speech recognition library, and this version requires PHP 7 or newer.
c. Download and install the Google Cloud SDK. Google Cloud SDK is a command-line tool that helps you manage resources and services on the Google Cloud platform.
Before using the Google Cloud Speech-to-Text API for speech recognition, you need to establish a Google Cloud authentication. This authentication will provide your application with access to Google Cloud services. You can use the following command line command to create a new service account:
gcloud iam service-accounts create [ACCOUNT_NAME]
where [ACCOUNT_NAME]
is the name you set for this account.
After creating a new service account, you need to authorize it. This way, your application can use the Speech-to-Text API. You can authorize using the following command line command:
gcloud projects add-iam-policy-binding [PROJECT_ID] --member "serviceAccount:[ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com" --role "roles/cloudspeechto-text.admin"
Here, [PROJECT_ID]
represents your project ID in Google Cloud. You need to replace [PROJECT_ID]
with your project ID. [ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com
is the name of the service account you created in step 2.1. This account will be granted roles/cloudspeech-to-text.admin
permissions, which means he can manage the speech recognition service.
Finally, you need to create an access key for your service account. You can create a key with the following command line command:
gcloud iam service-accounts keys create [KEY_FILE_NAME].json --iam-account [ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com
This command will create a new JSON file that contains the private key of your Google Cloud service account. When using the Speech-to-Text API in PHP, you need to authenticate using this key.
After completing the Google Cloud certification, we can start using the Speech-to-Text API for speech recognition in PHP. First, you need to download and install Google Cloud’s PHP speech recognition library. You can install it using the following Composer command:
composer require google/cloud-speech
After the installation is complete, you need to include the following code in your PHP file:
<?php require 'vendor/autoload.php'; use GoogleCloudSpeechV1SpeechClient; use GoogleCloudSpeechV1RecognitionAudio; use GoogleCloudSpeechV1RecognitionConfig; $options = [ 'credentials' => 'PATH_TO_YOUR_JSON_FILE' ]; $speech = new SpeechClient($options); $audioFile = file_get_contents('PATH_TO_YOUR_AUDIO_FILE'); $audio = (new RecognitionAudio())->setContent($audioFile); $config = new RecognitionConfig([ 'encoding' => 'ENCODING_TYPE_USED_BY_YOUR_AUDIO_FILE', 'sampleRateHertz' => SAMPLE_RATE_HERTZ_OF_YOUR_AUDIO_FILE, 'languageCode' => 'LANGUAGE_CODE' ]);
In the above example, PATH_TO_YOUR_JSON_FILE
is the path where the JSON file of the service account you created in step 2.3 is stored. PATH_TO_YOUR_AUDIO_FILE
is the path where the audio file you want to perform speech recognition is stored. ENCODING_TYPE_USED_BY_YOUR_AUDIO_FILE
is the encoding type of the audio file you want to perform speech recognition on. SAMPLE_RATE_HERTZ_OF_YOUR_AUDIO_FILE
is the sampling rate of the audio file you want to perform speech recognition. LANGUAGE_CODE
is the language code you want to identify.
Now, we can use the Speech-to-Text API for speech recognition. You can use the following command for recognition:
$response = $speech->recognize($config, $audio); foreach ($response->getResults() as $result) { echo $result->getAlternatives()[0]->getTranscript() . " "; }
In the above code, $response = $speech->recognize($config, $audio);
Submit the audio file to Speech-to-Text API for speech recognition. $result->getAlternatives()[0]->getTranscript()
Access the first item of the return value array and get the transcript text.
In this article, we learned how to use Google Cloud Speech-to-Text API in PHP for speech recognition and conversion. We discussed how to set up authentication with Google Cloud, how to download Google Cloud's PHP speech recognition library, and how to use the Speech-to-Text API for speech recognition. I hope this article can help you better understand and use the Google Cloud Speech-to-Text API.
The above is the detailed content of How to use Google Cloud Speech-to-Text API in PHP for text conversion and analysis. For more information, please follow other related articles on the PHP Chinese website!