Skip to content

Commit 41a1443

Browse files
Update generated code (#2062)
update generated code
1 parent 3a1082c commit 41a1443

10 files changed

Lines changed: 238 additions & 7 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.377.0"
3+
"${LATEST}": "3.378.2"
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: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
- AWS api-change: Rework endpoints resolution.
88
- AWS api-change: This update adds support for Dolby AC-4 audio output, frame rate conversion between non-Dolby Vision inputs to Dolby Vision outputs, and clear lead CMAF HLS output.
9+
- AWS api-change: Adds support for MV-HEVC video output and clear lead for AV1 DRM output.
910

1011
### Changed
1112

src/Service/MediaConvert/src/Enum/HlsClearLead.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
* encryption begins at the start of the second segment. The HLS manifest will omit #EXT-X-KEY tags during the clear
1010
* segment and insert the first #EXT-X-KEY immediately before the first encrypted fragment. This feature is supported
1111
* exclusively for CMAF HLS (fMP4) outputs and is compatible with all existing key provider integrations (SPEKE v1,
12-
* SPEKE v2, and Static Key encryption). Supported codecs: H.264 and H.265 video codecs, and AAC audio codec. Choose
13-
* Enabled to activate Clear Lead DRM optimization. Choose Disabled to use standard encryption where all segments are
14-
* encrypted from the beginning.
12+
* SPEKE v2, and Static Key encryption). Supported codecs: H.264, H.265, and AV1 video codecs, and AAC audio codec.
13+
* Choose Enabled to activate Clear Lead DRM optimization. Choose Disabled to use standard encryption where all segments
14+
* are encrypted from the beginning.
1515
*/
1616
final class HlsClearLead
1717
{

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

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -565,6 +565,8 @@
565565
use AsyncAws\MediaConvert\ValueObject\MsSmoothAdditionalManifest;
566566
use AsyncAws\MediaConvert\ValueObject\MsSmoothEncryptionSettings;
567567
use AsyncAws\MediaConvert\ValueObject\MsSmoothGroupSettings;
568+
use AsyncAws\MediaConvert\ValueObject\MultiViewInput;
569+
use AsyncAws\MediaConvert\ValueObject\MultiViewSettings;
568570
use AsyncAws\MediaConvert\ValueObject\MxfSettings;
569571
use AsyncAws\MediaConvert\ValueObject\MxfXavcProfileSettings;
570572
use AsyncAws\MediaConvert\ValueObject\NexGuardFileMarkerSettings;
@@ -1835,6 +1837,7 @@ private function populateResultInput(array $json): Input
18351837
'ImageInserter' => empty($json['imageInserter']) ? null : $this->populateResultImageInserter($json['imageInserter']),
18361838
'InputClippings' => !isset($json['inputClippings']) ? null : $this->populateResult__listOfInputClipping($json['inputClippings']),
18371839
'InputScanType' => isset($json['inputScanType']) ? (!InputScanType::exists((string) $json['inputScanType']) ? InputScanType::UNKNOWN_TO_SDK : (string) $json['inputScanType']) : null,
1840+
'MultiViewSettings' => !isset($json['multiViewSettings']) ? null : $this->populateResult__listOfMultiViewSettings($json['multiViewSettings']),
18381841
'Position' => empty($json['position']) ? null : $this->populateResultRectangle($json['position']),
18391842
'ProgramNumber' => isset($json['programNumber']) ? (int) $json['programNumber'] : null,
18401843
'PsiControl' => isset($json['psiControl']) ? (!InputPsiControl::exists((string) $json['psiControl']) ? InputPsiControl::UNKNOWN_TO_SDK : (string) $json['psiControl']) : null,
@@ -2255,6 +2258,20 @@ private function populateResultMsSmoothGroupSettings(array $json): MsSmoothGroup
22552258
]);
22562259
}
22572260

2261+
private function populateResultMultiViewInput(array $json): MultiViewInput
2262+
{
2263+
return new MultiViewInput([
2264+
'FileInput' => isset($json['fileInput']) ? (string) $json['fileInput'] : null,
2265+
]);
2266+
}
2267+
2268+
private function populateResultMultiViewSettings(array $json): MultiViewSettings
2269+
{
2270+
return new MultiViewSettings([
2271+
'Input' => empty($json['input']) ? null : $this->populateResultMultiViewInput($json['input']),
2272+
]);
2273+
}
2274+
22582275
private function populateResultMxfSettings(array $json): MxfSettings
22592276
{
22602277
return new MxfSettings([
@@ -3223,6 +3240,19 @@ private function populateResult__listOfMsSmoothAdditionalManifest(array $json):
32233240
return $items;
32243241
}
32253242

3243+
/**
3244+
* @return MultiViewSettings[]
3245+
*/
3246+
private function populateResult__listOfMultiViewSettings(array $json): array
3247+
{
3248+
$items = [];
3249+
foreach ($json as $item) {
3250+
$items[] = $this->populateResultMultiViewSettings($item);
3251+
}
3252+
3253+
return $items;
3254+
}
3255+
32263256
/**
32273257
* @return Output[]
32283258
*/

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

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -565,6 +565,8 @@
565565
use AsyncAws\MediaConvert\ValueObject\MsSmoothAdditionalManifest;
566566
use AsyncAws\MediaConvert\ValueObject\MsSmoothEncryptionSettings;
567567
use AsyncAws\MediaConvert\ValueObject\MsSmoothGroupSettings;
568+
use AsyncAws\MediaConvert\ValueObject\MultiViewInput;
569+
use AsyncAws\MediaConvert\ValueObject\MultiViewSettings;
568570
use AsyncAws\MediaConvert\ValueObject\MxfSettings;
569571
use AsyncAws\MediaConvert\ValueObject\MxfXavcProfileSettings;
570572
use AsyncAws\MediaConvert\ValueObject\NexGuardFileMarkerSettings;
@@ -1835,6 +1837,7 @@ private function populateResultInput(array $json): Input
18351837
'ImageInserter' => empty($json['imageInserter']) ? null : $this->populateResultImageInserter($json['imageInserter']),
18361838
'InputClippings' => !isset($json['inputClippings']) ? null : $this->populateResult__listOfInputClipping($json['inputClippings']),
18371839
'InputScanType' => isset($json['inputScanType']) ? (!InputScanType::exists((string) $json['inputScanType']) ? InputScanType::UNKNOWN_TO_SDK : (string) $json['inputScanType']) : null,
1840+
'MultiViewSettings' => !isset($json['multiViewSettings']) ? null : $this->populateResult__listOfMultiViewSettings($json['multiViewSettings']),
18381841
'Position' => empty($json['position']) ? null : $this->populateResultRectangle($json['position']),
18391842
'ProgramNumber' => isset($json['programNumber']) ? (int) $json['programNumber'] : null,
18401843
'PsiControl' => isset($json['psiControl']) ? (!InputPsiControl::exists((string) $json['psiControl']) ? InputPsiControl::UNKNOWN_TO_SDK : (string) $json['psiControl']) : null,
@@ -2255,6 +2258,20 @@ private function populateResultMsSmoothGroupSettings(array $json): MsSmoothGroup
22552258
]);
22562259
}
22572260

2261+
private function populateResultMultiViewInput(array $json): MultiViewInput
2262+
{
2263+
return new MultiViewInput([
2264+
'FileInput' => isset($json['fileInput']) ? (string) $json['fileInput'] : null,
2265+
]);
2266+
}
2267+
2268+
private function populateResultMultiViewSettings(array $json): MultiViewSettings
2269+
{
2270+
return new MultiViewSettings([
2271+
'Input' => empty($json['input']) ? null : $this->populateResultMultiViewInput($json['input']),
2272+
]);
2273+
}
2274+
22582275
private function populateResultMxfSettings(array $json): MxfSettings
22592276
{
22602277
return new MxfSettings([
@@ -3223,6 +3240,19 @@ private function populateResult__listOfMsSmoothAdditionalManifest(array $json):
32233240
return $items;
32243241
}
32253242

3243+
/**
3244+
* @return MultiViewSettings[]
3245+
*/
3246+
private function populateResult__listOfMultiViewSettings(array $json): array
3247+
{
3248+
$items = [];
3249+
foreach ($json as $item) {
3250+
$items[] = $this->populateResultMultiViewSettings($item);
3251+
}
3252+
3253+
return $items;
3254+
}
3255+
32263256
/**
32273257
* @return Output[]
32283258
*/

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

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -568,6 +568,8 @@
568568
use AsyncAws\MediaConvert\ValueObject\MsSmoothAdditionalManifest;
569569
use AsyncAws\MediaConvert\ValueObject\MsSmoothEncryptionSettings;
570570
use AsyncAws\MediaConvert\ValueObject\MsSmoothGroupSettings;
571+
use AsyncAws\MediaConvert\ValueObject\MultiViewInput;
572+
use AsyncAws\MediaConvert\ValueObject\MultiViewSettings;
571573
use AsyncAws\MediaConvert\ValueObject\MxfSettings;
572574
use AsyncAws\MediaConvert\ValueObject\MxfXavcProfileSettings;
573575
use AsyncAws\MediaConvert\ValueObject\NexGuardFileMarkerSettings;
@@ -1902,6 +1904,7 @@ private function populateResultInput(array $json): Input
19021904
'ImageInserter' => empty($json['imageInserter']) ? null : $this->populateResultImageInserter($json['imageInserter']),
19031905
'InputClippings' => !isset($json['inputClippings']) ? null : $this->populateResult__listOfInputClipping($json['inputClippings']),
19041906
'InputScanType' => isset($json['inputScanType']) ? (!InputScanType::exists((string) $json['inputScanType']) ? InputScanType::UNKNOWN_TO_SDK : (string) $json['inputScanType']) : null,
1907+
'MultiViewSettings' => !isset($json['multiViewSettings']) ? null : $this->populateResult__listOfMultiViewSettings($json['multiViewSettings']),
19051908
'Position' => empty($json['position']) ? null : $this->populateResultRectangle($json['position']),
19061909
'ProgramNumber' => isset($json['programNumber']) ? (int) $json['programNumber'] : null,
19071910
'PsiControl' => isset($json['psiControl']) ? (!InputPsiControl::exists((string) $json['psiControl']) ? InputPsiControl::UNKNOWN_TO_SDK : (string) $json['psiControl']) : null,
@@ -2322,6 +2325,20 @@ private function populateResultMsSmoothGroupSettings(array $json): MsSmoothGroup
23222325
]);
23232326
}
23242327

2328+
private function populateResultMultiViewInput(array $json): MultiViewInput
2329+
{
2330+
return new MultiViewInput([
2331+
'FileInput' => isset($json['fileInput']) ? (string) $json['fileInput'] : null,
2332+
]);
2333+
}
2334+
2335+
private function populateResultMultiViewSettings(array $json): MultiViewSettings
2336+
{
2337+
return new MultiViewSettings([
2338+
'Input' => empty($json['input']) ? null : $this->populateResultMultiViewInput($json['input']),
2339+
]);
2340+
}
2341+
23252342
private function populateResultMxfSettings(array $json): MxfSettings
23262343
{
23272344
return new MxfSettings([
@@ -3303,6 +3320,19 @@ private function populateResult__listOfMsSmoothAdditionalManifest(array $json):
33033320
return $items;
33043321
}
33053322

3323+
/**
3324+
* @return MultiViewSettings[]
3325+
*/
3326+
private function populateResult__listOfMultiViewSettings(array $json): array
3327+
{
3328+
$items = [];
3329+
foreach ($json as $item) {
3330+
$items[] = $this->populateResultMultiViewSettings($item);
3331+
}
3332+
3333+
return $items;
3334+
}
3335+
33063336
/**
33073337
* @return Output[]
33083338
*/

src/Service/MediaConvert/src/ValueObject/CmafEncryptionSettings.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ final class CmafEncryptionSettings
2020
* encryption begins at the start of the second segment. The HLS manifest will omit #EXT-X-KEY tags during the clear
2121
* segment and insert the first #EXT-X-KEY immediately before the first encrypted fragment. This feature is supported
2222
* exclusively for CMAF HLS (fMP4) outputs and is compatible with all existing key provider integrations (SPEKE v1,
23-
* SPEKE v2, and Static Key encryption). Supported codecs: H.264 and H.265 video codecs, and AAC audio codec. Choose
24-
* Enabled to activate Clear Lead DRM optimization. Choose Disabled to use standard encryption where all segments are
25-
* encrypted from the beginning.
23+
* SPEKE v2, and Static Key encryption). Supported codecs: H.264, H.265, and AV1 video codecs, and AAC audio codec.
24+
* Choose Enabled to activate Clear Lead DRM optimization. Choose Disabled to use standard encryption where all segments
25+
* are encrypted from the beginning.
2626
*
2727
* @var HlsClearLead::*|null
2828
*/

src/Service/MediaConvert/src/ValueObject/Input.php

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,16 @@ final class Input
185185
*/
186186
private $inputScanType;
187187

188+
/**
189+
* Specify the enhancement layer input video file path for Multi View outputs. The base layer input is treated as the
190+
* left eye and this Multi View input is treated as the right eye. Only one Multi View input is currently supported.
191+
* MediaConvert encodes both views into a single MV-HEVC output codec. When you add MultiViewSettings to your job, you
192+
* can only produce Multi View outputs. Adding any other codec output to the same job is not supported.
193+
*
194+
* @var MultiViewSettings[]|null
195+
*/
196+
private $multiViewSettings;
197+
188198
/**
189199
* Use Selection placement to define the video area in your output frame. The area outside of the rectangle that you
190200
* specify here is black. If you specify a value here, it will override any value that you specify in the output setting
@@ -303,6 +313,7 @@ final class Input
303313
* ImageInserter?: ImageInserter|array|null,
304314
* InputClippings?: array<InputClipping|array>|null,
305315
* InputScanType?: InputScanType::*|null,
316+
* MultiViewSettings?: array<MultiViewSettings|array>|null,
306317
* Position?: Rectangle|array|null,
307318
* ProgramNumber?: int|null,
308319
* PsiControl?: InputPsiControl::*|null,
@@ -334,6 +345,7 @@ public function __construct(array $input)
334345
$this->imageInserter = isset($input['ImageInserter']) ? ImageInserter::create($input['ImageInserter']) : null;
335346
$this->inputClippings = isset($input['InputClippings']) ? array_map([InputClipping::class, 'create'], $input['InputClippings']) : null;
336347
$this->inputScanType = $input['InputScanType'] ?? null;
348+
$this->multiViewSettings = isset($input['MultiViewSettings']) ? array_map([MultiViewSettings::class, 'create'], $input['MultiViewSettings']) : null;
337349
$this->position = isset($input['Position']) ? Rectangle::create($input['Position']) : null;
338350
$this->programNumber = $input['ProgramNumber'] ?? null;
339351
$this->psiControl = $input['PsiControl'] ?? null;
@@ -365,6 +377,7 @@ public function __construct(array $input)
365377
* ImageInserter?: ImageInserter|array|null,
366378
* InputClippings?: array<InputClipping|array>|null,
367379
* InputScanType?: InputScanType::*|null,
380+
* MultiViewSettings?: array<MultiViewSettings|array>|null,
368381
* Position?: Rectangle|array|null,
369382
* ProgramNumber?: int|null,
370383
* PsiControl?: InputPsiControl::*|null,
@@ -497,6 +510,14 @@ public function getInputScanType(): ?string
497510
return $this->inputScanType;
498511
}
499512

513+
/**
514+
* @return MultiViewSettings[]
515+
*/
516+
public function getMultiViewSettings(): array
517+
{
518+
return $this->multiViewSettings ?? [];
519+
}
520+
500521
public function getPosition(): ?Rectangle
501522
{
502523
return $this->position;
@@ -669,6 +690,14 @@ public function requestBody(): array
669690
}
670691
$payload['inputScanType'] = $v;
671692
}
693+
if (null !== $v = $this->multiViewSettings) {
694+
$index = -1;
695+
$payload['multiViewSettings'] = [];
696+
foreach ($v as $listValue) {
697+
++$index;
698+
$payload['multiViewSettings'][$index] = $listValue->requestBody();
699+
}
700+
}
672701
if (null !== $v = $this->position) {
673702
$payload['position'] = $v->requestBody();
674703
}
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
<?php
2+
3+
namespace AsyncAws\MediaConvert\ValueObject;
4+
5+
/**
6+
* Input settings for MultiView Settings. You can include exactly one input as enhancement layer.
7+
*/
8+
final class MultiViewInput
9+
{
10+
/**
11+
* Specify the input file S3, HTTP, or HTTPS URL for your right eye view video.
12+
*
13+
* @var string|null
14+
*/
15+
private $fileInput;
16+
17+
/**
18+
* @param array{
19+
* FileInput?: string|null,
20+
* } $input
21+
*/
22+
public function __construct(array $input)
23+
{
24+
$this->fileInput = $input['FileInput'] ?? null;
25+
}
26+
27+
/**
28+
* @param array{
29+
* FileInput?: string|null,
30+
* }|MultiViewInput $input
31+
*/
32+
public static function create($input): self
33+
{
34+
return $input instanceof self ? $input : new self($input);
35+
}
36+
37+
public function getFileInput(): ?string
38+
{
39+
return $this->fileInput;
40+
}
41+
42+
/**
43+
* @internal
44+
*/
45+
public function requestBody(): array
46+
{
47+
$payload = [];
48+
if (null !== $v = $this->fileInput) {
49+
$payload['fileInput'] = $v;
50+
}
51+
52+
return $payload;
53+
}
54+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
<?php
2+
3+
namespace AsyncAws\MediaConvert\ValueObject;
4+
5+
/**
6+
* Specify the enhancement layer input video file path for Multi View outputs. The base layer input is treated as the
7+
* left eye and this Multi View input is treated as the right eye. Only one Multi View input is currently supported.
8+
* MediaConvert encodes both views into a single MV-HEVC output codec. When you add MultiViewSettings to your job, you
9+
* can only produce Multi View outputs. Adding any other codec output to the same job is not supported.
10+
*/
11+
final class MultiViewSettings
12+
{
13+
/**
14+
* Input settings for MultiView Settings. You can include exactly one input as enhancement layer.
15+
*
16+
* @var MultiViewInput|null
17+
*/
18+
private $input;
19+
20+
/**
21+
* @param array{
22+
* Input?: MultiViewInput|array|null,
23+
* } $input
24+
*/
25+
public function __construct(array $input)
26+
{
27+
$this->input = isset($input['Input']) ? MultiViewInput::create($input['Input']) : null;
28+
}
29+
30+
/**
31+
* @param array{
32+
* Input?: MultiViewInput|array|null,
33+
* }|MultiViewSettings $input
34+
*/
35+
public static function create($input): self
36+
{
37+
return $input instanceof self ? $input : new self($input);
38+
}
39+
40+
public function getInput(): ?MultiViewInput
41+
{
42+
return $this->input;
43+
}
44+
45+
/**
46+
* @internal
47+
*/
48+
public function requestBody(): array
49+
{
50+
$payload = [];
51+
if (null !== $v = $this->input) {
52+
$payload['input'] = $v->requestBody();
53+
}
54+
55+
return $payload;
56+
}
57+
}

0 commit comments

Comments
 (0)