diff --git a/.changelog/1c471a9367bb4cdda35df610f841d8d3.json b/.changelog/1c471a9367bb4cdda35df610f841d8d3.json new file mode 100644 index 00000000000..40baf434802 --- /dev/null +++ b/.changelog/1c471a9367bb4cdda35df610f841d8d3.json @@ -0,0 +1,8 @@ +{ + "id": "1c471a93-67bb-4cdd-a35d-f610f841d8d3", + "type": "feature", + "description": "AWS Elemental MediaLive now supports configuring how SCTE 35 passthrough triggers segment breaks in HLS and MediaPackage output groups. Previously, messages triggered breaks in all these output groups. The new option is to trigger segment breaks only in groups that have SCTE 35 passthrough enabled.", + "modules": [ + "service/medialive" + ] +} \ No newline at end of file diff --git a/.changelog/41575353444b40ffbf474f4155544f00.json b/.changelog/41575353444b40ffbf474f4155544f00.json new file mode 100644 index 00000000000..1cc0d8d6b2d --- /dev/null +++ b/.changelog/41575353444b40ffbf474f4155544f00.json @@ -0,0 +1,8 @@ +{ + "id": "41575353-444b-40ff-bf47-4f4155544f00", + "type": "release", + "description": "New AWS service client module", + "modules": [ + "internal/protocoltest/smithyrpcv2cbor" + ] +} \ No newline at end of file diff --git a/service/controltower/internal/endpoints/endpoints.go b/service/controltower/internal/endpoints/endpoints.go index 7125d5bf081..b329b3ab231 100644 --- a/service/controltower/internal/endpoints/endpoints.go +++ b/service/controltower/internal/endpoints/endpoints.go @@ -190,6 +190,24 @@ var defaultPartitions = endpoints.Partitions{ }, Deprecated: aws.TrueTernary, }, + endpoints.EndpointKey{ + Region: "ca-west-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ca-west-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "controltower-fips.ca-west-1.amazonaws.com", + }, + endpoints.EndpointKey{ + Region: "ca-west-1-fips", + }: endpoints.Endpoint{ + Hostname: "controltower-fips.ca-west-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "ca-west-1", + }, + Deprecated: aws.TrueTernary, + }, endpoints.EndpointKey{ Region: "eu-central-1", }: endpoints.Endpoint{}, diff --git a/service/fms/internal/endpoints/endpoints.go b/service/fms/internal/endpoints/endpoints.go index 10b18175a53..50af12aa49a 100644 --- a/service/fms/internal/endpoints/endpoints.go +++ b/service/fms/internal/endpoints/endpoints.go @@ -223,6 +223,15 @@ var defaultPartitions = endpoints.Partitions{ }: { Hostname: "fms-fips.ca-central-1.amazonaws.com", }, + endpoints.EndpointKey{ + Region: "ca-west-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ca-west-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "fms-fips.ca-west-1.amazonaws.com", + }, endpoints.EndpointKey{ Region: "eu-central-1", }: endpoints.Endpoint{}, @@ -349,6 +358,15 @@ var defaultPartitions = endpoints.Partitions{ }, Deprecated: aws.TrueTernary, }, + endpoints.EndpointKey{ + Region: "fips-ca-west-1", + }: endpoints.Endpoint{ + Hostname: "fms-fips.ca-west-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "ca-west-1", + }, + Deprecated: aws.TrueTernary, + }, endpoints.EndpointKey{ Region: "fips-eu-central-1", }: endpoints.Endpoint{ diff --git a/service/medialive/deserializers.go b/service/medialive/deserializers.go index 3c457cf9ba4..8e45f864240 100644 --- a/service/medialive/deserializers.go +++ b/service/medialive/deserializers.go @@ -21902,6 +21902,15 @@ func awsRestjson1_deserializeDocumentAvailConfiguration(v **types.AvailConfigura return err } + case "scte35SegmentationScope": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Scte35SegmentationScope to be of type string, got %T instead", value) + } + sv.Scte35SegmentationScope = types.Scte35SegmentationScope(jtv) + } + default: _, _ = key, value diff --git a/service/medialive/serializers.go b/service/medialive/serializers.go index 312868e8ae6..39c1177d6a9 100644 --- a/service/medialive/serializers.go +++ b/service/medialive/serializers.go @@ -8678,6 +8678,11 @@ func awsRestjson1_serializeDocumentAvailConfiguration(v *types.AvailConfiguratio } } + if len(v.Scte35SegmentationScope) > 0 { + ok := object.Key("scte35SegmentationScope") + ok.String(string(v.Scte35SegmentationScope)) + } + return nil } diff --git a/service/medialive/types/enums.go b/service/medialive/types/enums.go index 34f502d525a..c2ea1239382 100644 --- a/service/medialive/types/enums.go +++ b/service/medialive/types/enums.go @@ -5350,6 +5350,24 @@ func (Scte35SegmentationCancelIndicator) Values() []Scte35SegmentationCancelIndi } } +type Scte35SegmentationScope string + +// Enum values for Scte35SegmentationScope +const ( + Scte35SegmentationScopeAllOutputGroups Scte35SegmentationScope = "ALL_OUTPUT_GROUPS" + Scte35SegmentationScopeScte35EnabledOutputGroups Scte35SegmentationScope = "SCTE35_ENABLED_OUTPUT_GROUPS" +) + +// Values returns all known values for Scte35SegmentationScope. Note that this can +// be expanded in the future, and so it is only as up to date as the client. The +// ordering of this slice is not guaranteed to be stable across updates. +func (Scte35SegmentationScope) Values() []Scte35SegmentationScope { + return []Scte35SegmentationScope{ + "ALL_OUTPUT_GROUPS", + "SCTE35_ENABLED_OUTPUT_GROUPS", + } +} + type Scte35SpliceInsertNoRegionalBlackoutBehavior string // Enum values for Scte35SpliceInsertNoRegionalBlackoutBehavior diff --git a/service/medialive/types/types.go b/service/medialive/types/types.go index 326f52de187..2521ef0b7c0 100644 --- a/service/medialive/types/types.go +++ b/service/medialive/types/types.go @@ -551,6 +551,17 @@ type AvailConfiguration struct { // signals are forwarded to an ESAM server for possible update. AvailSettings *AvailSettings + // Configures whether SCTE 35 passthrough triggers segment breaks in all output + // groups that use segmented outputs. Insertion of a SCTE 35 message typically + // results in a segment break, in addition to the regular cadence of breaks. The + // segment breaks appear in video outputs, audio outputs, and captions outputs (if + // any). ALL_OUTPUT_GROUPS: Default. Insert the segment break in in all output + // groups that have segmented outputs. This is the legacy behavior. + // SCTE35_ENABLED_OUTPUT_GROUPS: Insert the segment break only in output groups + // that have SCTE 35 passthrough enabled. This is the recommended value, because it + // reduces unnecessary segment breaks. + Scte35SegmentationScope Scte35SegmentationScope + noSmithyDocumentSerde } diff --git a/service/transfer/internal/endpoints/endpoints.go b/service/transfer/internal/endpoints/endpoints.go index 9d0a96ae533..02c326f4ff4 100644 --- a/service/transfer/internal/endpoints/endpoints.go +++ b/service/transfer/internal/endpoints/endpoints.go @@ -184,6 +184,12 @@ var defaultPartitions = endpoints.Partitions{ endpoints.EndpointKey{ Region: "ca-west-1", }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ca-west-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "transfer-fips.ca-west-1.amazonaws.com", + }, endpoints.EndpointKey{ Region: "eu-central-1", }: endpoints.Endpoint{}, @@ -217,6 +223,15 @@ var defaultPartitions = endpoints.Partitions{ }, Deprecated: aws.TrueTernary, }, + endpoints.EndpointKey{ + Region: "fips-ca-west-1", + }: endpoints.Endpoint{ + Hostname: "transfer-fips.ca-west-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "ca-west-1", + }, + Deprecated: aws.TrueTernary, + }, endpoints.EndpointKey{ Region: "fips-us-east-1", }: endpoints.Endpoint{