Skip to content

Commit c4db70b

Browse files
author
awstools
committed
feat(client-medialive): Added MinQP as a Rate Control option for H264 and H265 encodes.
1 parent 202fdf2 commit c4db70b

File tree

11 files changed

+62
-0
lines changed

11 files changed

+62
-0
lines changed

clients/client-medialive/src/commands/CreateChannelCommand.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -804,6 +804,7 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
804804
* Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
805805
* Prefix: "STRING_VALUE",
806806
* },
807+
* MinQp: Number("int"),
807808
* },
808809
* H265Settings: { // H265Settings
809810
* AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -860,6 +861,7 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
860861
* TilePadding: "NONE" || "PADDED",
861862
* TileWidth: Number("int"),
862863
* TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
864+
* MinQp: Number("int"),
863865
* },
864866
* Mpeg2Settings: { // Mpeg2Settings
865867
* AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",
@@ -1850,6 +1852,7 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
18501852
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
18511853
* // Prefix: "STRING_VALUE",
18521854
* // },
1855+
* // MinQp: Number("int"),
18531856
* // },
18541857
* // H265Settings: { // H265Settings
18551858
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -1906,6 +1909,7 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
19061909
* // TilePadding: "NONE" || "PADDED",
19071910
* // TileWidth: Number("int"),
19081911
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
1912+
* // MinQp: Number("int"),
19091913
* // },
19101914
* // Mpeg2Settings: { // Mpeg2Settings
19111915
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/DeleteChannelCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -815,6 +815,7 @@ export interface DeleteChannelCommandOutput extends DeleteChannelResponse, __Met
815815
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
816816
* // Prefix: "STRING_VALUE",
817817
* // },
818+
* // MinQp: Number("int"),
818819
* // },
819820
* // H265Settings: { // H265Settings
820821
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -871,6 +872,7 @@ export interface DeleteChannelCommandOutput extends DeleteChannelResponse, __Met
871872
* // TilePadding: "NONE" || "PADDED",
872873
* // TileWidth: Number("int"),
873874
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
875+
* // MinQp: Number("int"),
874876
* // },
875877
* // Mpeg2Settings: { // Mpeg2Settings
876878
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/DescribeChannelCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -815,6 +815,7 @@ export interface DescribeChannelCommandOutput extends DescribeChannelResponse, _
815815
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
816816
* // Prefix: "STRING_VALUE",
817817
* // },
818+
* // MinQp: Number("int"),
818819
* // },
819820
* // H265Settings: { // H265Settings
820821
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -871,6 +872,7 @@ export interface DescribeChannelCommandOutput extends DescribeChannelResponse, _
871872
* // TilePadding: "NONE" || "PADDED",
872873
* // TileWidth: Number("int"),
873874
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
875+
* // MinQp: Number("int"),
874876
* // },
875877
* // Mpeg2Settings: { // Mpeg2Settings
876878
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/RestartChannelPipelinesCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -818,6 +818,7 @@ export interface RestartChannelPipelinesCommandOutput extends RestartChannelPipe
818818
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
819819
* // Prefix: "STRING_VALUE",
820820
* // },
821+
* // MinQp: Number("int"),
821822
* // },
822823
* // H265Settings: { // H265Settings
823824
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -874,6 +875,7 @@ export interface RestartChannelPipelinesCommandOutput extends RestartChannelPipe
874875
* // TilePadding: "NONE" || "PADDED",
875876
* // TileWidth: Number("int"),
876877
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
878+
* // MinQp: Number("int"),
877879
* // },
878880
* // Mpeg2Settings: { // Mpeg2Settings
879881
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/StartChannelCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -815,6 +815,7 @@ export interface StartChannelCommandOutput extends StartChannelResponse, __Metad
815815
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
816816
* // Prefix: "STRING_VALUE",
817817
* // },
818+
* // MinQp: Number("int"),
818819
* // },
819820
* // H265Settings: { // H265Settings
820821
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -871,6 +872,7 @@ export interface StartChannelCommandOutput extends StartChannelResponse, __Metad
871872
* // TilePadding: "NONE" || "PADDED",
872873
* // TileWidth: Number("int"),
873874
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
875+
* // MinQp: Number("int"),
874876
* // },
875877
* // Mpeg2Settings: { // Mpeg2Settings
876878
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/StopChannelCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -815,6 +815,7 @@ export interface StopChannelCommandOutput extends StopChannelResponse, __Metadat
815815
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
816816
* // Prefix: "STRING_VALUE",
817817
* // },
818+
* // MinQp: Number("int"),
818819
* // },
819820
* // H265Settings: { // H265Settings
820821
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -871,6 +872,7 @@ export interface StopChannelCommandOutput extends StopChannelResponse, __Metadat
871872
* // TilePadding: "NONE" || "PADDED",
872873
* // TileWidth: Number("int"),
873874
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
875+
* // MinQp: Number("int"),
874876
* // },
875877
* // Mpeg2Settings: { // Mpeg2Settings
876878
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/UpdateChannelClassCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -839,6 +839,7 @@ export interface UpdateChannelClassCommandOutput extends UpdateChannelClassRespo
839839
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
840840
* // Prefix: "STRING_VALUE",
841841
* // },
842+
* // MinQp: Number("int"),
842843
* // },
843844
* // H265Settings: { // H265Settings
844845
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -895,6 +896,7 @@ export interface UpdateChannelClassCommandOutput extends UpdateChannelClassRespo
895896
* // TilePadding: "NONE" || "PADDED",
896897
* // TileWidth: Number("int"),
897898
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
899+
* // MinQp: Number("int"),
898900
* // },
899901
* // Mpeg2Settings: { // Mpeg2Settings
900902
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/commands/UpdateChannelCommand.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -804,6 +804,7 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
804804
* Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
805805
* Prefix: "STRING_VALUE",
806806
* },
807+
* MinQp: Number("int"),
807808
* },
808809
* H265Settings: { // H265Settings
809810
* AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -860,6 +861,7 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
860861
* TilePadding: "NONE" || "PADDED",
861862
* TileWidth: Number("int"),
862863
* TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
864+
* MinQp: Number("int"),
863865
* },
864866
* Mpeg2Settings: { // Mpeg2Settings
865867
* AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",
@@ -1835,6 +1837,7 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
18351837
* // Position: "BOTTOM_CENTER" || "BOTTOM_LEFT" || "BOTTOM_RIGHT" || "MIDDLE_CENTER" || "MIDDLE_LEFT" || "MIDDLE_RIGHT" || "TOP_CENTER" || "TOP_LEFT" || "TOP_RIGHT", // required
18361838
* // Prefix: "STRING_VALUE",
18371839
* // },
1840+
* // MinQp: Number("int"),
18381841
* // },
18391842
* // H265Settings: { // H265Settings
18401843
* // AdaptiveQuantization: "AUTO" || "HIGH" || "HIGHER" || "LOW" || "MAX" || "MEDIUM" || "OFF",
@@ -1891,6 +1894,7 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
18911894
* // TilePadding: "NONE" || "PADDED",
18921895
* // TileWidth: Number("int"),
18931896
* // TreeblockSize: "AUTO" || "TREE_SIZE_32X32",
1897+
* // MinQp: Number("int"),
18941898
* // },
18951899
* // Mpeg2Settings: { // Mpeg2Settings
18961900
* // AdaptiveQuantization: "AUTO" || "HIGH" || "LOW" || "MEDIUM" || "OFF",

clients/client-medialive/src/models/models_1.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3926,6 +3926,13 @@ export interface H264Settings {
39263926
* @public
39273927
*/
39283928
TimecodeBurninSettings?: TimecodeBurninSettings;
3929+
3930+
/**
3931+
* Sets the minimum QP. If you aren't familiar with quantization adjustment, leave the field empty. MediaLive will
3932+
* apply an appropriate value.
3933+
* @public
3934+
*/
3935+
MinQp?: number;
39293936
}
39303937

39313938
/**
@@ -4494,6 +4501,13 @@ export interface H265Settings {
44944501
* @public
44954502
*/
44964503
TreeblockSize?: H265TreeblockSize;
4504+
4505+
/**
4506+
* Sets the minimum QP. If you aren't familiar with quantization adjustment, leave the field empty. MediaLive will
4507+
* apply an appropriate value.
4508+
* @public
4509+
*/
4510+
MinQp?: number;
44974511
}
44984512

44994513
/**

clients/client-medialive/src/protocols/Aws_restJson1.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6259,6 +6259,7 @@ const se_H264Settings = (input: H264Settings, context: __SerdeContext): any => {
62596259
lookAheadRateControl: [, , `LookAheadRateControl`],
62606260
maxBitrate: [, , `MaxBitrate`],
62616261
minIInterval: [, , `MinIInterval`],
6262+
minQp: [, , `MinQp`],
62626263
numRefFrames: [, , `NumRefFrames`],
62636264
parControl: [, , `ParControl`],
62646265
parDenominator: [, , `ParDenominator`],
@@ -6326,6 +6327,7 @@ const se_H265Settings = (input: H265Settings, context: __SerdeContext): any => {
63266327
lookAheadRateControl: [, , `LookAheadRateControl`],
63276328
maxBitrate: [, , `MaxBitrate`],
63286329
minIInterval: [, , `MinIInterval`],
6330+
minQp: [, , `MinQp`],
63296331
mvOverPictureBoundaries: [, , `MvOverPictureBoundaries`],
63306332
mvTemporalPredictor: [, , `MvTemporalPredictor`],
63316333
parDenominator: [, , `ParDenominator`],
@@ -9746,6 +9748,7 @@ const de_H264Settings = (output: any, context: __SerdeContext): H264Settings =>
97469748
LookAheadRateControl: [, __expectString, `lookAheadRateControl`],
97479749
MaxBitrate: [, __expectInt32, `maxBitrate`],
97489750
MinIInterval: [, __expectInt32, `minIInterval`],
9751+
MinQp: [, __expectInt32, `minQp`],
97499752
NumRefFrames: [, __expectInt32, `numRefFrames`],
97509753
ParControl: [, __expectString, `parControl`],
97519754
ParDenominator: [, __expectInt32, `parDenominator`],
@@ -9813,6 +9816,7 @@ const de_H265Settings = (output: any, context: __SerdeContext): H265Settings =>
98139816
LookAheadRateControl: [, __expectString, `lookAheadRateControl`],
98149817
MaxBitrate: [, __expectInt32, `maxBitrate`],
98159818
MinIInterval: [, __expectInt32, `minIInterval`],
9819+
MinQp: [, __expectInt32, `minQp`],
98169820
MvOverPictureBoundaries: [, __expectString, `mvOverPictureBoundaries`],
98179821
MvTemporalPredictor: [, __expectString, `mvTemporalPredictor`],
98189822
ParDenominator: [, __expectInt32, `parDenominator`],

codegen/sdk-codegen/aws-models/medialive.json

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13304,6 +13304,13 @@
1330413304
"smithy.api#documentation": "Timecode burn-in settings",
1330513305
"smithy.api#jsonName": "timecodeBurninSettings"
1330613306
}
13307+
},
13308+
"MinQp": {
13309+
"target": "com.amazonaws.medialive#__integerMin1Max51",
13310+
"traits": {
13311+
"smithy.api#documentation": "Sets the minimum QP. If you aren't familiar with quantization adjustment, leave the field empty. MediaLive will\napply an appropriate value.",
13312+
"smithy.api#jsonName": "minQp"
13313+
}
1330713314
}
1330813315
},
1330913316
"traits": {
@@ -14094,6 +14101,13 @@
1409414101
"smithy.api#documentation": "Select the tree block size used for encoding. If you enter \"auto\", the encoder will pick the best size. If you are setting up the picture as a tile, you must set this to 32x32. In all other configurations, you typically enter \"auto\".",
1409514102
"smithy.api#jsonName": "treeblockSize"
1409614103
}
14104+
},
14105+
"MinQp": {
14106+
"target": "com.amazonaws.medialive#__integerMin1Max51",
14107+
"traits": {
14108+
"smithy.api#documentation": "Sets the minimum QP. If you aren't familiar with quantization adjustment, leave the field empty. MediaLive will\napply an appropriate value.",
14109+
"smithy.api#jsonName": "minQp"
14110+
}
1409714111
}
1409814112
},
1409914113
"traits": {
@@ -31621,6 +31635,16 @@
3162131635
}
3162231636
}
3162331637
},
31638+
"com.amazonaws.medialive#__integerMin1Max51": {
31639+
"type": "integer",
31640+
"traits": {
31641+
"smithy.api#documentation": "Placeholder documentation for __integerMin1Max51",
31642+
"smithy.api#range": {
31643+
"min": 1,
31644+
"max": 51
31645+
}
31646+
}
31647+
},
3162431648
"com.amazonaws.medialive#__integerMin1Max6": {
3162531649
"type": "integer",
3162631650
"traits": {

0 commit comments

Comments
 (0)