Skip to content

Commit 18b13f7

Browse files
committed
update generated code
1 parent cb3d93c commit 18b13f7

10 files changed

Lines changed: 213 additions & 2 deletions

File tree

manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"variables": {
3-
"${LATEST}": "3.387.0"
3+
"${LATEST}": "3.387.1"
44
},
55
"endpoints": "https://raw.githubusercontent.com/aws/aws-sdk-php/${LATEST}/src/data/endpoints.json",
66
"services": {

src/Service/MediaConvert/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## NOT RELEASED
44

5+
### Added
6+
7+
- AWS api-change: Adds support for integer-second duration normalization and the option to disable explicit weighted prediction.
8+
59
## 1.15.0
610

711
### Added

src/Service/MediaConvert/composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
},
3333
"extra": {
3434
"branch-alias": {
35-
"dev-master": "1.15-dev"
35+
"dev-master": "1.16-dev"
3636
}
3737
}
3838
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
3+
namespace AsyncAws\MediaConvert\Enum;
4+
5+
/**
6+
* Enable or disable explicit weighted prediction for the H.264 encoder. Weighted prediction improves compression
7+
* efficiency for content with fading or brightness changes between frames.
8+
*/
9+
final class H264ExplicitWeightedPrediction
10+
{
11+
public const DISABLED = 'DISABLED';
12+
public const ENABLED = 'ENABLED';
13+
public const UNKNOWN_TO_SDK = 'UNKNOWN_TO_SDK';
14+
15+
/**
16+
* @psalm-assert-if-true self::* $value
17+
*/
18+
public static function exists(string $value): bool
19+
{
20+
return isset([
21+
self::DISABLED => true,
22+
self::ENABLED => true,
23+
][$value]);
24+
}
25+
}

src/Service/MediaConvert/src/Result/CreateJobResponse.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,7 @@
191191
use AsyncAws\MediaConvert\Enum\H264DynamicSubGop;
192192
use AsyncAws\MediaConvert\Enum\H264EndOfStreamMarkers;
193193
use AsyncAws\MediaConvert\Enum\H264EntropyEncoding;
194+
use AsyncAws\MediaConvert\Enum\H264ExplicitWeightedPrediction;
194195
use AsyncAws\MediaConvert\Enum\H264FieldEncoding;
195196
use AsyncAws\MediaConvert\Enum\H264FlickerAdaptiveQuantization;
196197
use AsyncAws\MediaConvert\Enum\H264FramerateControl;
@@ -502,6 +503,7 @@
502503
use AsyncAws\MediaConvert\ValueObject\DestinationSettings;
503504
use AsyncAws\MediaConvert\ValueObject\DolbyVision;
504505
use AsyncAws\MediaConvert\ValueObject\DolbyVisionLevel6Metadata;
506+
use AsyncAws\MediaConvert\ValueObject\DurationControl;
505507
use AsyncAws\MediaConvert\ValueObject\DvbNitSettings;
506508
use AsyncAws\MediaConvert\ValueObject\DvbSdtSettings;
507509
use AsyncAws\MediaConvert\ValueObject\DvbSubDestinationSettings;
@@ -1306,6 +1308,15 @@ private function populateResultDolbyVisionLevel6Metadata(array $json): DolbyVisi
13061308
]);
13071309
}
13081310

1311+
private function populateResultDurationControl(array $json): DurationControl
1312+
{
1313+
return new DurationControl([
1314+
'IntegerDurationMaximumCompressionDenominator' => isset($json['integerDurationMaximumCompressionDenominator']) ? (int) $json['integerDurationMaximumCompressionDenominator'] : null,
1315+
'IntegerDurationMaximumCompressionNumerator' => isset($json['integerDurationMaximumCompressionNumerator']) ? (int) $json['integerDurationMaximumCompressionNumerator'] : null,
1316+
'IntegerDurationTrimThresholdMilliseconds' => isset($json['integerDurationTrimThresholdMilliseconds']) ? (int) $json['integerDurationTrimThresholdMilliseconds'] : null,
1317+
]);
1318+
}
1319+
13091320
private function populateResultDvbNitSettings(array $json): DvbNitSettings
13101321
{
13111322
return new DvbNitSettings([
@@ -1596,6 +1607,7 @@ private function populateResultH264Settings(array $json): H264Settings
15961607
'DynamicSubGop' => isset($json['dynamicSubGop']) ? (!H264DynamicSubGop::exists((string) $json['dynamicSubGop']) ? H264DynamicSubGop::UNKNOWN_TO_SDK : (string) $json['dynamicSubGop']) : null,
15971608
'EndOfStreamMarkers' => isset($json['endOfStreamMarkers']) ? (!H264EndOfStreamMarkers::exists((string) $json['endOfStreamMarkers']) ? H264EndOfStreamMarkers::UNKNOWN_TO_SDK : (string) $json['endOfStreamMarkers']) : null,
15981609
'EntropyEncoding' => isset($json['entropyEncoding']) ? (!H264EntropyEncoding::exists((string) $json['entropyEncoding']) ? H264EntropyEncoding::UNKNOWN_TO_SDK : (string) $json['entropyEncoding']) : null,
1610+
'ExplicitWeightedPrediction' => isset($json['explicitWeightedPrediction']) ? (!H264ExplicitWeightedPrediction::exists((string) $json['explicitWeightedPrediction']) ? H264ExplicitWeightedPrediction::UNKNOWN_TO_SDK : (string) $json['explicitWeightedPrediction']) : null,
15991611
'FieldEncoding' => isset($json['fieldEncoding']) ? (!H264FieldEncoding::exists((string) $json['fieldEncoding']) ? H264FieldEncoding::UNKNOWN_TO_SDK : (string) $json['fieldEncoding']) : null,
16001612
'FlickerAdaptiveQuantization' => isset($json['flickerAdaptiveQuantization']) ? (!H264FlickerAdaptiveQuantization::exists((string) $json['flickerAdaptiveQuantization']) ? H264FlickerAdaptiveQuantization::UNKNOWN_TO_SDK : (string) $json['flickerAdaptiveQuantization']) : null,
16011613
'FramerateControl' => isset($json['framerateControl']) ? (!H264FramerateControl::exists((string) $json['framerateControl']) ? H264FramerateControl::UNKNOWN_TO_SDK : (string) $json['framerateControl']) : null,
@@ -2855,6 +2867,7 @@ private function populateResultVideoPreprocessor(array $json): VideoPreprocessor
28552867
'ColorCorrector' => empty($json['colorCorrector']) ? null : $this->populateResultColorCorrector($json['colorCorrector']),
28562868
'Deinterlacer' => empty($json['deinterlacer']) ? null : $this->populateResultDeinterlacer($json['deinterlacer']),
28572869
'DolbyVision' => empty($json['dolbyVision']) ? null : $this->populateResultDolbyVision($json['dolbyVision']),
2870+
'DurationControl' => empty($json['durationControl']) ? null : $this->populateResultDurationControl($json['durationControl']),
28582871
'Hdr10Plus' => empty($json['hdr10Plus']) ? null : $this->populateResultHdr10Plus($json['hdr10Plus']),
28592872
'ImageInserter' => empty($json['imageInserter']) ? null : $this->populateResultImageInserter($json['imageInserter']),
28602873
'NoiseReducer' => empty($json['noiseReducer']) ? null : $this->populateResultNoiseReducer($json['noiseReducer']),

src/Service/MediaConvert/src/Result/GetJobResponse.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,7 @@
191191
use AsyncAws\MediaConvert\Enum\H264DynamicSubGop;
192192
use AsyncAws\MediaConvert\Enum\H264EndOfStreamMarkers;
193193
use AsyncAws\MediaConvert\Enum\H264EntropyEncoding;
194+
use AsyncAws\MediaConvert\Enum\H264ExplicitWeightedPrediction;
194195
use AsyncAws\MediaConvert\Enum\H264FieldEncoding;
195196
use AsyncAws\MediaConvert\Enum\H264FlickerAdaptiveQuantization;
196197
use AsyncAws\MediaConvert\Enum\H264FramerateControl;
@@ -502,6 +503,7 @@
502503
use AsyncAws\MediaConvert\ValueObject\DestinationSettings;
503504
use AsyncAws\MediaConvert\ValueObject\DolbyVision;
504505
use AsyncAws\MediaConvert\ValueObject\DolbyVisionLevel6Metadata;
506+
use AsyncAws\MediaConvert\ValueObject\DurationControl;
505507
use AsyncAws\MediaConvert\ValueObject\DvbNitSettings;
506508
use AsyncAws\MediaConvert\ValueObject\DvbSdtSettings;
507509
use AsyncAws\MediaConvert\ValueObject\DvbSubDestinationSettings;
@@ -1306,6 +1308,15 @@ private function populateResultDolbyVisionLevel6Metadata(array $json): DolbyVisi
13061308
]);
13071309
}
13081310

1311+
private function populateResultDurationControl(array $json): DurationControl
1312+
{
1313+
return new DurationControl([
1314+
'IntegerDurationMaximumCompressionDenominator' => isset($json['integerDurationMaximumCompressionDenominator']) ? (int) $json['integerDurationMaximumCompressionDenominator'] : null,
1315+
'IntegerDurationMaximumCompressionNumerator' => isset($json['integerDurationMaximumCompressionNumerator']) ? (int) $json['integerDurationMaximumCompressionNumerator'] : null,
1316+
'IntegerDurationTrimThresholdMilliseconds' => isset($json['integerDurationTrimThresholdMilliseconds']) ? (int) $json['integerDurationTrimThresholdMilliseconds'] : null,
1317+
]);
1318+
}
1319+
13091320
private function populateResultDvbNitSettings(array $json): DvbNitSettings
13101321
{
13111322
return new DvbNitSettings([
@@ -1596,6 +1607,7 @@ private function populateResultH264Settings(array $json): H264Settings
15961607
'DynamicSubGop' => isset($json['dynamicSubGop']) ? (!H264DynamicSubGop::exists((string) $json['dynamicSubGop']) ? H264DynamicSubGop::UNKNOWN_TO_SDK : (string) $json['dynamicSubGop']) : null,
15971608
'EndOfStreamMarkers' => isset($json['endOfStreamMarkers']) ? (!H264EndOfStreamMarkers::exists((string) $json['endOfStreamMarkers']) ? H264EndOfStreamMarkers::UNKNOWN_TO_SDK : (string) $json['endOfStreamMarkers']) : null,
15981609
'EntropyEncoding' => isset($json['entropyEncoding']) ? (!H264EntropyEncoding::exists((string) $json['entropyEncoding']) ? H264EntropyEncoding::UNKNOWN_TO_SDK : (string) $json['entropyEncoding']) : null,
1610+
'ExplicitWeightedPrediction' => isset($json['explicitWeightedPrediction']) ? (!H264ExplicitWeightedPrediction::exists((string) $json['explicitWeightedPrediction']) ? H264ExplicitWeightedPrediction::UNKNOWN_TO_SDK : (string) $json['explicitWeightedPrediction']) : null,
15991611
'FieldEncoding' => isset($json['fieldEncoding']) ? (!H264FieldEncoding::exists((string) $json['fieldEncoding']) ? H264FieldEncoding::UNKNOWN_TO_SDK : (string) $json['fieldEncoding']) : null,
16001612
'FlickerAdaptiveQuantization' => isset($json['flickerAdaptiveQuantization']) ? (!H264FlickerAdaptiveQuantization::exists((string) $json['flickerAdaptiveQuantization']) ? H264FlickerAdaptiveQuantization::UNKNOWN_TO_SDK : (string) $json['flickerAdaptiveQuantization']) : null,
16011613
'FramerateControl' => isset($json['framerateControl']) ? (!H264FramerateControl::exists((string) $json['framerateControl']) ? H264FramerateControl::UNKNOWN_TO_SDK : (string) $json['framerateControl']) : null,
@@ -2855,6 +2867,7 @@ private function populateResultVideoPreprocessor(array $json): VideoPreprocessor
28552867
'ColorCorrector' => empty($json['colorCorrector']) ? null : $this->populateResultColorCorrector($json['colorCorrector']),
28562868
'Deinterlacer' => empty($json['deinterlacer']) ? null : $this->populateResultDeinterlacer($json['deinterlacer']),
28572869
'DolbyVision' => empty($json['dolbyVision']) ? null : $this->populateResultDolbyVision($json['dolbyVision']),
2870+
'DurationControl' => empty($json['durationControl']) ? null : $this->populateResultDurationControl($json['durationControl']),
28582871
'Hdr10Plus' => empty($json['hdr10Plus']) ? null : $this->populateResultHdr10Plus($json['hdr10Plus']),
28592872
'ImageInserter' => empty($json['imageInserter']) ? null : $this->populateResultImageInserter($json['imageInserter']),
28602873
'NoiseReducer' => empty($json['noiseReducer']) ? null : $this->populateResultNoiseReducer($json['noiseReducer']),

src/Service/MediaConvert/src/Result/ListJobsResponse.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,7 @@
192192
use AsyncAws\MediaConvert\Enum\H264DynamicSubGop;
193193
use AsyncAws\MediaConvert\Enum\H264EndOfStreamMarkers;
194194
use AsyncAws\MediaConvert\Enum\H264EntropyEncoding;
195+
use AsyncAws\MediaConvert\Enum\H264ExplicitWeightedPrediction;
195196
use AsyncAws\MediaConvert\Enum\H264FieldEncoding;
196197
use AsyncAws\MediaConvert\Enum\H264FlickerAdaptiveQuantization;
197198
use AsyncAws\MediaConvert\Enum\H264FramerateControl;
@@ -505,6 +506,7 @@
505506
use AsyncAws\MediaConvert\ValueObject\DestinationSettings;
506507
use AsyncAws\MediaConvert\ValueObject\DolbyVision;
507508
use AsyncAws\MediaConvert\ValueObject\DolbyVisionLevel6Metadata;
509+
use AsyncAws\MediaConvert\ValueObject\DurationControl;
508510
use AsyncAws\MediaConvert\ValueObject\DvbNitSettings;
509511
use AsyncAws\MediaConvert\ValueObject\DvbSdtSettings;
510512
use AsyncAws\MediaConvert\ValueObject\DvbSubDestinationSettings;
@@ -1373,6 +1375,15 @@ private function populateResultDolbyVisionLevel6Metadata(array $json): DolbyVisi
13731375
]);
13741376
}
13751377

1378+
private function populateResultDurationControl(array $json): DurationControl
1379+
{
1380+
return new DurationControl([
1381+
'IntegerDurationMaximumCompressionDenominator' => isset($json['integerDurationMaximumCompressionDenominator']) ? (int) $json['integerDurationMaximumCompressionDenominator'] : null,
1382+
'IntegerDurationMaximumCompressionNumerator' => isset($json['integerDurationMaximumCompressionNumerator']) ? (int) $json['integerDurationMaximumCompressionNumerator'] : null,
1383+
'IntegerDurationTrimThresholdMilliseconds' => isset($json['integerDurationTrimThresholdMilliseconds']) ? (int) $json['integerDurationTrimThresholdMilliseconds'] : null,
1384+
]);
1385+
}
1386+
13761387
private function populateResultDvbNitSettings(array $json): DvbNitSettings
13771388
{
13781389
return new DvbNitSettings([
@@ -1663,6 +1674,7 @@ private function populateResultH264Settings(array $json): H264Settings
16631674
'DynamicSubGop' => isset($json['dynamicSubGop']) ? (!H264DynamicSubGop::exists((string) $json['dynamicSubGop']) ? H264DynamicSubGop::UNKNOWN_TO_SDK : (string) $json['dynamicSubGop']) : null,
16641675
'EndOfStreamMarkers' => isset($json['endOfStreamMarkers']) ? (!H264EndOfStreamMarkers::exists((string) $json['endOfStreamMarkers']) ? H264EndOfStreamMarkers::UNKNOWN_TO_SDK : (string) $json['endOfStreamMarkers']) : null,
16651676
'EntropyEncoding' => isset($json['entropyEncoding']) ? (!H264EntropyEncoding::exists((string) $json['entropyEncoding']) ? H264EntropyEncoding::UNKNOWN_TO_SDK : (string) $json['entropyEncoding']) : null,
1677+
'ExplicitWeightedPrediction' => isset($json['explicitWeightedPrediction']) ? (!H264ExplicitWeightedPrediction::exists((string) $json['explicitWeightedPrediction']) ? H264ExplicitWeightedPrediction::UNKNOWN_TO_SDK : (string) $json['explicitWeightedPrediction']) : null,
16661678
'FieldEncoding' => isset($json['fieldEncoding']) ? (!H264FieldEncoding::exists((string) $json['fieldEncoding']) ? H264FieldEncoding::UNKNOWN_TO_SDK : (string) $json['fieldEncoding']) : null,
16671679
'FlickerAdaptiveQuantization' => isset($json['flickerAdaptiveQuantization']) ? (!H264FlickerAdaptiveQuantization::exists((string) $json['flickerAdaptiveQuantization']) ? H264FlickerAdaptiveQuantization::UNKNOWN_TO_SDK : (string) $json['flickerAdaptiveQuantization']) : null,
16681680
'FramerateControl' => isset($json['framerateControl']) ? (!H264FramerateControl::exists((string) $json['framerateControl']) ? H264FramerateControl::UNKNOWN_TO_SDK : (string) $json['framerateControl']) : null,
@@ -2922,6 +2934,7 @@ private function populateResultVideoPreprocessor(array $json): VideoPreprocessor
29222934
'ColorCorrector' => empty($json['colorCorrector']) ? null : $this->populateResultColorCorrector($json['colorCorrector']),
29232935
'Deinterlacer' => empty($json['deinterlacer']) ? null : $this->populateResultDeinterlacer($json['deinterlacer']),
29242936
'DolbyVision' => empty($json['dolbyVision']) ? null : $this->populateResultDolbyVision($json['dolbyVision']),
2937+
'DurationControl' => empty($json['durationControl']) ? null : $this->populateResultDurationControl($json['durationControl']),
29252938
'Hdr10Plus' => empty($json['hdr10Plus']) ? null : $this->populateResultHdr10Plus($json['hdr10Plus']),
29262939
'ImageInserter' => empty($json['imageInserter']) ? null : $this->populateResultImageInserter($json['imageInserter']),
29272940
'NoiseReducer' => empty($json['noiseReducer']) ? null : $this->populateResultNoiseReducer($json['noiseReducer']),
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
<?php
2+
3+
namespace AsyncAws\MediaConvert\ValueObject;
4+
5+
/**
6+
* Settings for integer-second duration normalization. When this preprocessor is present, the output duration will be
7+
* adjusted to an exact integer-second boundary. If the input is within the trim threshold of an integer second,
8+
* trailing frames are dropped. If within the compression threshold and less than 500ms over the previous integer
9+
* second, the output is sped up slightly. Otherwise, black frames are padded to the next integer second.
10+
*/
11+
final class DurationControl
12+
{
13+
/**
14+
* Required. Denominator of the maximum allowed compression ratio.
15+
*
16+
* @var int|null
17+
*/
18+
private $integerDurationMaximumCompressionDenominator;
19+
20+
/**
21+
* Required. Numerator of the maximum allowed compression ratio, defined as overrun divided by target duration. For
22+
* example, numerator 5 with denominator 100 means max 5% compression. Set to 0 to disable compression entirely (only
23+
* trim or pad will be used).
24+
*
25+
* @var int|null
26+
*/
27+
private $integerDurationMaximumCompressionNumerator;
28+
29+
/**
30+
* Maximum number of fractional milliseconds past an integer second that qualify for the trim path (frame dropping).
31+
* Default is 0 (trimming disabled).
32+
*
33+
* @var int|null
34+
*/
35+
private $integerDurationTrimThresholdMilliseconds;
36+
37+
/**
38+
* @param array{
39+
* IntegerDurationMaximumCompressionDenominator?: int|null,
40+
* IntegerDurationMaximumCompressionNumerator?: int|null,
41+
* IntegerDurationTrimThresholdMilliseconds?: int|null,
42+
* } $input
43+
*/
44+
public function __construct(array $input)
45+
{
46+
$this->integerDurationMaximumCompressionDenominator = $input['IntegerDurationMaximumCompressionDenominator'] ?? null;
47+
$this->integerDurationMaximumCompressionNumerator = $input['IntegerDurationMaximumCompressionNumerator'] ?? null;
48+
$this->integerDurationTrimThresholdMilliseconds = $input['IntegerDurationTrimThresholdMilliseconds'] ?? null;
49+
}
50+
51+
/**
52+
* @param array{
53+
* IntegerDurationMaximumCompressionDenominator?: int|null,
54+
* IntegerDurationMaximumCompressionNumerator?: int|null,
55+
* IntegerDurationTrimThresholdMilliseconds?: int|null,
56+
* }|DurationControl $input
57+
*/
58+
public static function create($input): self
59+
{
60+
return $input instanceof self ? $input : new self($input);
61+
}
62+
63+
public function getIntegerDurationMaximumCompressionDenominator(): ?int
64+
{
65+
return $this->integerDurationMaximumCompressionDenominator;
66+
}
67+
68+
public function getIntegerDurationMaximumCompressionNumerator(): ?int
69+
{
70+
return $this->integerDurationMaximumCompressionNumerator;
71+
}
72+
73+
public function getIntegerDurationTrimThresholdMilliseconds(): ?int
74+
{
75+
return $this->integerDurationTrimThresholdMilliseconds;
76+
}
77+
78+
/**
79+
* @internal
80+
*/
81+
public function requestBody(): array
82+
{
83+
$payload = [];
84+
if (null !== $v = $this->integerDurationMaximumCompressionDenominator) {
85+
$payload['integerDurationMaximumCompressionDenominator'] = $v;
86+
}
87+
if (null !== $v = $this->integerDurationMaximumCompressionNumerator) {
88+
$payload['integerDurationMaximumCompressionNumerator'] = $v;
89+
}
90+
if (null !== $v = $this->integerDurationTrimThresholdMilliseconds) {
91+
$payload['integerDurationTrimThresholdMilliseconds'] = $v;
92+
}
93+
94+
return $payload;
95+
}
96+
}

0 commit comments

Comments
 (0)