1

我正在尝试为 AWS Transcribe 初始化 API,但文档似乎并不清楚。

我的代码是:

    <?php
require 'aws-api/aws-autoloader.php';
$client = new Aws\TranscribeService\TranscribeServiceClient;

$result = $client->commandName(listTranscriptionJobs([

    ]));

echo $result;

var_dump($result);

?>

但我收到 PHP 错误:

[Mon Aug 13 03:09:02.430628 2018] [:error] [pid 27717] [client 123.123.123.123:29660] PHP Catchable fatal error:  Argument 1 passed to Aws\\AwsClient::__construct() must be of the type array, none given, called in /var/www/example/public_html/wp-content/themes/example/aws-transcribe.php on line 16 and defined in /var/www/example/public_html/wp-content/themes/example/aws-api/Aws/AwsClient.php on line 146, referer: http://example.com/wp-content/themes/xxx/aws-transcribe.php

我无法找到 Transcribe API 的代码片段,也无法弄清楚我缺少什么。有人有转录 API 的代码吗?

https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-transcribe-2017-10-26.html

4

1 回答 1

2

答案是它缺少区域和版本的选项数组。这是从 AWS PHP 3.0 API 获取转录文本的工作代码

function get_transcription($transcription_name){
date_default_timezone_set('America/New_York');
require 'aws-api/aws-autoloader.php';

$transcribe = new Aws\TranscribeService\TranscribeServiceClient([
'region'  => 'us-east-1',
'version' => '2017-10-26'
]);

$result = $transcribe->getTranscriptionJob([
    'TranscriptionJobName' => $transcription_name, // REQUIRED
]);


$transcription = $result['TranscriptionJob']['Transcript']['TranscriptFileUri'];

$transcription_download = file_get_contents($transcription);
$transcribe_final = json_decode($transcription_download, true);

$trans = $transcribe_final['results']['transcripts'][0]['transcript'];
echo $trans;
}
于 2018-08-13T04:54:43.963 回答