Bagaimana untuk melaksanakan pengecaman pertuturan dalam PHP

WBOY
Lepaskan: 2023-06-11 22:26:01
asal
1382 orang telah melayarinya

Dengan perkembangan berterusan teknologi kecerdasan buatan, teknologi pengecaman pertuturan menjadi semakin popular. Dalam pembangunan Web, melaksanakan pengecaman pertuturan juga telah menjadi tugas penting.

Sebagai bahasa yang digunakan secara meluas dalam bidang pembangunan web, PHP juga boleh melaksanakan pengecaman pertuturan. Dalam artikel ini, kami akan memperkenalkan cara melaksanakan pengecaman pertuturan dalam PHP.

  1. Gunakan Baidu Speech Recognition API

Baidu Speech Recognition API ialah salah satu API pengecaman pertuturan yang lebih matang dan popular pada masa ini. Fungsi pengecaman pertuturan boleh dilaksanakan dengan mudah menggunakan API Pengecaman Pertuturan Baidu.

Mula-mula, anda perlu mendaftar dan membuat aplikasi pada Platform Pembangun Baidu, dan mendapatkan ID Apl dan Kunci Apl permohonan itu.

Kemudian, anda perlu menggunakan PHP untuk menghantar permintaan POST untuk memindahkan fail suara ke Baidu Speech Recognition API. Berikut ialah contoh kod:

//语音文件路径
$audio_file = "audio.pcm";

//将语音文件读取为字符串
$file_content = file_get_contents($audio_file);

//设置POST请求的header
$header = array(
    "Content-Type: audio/pcm;rate=8000",
    "Content-Length: " . strlen($file_content),
    "Referer: http://yuyin.baidu.com/"
);

//构造POST请求
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://vop.baidu.com/server_api");
curl_setopt($ch, CURLOPT_POSTFIELDS, $file_content);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);

//设置App ID和App Key
$app_id = "your_app_id";
$app_key = "your_app_key";
curl_setopt($ch, CURLOPT_USERPWD, $app_id . ":" . $app_key);

//发送POST请求
$response = curl_exec($ch);

//解析返回结果
$result = json_decode($response, true);
if (isset($result['result'][0])) {
    echo $result['result'][0];
}
else {
    echo "识别失败";
}
Salin selepas log masuk
  1. Menggunakan Google Speech Recognition API

Selain Baidu Speech Recognition API, Google Speech Recognition API juga adalah sangat matang dan popular API pengecaman pertuturan. Fungsi pengecaman pertuturan juga boleh dilaksanakan dengan mudah menggunakan API Pengecaman Pertuturan Google.

Pertama sekali, anda perlu membuat projek dalam Google Cloud Console dan mendayakan API Google Cloud Speech-to-Text.

Kemudian, anda perlu menghantar permintaan POST menggunakan PHP untuk memindahkan fail suara ke API Google Speech Recognition. Berikut ialah contoh kod:

//语音文件路径
$audio_file = "audio.flac";

//将语音文件读取为字符串
$file_content = file_get_contents($audio_file);

//构造POST请求
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://speech.googleapis.com/v1/speech:recognize");
curl_setopt($ch, CURLOPT_POSTFIELDS, $file_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);

//设置API密钥
$api_key = "your_api_key";
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json",
                                           "Authorization: Bearer ".$api_key));

//设置请求体
$request_data = array(
    "config" => array(
        "encoding" => "FLAC",
        "sampleRateHertz" => 16000,
        "languageCode" => "zh-CN",
    ),
    "audio" => array(
        "content" => base64_encode($file_content),
    ),
);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($request_data));

//发送POST请求
$response = curl_exec($ch);

//解析返回结果
$result = json_decode($response, true);
if (isset($result['results'][0]['alternatives'][0]['transcript'])) {
    echo $result['results'][0]['alternatives'][0]['transcript'];
}
else {
    echo "识别失败";
}
Salin selepas log masuk

Ringkasan

Di atas ialah dua cara untuk melaksanakan pengecaman pertuturan dalam PHP: menggunakan API Pengecaman Pertuturan Baidu dan menggunakan API Pengecaman Pertuturan Google. Kedua-dua kaedah ini agak matang dan popular dalam merealisasikan pengecaman pertuturan yang mana kaedah untuk dipilih boleh dipilih mengikut keperluan sebenar dan pilihan peribadi.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pengecaman pertuturan dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!