如何从 Azure 媒体服务上的视频中获取缩略图?
How to get a Thumbnail from a Video on Azure Media Services?
我开始使用 Azure 和 Azure PHP sdk,因为我是 PHP 开发人员。使用 Azure PHP sdk,我可以存储视频并获取视频 url。现在我想知道如何使用 Azure 创建视频缩略图。但是我不知道怎么办。
要创建缩略图,您应该照常创建作业,但通过 setConfiguration
设置缩略图 xml。
这是未经测试的代码,但应该可以工作。
// sets the thumbnail configuration
$thumbnailConfig = <<<EOT
<?xml version="1.0" encoding="utf-8"?>
<Thumbnail Size="50%,*" Type="Jpeg" Filename="{OriginalFilename}_{Size}_{ThumbnailTime}_{ThumbnailIndex}_{Date}_{Time}.{DefaultExtension}">
<Time Value="10%"/>
</Thumbnail>
EOT;
$xmlTask = '<taskBody><inputAsset>JobInputAsset(0)</inputAsset>'
. '<outputAsset>JobOutputAsset(0)</outputAsset></taskBody>';
$mediaProcessor = $restProxy->getLatestMediaProcessor('Azure Media Encoder');
$task = new Task($xmlTask, $mediaProcessor->getId(), TaskOptions::NONE);
$task->setConfiguration($thumbnailConfig);
$restProxy->createJob(new Job(), array($inputAsset), array($task));
您应该先连接到媒体服务,有关详细信息,请转至 here
连接片段:
$restProxy = ServicesBuilder->getInstance()->createMediaServicesService(
new MediaServicesSettings([YourAccountName],
[YourPrimaryOrSecondaryAccessKey]));
我开始使用 Azure 和 Azure PHP sdk,因为我是 PHP 开发人员。使用 Azure PHP sdk,我可以存储视频并获取视频 url。现在我想知道如何使用 Azure 创建视频缩略图。但是我不知道怎么办。
要创建缩略图,您应该照常创建作业,但通过 setConfiguration
设置缩略图 xml。
这是未经测试的代码,但应该可以工作。
// sets the thumbnail configuration
$thumbnailConfig = <<<EOT
<?xml version="1.0" encoding="utf-8"?>
<Thumbnail Size="50%,*" Type="Jpeg" Filename="{OriginalFilename}_{Size}_{ThumbnailTime}_{ThumbnailIndex}_{Date}_{Time}.{DefaultExtension}">
<Time Value="10%"/>
</Thumbnail>
EOT;
$xmlTask = '<taskBody><inputAsset>JobInputAsset(0)</inputAsset>'
. '<outputAsset>JobOutputAsset(0)</outputAsset></taskBody>';
$mediaProcessor = $restProxy->getLatestMediaProcessor('Azure Media Encoder');
$task = new Task($xmlTask, $mediaProcessor->getId(), TaskOptions::NONE);
$task->setConfiguration($thumbnailConfig);
$restProxy->createJob(new Job(), array($inputAsset), array($task));
您应该先连接到媒体服务,有关详细信息,请转至 here
连接片段:
$restProxy = ServicesBuilder->getInstance()->createMediaServicesService(
new MediaServicesSettings([YourAccountName],
[YourPrimaryOrSecondaryAccessKey]));