Home
[RDK Central Wiki]
CMF
[Code Releases]
org.rdk.FireboltMediaPlayer.1 - This API provides the ability to playback IP media streams
Description: will instantiate a new (AAMP) player instance, suitable for playback of IP feeds. If a player identified by the specified id already exists it will be ref-counted.
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.create", "params":{
"id" : "MainPlayer" } }
Response: { "jsonrpc":"2.0", "id":3, "result": {
"success": true
} }
Description: will decrease the ref-count of the player. When the ref-count reaches 0 the player will be destroyed.
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.release", "params":{
"id":"MainPlayer" } }
Response: { "jsonrpc":"2.0", "id":3, "result": {
"success": true
} }
Description: associated locator with a player instance.
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.load", "params":{
"id":"MainPlayer",
"url":"https://cpetestutility.stb.r53.xcal.tv/VideoTestStream/main.m3u8",
"autoplay": true
} }
Response: { "jsonrpc":"2.0", "id":3, "success": true }
Description: begin/resume streaming content associated with this player instance. Sets the playspeed to 1
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.play", "params":{
"id":"MainPlayer"
} }
Response: { "jsonrpc":"2.0", "id":3, "success": true }
Description: pause streaming content associated with this player instance. Sets the playspeed to 0
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.pause", "params":{
"id":"MainPlayer"
} }
Response: { "jsonrpc":"2.0", "id":3, "success": true }
Description: stop streaming content - new 'load" request required to recycle player instance. Note that for ideal performance, we recommend NOT calling stop in between new load() - avoids unnecessary resource deallocation/reallocation.
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.stop", "params":{
"id":"MainPlayer"
} }
Response: { "jsonrpc":"2.0", "id":3, "success": true }
Description: Moves the media to a specific position.
Arguments:
Returns:
Request : {"jsonrpc":"2.0", "id":3, "method":"org.rdk.FireboltMediaPlayer.1.seekTo", "params":{
"id":"MainPlayer",
"sec": 30
} }
Response: { "jsonrpc":"2.0", "id":3, "success": true }
Description: A event notifying playback started
Payload:
{
"jsonrpc":"2.0",
"method":"org.rdk.FireboltMediaPlayer.1.playbackStarted",
"params": {
"MainPlayer": {}
}
}
Description: A event notifying playback state changed
Payload:
Object Payload:
{
"jsonrpc":"2.0",
"method":"org.rdk.FireboltMediaPlayer.1.playbackStateChanged",
"params": {
"MainPlayer": { "state" : 8 }
}
}
Description: A event notifying about playback progress
Payload:
Object Payload:
{
"jsonrpc":"2.0",
"method":"org.rdk.FireboltMediaPlayer.1.playbackProgressUpdate",
"params": {
"MainPlayer": { "durationMiliseconds":734000,"positionMiliseconds":4458,"playbackSpeed":1,"startMiliseconds":0,"endMiliseconds":734000 }
}
}
Description: A event notifying if the buffering state changed
Payload:
Object Payload:
{
"jsonrpc":"2.0",
"method":"org.rdk.FireboltMediaPlayer.1.bufferingChanged",
"params": {
"MainPlayer": { "buffering":true }
}
}
Description: A event notifying if playback speed has changed
Payload:
Object Payload:
{
"jsonrpc":"2.0",
"method":"org.rdk.FireboltMediaPlayer.1.playbackSpeedChanged",
"params": {
"MainPlayer": { "speed":0 }
}
}
Description: A event notifying about playback error
Payload:
Object Payload:
{
"jsonrpc":"2.0",
"method":"org.rdk.FireboltMediaPlayer.1.playbackFailed",
"params": {
"MainPlayer": { "shouldRetry":true,"code":10,"description":"AAMP: Manifest Download failed : Curl Error Code 7" }
}
}
Description: Specifies the state of the playback - will be changed based on the content being played.
| Value | Description |
|---|---|
| 0 | Player is idle |
1 | Player is initializing a particular content |
2 | Player has initialized for a content successfully |
3 | Player is loading all associated resources |
4 | Player has loaded all associated resources successfully |
5 | Player is in a buffering state |
6 | Playback is paused |
7 | Seek is in progress |
8 | Playback is in progress |
9 | Player is stopping the playback |
10 | Player has stopped playback successfully |
11 | Playback completed |
| 12 | Error encountered and playback stopped |
| 13 | Player has released all resources for playback |
| Code | Description String |
|---|---|
| 10 | AAMP: init failed Fragmentcollector initialization failed |
| 10 | AAMP: init failed (unable to download manifest) |
| 10 | AAMP: init failed (manifest missing tracks) |
| 10 | AAMP: init failed (corrupt/invalid manifest) |
| 10 | AAMP: init failed (unsynchronized tracks) |
| 10 | AAMP: Manifest Download failed Playlist refresh failed |
| 40 | AAMP: Authorization failure |
| 10 | AAMP: fragment download failures |
| 10 | AAMP: init fragment download failed |
| 50 | AAMP: DRM error untracked error |
| 50 | AAMP: DRM Initialization Failed |
| 50 | AAMP: InitData-DRM Binding Failed |
| 50 | AAMP: DRM Session ID Empty |
| 50 | AAMP: DRM License Challenge Generation Failed |
| 50 | AAMP: DRM License Request Timed out |
| 50 | AAMP: DRM License Request Failed |
| 50 | AAMP: Invalid Key Error, from DRM |
| 50 | AAMP: Unsupported Stream Type Unable to determine stream type for DRM Init |
| 50 | AAMP: No supported Audio Types in Manifest |
| 50 | AAMP: Failed to parse key id from PSSH |
| 50 | AAMP: Failed to get access token from Auth Service |
AAMP: DRM failure due to Corrupt DRM files | |
| 50 | AAMP: DRM failure due to Bad DRMMetadata in stream |
| 50 | AAMP: DRM Decryption Failed for Fragments |
| 80 | AAMP: Error from gstreamer pipeline |
| 7600 | AAMP: Playback was stalled due to lack of new fragments |
| 20 | AAMP: Resource was not found at the URL(HTTP 404) |
| 50 | AAMP: Failed to process DRM key |
| 52 | AAMP: Device not provisioned |
| 53 | AAMP: HDCP Compliance Check Failure |
| 10 | AAMP: Invalid Manifest, parse failed |
| 80 | AAMP: Playback failed due to PTS error |
| 10 | AAMP: init fragments missing in playlist |
| 100 | AAMP: Unknown Failure |