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

前提条件

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

提交截图作业

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

<?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\SubmitSnapshotJobRequest;

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");
        $submitSnapshotJobRequest = new SubmitSnapshotJobRequest([
            //作业输入
            "input" => "{\"Bucket\":\"example-bucket\",\"Object\":\"video_01.mp4\",\"Location\":\"oss-cn-shanghai\"}",
           //截图配置
            "snapshotConfig" => "{\"OutputFile\":{\"Bucket\":\"example-001\",\"Location\":\"example-location\",\"Object\":\"{Count}.jpg\"},\"Time\":\"5\",\"Num\":\"10\",\"Interval\":\"20\"}"
        ]);
        $client->submitSnapshotJob($submitSnapshotJobRequest);
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));

查询截图作业

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

<?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\QuerySnapshotJobListRequest;

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");
        $querySnapshotJobListRequest = new QuerySnapshotJobListRequest([
            //截图作业ID列表,一次最多查询10个,半角逗号(,)分隔。
            "snapshotJobIds" => "cc894d95c18243ed919c31b16526****",
            //需要查询的截图状态。
            "state" => "Snapshoting",
            //最早任务创建时间。日期格式按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mm:ssZ 。
            "startOfJobCreatedTimeRange" => "2022-01-10T12:00:00Z",
            //最晚任务创建时间。日期格式按照ISO8601标准表示,并需要使用UTC时间。格式为:YYYY-MM-DDThh:mm:ssZ 。
            "endOfJobCreatedTimeRange" => "2022-01-12T12:00:00Z",
            //管道ID。
            "pipelineId" => "ebb51ee30f0b49aba959823fa991****",
            //下一页标识,32位UUID。查询结果大于一页时返回,每次查询值都会更新。
            "nextPageToken" => "cc6cbef8e8d5481ca536f5d2a466****",
            //每页最大返回数。
            "maximumPageSize" => 6
        ]);
        $client->querySnapshotJobList($querySnapshotJobListRequest);
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));