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-阿裏雲