This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Payloads

Payloads documentation.

1 - ClientInfo

Contains information about the client’s capabilities.
{
  "name": "Play:1",
  "platform": "Sonos",
  "maxAudioBitrate": 512000,
  "maxTranscodingAudioBitrate": 256000,
  "directPlayProfiles": [
  {
"container": "mp3",
"audioCodec": "mp3",
"protocol": "http",
"maxAudioChannels": 2
  },
  {
"container": "flac",
"audioCodec": "flac",
"protocol": "*",
"maxAudioChannels": 2
  }
  ,
  {
"container": "mp4",
"audioCodec": "flac,aac,alac",
"protocol": "*",
"maxAudioChannels": 2
  }
  ],
  "transcodingProfiles": [
  {
"container": "mp3",
"audioCodec": "mp3",
"protocol": "http",
"maxAudioChannels": 2
  },
  {
"container": "flac",
"audioCodec": "flac",
"protocol": "*",
"maxAudioChannels": 2
  }
  ],
  "codecProfiles": [
    {
      "type": "AudioCodec",
      "name": "mp3",
      "limitations": [
        { "name": "audioBitrate", "comparison": "LessThanEqual", "value": "320000", "required": true }
      ]
    },
    {
      "type": "AudioCodec",
      "name": "flac",
      "limitations": [
        { "name": "audioSamplerate", "comparison": "LessThanEqual", "value": "192000", "required": false },
        { "name": "audioChannels",  "comparison": "LessThanEqual", "value": "2",      "required": false }
      ]
    }
  ]
}
FieldTypeReq.OpenS.Details
namestringYesYesThe name of the client device.
platformstringYesYesThe platform of the client (e.g., Android, iOS).
maxAudioBitrateintegerNoYesThe maximum audio bitrate the client can handle. 0 or missing means no limitation.
maxTranscodingAudioBitrateintegerNoYesThe maximum audio bitrate for transcoded content. 0 or missing means no limitation.
directPlayProfilesDirectPlayProfile[]NoYesA list of profiles for direct playback.
transcodingProfilesTranscodingProfile[]NoYesA list of profiles for transcoding. The server should evaluate these in the order they are listed, as a priority list.
codecProfilesCodecProfile[]NoYesA list of codec-specific profiles.

2 - CodecProfile

Defines a codec profile with optional limitations.
{
  "type": "AudioCodec",
  "name": "mp3",
  "limitations": [
    { "name": "audioBitrate", "comparison": "LessThanEqual", "value": "320000", "required": true }
  ]
}
FieldTypeReq.OpenS.Details
typestringYesYesThe type of codec profile. Currently only AudioCodec is supported.
namestringYesYesThe name of the codec (e.g., mp3, flac). Only a single value is accepted.
limitationsLimitation[]NoYesA list of limitations for this codec.

3 - DirectPlayProfile

Defines a direct play profile.
{
  "container": "mp3",
  "audioCodec": "mp3",
  "protocol": "http",
  "maxAudioChannels": 2
}
FieldTypeReq.OpenS.Details
containerstringYesYesComma-separated list of supported container format (e.g., mp3, flac, mp4) or * to not limit to a specific container.
audioCodecstringYesYesComma-separated list of supported audio codecs or * to not limit to specific codecs.
protocolstringYesYesThe streaming protocol. Can be http, hls or *.
maxAudioChannelsintegerNoYesThe maximum number of audio channels supported.

4 - Limitation

Defines a limitation for a codec profile.
{
  "name": "audioBitrate",
  "comparison": "LessThanEqual",
  "value": "320000",
  "required": true
}
FieldTypeReq.OpenS.Details
namestringYesThe name of the limitation. Can be audioChannels, audioBitrate, audioProfile, audioSamplerate, or audioBitdepth.
comparisonstringYesThe comparison operator. Can be Equals, NotEquals, LessThanEqual, GreaterThanEqual, EqualsAny, or NotEqualsAny.
valuestringYesThe value to compare against. For EqualsAny and NotEqualsAny, this should be a pipe-separated (|) list of values (e.g., 44100|48000).
requiredbooleanYesWhether this limitation must be met.

5 - TranscodingProfile

Defines a transcoding profile.
{
  "container": "mp3",
  "audioCodec": "mp3",
  "protocol": "http",
  "maxAudioChannels": 2
}
FieldTypeReq.OpenS.Details
containerstringYesYesThe container format (e.g., mp3, flac). Only a single explicit value is accepted (No *).
audioCodecstringYesYesThe target audio codec for transcoding. Only a single explicit value is accepted (No *).
protocolstringYesYesThe streaming protocol. Can be http or hls. Only a single explicit value is accepted (No *).
maxAudioChannelsintegerNoYesThe maximum number of audio channels for the transcoded stream.