Java使用阿里云视频点播

Posted 暴躁的程序猿啊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java使用阿里云视频点播相关的知识,希望对你有一定的参考价值。

阿里云视频点播服务

视频点播 是集音视频采集、编辑、上传、自动化转码处理、媒体资源管理、分发加速于一体的一站式音视频点播方案。

登录阿里云 搜索 视频点播 我们的账号需要实名认证 且功能是需要付费了
点击开通 我们选择按量付费
来到控制台


可以点击上传视频

点击存储管理

这里没开启是要点击开启的不然无法使用 使用的是oos存储的视频

我们这里进行上传视频测试

我们使用java的SDK操作视频点播

首先引入所需的依赖

<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>aliyun-java-sdk-core</artifactId>
  <version>4.5.1</version>
</dependency>
<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>aliyun-java-sdk-vod</artifactId>
  <version>2.15.11</version>
</dependency>
<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>fastjson</artifactId>
  <version>1.2.62</version>
</dependency>
<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>aliyun-java-sdk-kms</artifactId>
  <version>2.10.1</version>
</dependency>
  <repositories>
      <repository>
        <id>sonatype-nexus-staging</id>
        <name>Sonatype Nexus Staging</name>
        <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
      </repository>
    </repositories>

创建一个初始化客户端

注意这里的 密钥是 阿里云个人中心开启的

/**
 * @create: 2021/10/31
 * @author: Tony Stark
 */
public class InitObject {
    public static DefaultAcsClient initVodClient(String accessKeyId, String accessKeySecret) throws ClientException {
        String regionId = "cn-shanghai";  // 点播服务接入区域
        DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
        DefaultAcsClient client = new DefaultAcsClient(profile);
        return client;
    }
}

视频的播放 获取视频url

 /**
 * 根据视频id获取视频地址
 * @create: 2021/10/31
 * @author: Tony Stark
 */
public class TestVod {
    public static void main(String[] args) throws ClientException {
        //根据视频id获取视频播放地址
        //创建初始化对象  设置密钥
        DefaultAcsClient client = InitObject.initVodClient("你的accessKeyId", "你的accessKeySecret");
        //创建获取视频地址热request和response
        GetPlayInfoRequest request = new GetPlayInfoRequest();
        GetPlayInfoResponse response = new GetPlayInfoResponse();
        //向request中设置视频的id值
         request.setVideoId("e921235475d0428eafc4a0cfa819a777");
        //调用初始化对象里面的方法传递request对象,获取数据
        response=client.getAcsResponse(request);
        List<GetPlayInfoResponse.PlayInfo> playInfoList = response.getPlayInfoList();
        //播放地址
        for (GetPlayInfoResponse.PlayInfo playInfo : playInfoList) {
            System.out.print("PlayInfo.PlayURL = " + playInfo.getPlayURL() + "\\n");
        }
        //Base信息
        System.out.print("VideoBase.Title = " + response.getVideoBase().getTitle() + "\\n");
    }
}

获取视频播放凭证

我们在视频点播中上传视频是可以用魔板加密的 视频加密后需要获取凭证才能播放

public static void getAuth() throws Exception{
    //创建初始化对象
   DefaultAcsClient client = InitObject.initVodClient("你的accessKeyId", "你的accessKeySecret");
    //创建获取视频凭证的的request和response
    GetVideoPlayAuthRequest request = new GetVideoPlayAuthRequest();
    GetVideoPlayAuthResponse response = new GetVideoPlayAuthResponse();
    //设置视频id
    request.setVideoId("e921235475d0428eafc4a0cfa819a777");
    //调用初始化对象里面的方法传递request对象,获取数据
    response=client.getAcsResponse(request);
    //获取视频凭证
    System.out.println(response.getPlayAuth());
}

删除视频

public  static DeleteVideoResponse deleteVideo()throws  Exception{
    //创建初始化对象
   DefaultAcsClient client = InitObject.initVodClient("你的accessKeyId", "你的accessKeySecret");
    DeleteVideoRequest request = new DeleteVideoRequest();
    //支持传入多个视频ID,多个用逗号分隔
    request.setVideoIds("VideoId1,VideoId2");
    return client.getAcsResponse(request);
}

以上是关于Java使用阿里云视频点播的主要内容,如果未能解决你的问题,请参考以下文章

Java代码实现阿里云视频上传

Java使用阿里云视频点播

Vue+java:阿里云OSS 实现视频上传,前端Vue使用vueMiniPlayer动态地址视频播放,以及发布时遇到aliyun-java-vod-upload时依赖报错问题的解决方法

阿里云服务器搭建视频

谷粒学院——Day09整合阿里云视频点播

阿里云视频点播-视频上传失败(一直显示上传中)