VideoAppインターフェースのリファレンス
VideoApp
インターフェースは、画面付きのAlexa搭載デバイスでネイティブビデオファイルをストリーミングするためのVideoApp.Launch
ディレクティブを提供します。スキルは、ビデオを起動するためのVideoApp.Launch
ディレクティブを送信できます。また、音声リクエストに応じて、またはユーザーがプログラムされたアイテムを画面上でタップするのに応じて、起動ディレクティブを送信できます。
VideoApp
インターフェースをサポートしていないデバイスもあります。ビデオコンテンツを送信する前に、必ずAlexaからのリクエストのcontext.System.device.SupportedInterfaces
プロパティでVideoApp
がサポートされているかどうかをチェックしてください。- サポートされるビデオ形式と解像度
- VideoAppの機能
- 画面付きのAlexa搭載デバイスでのVideoAppの表示
- VideoAppディレクティブを使用できるようにスキルを設定する
- VideoAppディレクティブの実装
- 応答のパラメーター
- サービスインターフェースのリファレンス(JSON)
サポートされるビデオ形式と解像度
VideoAppでサポートされるビデオ形式を以下の表に示します。
ストリーミング形式 | 付属のオーディオ形式 |
---|---|
HLS、MPEG-TS | AAC |
SmoothStreaming(SS)、MP4、M4A | AAC、Dolby、Dolby Digital Plus |
さらに、VideoAppディレクティブによって参照されるビデオでは、以下のガイドラインに従ってください。
- ビデオコンテンツのHTTPS URLを提供します。
- サポートされるファイル拡張子:.mp4、.m3u8、.ts
- MPEG4またはH.264コーデック
- 推奨の解像度(フレームサイズ): 640x480または1280x720
- 最高解像度: 1280x720
VideoAppの機能
画面付きのAlexa搭載デバイスで表示されるVideoAppには、次の機能があります。
GUI機能:
- 再生コントロール
- タイトル
- サブタイトル
音声コントロール:
- アレクサ、一時停止して/再開して
- アレクサ、止めて/閉じて
画面付きのAlexa搭載デバイスでのVideoAppの表示
Echo ShowおよびFire TV Cubeでは、VideoAppの画面は以下のように表示されます。
ネイティブビデオ
エラー
以下の表に、各デバイスでのVideoPlayerのデフォルトビューの比較を示します。Echo ShowとEcho Spotでのみ、次のように表示されます。
Echo Show | Echo Spot |
---|---|
以下の画像は、さまざまなズームを使用したEcho Spotビデオを示しています。デフォルト表示は「letterbox」です。ユーザーはズームを別のレベルに変更できます。
「letterbox」ズームでは、幅と高さが画面内にぴったり収まるようにビデオが拡大または縮小されます。
以下の画像は、フルスクリーンビデオを示しています。
以下の画像は、「pillowbox」ビデオを示しています。画面の高さにぴったり収まるように高さが拡大または縮小されていますが、幅は画面にぴったり収まっていません。
VideoAppディレクティブを使用できるようにスキルを設定する
VideoApp
ディレクティブを使用してビデオを再生するには、スキルにこのインターフェースが実装されていることを示す必要があります。
- 開発者コンソールで、カスタム> インターフェースに移動します。
- Video Appオプションを有効にしてからインターフェースを保存をクリックします。必ずモデルをビルドをクリックして対話モデルを再ビルドしてください。
標準ビルトインインテントが自動的に実装されます。ただし、AMAZON.CancelIntent
はサポートされません。これについては、標準インテントで説明しています。VideoAppでは、以下の標準ビルトインインテントを使用できます。
-
AMAZON.PauseIntent
およびAMAZON.StopIntent
。これらは、同じメッセージをスキルに送信します。 -
AMAZON.ResumeIntent
VideoAppディレクティブの実装
VideoApp
インターフェースではVideoApp.Launch
ディレクティブが提供されます。このディレクティブは、指定されたvideoItem
フィールドにより特定されるビデオファイルをストリーミングするコマンドを、Alexaに送信します。
videoItem
のsource
は、ネイティブビデオファイルにする必要があります。一度に指定できるビデオは1つのみです。
スキルサービスの応答にディレクティブを含める場合、送信するディレクティブにtype
プロパティを設定します。以下は、LaunchRequest
またはIntentRequest
から送信される完全な応答オブジェクトの例です。
この例では、ネイティブ形式のビデオが1つ再生されます。
{
"version": "1.0",
"sessionAttributes": null,
"response": {
"outputSpeech": null,
"card": null,
"directives": [
{
"type": "VideoApp.Launch",
"videoItem": {
"source": "https://www.example.com/video/sample-video-1.mp4",
"metadata": {
"title": "サンプルビデオのタイトル",
"subtitle": "サンプルビデオの2番目のタイトル"
}
}
}
],
"reprompt": null
}
}
完全な応答の形式については、カスタムスキルのJSONインターフェースのリファレンスの応答本文の構文を参照してください。
VideoApp
の各画面には戻るボタンが表示されます。これはDisplay
インターフェースの場合と異なり、非表示にできません。戻るボタンをクリックすると、現在のセッションの直前のDisplayテンプレートが表示されます。Displayテンプレートの戻るボタンを参照してください。
応答のパラメーター
詳細については、応答本文の構文を参照してください。このセクションでは、応答のVideoApp
固有のパラメーターについて説明します。
注意事項:
- 同じ応答に
Display.RenderTemplate
ディレクティブを含めないでください。 shouldEndSession
パラメーターを応答に含めないでください。値がnull
に設定されている場合も同様です。
パラメーター | 説明 | 型 | 必須 |
---|---|---|---|
videoItem |
再生するビデオストリームに関する情報を提供するオブジェクトが含まれています。 | オブジェクト | ◯ |
以下は、videoItem
のサブパラメーターです。
パラメーター | 説明 | 型 | 必須 |
---|---|---|---|
source | リモートのHTTPSロケーションでビデオコンテンツの場所を特定します。ビデオファイルは、インターネットにアクセス可能なHTTPSエンドポイント側でホストされる必要があります。HTTPSは必須で、ファイルをホストするドメインは有効で信頼できるSSL証明書を実装している必要があります。自己署名証明書は使用できません。これは、多くのコンテンツホスティングサービスで提供されています。たとえば、Amazon Simple Storage Service(Amazon S3)(アマゾンウェブサービスが提供)などのサービスでファイルをホストできます。 | 文字列 | ◯ |
metadata | VideoAppに表示できる情報を提供するオブジェクトが含まれています。 | オブジェクト | ✕ |
以下は、videoItem.metadata
のサブパラメーターです。
パラメーター | 説明 | 型 | 必須 |
title |
VideoAppに表示するためのビデオのタイトルです。 | 文字列 | ✕ |
subtitle |
VideoAppに表示するためのビデオの第二タイトルです。 | 文字列 | ✕ |
サービスインターフェースのリファレンス(JSON)
リクエストの形式と標準のリクエストタイプ:
インターフェース:
- Alexa.Presentation.APLインターフェース
- Alexa.Presentation.APLTインターフェース
- Alexa.Presentation.HTMLインターフェースのリファレンス
- AudioPlayerインターフェース
- Connectionsインターフェース
- Dialogインターフェース
- PlaybackControllerインターフェース
- VideoAppインターフェース(このドキュメント)
最終更新日: 2022 年 07 月 04 日