オーディオファイルの再生
スキル開発をしていると、音楽ファイルや独自に作成/入手した効果音を使用したくなることがありませんか?
音声ファイルの要件から再生する為のサンプルコードを公開します
音声ファイルの要件
(webで入手したMP3はこの要件を満たす必要があります。ビットレートやサンプリング周波数の変更は別の記事にまとめます)
ファイルの保存場所
・スキル開発のコードエディタの上部タブの S3 Strage を選択
・自分のPCから音声ファイル(MP3)をアップロードする
サンプルコード
/* *
* This sample demonstrates handling intents from an Alexa skill using the Alexa Skills Kit SDK (v2).
* Please visit https://alexa.design/cookbook for additional examples on implementing slots, dialog management,
* session persistence, api calls, and more.
* */
const Alexa = require('ask-sdk-core');
const Util = require('./util.js'); // S3にアクセス
//ファイル取得
const url = Util.getS3PreSignedUrl('Media/jobs_48.mp3');
//audio-list
const tr =`<audio src="${Alexa.escapeXmlCharacters(url)}"/>`;
const LaunchRequestHandler = {
canHandle(handlerInput) {
return Alexa.getRequestType(handlerInput.requestEnvelope) === 'LaunchRequest';
},
handle(handlerInput) {
let speakOutput = "";
speakOutput = tr ;
return handlerInput.responseBuilder
.speak(speakOutput)
//.reprompt(speakOutput)
.getResponse();
}
};
s3のMediaに保存した jobs_48.mp3 を再生させるコードです
サンプルコード中の下記3行を書き換えて下さい
・const Util = require('./util.js'); をコードの冒頭部に追加
・jobs_48.mp3は自分の作成したファイル名に変更
・url / tr は変数名なので任意に変更可