Class: AWSCDK::MediaLive::CfnChannel::AacSettingsProperty

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

Overview

The settings for an AAC audio encode in the output.

The parent of this entity is AudioCodecSettings.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bitrate: nil, coding_mode: nil, input_type: nil, profile: nil, rate_control_mode: nil, raw_format: nil, sample_rate: nil, spec: nil, vbr_quality: nil) ⇒ AacSettingsProperty

Returns a new instance of AacSettingsProperty.

Parameters:

  • bitrate (Numeric, nil) (defaults to: nil)

    The average bitrate in bits/second.

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

    Mono, stereo, or 5.1 channel layout. Valid values depend on the rate control mode and profile. The adReceiverMix setting receives a stereo description plus control track, and emits a mono AAC encode of the description track, with control data emitted in the PES header as per ETSI TS 101 154 Annex E.

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

    Set to broadcasterMixedAd when the input contains pre-mixed main audio + AD (narration) as a stereo pair.

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

    The AAC profile.

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

    The rate control mode.

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

    Sets the LATM/LOAS AAC output for raw containers.

  • sample_rate (Numeric, nil) (defaults to: nil)

    The sample rate in Hz.

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

    Uses MPEG-2 AAC audio instead of MPEG-4 AAC audio for raw or MPEG-2 Transport Stream containers.

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

    The VBR quality level.



794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
# File 'media_live/cfn_channel.rb', line 794

def initialize(bitrate: nil, coding_mode: nil, input_type: nil, profile: nil, rate_control_mode: nil, raw_format: nil, sample_rate: nil, spec: nil, vbr_quality: nil)
  @bitrate = bitrate
  Jsii::Type.check_type(@bitrate, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "bitrate") unless @bitrate.nil?
  @coding_mode = coding_mode
  Jsii::Type.check_type(@coding_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "codingMode") unless @coding_mode.nil?
  @input_type = input_type
  Jsii::Type.check_type(@input_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inputType") unless @input_type.nil?
  @profile = profile
  Jsii::Type.check_type(@profile, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "profile") unless @profile.nil?
  @rate_control_mode = rate_control_mode
  Jsii::Type.check_type(@rate_control_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "rateControlMode") unless @rate_control_mode.nil?
  @raw_format = raw_format
  Jsii::Type.check_type(@raw_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "rawFormat") unless @raw_format.nil?
  @sample_rate = sample_rate
  Jsii::Type.check_type(@sample_rate, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "sampleRate") unless @sample_rate.nil?
  @spec = spec
  Jsii::Type.check_type(@spec, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "spec") unless @spec.nil?
  @vbr_quality = vbr_quality
  Jsii::Type.check_type(@vbr_quality, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vbrQuality") unless @vbr_quality.nil?
end

Instance Attribute Details

#bitrateNumeric? (readonly)

The average bitrate in bits/second.

Valid values depend on the rate control mode and profile.



821
822
823
# File 'media_live/cfn_channel.rb', line 821

def bitrate
  @bitrate
end

#coding_modeString? (readonly)

Mono, stereo, or 5.1 channel layout. Valid values depend on the rate control mode and profile. The adReceiverMix setting receives a stereo description plus control track, and emits a mono AAC encode of the description track, with control data emitted in the PES header as per ETSI TS 101 154 Annex E.



826
827
828
# File 'media_live/cfn_channel.rb', line 826

def coding_mode
  @coding_mode
end

#input_typeString? (readonly)

Set to broadcasterMixedAd when the input contains pre-mixed main audio + AD (narration) as a stereo pair.

The Audio Type field (audioType) will be set to 3, which signals to downstream systems that this stream contains broadcaster mixed AD. Note that the input received by the encoder must contain pre-mixed audio; MediaLive does not perform the mixing. The values in audioTypeControl and audioType (in AudioDescription) are ignored when set to broadcasterMixedAd. Leave this set to normal when the input does not contain pre-mixed audio + AD.



833
834
835
# File 'media_live/cfn_channel.rb', line 833

def input_type
  @input_type
end

#profileString? (readonly)

The AAC profile.



838
839
840
# File 'media_live/cfn_channel.rb', line 838

def profile
  @profile
end

#rate_control_modeString? (readonly)

The rate control mode.



843
844
845
# File 'media_live/cfn_channel.rb', line 843

def rate_control_mode
  @rate_control_mode
end

#raw_formatString? (readonly)

Sets the LATM/LOAS AAC output for raw containers.



848
849
850
# File 'media_live/cfn_channel.rb', line 848

def raw_format
  @raw_format
end

#sample_rateNumeric? (readonly)

The sample rate in Hz.

Valid values depend on the rate control mode and profile.



855
856
857
# File 'media_live/cfn_channel.rb', line 855

def sample_rate
  @sample_rate
end

#specString? (readonly)

Uses MPEG-2 AAC audio instead of MPEG-4 AAC audio for raw or MPEG-2 Transport Stream containers.



860
861
862
# File 'media_live/cfn_channel.rb', line 860

def spec
  @spec
end

#vbr_qualityString? (readonly)

The VBR quality level.

This is used only if rateControlMode is VBR.



867
868
869
# File 'media_live/cfn_channel.rb', line 867

def vbr_quality
  @vbr_quality
end

Class Method Details

.jsii_propertiesObject



869
870
871
872
873
874
875
876
877
878
879
880
881
# File 'media_live/cfn_channel.rb', line 869

def self.jsii_properties
  {
    :bitrate => "bitrate",
    :coding_mode => "codingMode",
    :input_type => "inputType",
    :profile => "profile",
    :rate_control_mode => "rateControlMode",
    :raw_format => "rawFormat",
    :sample_rate => "sampleRate",
    :spec => "spec",
    :vbr_quality => "vbrQuality",
  }
end

Instance Method Details

#to_jsiiObject



883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
# File 'media_live/cfn_channel.rb', line 883

def to_jsii
  result = {}
  result.merge!({
    "bitrate" => @bitrate,
    "codingMode" => @coding_mode,
    "inputType" => @input_type,
    "profile" => @profile,
    "rateControlMode" => @rate_control_mode,
    "rawFormat" => @raw_format,
    "sampleRate" => @sample_rate,
    "spec" => @spec,
    "vbrQuality" => @vbr_quality,
  })
  result.compact
end