亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

視頻點播(ApsaraVideo for VoD)是集音視頻采集、編輯、上傳、自動化轉碼處理、媒體資源管理、分發加速于一體的一站式音視頻點播解決方案。

Springboot集成阿里云視頻點播

 

1、應用場景

  • 音視頻網站:無論是初創視頻服務企業,還是已擁有海量視頻資源,可定制化的點播服務幫助客戶快速搭建擁有極致觀看體驗、安全可靠的視頻點播應用。
  • 短視頻:集音視頻拍攝、特效編輯、本地轉碼、高速上傳、自動化云端轉碼、媒體資源管理、分發加速、播放于一體的完整短視頻解決方案。目前已幫助1000+App快速實現手機短視頻功能。
  • 直播轉點播:將直播流同步錄制為點播視頻,用于回看。并支持媒資管理、媒體處理(轉碼及內容審核/智能首圖等AI處理)、內容制作(云剪輯)、CDN分發加速等一系列操作。
  • 在線教育:為在線教育客戶提供簡單易用、安全可靠的視頻點播服務。可通過控制臺/API等多種方式上傳教學視頻,強大的轉碼能力保證視頻可以快速發布,覆蓋全網的加速節點保證學生觀看的流暢度。防盜鏈、視頻加密等版權保護方案保護教學內容不被竊取。
  • 視頻生產制作:提供在線可視化剪輯平臺及豐富的OpenAPI,幫助客戶高效處理、制作視頻內容。除基礎的剪切拼接、混音、遮標、特效、合成等一系列功能外,依托云剪輯及點播一體化服務還可實現標準化、智能化剪輯生產,大大降低視頻制作的檻,縮短制作時間,提升內容生產效率。
  • 內容審核:應用于短視頻平臺、傳媒行業審核等場景,幫助客戶從從語音、文字、視覺等多維度精準識別視頻、封面、標題或評論的違禁內容進行AI智能審核與人工審核。2、功能介紹

2、功能介紹

Springboot集成阿里云視頻點播

 

二、開通視頻點播云平臺
1. 產品->視頻服務->視頻服務->視頻點播

Springboot集成阿里云視頻點播

 

2.開通視頻點播

Springboot集成阿里云視頻點播

 

3.選擇按流量計費,比較省錢

Springboot集成阿里云視頻點播

 

4.資費說明:
https://www.aliyun.com/price/product?spm=a2c4g.11186623.2.12.7fbd59b9vmXVN6#/vod/detail

5.整體流程

Springboot集成阿里云視頻點播

 

  • 用戶獲取上傳授權。
  • VoD下發 上傳地址和憑證 及 VideoId。
  • 用戶上傳視頻保存視頻ID(VideoId)。
  • 用戶服務端獲取播放憑證。
  • VoD下發帶時效的播放憑證。
  • 用戶服務端將播放憑證下發給客戶端完成視頻播放。

三、視頻點播服務的基本使用

1、設置轉碼格式

選擇全局設置 > 轉碼設置,單擊添加轉碼模板組。

在視頻轉碼模板組頁面,根據業務需求選擇封裝格式和清晰度。

或直接將已有的模板設置為默認即可

Springboot集成阿里云視頻點播

 

2、分類管理

選擇全局設置 > 分類管理

3、上傳視頻文件

選擇媒資庫 > 音視頻,單擊上傳音視頻

4、配置域名

音視頻上傳完成后,必須配一個已備案的域名,并完成CNAME綁定

Springboot集成阿里云視頻點播

 

5、此時視頻可以在阿里云控制臺播放

6、獲取web播放器代碼

Springboot集成阿里云視頻點播

 


Springboot集成阿里云視頻點播

 


Springboot集成阿里云視頻點播

 

四、服務端SDk集成

1.sdk的方式將api進行了進一步的封裝,不用自己創建工具類。

我們可以基于服務端SDK編寫代碼來調用點播API,實現對點播產品和服務的快速操作。

2.使用SDK

首先添加Maven倉庫,然后再加入依賴項。

1.1,添加maven倉庫 <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>

1.2,添加Jar包依賴 <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>

3.初始化

根據文檔示例創建 AliyunVODSDKUtils.java

public class OSSTest {

    // Endpoint以杭州為例,其它Region請按實際情況填寫。
    String endpoint = "oss-cn-beijing.aliyuncs.com";
    // 阿里云主賬號AccessKey擁有所有API的訪問權限,風險很高。強烈建議您創建并使用RAM賬號進行API訪問或日常運維,請登錄 https://ram.console.aliyun.com 創建RAM賬號。
    String accessKeyId = "LTAI5tSjEbLtaqn8HMe4zF4G";
    String accessKeySecret = "mGgEO1ueh5WdVK4oK4kJOSPQgHPR5m";
    String bucketName = "fire-file";

    @Test
    public void testCreateBucket() {
        // 創建OSSClient實例。
        OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
        // 創建存儲空間。
        ossClient.createBucket(bucketName);// 關閉OSSClient。
        System.out.println(ossClient.listBuckets());
//        ossClient.shutdown();

    }


    @Test
    public void testExist() {
        // 創建OSSClient實例。
        OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
        boolean exists = ossClient.doesBucketExist(bucketName);
        System.out.println(exists);
        // 關閉OSSClient。
        ossClient.shutdown();
    }
}

 

4.springboot集成

FileUploadController

package com.atguigu.controller;

import com.atguigu.commonutils.R;
import com.atguigu.service.FileService;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

@RestController
@RequestMapping("/eduoss")
@CrossOrigin
public class FileUploadController {

    @Autowired
    private FileService fileService;


    /**
     * 13
     * 文件上傳
     * 14
     * <p>
     * 15
     *
     * @param file 16
     */
    @ApiOperation(value = "文件上傳")
    @PostMapping("upload")
    public R upload(
            @ApiParam(name = "file", value = "文件", required = true) @RequestParam("file") MultipartFile file) {
        String uploadUrl = fileService.upload(file);
        //返回r對象
        return R.ok().message("文件上傳成功").data("url", uploadUrl);

    }


}

service

package com.atguigu.service.impl;

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.atguigu.service.FileService;
import com.atguigu.utils.ConstantPropertiesUtil;
import org.joda.time.DateTime;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.io.InputStream;
import java.util.UUID;

@Service
public class FileServiceImpl implements FileService {
    @Override
    public String upload(MultipartFile file) {
        // 工具類獲取值
        String endpoint = ConstantPropertiesUtil.END_POINT;
        String accessKeyId = ConstantPropertiesUtil.ACCESS_KEY_ID;
        String accessKeySecret = ConstantPropertiesUtil.ACCESS_KEY_SECRET;
        String bucketName = ConstantPropertiesUtil.BUCKET_NAME;

        try {
            // 創建OSS實例。
            OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

            //獲取上傳文件輸入流
            InputStream inputStream = file.getInputStream();
            //獲取文件名稱
            String fileName = file.getOriginalFilename();

            //1 在文件名稱里面添加隨機唯一的值
            String uuid = UUID.randomUUID().toString().replaceAll("-","");
            // yuy76t5rew01.jpg
            fileName = uuid+fileName;

            //2 把文件按照日期進行分類
            //獲取當前日期
            //   2019/11/12
            String datePath = new DateTime().toString("yyyy/MM/dd");
            //拼接
            //  2019/11/12/ewtqr313401.jpg
            fileName = datePath+"/"+fileName;

            //調用oss方法實現上傳
            //第一個參數  Bucket名稱
            //第二個參數  上傳到oss文件路徑和文件名稱   aa/bb/1.jpg
            //第三個參數  上傳文件輸入流
            ossClient.putObject(bucketName,fileName , inputStream);

            // 關閉OSSClient。
            ossClient.shutdown();

            //把上傳之后文件路徑返回
            //需要把上傳到阿里云oss路徑手動拼接出來
            //  https://edu-guli-1010.oss-cn-beijing.aliyuncs.com/01.jpg
            String url = "http://"+bucketName+"."+endpoint+"/"+fileName;
            return url;
        }catch(Exception e) {
            e.printStackTrace();
            return null;
        }
    }
}

utils

package com.atguigu.utils;

import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class ConstantPropertiesUtil implements InitializingBean {
    @Value("${aliyun.oss.file.endpoint}")
    private String endpoint;
    @Value("${aliyun.oss.file.keyid}")
    private String keyId;
    @Value("${aliyun.oss.file.keysecret}")
    private String keySecret;
    @Value("${aliyun.oss.file.bucketname}")
    private String bucketName;

    public static String END_POINT;
    public static String ACCESS_KEY_ID;
    public static String ACCESS_KEY_SECRET;
    public static String BUCKET_NAME;

    @Override
    public void afterPropertiesSet() throws Exception {
        END_POINT = endpoint;
        ACCESS_KEY_ID = keyId;
        System.out.println(ACCESS_KEY_ID+"==========================");
        ACCESS_KEY_SECRET = keySecret;
        BUCKET_NAME = bucketName;
    }
}

注意END_POINT、ACCESS_KEY_ID、ACCESS_KEY_SECRET、BUCKET_NAME用自己的,具體申請方式在控制臺》點擊頭像》AccessKey 管理

Springboot集成阿里云視頻點播

 


Springboot集成阿里云視頻點播

 

分享到:
標簽:Springboot
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定