繁体   English   中英

需要帮助在 php 中为 AWS MediaConvert 创建作业设置

[英]Need help creating Job Settings for AWS MediaConvert in php

我一直在尝试使用最新的适用于 PHP 的 AWS 开发工具包 (7.4.2) 创建 MediaConverter 作业,但我真的无法正确创建作业设置。 我想知道是否有人可以查看此 php 代码并告诉我我是否完全走错了路。 我得到的回应是:

在“ https://asdf.mediaconvert.us-east-1.amazonaws.com/2017-08-29/jobs ”上执行“CreateJob”时出错; AWS HTTP 错误:客户端错误: POST https://asdf.mediaconvert.us-east-1.amazonaws.com/2017-08-29/jobs导致400 Bad Request响应:{ "errorType": "BadRequestException", "httpStatus" : 400, "requestId" : "388473f1-92af-4253-940c-00307b7c2a79", (截断...) BadRequestException (client): 请求无法解释。 - { "errorType": "BadRequestException", "httpStatus" : 400, "requestId" : "388473f1-92af-4253-940c-00307b7c2a79", "message" : "请求无法被解释。", "settingsValidationErrorsJsonBlob" "" }

我实际上直接从 MediaConvert 复制了设置的 JSON,所以我认为我的问题在于尝试将其转换为 PHP 中的对象,以便将其发送到 AWS。 下面的设置通过 AWS 开发工具包到达服务器,我认为这是一个好的开始。 但我无法弄清楚出了什么问题。

    "OutputGroups" => [
        [
            "CustomName" => "Thumbnails",
            "Name" => "File Group",
            "Outputs" => [
                "ContainerSettings" => [
                    "Container" => "RAW"
                ],
                "VideoDescription" => [
                    "Width" => 1280,
                    "ScalingBehavior" => "DEFAULT",
                    "Height" => 720,
                    "TimecodeInsertion" => "DISABLED",
                    "AntiAlias" => "ENABLED",
                    "Sharpness" => 50,
                    "CodecSettings" => [
                        "Codec" => "FRAME_CAPTURE",
                        "FrameCaptureSettings" => [
                            "FramerateNumerator" => 30,
                            "FramerateDenominator" => 540,
                            "MaxCaptures" => 18,
                            "Quality" => 70
                        ]
                    ],
                    "DropFrameTimecode" => "ENABLED",
                    "ColorMetadata" => "INSERT"
                ],
                ["Extension" => "jpg"],
                ["NameModifier" => "-thumb"]
            ],
            "OutputGroupSettings" => [
                "Type" => "FILE_GROUP_SETTINGS",
                "FileGroupSettings" => [
                    "Destination" => "s3://me/my-folder/"
                ]
            ]
        ],
        [
            "CustomName" => "720p",
            "Name" => "File Group",
            "Outputs" => [
                "ContainerSettings" => [
                    "Container" => "MP4",
                    "Mp4Settings" => [
                        "CslgAtom" => "INCLUDE",
                        "CttsVersion" => 0,
                        "FreeSpaceBox" => "EXCLUDE",
                        "MoovPlacement" => "PROGRESSIVE_DOWNLOAD"
                    ]
                ],
                "VideoDescription" => [
                    "Width" => 1280,
                    "ScalingBehavior" => "DEFAULT",
                    "Height" => 720,
                    "VideoPreprocessors" => [
                        "ImageInserter" => [
                            "InsertableImages" => [
                                "Width" => 200,
                                "Height" => 36,
                                "imageX" => 50,
                                "imageY" => 634,
                                "FadeIn" => 2000,
                                "Layer" => 2,
                                "ImageInserterInput" => "s3://me-again/My-Watermark.tga",
                                "StartTime" => "00:00:05;01",
                                "Opacity" => 50
                            ]
                        ]
                    ],
                    "TimecodeInsertion" => "DISABLED",
                    "AntiAlias" => "ENABLED",
                    "Sharpness" => 50,
                    "CodecSettings" => [
                        "Codec" => "H_264",
                        "H264Settings" => [
                            "InterlaceMode" => "PROGRESSIVE",
                            "NumberReferenceFrames" => 3,
                            "Syntax" => "DEFAULT",
                            "Softness" => 0,
                            "GopClosedCadence" => 1,
                            "GopSize" => 90,
                            "Slices" => 1,
                            "GopBReference" => "DISABLED",
                            "SlowPal" => "DISABLED",
                            "SpatialAdaptiveQuantization" => "ENABLED",
                            "TemporalAdaptiveQuantization" => "ENABLED",
                            "FlickerAdaptiveQuantization" => "DISABLED",
                            "EntropyEncoding" => "CABAC",
                            "Bitrate" => 1800000,
                            "FramerateControl" => "INITIALIZE_FROM_SOURCE",
                            "RateControlMode" => "CBR",
                            "CodecProfile" => "MAIN",
                            "Telecine" => "NONE",
                            "MinIInterval" => 0,
                            "AdaptiveQuantization" => "HIGH",
                            "CodecLevel" => "AUTO",
                            "FieldEncoding" => "PAFF",
                            "SceneChangeDetect" => "ENABLED",
                            "QualityTuningLevel" => "SINGLE_PASS",
                            "FramerateConversionAlgorithm" => "DUPLICATE_DROP",
                            "UnregisteredSeiTimecode" => "DISABLED",
                            "GopSizeUnits" => "FRAMES",
                            "ParControl" => "INITIALIZE_FROM_SOURCE",
                            "NumberBFramesBetweenReferenceFrames" => 2,
                            "RepeatPps" => "DISABLED",
                            "DynamicSubGop" => "STATIC"
                        ]
                    ],
                    "AfdSignaling" => "NONE",
                    "DropFrameTimecode" => "ENABLED",
                    "RespondToAfd" => "NONE",
                    "ColorMetadata" => "INSERT"
                ],
                "AudioDescriptions" => [
                    "AudioTypeControl" => "FOLLOW_INPUT",
                    "AudioSourceName" => "Audio Selector 1",
                    "CodecSettings" => [
                        "Codec" => "AAC",
                        "AacSettings" => [
                            "AudioDescriptionBroadcasterMix" => "NORMAL",
                            "Bitrate" => 96000,
                            "RateControlMode" => "CBR",
                            "CodecProfile" => "LC",
                            "CodingMode" => "CODING_MODE_2_0",
                            "RawFormat" => "NONE",
                            "SampleRate" => 48000,
                            "Specification" => "MPEG4"
                        ]
                    ],
                    "LanguageCodeControl" => "FOLLOW_INPUT"
                ],
                ["Extension" => "mp4"],
                ["NameModifier" => "-720p"]
            ],
            "OutputGroupSettings" => [
                "Type" => "FILE_GROUP_SETTINGS",
                "FileGroupSettings" => [
                    "Destination" => "s3://me/my-folder"
                ]
            ]
        ]
        ],
        "AdAvailOffset" => 0,
    "Inputs" => [
            [
                "AudioSelectors" => [
                    "Audio Selector 1" => [
                        "Offset" => 0,
                        "DefaultSelection" => "DEFAULT",
                        "ProgramSelection" => 1
                    ]
                ],
                "FilterEnable" => "AUTO",
                "PsiControl" => "USE_PSI",
                "FilterStrength" => 0,
                "DeblockFilter" => "DISABLED",
                "DenoiseFilter" => "DISABLED",
                "TimecodeSource" => "EMBEDDED",
                "FileInput" => "s3://me-again/my-folder/my-video.mp4"
            ]
    ],
    "AccelerationSettings" => [
            "Mode" => "DISABLED"
        ],
    "StatusUpdateInterval" => "SECONDS_60",
    "Priority" => 0
    ];```


我解决了这个问题。

我使用了从 MediaConvert 获得的 JSON,然后通过五个步骤创建了我的 PHP:

  1. 更换所有{array(
  2. 全部替换:=>
  3. 将所有[替换为array(
  4. 将所有}替换为)
  5. 将所有]替换为)

这样做之后,它第一次完美运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM