Class: AWSCDK::MediaLive::CfnChannel::AudioOnlyHlsSettingsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_live/cfn_channel.rb

Overview

The configuration of an audio-only HLS output.

The parent of this entity is HlsSettings.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(audio_group_id: nil, audio_only_image: nil, audio_track_type: nil, segment_type: nil) ⇒ AudioOnlyHlsSettingsProperty

Returns a new instance of AudioOnlyHlsSettingsProperty.

Parameters:

  • audio_group_id (String, nil) (defaults to: nil)

    Specifies the group that the audio rendition belongs to.

  • audio_only_image (AWSCDK::IResolvable, AWSCDK::MediaLive::CfnChannel::InputLocationProperty, nil) (defaults to: nil)

    Used with an audio-only stream.

  • audio_track_type (String, nil) (defaults to: nil)

    Four types of audio-only tracks are supported: Audio-Only Variant Stream The client can play back this audio-only stream instead of video in low-bandwidth scenarios.

  • segment_type (String, nil) (defaults to: nil)

    Specifies the segment type.



1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
# File 'media_live/cfn_channel.rb', line 1939

def initialize(audio_group_id: nil, audio_only_image: nil, audio_track_type: nil, segment_type: nil)
  @audio_group_id = audio_group_id
  Jsii::Type.check_type(@audio_group_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "audioGroupId") unless @audio_group_id.nil?
  @audio_only_image = audio_only_image.is_a?(Hash) ? ::AWSCDK::MediaLive::CfnChannel::InputLocationProperty.new(**audio_only_image.transform_keys(&:to_sym)) : audio_only_image
  Jsii::Type.check_type(@audio_only_image, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYWxpdmUuQ2ZuQ2hhbm5lbC5JbnB1dExvY2F0aW9uUHJvcGVydHkifV19fQ==")), "audioOnlyImage") unless @audio_only_image.nil?
  @audio_track_type = audio_track_type
  Jsii::Type.check_type(@audio_track_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "audioTrackType") unless @audio_track_type.nil?
  @segment_type = segment_type
  Jsii::Type.check_type(@segment_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "segmentType") unless @segment_type.nil?
end

Instance Attribute Details

#audio_group_idString? (readonly)

Specifies the group that the audio rendition belongs to.



1954
1955
1956
# File 'media_live/cfn_channel.rb', line 1954

def audio_group_id
  @audio_group_id
end

#audio_only_imageAWSCDK::IResolvable, ... (readonly)

Used with an audio-only stream.

It must be a .jpg or .png file. If given, this image is used as the cover art for the audio-only output. Ideally, it should be formatted for an iPhone screen for two reasons. The iPhone does not resize the image; instead, it crops a centered image on the top/bottom and left/right. Additionally, this image file gets saved bit-for-bit into every 10-second segment file, so it increases bandwidth by file size * count * count..



1961
1962
1963
# File 'media_live/cfn_channel.rb', line 1961

def audio_only_image
  @audio_only_image
end

#audio_track_typeString? (readonly)

Four types of audio-only tracks are supported: Audio-Only Variant Stream The client can play back this audio-only stream instead of video in low-bandwidth scenarios.

Represented as an EXT-X-STREAM-INF in the HLS manifest. Alternate Audio, Auto Select, Default Alternate rendition that the client should try to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with DEFAULT=YES, AUTOSELECT=YES Alternate Audio, Auto Select, Not Default Alternate rendition that the client might try to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YES Alternate Audio, not Auto Select Alternate rendition that the client will not try to play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=NO.



1968
1969
1970
# File 'media_live/cfn_channel.rb', line 1968

def audio_track_type
  @audio_track_type
end

#segment_typeString? (readonly)

Specifies the segment type.



1973
1974
1975
# File 'media_live/cfn_channel.rb', line 1973

def segment_type
  @segment_type
end

Class Method Details

.jsii_propertiesObject



1975
1976
1977
1978
1979
1980
1981
1982
# File 'media_live/cfn_channel.rb', line 1975

def self.jsii_properties
  {
    :audio_group_id => "audioGroupId",
    :audio_only_image => "audioOnlyImage",
    :audio_track_type => "audioTrackType",
    :segment_type => "segmentType",
  }
end

Instance Method Details

#to_jsiiObject



1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
# File 'media_live/cfn_channel.rb', line 1984

def to_jsii
  result = {}
  result.merge!({
    "audioGroupId" => @audio_group_id,
    "audioOnlyImage" => @audio_only_image,
    "audioTrackType" => @audio_track_type,
    "segmentType" => @segment_type,
  })
  result.compact
end