Class HLSFragmentSelector
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<HLSFragmentSelector.Builder,HLSFragmentSelector>
Contains the range of timestamps for the requested media, and the source of the timestamps.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic HLSFragmentSelector.Builderbuilder()final booleanfinal booleanequalsBySdkFields(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final HLSFragmentSelectorTypeThe source of the timestamps for the requested media.final StringThe source of the timestamps for the requested media.final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz) final inthashCode()static Class<? extends HLSFragmentSelector.Builder> final HLSTimestampRangeThe start and end of the timestamp range for the requested media.Take this object and create a builder that contains all of the current property values of this object.final StringtoString()Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
fragmentSelectorType
The source of the timestamps for the requested media.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isON_DEMANDorLIVE_REPLAY, the first fragment ingested with a producer timestamp within the specified FragmentSelector$TimestampRange is included in the media playlist. In addition, the fragments with producer timestamps within theTimestampRangeingested immediately following the first fragment (up to the GetHLSStreamingSessionURLInput$MaxMediaPlaylistFragmentResults value) are included.Fragments that have duplicate producer timestamps are deduplicated. This means that if producers are producing a stream of fragments with producer timestamps that are approximately equal to the true clock time, the HLS media playlists will contain all of the fragments within the requested timestamp range. If some fragments are ingested within the same time range and very different points in time, only the oldest ingested collection of fragments are returned.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isLIVE, the producer timestamps are used in the MP4 fragments and for deduplication. But the most recently ingested fragments based on server timestamps are included in the HLS media playlist. This means that even if fragments ingested in the past have producer timestamps with values now, they are not included in the HLS media playlist.The default is
SERVER_TIMESTAMP.If the service returns an enum value that is not available in the current SDK version,
fragmentSelectorTypewill returnHLSFragmentSelectorType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromfragmentSelectorTypeAsString().- Returns:
- The source of the timestamps for the requested media.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isON_DEMANDorLIVE_REPLAY, the first fragment ingested with a producer timestamp within the specified FragmentSelector$TimestampRange is included in the media playlist. In addition, the fragments with producer timestamps within theTimestampRangeingested immediately following the first fragment (up to the GetHLSStreamingSessionURLInput$MaxMediaPlaylistFragmentResults value) are included.Fragments that have duplicate producer timestamps are deduplicated. This means that if producers are producing a stream of fragments with producer timestamps that are approximately equal to the true clock time, the HLS media playlists will contain all of the fragments within the requested timestamp range. If some fragments are ingested within the same time range and very different points in time, only the oldest ingested collection of fragments are returned.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isLIVE, the producer timestamps are used in the MP4 fragments and for deduplication. But the most recently ingested fragments based on server timestamps are included in the HLS media playlist. This means that even if fragments ingested in the past have producer timestamps with values now, they are not included in the HLS media playlist.The default is
SERVER_TIMESTAMP. - See Also:
-
fragmentSelectorTypeAsString
The source of the timestamps for the requested media.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isON_DEMANDorLIVE_REPLAY, the first fragment ingested with a producer timestamp within the specified FragmentSelector$TimestampRange is included in the media playlist. In addition, the fragments with producer timestamps within theTimestampRangeingested immediately following the first fragment (up to the GetHLSStreamingSessionURLInput$MaxMediaPlaylistFragmentResults value) are included.Fragments that have duplicate producer timestamps are deduplicated. This means that if producers are producing a stream of fragments with producer timestamps that are approximately equal to the true clock time, the HLS media playlists will contain all of the fragments within the requested timestamp range. If some fragments are ingested within the same time range and very different points in time, only the oldest ingested collection of fragments are returned.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isLIVE, the producer timestamps are used in the MP4 fragments and for deduplication. But the most recently ingested fragments based on server timestamps are included in the HLS media playlist. This means that even if fragments ingested in the past have producer timestamps with values now, they are not included in the HLS media playlist.The default is
SERVER_TIMESTAMP.If the service returns an enum value that is not available in the current SDK version,
fragmentSelectorTypewill returnHLSFragmentSelectorType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromfragmentSelectorTypeAsString().- Returns:
- The source of the timestamps for the requested media.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isON_DEMANDorLIVE_REPLAY, the first fragment ingested with a producer timestamp within the specified FragmentSelector$TimestampRange is included in the media playlist. In addition, the fragments with producer timestamps within theTimestampRangeingested immediately following the first fragment (up to the GetHLSStreamingSessionURLInput$MaxMediaPlaylistFragmentResults value) are included.Fragments that have duplicate producer timestamps are deduplicated. This means that if producers are producing a stream of fragments with producer timestamps that are approximately equal to the true clock time, the HLS media playlists will contain all of the fragments within the requested timestamp range. If some fragments are ingested within the same time range and very different points in time, only the oldest ingested collection of fragments are returned.
When
FragmentSelectorTypeis set toPRODUCER_TIMESTAMPand GetHLSStreamingSessionURLInput$PlaybackMode isLIVE, the producer timestamps are used in the MP4 fragments and for deduplication. But the most recently ingested fragments based on server timestamps are included in the HLS media playlist. This means that even if fragments ingested in the past have producer timestamps with values now, they are not included in the HLS media playlist.The default is
SERVER_TIMESTAMP. - See Also:
-
timestampRange
The start and end of the timestamp range for the requested media.
This value should not be present if
PlaybackTypeisLIVE.- Returns:
- The start and end of the timestamp range for the requested media.
This value should not be present if
PlaybackTypeisLIVE.
-
toBuilder
Description copied from interface:ToCopyableBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToCopyableBuilder<HLSFragmentSelector.Builder,HLSFragmentSelector> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojoIndicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojoclass, and is generated based on a service model.If an
SdkPojoclass does not have any inherited fields,equalsBySdkFieldsandequalsare essentially the same.- Specified by:
equalsBySdkFieldsin interfaceSdkPojo- Parameters:
obj- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-