APLメディアコマンド
これらのコマンドを使うと、Alexaを搭載した画面デバイスでメディアを再生できます。
コマンドの動作の概要については、APLコマンドを参照してください。その他のコマンドについては、APL標準コマンドを参照してください。
PlayMedia
ビデオプレイヤーでメディアを再生します。
PlayMedia
コマンドには、標準的なコマンドプロパティに加えて以下のプロパティがあります。
プロパティ | 型 | デフォルト | 説明 |
---|---|---|---|
audioTrack |
background 、foreground 、none |
foreground |
再生するオーディオトラックです。デフォルトはforeground です。 |
componentId |
文字列 | SELF | コンポーネントを再生しているメディアの名前です。 |
source |
URLまたはソース配列 | 必須 | メディアのソースです。 |
既にコンテンツを再生しているプレイヤーでPlayMedia
コマンドを実行すると、再生中のコンテンツが停止し、すべての既存のソースデータが消去され、新しく取り込まれたソースデータに置き換えられます。このメディアコンテンツは自動的に取り込まれ、再生が始まります。
PlayMedia
コマンドの有効期間は、audioTrackで設定します。audioTrackが「foreground」に設定されていると、メディアが再生されている間はPlayMedia
コマンドが有効です。audioTrackが「background」または「none」に設定されていると、PlayMedia
コマンドは直ちに制御を返します。たとえば、メディアトラックに続けて音声を読み上げるには、次のように記述します。
{
"type": "Sequential",
"items": [
{
"type": "PlayMedia",
"componentId": "myAudioPlayer"
"source": "http://music.amazon.com/s3/MAGIC_TRACK_HERE",
"audioTrack": "foreground"
},
{
"type": "SpeakItem",
"componentId": "mySpokenItem"
}
]
}
上記の場合、SpeakItemコマンドは、メディアトラックの再生が終了した後に実行されます。audioTrackが「background」に設定されている場合、SpeakItemコマンドは、メディアトラックの再生が開始した直後に実行されます。PlayMedia
コマンドを早期停止(ユーザーが画面をタッチしたり、Alexaから新しいコマンドを受け取ったりするなど)するアクションは、audioTrackが「foreground」に設定されている場合にのみビデオの再生を停止します。audioTrackが「background」の場合、PlayMedia
コマンドは既に終了しているため、何も停止しません。
PlayMedia
コマンドは、高速モードでは無視されます。
audioTrack
VideoコンポーネントにあるaudioTrack
プロパティを参照してください。
componentId
MediaコンポーネントのIDです。省略された場合は、現在のコンポーネントが使用されます。
source
source
プロパティの定義については、Videoを参照してください。
ControlMedia
メディアプレイヤーの再生、停止、トラックの変更、その他よく使われるアクションの操作を行います。
ControlMedia
コマンドには、標準のコマンドプロパティに加えて以下のプロパティがあります。
プロパティ | 型 | デフォルト | 説明 |
---|---|---|---|
command |
play 、pause 、rewind 、… |
必須 | メディアプレイヤーで使うコマンドです。 |
componentId |
文字列 | SELF | コンポーネントを再生しているメディアの名前です。 |
value |
整数 | 0 | 任意のデータ値です。 |
次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "next"
}
ControlMediaコマンドは、高速モードでのほとんどの操作をサポートしています。例外は、playサブコマンドです。
command
command
列挙値は、メディアプレイヤーで実行される操作です。利用可能なコマンドは次のとおりです。
プロパティ | 再生状態/一時停止状態 | 値 | 高速モード | 説明 |
---|---|---|---|---|
play |
再生中 | なし | ✕ | メディアを再生します。 |
pause |
一時停止 | なし | ◯ | メディア再生を停止します。 |
next |
一時停止 | なし | ◯ | ソース配列で次のメディアトラックを開きます。 |
previous |
一時停止 | なし | ◯ | ソース配列で前のメディアトラックを開きます。 |
rewind |
一時停止 | なし | ◯ | 再生中のメディアトラックを最初まで早戻しします。 |
seek |
一時停止 | 相対オフセット(ミリ秒) | ◯ | メディアの再生位置を相殺します。 |
setTrack |
一時停止 | トラックインデックス | ◯ | ソース配列の現在のトラックを変更します。 |
play
現在のメディアトラックと位置からの再生を開始します。このコマンドは、ビデオトラックの現在のリピートカウンターには影響しません。ビデオが再生されていない場合は、onPlay
イベントが生成されます。次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "play"
}
pause
ビデオ再生を停止します。ビデオが現在再生中の場合は、onPause
イベントが生成されます。次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "pause"
}
next
ビデオ再生を停止して、次のビデオトラックの先頭に進みます。リピートカウンターは、新しいビデオトラックにも適用されます(たとえば、ビデオトラックが2回繰り返すように設定されている場合、再生を実行するコマンドを発行すると新しいビデオトラックを合計で3回繰り返すことになります)。ビデオプレイヤーが既に最後のビデオトラックである場合、ビデオのシーク位置は最後のビデオトラックに移動し、リピートカウンターはゼロになります。
次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "next"
}
このコマンドの呼び出し後、ビデオ再生は自動開始されません。ビデオ再生を開始するには、明示的にplay
コマンドを開始する必要があります。
previous
ビデオ再生を停止して、前のビデオトラックの先頭に進みます。リピートカウンターは、新しいビデオトラックにも適用されます(たとえば、ビデオトラックが2回繰り返すように設定されている場合、再生を実行するコマンドを発行すると新しいビデオトラックを合計で3回繰り返すことになります)。ビデオプレイヤーが最初のビデオトラックである場合、ビデオのシーク位置は最初のビデオトラックの先頭に移動し、リピートカウンターはリロードされます。
次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "previous"
}
rewind
ビデオ再生を一時停止して、現在のビデオトラックをリロードします。新しいビデオトラックのリピートカウンターはリロードされます。
次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "rewind"
}
このコマンドの呼び出し後、ビデオ再生は自動開始されません。ビデオ再生を開始するには、明示的にplay
コマンドを開始する必要があります。
seek
ビデオの再生を一時停止し、プレイヤーの再生位置に相対的な変更を適用します。この変更は、プレイヤーの現在位置に相対的で、現在のトラックの有効な範囲に合わせて切り取られます。
たとえば、切り取られたビデオトラックを考えてみましょう。
{
"type": "Video",
"id": "MyVideoPlayer",
"source": {
"url": "http://example.com/example.mp4",
"offset": 500,
"duration": 1000
}
}
プレイヤーの現在位置が700ミリ秒だとします。次のコマンドを実行します。
{
"type": "ControlMedia",
"componentId": "MyVideoPlayer",
"command": "seek",
"value": 500
}
コマンドは再生を一時停止し、プレイヤーの再生位置を1200ミリ秒(700+500)に移動します。同じコマンドをもう一度実行すると、ソースの定義で再生位置が500~1500ミリ秒の間に限定されているため、プレイヤーの再生位置は1500ミリ秒に移動します。
seek
コマンドは、現在のビデオトラックのリピートカウンターを変更しません。seek
コマンドの実行後、ビデオ再生は自動開始されません。ビデオ再生を開始するには、play
コマンドを明示的に実行する必要があります。
setTrack
ビデオ再生を停止して、現在のトラックを変更します。指定の0から始まるトラックインデックスを、コマンドデータオブジェクトに渡す必要があります。このインデックスは、ソース配列内の有効なインデックスである必要があり、有効でない場合はコマンドは無視されます。トラックを変更しない場合でも、トラックのリピートカウンタはリロードされます。
次に例を示します:
{
"type": "ControlMedia",
"componentId": "myAudioPlayer",
"command": "setTrack",
"value": 2
}
このコマンドの呼び出し後、ビデオ再生は自動開始されません。ビデオ再生を開始するには、明示的にplay
コマンドを開始する必要があります。
componentId
MediaコンポーネントのIDです。省略された場合は、現在のコンポーネントが使用されます。
value
コマンドに設定する値です。seek
コマンドとsetTrack
コマンドに使用されます。
関連トピック
最終更新日: 2021 年 12 月 10 日