質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Q&A

0回答

507閲覧

Cloud Speech-to-Textのストリーミング入力の音声文字変換をブラウザ上で実行したい

tanakayamada

総合スコア4

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

0グッド

0クリップ

投稿2020/07/09 08:54

前提・実現したいこと

タイトル通り、Cloud Speech-to-Textのストリーミング入力の音声文字変換をブラウザ上で実行したいです。

質問したい内容

・タイトルの内容を実現することは可能か
・下画像エラーの解答

以上の2点をお聞きしたいと思っています。放り投げの質問で申し訳ないのですが、もし、知識がある方がいらっしゃいましたらアドバイスだけでもいただけると嬉しいです。その他情報などが必要な場合は逐次追加させていただきます。

発生している問題・エラーメッセージ

GCPのドキュメント通りにストリーミング音声認識を行おうとすると以下のエラーが出ました。
イメージ説明

エラー文の通りoauthクライアントを作成して引数に渡してしたところ再びエラーが出ています。

該当のソースコード

javascript

1 const recorder = require('node-record-lpcm16'); 2 const speech = require('@google-cloud/speech'); 3 const auth = require('google-auth-library'); 4 5 const oauth2client = new auth.OAuth2Client(client_id, client_secret, callback_uri); 6 const authUrl = oauth2client.generateAuthUrl({ 7 access_type: 'offline', 8 scope: [ 9 'https://www.googleapis.com/auth/cloud-platform' 10 ] 11 }); 12 13 // Creates a client 14 const client = new speech.SpeechClient({ auth: oauth2client }); 15 16 /** 17 * TODO(developer): Uncomment the following lines before running the sample. 18 */ 19 // const encoding = 'Encoding of the audio file, e.g. LINEAR16'; 20 // const sampleRateHertz = 16000; 21 // const languageCode = 'BCP-47 language code, e.g. en-US'; 22 23 const request = { 24 config: { 25 encoding: encoding, 26 sampleRateHertz: sampleRateHertz, 27 languageCode: languageCode, 28 }, 29 interimResults: false, // If you want interim results, set this to true 30 }; 31 32 // Create a recognize stream 33 const recognizeStream = client 34 .streamingRecognize(request) 35 .on('error', console.error) 36 .on('data', data => 37 process.stdout.write( 38 data.results[0] && data.results[0].alternatives[0] 39 ? `Transcription: ${data.results[0].alternatives[0].transcript}\n` 40 : '\n\nReached transcription time limit, press Ctrl+C\n' 41 ) 42 ); 43 44 // Start recording and send the microphone input to the Speech API. 45 // Ensure SoX is installed, see https://www.npmjs.com/package/node-record-lpcm16#dependencies 46 recorder 47 .record({ 48 sampleRateHertz: sampleRateHertz, 49 threshold: 0, 50 // Other options, see https://www.npmjs.com/package/node-record-lpcm16#options 51 verbose: false, 52 recordProgram: 'rec', // Try also "arecord" or "sox" 53 silence: '10.0', 54 }) 55 .stream() 56 .on('error', console.error) 57 .pipe(recognizeStream); 58 59 console.log('Listening, press Ctrl+C to stop.'); 60 }

試したこと

not suppotedということでTypeScriptをインストールし試してみましたが、上手く動作させることができませんでした。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問