com.amazonaws.services.elastictranscoder.model

## Class CreateJobPlaylist

- java.lang.Object
- - com.amazonaws.services.elastictranscoder.model.CreateJobPlaylist

All Implemented Interfaces:
  Serializable, Cloneable

    public class CreateJobPlaylist
    extends Object
    implements Serializable, Cloneable

Information about the master playlist.

See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`CreateJobPlaylist()`

### Method Summary

All Methods Instance Methods Concrete Methods
`CreateJobPlaylist` `clone()`
`boolean` `equals(Object obj)`
`String` `getFormat()` The format of the output playlist.
`HlsContentProtection` `getHlsContentProtection()` The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`String` `getName()` The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8.
`List<String>` `getOutputKeys()` For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.
`PlayReadyDrm` `getPlayReadyDrm()` The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`int` `hashCode()`
`void` `setFormat(String format)` The format of the output playlist.
`void` `setHlsContentProtection(HlsContentProtection hlsContentProtection)` The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`void` `setName(String name)` The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8.
`void` `setOutputKeys(Collection<String> outputKeys)` For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.
`void` `setPlayReadyDrm(PlayReadyDrm playReadyDrm)` The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`String` `toString()` Returns a string representation of this object; useful for testing and debugging.
`CreateJobPlaylist` `withFormat(String format)` The format of the output playlist.
`CreateJobPlaylist` `withHlsContentProtection(HlsContentProtection hlsContentProtection)` The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
`CreateJobPlaylist` `withName(String name)` The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8.
`CreateJobPlaylist` `withOutputKeys(Collection<String> outputKeys)` For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.
`CreateJobPlaylist` `withOutputKeys(String... outputKeys)` For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.
`CreateJobPlaylist` `withPlayReadyDrm(PlayReadyDrm playReadyDrm)` The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### CreateJobPlaylist

    public CreateJobPlaylist()

### Method Detail

#### setName

    public void setName(String name)

The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a `/` character, the section of the name before the last `/` must be identical for all `Name` objects. If you create more than one master playlist, the values of all `Name` objects must be unique.

<note>

Elastic Transcoder automatically appends the relevant file extension to the file name (`.m3u8` for `HLSv3` and `HLSv4` playlists, and `.ism` and `.ismc` for `Smooth` playlists). If you include a file extension in `Name`, the file name will have two extensions.

</note>

Parameters:
  `name` - The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a `/` character, the section of the name before the last `/` must be identical for all `Name` objects. If you create more than one master playlist, the values of all `Name` objects must be unique. <note>

  Elastic Transcoder automatically appends the relevant file extension to the file name (`.m3u8` for `HLSv3` and `HLSv4` playlists, and `.ism` and `.ismc` for `Smooth` playlists). If you include a file extension in `Name`, the file name will have two extensions.

#### getName

    public String getName()

The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a `/` character, the section of the name before the last `/` must be identical for all `Name` objects. If you create more than one master playlist, the values of all `Name` objects must be unique.

<note>

Elastic Transcoder automatically appends the relevant file extension to the file name (`.m3u8` for `HLSv3` and `HLSv4` playlists, and `.ism` and `.ismc` for `Smooth` playlists). If you include a file extension in `Name`, the file name will have two extensions.

</note>

Returns:
  The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a `/` character, the section of the name before the last `/` must be identical for all `Name` objects. If you create more than one master playlist, the values of all `Name` objects must be unique. <note>

  Elastic Transcoder automatically appends the relevant file extension to the file name (`.m3u8` for `HLSv3` and `HLSv4` playlists, and `.ism` and `.ismc` for `Smooth` playlists). If you include a file extension in `Name`, the file name will have two extensions.

#### withName

    public CreateJobPlaylist withName(String name)

The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a `/` character, the section of the name before the last `/` must be identical for all `Name` objects. If you create more than one master playlist, the values of all `Name` objects must be unique.

<note>

Elastic Transcoder automatically appends the relevant file extension to the file name (`.m3u8` for `HLSv3` and `HLSv4` playlists, and `.ism` and `.ismc` for `Smooth` playlists). If you include a file extension in `Name`, the file name will have two extensions.

</note>

Parameters:
  `name` - The name that you want Elastic Transcoder to assign to the master playlist, for example, nyc-vacation.m3u8. If the name includes a `/` character, the section of the name before the last `/` must be identical for all `Name` objects. If you create more than one master playlist, the values of all `Name` objects must be unique. <note>

  Elastic Transcoder automatically appends the relevant file extension to the file name (`.m3u8` for `HLSv3` and `HLSv4` playlists, and `.ism` and `.ismc` for `Smooth` playlists). If you include a file extension in `Name`, the file name will have two extensions.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setFormat

    public void setFormat(String format)

The format of the output playlist. Valid formats include `HLSv3`, `HLSv4`, and `Smooth`.

Parameters:
  `format` - The format of the output playlist. Valid formats include `HLSv3`, `HLSv4`, and `Smooth`.

#### getFormat

    public String getFormat()

The format of the output playlist. Valid formats include `HLSv3`, `HLSv4`, and `Smooth`.

Returns:
  The format of the output playlist. Valid formats include `HLSv3`, `HLSv4`, and `Smooth`.

#### withFormat

    public CreateJobPlaylist withFormat(String format)

The format of the output playlist. Valid formats include `HLSv3`, `HLSv4`, and `Smooth`.

Parameters:
  `format` - The format of the output playlist. Valid formats include `HLSv3`, `HLSv4`, and `Smooth`.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### getOutputKeys

    public List<String> getOutputKeys()

For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

- If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

  OutputKeyPrefix`Outputs:Key`

- If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

  OutputKeyPrefix`Outputs:Key`.m3u8

  OutputKeyPrefix`Outputs:Key`00000.ts

- If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

  OutputKeyPrefix`Outputs:Key`_v4.m3u8

  OutputKeyPrefix`Outputs:Key`_iframe.m3u8

  OutputKeyPrefix`Outputs:Key`.ts

Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

Returns:
  For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

  - If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

    OutputKeyPrefix`Outputs:Key`

  - If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

    OutputKeyPrefix`Outputs:Key`.m3u8

    OutputKeyPrefix`Outputs:Key`00000.ts

  - If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

    OutputKeyPrefix`Outputs:Key`_v4.m3u8

    OutputKeyPrefix`Outputs:Key`_iframe.m3u8

    OutputKeyPrefix`Outputs:Key`.ts

  Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

  If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

#### setOutputKeys

    public void setOutputKeys(Collection<String> outputKeys)

For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

- If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

  OutputKeyPrefix`Outputs:Key`

- If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

  OutputKeyPrefix`Outputs:Key`.m3u8

  OutputKeyPrefix`Outputs:Key`00000.ts

- If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

  OutputKeyPrefix`Outputs:Key`_v4.m3u8

  OutputKeyPrefix`Outputs:Key`_iframe.m3u8

  OutputKeyPrefix`Outputs:Key`.ts

Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

Parameters:
  `outputKeys` - For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

  - If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

    OutputKeyPrefix`Outputs:Key`

  - If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

    OutputKeyPrefix`Outputs:Key`.m3u8

    OutputKeyPrefix`Outputs:Key`00000.ts

  - If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

    OutputKeyPrefix`Outputs:Key`_v4.m3u8

    OutputKeyPrefix`Outputs:Key`_iframe.m3u8

    OutputKeyPrefix`Outputs:Key`.ts

  Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

  If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

#### withOutputKeys

    public CreateJobPlaylist withOutputKeys(String... outputKeys)

For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

- If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

  OutputKeyPrefix`Outputs:Key`

- If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

  OutputKeyPrefix`Outputs:Key`.m3u8

  OutputKeyPrefix`Outputs:Key`00000.ts

- If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

  OutputKeyPrefix`Outputs:Key`_v4.m3u8

  OutputKeyPrefix`Outputs:Key`_iframe.m3u8

  OutputKeyPrefix`Outputs:Key`.ts

Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

NOTE: This method appends the values to the existing list (if any). Use `setOutputKeys(java.util.Collection)` or `withOutputKeys(java.util.Collection)` if you want to override the existing values.

Parameters:
  `outputKeys` - For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

  - If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

    OutputKeyPrefix`Outputs:Key`

  - If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

    OutputKeyPrefix`Outputs:Key`.m3u8

    OutputKeyPrefix`Outputs:Key`00000.ts

  - If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

    OutputKeyPrefix`Outputs:Key`_v4.m3u8

    OutputKeyPrefix`Outputs:Key`_iframe.m3u8

    OutputKeyPrefix`Outputs:Key`.ts

  Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

  If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### withOutputKeys

    public CreateJobPlaylist withOutputKeys(Collection<String> outputKeys)

For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

- If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

  OutputKeyPrefix`Outputs:Key`

- If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

  OutputKeyPrefix`Outputs:Key`.m3u8

  OutputKeyPrefix`Outputs:Key`00000.ts

- If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

  OutputKeyPrefix`Outputs:Key`_v4.m3u8

  OutputKeyPrefix`Outputs:Key`_iframe.m3u8

  OutputKeyPrefix`Outputs:Key`.ts

Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

Parameters:
  `outputKeys` - For each output in this job that you want to include in a master playlist, the value of the `Outputs:Key` object.

  - If your output is not `HLS` or does not have a segment duration set, the name of the output file is a concatenation of `OutputKeyPrefix` and `Outputs:Key`:

    OutputKeyPrefix`Outputs:Key`

  - If your output is `HLSv3` and has a segment duration set, or is not included in a playlist, Elastic Transcoder creates an output playlist file with a file extension of `.m3u8`, and a series of `.ts` files that include a five-digit sequential counter beginning with 00000:

    OutputKeyPrefix`Outputs:Key`.m3u8

    OutputKeyPrefix`Outputs:Key`00000.ts

  - If your output is `HLSv4`, has a segment duration set, and is included in an `HLSv4` playlist, Elastic Transcoder creates an output playlist file with a file extension of `_v4.m3u8`. If the output is video, Elastic Transcoder also creates an output file with an extension of `_iframe.m3u8`:

    OutputKeyPrefix`Outputs:Key`_v4.m3u8

    OutputKeyPrefix`Outputs:Key`_iframe.m3u8

    OutputKeyPrefix`Outputs:Key`.ts

  Elastic Transcoder automatically appends the relevant file extension to the file name. If you include a file extension in Output Key, the file name will have two extensions.

  If you include more than one output in a playlist, any segment duration settings, clip settings, or caption settings must be the same for all outputs in the playlist. For `Smooth` playlists, the `Audio:Profile`, `Video:Profile`, and `Video:FrameRate` to `Video:KeyframesMaxDist` ratio must be the same for all outputs.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setHlsContentProtection

    public void setHlsContentProtection(HlsContentProtection hlsContentProtection)

The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Parameters:
  `hlsContentProtection` - The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

#### getHlsContentProtection

    public HlsContentProtection getHlsContentProtection()

The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Returns:
  The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

#### withHlsContentProtection

    public CreateJobPlaylist withHlsContentProtection(HlsContentProtection hlsContentProtection)

The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Parameters:
  `hlsContentProtection` - The HLS content protection settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setPlayReadyDrm

    public void setPlayReadyDrm(PlayReadyDrm playReadyDrm)

The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Parameters:
  `playReadyDrm` - The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

#### getPlayReadyDrm

    public PlayReadyDrm getPlayReadyDrm()

The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Returns:
  The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

#### withPlayReadyDrm

    public CreateJobPlaylist withPlayReadyDrm(PlayReadyDrm playReadyDrm)

The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.

Parameters:
  `playReadyDrm` - The DRM settings, if any, that you want Elastic Transcoder to apply to the output files associated with this playlist.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### toString

    public String toString()

Returns a string representation of this object; useful for testing and debugging.

Overrides:
  `toString` in class `Object`
Returns:
  A string representation of this object.
See Also:
  `Object.toString()`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### clone

    public CreateJobPlaylist clone()

Overrides:
  `clone` in class `Object`