本文提供了媒体处理PHP SDK转码模块相关功能的API调用示例。

前提条件

使用前请先安装及完成PHP SDK相关配置,详细信息,请参见前言。更多SDK及API调用示例,请参见OpenAPI

提交转码作业

调用SubmitJobs提交转码作业,接口参数和返回字段详细信息请参见提交转码作业,调用示例如下:

<?php

// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;

use AlibabaCloud\SDK\Mts\V20140618\Mts;

use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Mts\V20140618\Models\SubmitJobsRequest;

class Sample {

    /**
     * 使用AK&SK初始化账号Client
     * @param string $accessKeyId
     * @param string $accessKeySecret
     * @return Mts Client
     */
    public static function createClient($accessKeyId, $accessKeySecret){
        $config = new Config([
            // 您的AccessKey ID
            "accessKeyId" => $accessKeyId,
            // 您的AccessKey Secret
            "accessKeySecret" => $accessKeySecret
        ]);
        // 访问的域名
        $config->endpoint = "mts.cn-shanghai.aliyuncs.com";
        return new Mts($config);
    }

    /**
     * @param string[] $args
     * @return void
     */
    public static function main($args){
        $client = self::createClient("accessKeyId", "accessKeySecret");
        $submitJobsRequest = new SubmitJobsRequest([
            //作业输入
            "input" => "{\"Bucket\":\"example-bucket\",\"Object\":\"video_01.mp4\",\"Location\":\"oss-cn-shanghai\"}",
            //作业输出,TemplateId可通过MPS控制台 > 全局设置 > 转码模板获取
            "outputs" => "[{\"OutputObject\":\"video_01.mp4\",\"Container\":\"{\"Format\":\"mp4\"}\",\"TemplateId\":\"1748098430911242a59bb196ded8****\"}]",
            //输出Bucket
            "outputBucket" => "example-bucket",
            //输出Bucket所在地域。
            "outputLocation" => "oss-cn-shanghai",
            //管道ID,可通过MPS控制台 > 全局设置 > 管道获取
            "pipelineId" => "9b7b547a6a6d47fdb1172d5f6eb6****"
        ]);
        $client->submitJobs($submitJobsRequest);
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));
            

查询转码作业

调用QueryJobList查询转码作业,接口参数和返回字段详细信息请参见查询转码作业,调用示例如下:

<?php

// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;

use AlibabaCloud\SDK\Mts\V20140618\Mts;

use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Mts\V20140618\Models\QueryJobListRequest;

class Sample {

    /**
     * 使用AK&SK初始化账号Client
     * @param string $accessKeyId
     * @param string $accessKeySecret
     * @return Mts Client
     */
    public static function createClient($accessKeyId, $accessKeySecret){
        $config = new Config([
            // 您的AccessKey ID
            "accessKeyId" => $accessKeyId,
            // 您的AccessKey Secret
            "accessKeySecret" => $accessKeySecret
        ]);
        // 访问的域名
        $config->endpoint = "mts.cn-shanghai.aliyuncs.com";
        return new Mts($config);
    }

    /**
     * @param string[] $args
     * @return void
     */
    public static function main($args){
        $client = self::createClient("accessKeyId", "accessKeySecret");
        $queryJobListRequest = new QueryJobListRequest([
            //需要查询的转码作业ID
            "jobIds" => "ba7344b8472b45c98b97b9a86d82****"
        ]);
        $client->queryJobList($queryJobListRequest);
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));

遍历转码作业

调用ListJob查询转码作业,接口参数和返回字段详细信息请参见遍历转码作业,调用示例如下:

<?php

// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;

use AlibabaCloud\SDK\Mts\V20140618\Mts;

use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Mts\V20140618\Models\ListJobRequest;

class Sample {

    /**
     * 使用AK&SK初始化账号Client
     * @param string $accessKeyId
     * @param string $accessKeySecret
     * @return Mts Client
     */
    public static function createClient($accessKeyId, $accessKeySecret){
        $config = new Config([
            // 您的AccessKey ID
            "accessKeyId" => $accessKeyId,
            // 您的AccessKey Secret
            "accessKeySecret" => $accessKeySecret
        ]);
        // 访问的域名
        $config->endpoint = "mts.cn-shanghai.aliyuncs.com";
        return new Mts($config);
    }

    /**
     * @param string[] $args
     * @return void
     */
    public static function main($args){
        $client = self::createClient("accessKeyId", "accessKeySecret");
        $listJobRequest = new ListJobRequest([
            //创建转码作业时间范围中的下限值。日期格式按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mm:ssZ。
            "startOfJobCreatedTimeRange" => "2022-01-10T12:00:00Z",
            //创建转码作业时间的上限。日期格式按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mm:ssZ。
            "endOfJobCreatedTimeRange" => "2022-01-11T12:00:00Z",
            //管道ID
            "pipelineId" => "f03e65ca4ecd400f9df2807b8720****",
            //转码任务状态
            "state" => "All",
            //单页最大可返回媒体工作流执行实例
            "maximumPageSize" => 10
        ]);
        $client->listJob($listJobRequest);
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));

取消转码作业

调用CancelJob查询转码作业,接口参数和返回字段详细信息请参见取消转码作业,调用示例如下:

<?php

// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;

use AlibabaCloud\SDK\Mts\V20140618\Mts;

use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Mts\V20140618\Models\CancelJobRequest;

class Sample {

    /**
     * 使用AK&SK初始化账号Client
     * @param string $accessKeyId
     * @param string $accessKeySecret
     * @return Mts Client
     */
    public static function createClient($accessKeyId, $accessKeySecret){
        $config = new Config([
            // 您的AccessKey ID
            "accessKeyId" => $accessKeyId,
            // 您的AccessKey Secret
            "accessKeySecret" => $accessKeySecret
        ]);
        // 访问的域名
        $config->endpoint = "mts.cn-shanghai.aliyuncs.com";
        return new Mts($config);
    }

    /**
     * @param string[] $args
     * @return void
     */
    public static function main($args){
        $client = self::createClient("accessKeyId", "accessKeySecret");
        $cancelJobRequest = new CancelJobRequest([
            //需要取消的转码作业ID
            "jobId" => "ba7344b8472b45c98b97b9a86d82****"
        ]);
        $client->cancelJob($cancelJobRequest);
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));