文档

截图

更新时间:

视频截图是指对视频截取指定时间、指定尺寸的图片,用于生产视频封面、雪碧图、播放器进度条缩略图等场景,截图作业支持指定时间点、时间间隔、截图数量、类型以及是否拼图等。本文提供PHP SDK使用截图相关功能的API调用示例。

完整代码

<?php
require_once './aliyun-php-sdk-core/Config.php'; 
use Mts\Request\V20140618 as Mts;

function initMtsClient($accessKeyId, $accessKeySecret) {
    $regionId = 'cn-shanghai';  // 服务接入区域
    $profile = DefaultProfile::getProfile($regionId, $accessKeyId, $accessKeySecret);
    return new DefaultAcsClient($profile);
}

try {
    $client = initMtsClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'));
    $response = submitSnapshotJob($client);
    print_r($response);
} catch (Exception $e) {
    print $e->getMessage()."\n";
}

function submitSnapshotJob($client) {
    $pipelineId = 'd7cedd984be7dd63395c****';   #管道ID  可在控制台查看
    $templateId = "S00000001-100020"; #转码模板ID,可在控制台查看
    $ossLocation = 'oss-cn-shanghai';
    $bucket = '<bucket name>';
    $ossInputObject = 'input.mp4';
    $ossOutputObject = 'output_{Count}.jpg';
    $request = new Mts\SubmitSnapshotJobRequest();
    # input参数
    $input = array('Location' => $ossLocation,
               'Bucket' => $bucket,
               'Object' => urlencode($ossInputObject));

    # 截图输出位置
    $output = array('Location' => $ossLocation,
                'Bucket' => $bucket,
                'Object' => urlencode($ossOutputObject));
    # 截图配置
    $snapshotConfig = array('OutputFile' => $output);
    $snapshotConfig['Time'] = 2;
    $snapshotConfig['Interval'] = 2;
    $snapshotConfig['Num'] = 3;
    $snapshotConfig['Height'] = 360;
    # 请求参数
    $request->setInput(json_encode($input));
    $request->setSnapshotConfig(json_encode($snapshotConfig));
    $request->setPipelineId($pipelineId);
    return $client->getAcsResponse($request);
}

相关文档

  • 本页导读 (1)
文档反馈