智能点播VideoWorks

    媒资操作

    处理媒资

    使用如下代码可以处理一个媒资。

    private void processMedia(BvwClient client) {
        String sourceBucket = "<your bucket>";
        String sourcekey = "<your key>";
        String title = "<your media title>";
        String description = "<your media description>";
        String workflowName = "<your workflow name>";
        MediaProcessRequest processRequest = MediaProcessRequest.of(sourceBucket, sourcekey, title,
                                                                    description, workflowName);
        MediaProcessResponse response = client.processMedia(processRequest);
    }
    
    private void processMediaWithMediaId(BvwClient client) {
        String mediaId = "<your media id>";
        String workflowName = "<your workflow name>";
        MediaProcessRequest processRequest = MediaProcessRequest.of(mediaId, workflowName);
        MediaProcessResponse response = client.processMedia(processRequest);
    }

    处理媒资有两种情况:

    • 创建媒资:提供sourceBucket、sourceKey、title以及description,如果该路径对应的媒资在videoworks中不存在,则创建媒资,生成meidiaId,否则返回已有mediaId,不允许重复创建;
    • 处理媒资:使用已有的mediaId和workflow对媒资进行再次处理,返回处理对应的实例instanceId;

    删除媒资

    使用如下代码可以删除一个媒资。

    private void deleteMedia(BvwClient client, String mediaId) {
        client.deleteMedia(mediaId);
    }

    删除媒资操作将保留媒资源文件,删除处理媒资生成的分发文件,并刷新分发文件在CDN的缓存。

    批量删除媒资

    使用如下代码可以批量删除媒资。

    private void batchDeleteMedia(BvwClient client, List<String> mediaIds) {
        client.batchDeleteMedia(mediaIds);
    }

    更新媒资

    使用如下代码可以更新一个媒资。

    private void updateMedia(BvwClient client, String mediaId, String title, String description) {
        MediaUpdateRequest updateRequest = MediaUpdateRequest.of(mediaId, title, description);
        client.updateMedia(updateRequest);
    }

    查询媒资

    使用如下代码可以查询一个媒资。

    private void getMedia(BvwClient client, String mediaId) {
        MediaGetResponse response = client.getMedia(mediaId);
    }

    查询媒资实例列表

    使用如下代码可以查询一个媒资运行的实例列表信息。

    private void getMediaInstances(BvwClient client, String mediaId) {
        MediaInstanceListResponse response = client.getMediaInstanceList(mediaId);
    }

    查询媒资列表(分页机制)

    使用如下代码可以查询媒资列表分页信息。

    private void listMedia(BvwClient client) {
        int pageNo = 1;
        int pageSize = 10;
        String begin = "2019-06-30T16:00:00Z";
        String end = "2019-07-30T16:00:00Z";
        MediaStatus status = MediaStatus.NORMAL;
        RunnableStatus instanceStatus = RunnableStatus.SUCCESS;
        String mediaId = null;
        String titleFuzzy = "movie";
        String order = "desc";
        String orderBy = "createTime";
        MediaListRequest listRequest = MediaListRequest.of(pageNo, pageSize, begin, end,
                                                           status, instanceStatus,
                                                           mediaId, titleFuzzy, order, orderBy);
        ListByPageResponse<MediaListResponse> response = client.listMedia(listRequest);
    }
    1. 查询媒资列表分页时,只有pageNo和pageSize是必选参数,其他均为可选。
    2. title参数为模糊查询,mediaId参数为精确查询。
    3. order和orderBy的参数在传入多个是以英文逗号分隔,且一一对应,例如:"order=asc,desc&orderBy=createTime,status",表示按创建时间升序、按状态降序排列。

    封禁媒资

    使用如下代码可以封禁一个媒资。

    private void banMedia(BvwClient client, String mediaId) {
        client.banMedia(mediaId);
    }
    
    private void unbanMedia(BvwClient client, String mediaId) {
        client.unbanMedia(mediaId);
    }

    封禁媒资操作将设置处理媒资生成的分发文件在BOS的访问权限ACL为私有private,并刷新分发文件在CDN的缓存。

    解禁媒资

    使用如下代码可以解禁一个媒资。

    private void unbanMedia(BvwClient client, String mediaId) {
        client.unbanMedia(mediaId);
    }

    解禁媒资操作将设置处理媒资生成的分发文件在BOS的访问权限ACL为公共读public-read。

    上一篇
    通知操作
    下一篇
    异常处理