You need to enable JavaScript to run this app.
导航
画质测评
最近更新时间:2024.09.14 11:16:51首次发布时间:2024.09.14 11:16:51

阅读本文,您可以获取 Java SDK 画质测评的接口调用示例,实现快速开发。

说明

本文的调用示例包含接口的部分参数。由于参数间可能存在互斥关系,在调用时,请您参考注释,进行调整。

调用说明

  • 本文提供的接口调用示例均通过 AK 和 SK 初始化实例。
  • 接口的参数说明和错误码等信息可通过接口文档或打开 API Explorer文档说明页签查看。

前提条件

调用接口前,请先完成 Java SDK 的安装及初始化操作。

调用示例

本节为您介绍画质测评相关接口的功能和调用示例。

创建画质评测任务

您可以调用 CreateLiveVideoQualityAnalysisTask 接口创建画质评测任务。详细的参数说明可参见 CreateLiveVideoQualityAnalysisTask 接口文档。

接口调用示例如下所示。

package com.volcengine.live.demo;

import com.volcengine.model.live.v20230101.*;
import com.volcengine.service.live.v20230101.LiveService;

public class CreateLiveVideoQualityAnalysisTaskDemo {

  public static void main(String[] args) {
    // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
    // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
    LiveService service = LiveService.getInstance();

    service.setAccessKey(System.getenv("VOLC_ACCESSKEY"));

    service.setSecretKey(System.getenv("VOLC_SECRETKEY"));

    CreateLiveVideoQualityAnalysisTaskBody body =
      new CreateLiveVideoQualityAnalysisTaskBody();

    // 任务名称,默认为空,进行中任务名称不可重复,长度需小于 16 个字符。
    body.setName("test");
    // 待测评流的播放地址,支持 FLV、HLS、RTMP 拉流地址。
    body.setSrcURL("https://pull.example.com/live/example.flv");
    // 画质测评的打点间隔,单位为秒,默认为 10,取值范围为 [3,10]。
    body.setInterval(5);
    // 测评任务持续时长,单位为秒,默认为 180,取值范围为 [60,300]。
    body.setDuration(300);

    try {
      CreateLiveVideoQualityAnalysisTaskRes resp =
        service.createLiveVideoQualityAnalysisTask(body);
      System.out.println(resp);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

查询画质评测任务列表

您可以调用 ListLiveVideoQualityAnalysisTasks 接口查询画质评测任务列表。详细的参数说明可参见 ListLiveVideoQualityAnalysisTasks 接口文档。

接口调用示例如下所示。

package com.volcengine.live.demo;

import com.volcengine.model.live.v20230101.*;
import com.volcengine.service.live.v20230101.LiveService;
import java.util.ArrayList;
import java.util.List;

public class ListLiveVideoQualityAnalysisTasksDemo {

  public static void main(String[] args) {
    // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
    // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
    LiveService service = LiveService.getInstance();

    service.setAccessKey(System.getenv("VOLC_ACCESSKEY"));

    service.setSecretKey(System.getenv("VOLC_SECRETKEY"));

    ListLiveVideoQualityAnalysisTasksBody body =
      new ListLiveVideoQualityAnalysisTasksBody();

    // 查询的任务名称列表,默认为空,表示查询结果不对任务名称进行筛选。
    // note:
    // Name 和 ID 不可同时传入。
    List<String> Names = new ArrayList<>();

    Names.add("test");
    body.setNames(Names);
    // 查询数据的页码,取值范围为正整数。
    body.setPageNum(1);
    // 每页显示的数据条数,最大是为 1000。
    body.setPageSize(10);

    // 查询的任务 ID 列表,默认为空,表示查询结果不对任务 ID 进行筛选。
    // note:
    // Name 和 ID 不可同时传入。
    List<String> IDs = new ArrayList<>();

    IDs.add("23123***55t523");
    body.setIDs(IDs);

    try {
      ListLiveVideoQualityAnalysisTasksRes resp =
        service.listLiveVideoQualityAnalysisTasks(body);
      System.out.println(resp);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

查询单个画质测评任务详情

您可以调用 GetLiveVideoQualityAnalysisTaskDetail 接口查询单个画质测评任务详情。详细的参数说明可参见 GetLiveVideoQualityAnalysisTaskDetail 接口文档。

接口调用示例如下所示。

package com.volcengine.live.demo;

import com.volcengine.model.live.v20230101.*;
import com.volcengine.service.live.v20230101.LiveService;

public class GetLiveVideoQualityAnalysisTaskDetailDemo {

  public static void main(String[] args) {
    // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
    // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
    LiveService service = LiveService.getInstance();

    service.setAccessKey(System.getenv("VOLC_ACCESSKEY"));

    service.setSecretKey(System.getenv("VOLC_SECRETKEY"));

    GetLiveVideoQualityAnalysisTaskDetailBody body =
      new GetLiveVideoQualityAnalysisTaskDetailBody();

    // 查询的任务名称。
    // note:
    // Name 和 ID 二选一必填。
    body.setName("test");
    // 查询的任务 ID。
    // note:
    // Name 和 ID 二选一必填。
    body.setID("cbxmc");

    try {
      GetLiveVideoQualityAnalysisTaskDetailRes resp =
        service.getLiveVideoQualityAnalysisTaskDetail(body);
      System.out.println(resp);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

删除画质测评任务

您可以调用 DeleteLiveVideoQualityAnalysisTask 接口删除画质测评任务。详细的参数说明可参见 DeleteLiveVideoQualityAnalysisTask 接口文档。

接口调用示例如下所示。

package com.volcengine.live.demo;

import com.volcengine.model.live.v20230101.*;
import com.volcengine.service.live.v20230101.LiveService;

public class DeleteLiveVideoQualityAnalysisTaskDemo {

  public static void main(String[] args) {
    // 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
    // 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
    LiveService service = LiveService.getInstance();

    service.setAccessKey(System.getenv("VOLC_ACCESSKEY"));

    service.setSecretKey(System.getenv("VOLC_SECRETKEY"));

    DeleteLiveVideoQualityAnalysisTaskBody body =
      new DeleteLiveVideoQualityAnalysisTaskBody();

    // 待删除任务的任务名称。
    // note:
    // Name 和 ID 二选一必填。
    body.setName("test");
    // 待删除任务的任务 ID。
    // note:
    // Name 和 ID 二选一必填。
    body.setID("cbxmc");

    try {
      DeleteLiveVideoQualityAnalysisTaskRes resp =
        service.deleteLiveVideoQualityAnalysisTask(body);
      System.out.println(resp);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}