953
阿里云
视频基本属性__媒体库管理_开发人员指南_视频点播-阿里云
媒体库管理-媒体基本信息-示例代码-PHP
简介
示例如何查询和更新媒体基本信息。
SDK的安装和使用,参考媒体库SDK-PHP
查询媒体基本信息
查询媒体提供了2种方式:媒体ID或OSS文件地址。
使用媒体ID查询媒体
详细参数参考API使用手册->媒体接口->查询媒体-使用媒体ID。
include_once 'aliyun-php-sdk-core/Config.php';
use MtsRequestV20140618 as Mts;
$accessKeyID = 'test'; // 替换成真实的id
$accessKeySecret = 'test'; // 替换成真实的secret
$profile = DefaultProfile::getProfile('cn-hangzhou',
$accessKeyID,
$accessKeySecret);
$client = new DefaultAcsClient($profile);
function queryMediaById($client, $mediaID)
{
$request = new MtsQueryMediaListRequest();
$request->setAcceptFormat('JSON');
$request->setMediaIds($mediaID);
$response = $client->getAcsResponse($request);
return $response;
}
function printMedia($media)
{
if (array_key_exists('Title', $media)) {
print_r('Title: '.$media->{'Title'}."n");
}
if (array_key_exists('Description', $media)) {
print_r('Description: '.$media->{'Description'}."n");
}
if (array_key_exists('Tags', $media)) {
print_r('Tags: '.$media->{'Tags'}->{'Tag'}[0]."n");
}
if (array_key_exists('CoverURL', $media)) {
print_r('CoverURL: '.$media->{'CoverURL'}."n");
}
print_r('Format: '.$media->{'Format'}."n");
print_r('Resolution: '.$media->{'Width'}.'x'.$media->{'Height'}."n");
print_r('FileSize: '.$media->{'Size'}."n");
print_r('Bitrate: '.$media->{'Bitrate'}."n");
print_r('FPS: '.$media->{'Fps'}."n");
}
$mediaID = 'test'; // 替换成真实的mediaID
$medias = queryMediaById($client, $mediaID)->{'MediaList'}->{'Media'};
for ($i=0; $i < count($medias); $i++) {
printMedia($medias[$i]);
}
使用OSS文件地址查询媒体
详细参数参考API使用手册->媒体接口->查询媒体-使用OSS文件地址。
function queryMediaByURL($client, $mediaURL)
{
$request = new MtsQueryMediaListByURLRequest();
$request->setAcceptFormat('JSON');
$request->setFileURLs($mediaURL);
$response = $client->getAcsResponse($request);
return $response;
}
$ossEndpoint = 'https://test.oss-cn-hangzhou.aliyuncs.com/';
// OSS的Object不需要"/"开始,替换成真实的ossObject
$ossObject = 'test/测试.mp4';
$medias = queryMediaByURL($client,$ossEndpoint.urlencode($ossObject))->{'MediaList'}->{'Media'};
for ($i=0; $i < count($medias); $i++) {
printMedia($medias[$i]);
}
更新属性
更新提供了2种更新方式:全量属性更新,单个属性更新。
全量更新属性
详细参数参考API使用手册->媒体接口->更新媒体-基本信息。
更新时,必须指定所有字段,不设置的字段会被清空。
function updateMediaAllField($client, $mediaID, $title, $description, $tags, $coverURL)
{
$request = new MtsUpdateMediaRequest();
$request->setAcceptFormat('JSON');
$request->setMediaId($mediaID);
$request->setTitle($title);
$request->setCateId(2663987);
$request->setDescription($description);
$request->setTags($tags);
$request->setCoverURL($coverURL);
$response = $client->getAcsResponse($request);
return $response;
}
$mediaID = 'test'; // 替换成真实的mediaID
$media = updateMediaAllField($client, $mediaID,
'title', 'description', 'tags', 'coverURL')->{'Media'};
单个更新属性
不同的字段可以单独更新,使用的是不同API,可以不修改其他字段的情况下,方便的更新单个字段。
这里通过“发布状态”举例,详细参数参考API使用手册->媒体接口->更新媒体-发布状态。
function updateMediaPublishState($client, $mediaID, $state)
{
$request = new MtsUpdateMediaPublishStateRequest();
$request->setAcceptFormat('JSON');
$request->setMediaId($mediaID);
$request->setPublish($state);
$response = $client->getAcsResponse($request);
return $response;
}
$mediaID = 'test'; // 替换成真实的mediaID
// 更新"发布状态"的API没有返回值,通过捕获异常来判断是否执行成功
try {
updateMediaPublishState($client, $mediaID, "true");
} catch (ClientException $e) {
print_r('ClientException:'."n");
print_r($e);
} catch (ServerException $e) {
print_r('ServerException:'."n");
print_r($e);
}
最后更新:2016-11-15 17:47:07
上一篇:
主题通知方式接收消息__接收消息通知_开发人员指南_视频点播-阿里云
下一篇:
媒体详细信息__媒体库管理_开发人员指南_视频点播-阿里云
解绑TAG__tag相关_API 列表_OpenAPI 2.0_移动推送-阿里云
使用概览__使用手册_画像分析-阿里云
Topic相关问题__产品常见问题_阿里云物联网套件-阿里云
查询弹性公网IP列表__弹性公网IP相关接口_API参考_专有网络 VPC-阿里云
使用入门__Java SDK_STS SDK使用手册_访问控制-阿里云
电商图像分析服务简介__电商图像分析服务_人工智能图像类-阿里云
事务处理__最佳实践_云数据库 Redis 版-阿里云
云服务器 ECS > 用户指南 > 磁盘 > 挂载数据盘
版本列表__Java_SDK_日志服务-阿里云
性能测试基本概念__初级课程_性能测试视频教程_性能测试-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云