網站開發之對接阿裏雲視頻點播 - ManBetX万博全站app網絡
400-800-9385
網站建設資訊詳細

網站開發之對接阿裏雲視頻點播

發表日期:2022-04-28 11:41:09   作者來源:劉紅旺   瀏覽:53   標簽:網站開發    
1. 首先在阿裏雲控製中心找到視頻點播,如果沒有開通就需要先開通服務,最好先購買存儲流量包和播放流量包,不然就會以播放流量收費比較貴。

阿裏雲
 

  • 添加加速域名,默認加速是上海地區,在配置管理-存儲管理可以找到存儲地址
設置域名

添加域名
加速區域
  • 添加好域名就要配置安全策略,比例黑白名單,指定隻能在哪個域名下播放,是否支持瀏覽器直接打開等一些防止視頻被別人下載,需要在url鑒權設置兩個key
視頻配置
 
4.Php代碼 獲取音視頻播放憑證
<?php
require 'aliyun-php-sdk-core/Config.php';   // 假定您的源碼文件和aliyun-php-sdk處於同一目錄
use vod\Request\V20170321 as vod;
 
class Aliyun {
function init_vod_client($accessKeyId, $accessKeySecret) {
    $regionId = 'cn-shenzhen';  // 點播服務所在的Region,國內請填cn-shanghai,不要填寫別的區域
    $profile = DefaultProfile::getProfile($regionId, $accessKeyId, $accessKeySecret);
   
    return new DefaultAcsClient($profile);
}
 
 
 
  
function get_play_info($client, $videoId) {
 $request = new vod\GetPlayInfoRequest();
 
    $request->setVideoId($videoId);
    $regionId = 'cn-shenzhen'; 
    
    $request->setAuthTimeout(3600*24);    // 播放地址過期時間(隻有開啟了URL鑒權才生效),默認為3600秒,支持設置最小值為3600秒
    $request->setAcceptFormat('JSON');
 
    $arr=$client->getAcsResponse($request);
    return $arr;


   
}
 
function testGetVideoPlayAuth($client,$videoId) {
   $request = new vod\GetVideoPlayAuthRequest();
   $regionId = 'cn-shenzhen'; 
   $request->setAcceptFormat('JSON');
   $request->setRegionId($regionId);
   $request->setVideoId($videoId);            //視頻ID
   $response = $client->getAcsResponse($request);
   return $response;
}
 
}
?>
 
function  getAuth($videoId){
    
    vendor('Aliyun.Aliyun');
        $video=new \Aliyun();//引入sdk
        $accid='xxxxxxxxxx';
        $secret="'xxxxxxxxxx'";
        $res=$video->init_vod_client($accid,$secret);
         $ress=$video->testGetVideoPlayAuth($res,$videoId);
        $url=json_decode(json_encode($ress),true);
 
        $str=$url['PlayAuth'];
 
        return $str;
        //return $resss['PlayAuth'];
   }
 
或者也可以獲取播放地址
 function  getPlayUrl($videoId){
    vendor('Aliyun.Aliyun');
        $video=new \Aliyun();
        $accid='xxxxxxxxxx'
        $secret='xxxxxxxxxx';
        $res=$video->init_vod_client($accid,$secret);
        $ress=$video->get_play_info($res,$videoId);
        $url=json_decode(json_encode($ress),true);
 
        //$str=$url['PlayAuth'];
        $str=$url['PlayInfoList']['PlayInfo'][0]['PlayURL'];
        return $str;
        //return $resss['PlayAuth'];
   }  
 
5.前端播放代碼
引入播放器
 
<link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.9.19/skins/default/aliplayer-min.css" />  
<script charset="utf-8" type="text/javascript" src="https://g.alicdn.com/de/prismplayer/2.9.19/aliplayer-min.js"></script> 
<script charset="utf-8" type="text/javascript" src="https://g.alicdn.com/de/prismplayer/2.9.19/aliplayer-h5-min.js"></script> 
 
<div class="video prism-player" " id="J_prismPlayer" ></div>    
  <script>
 
       var player = new Aliplayer({
           id: 'J_prismPlayer',
           width: '100%',
           height:'500px',
           autoplay: true,
           vid : '{$videoId}',//必選參數。音視頻ID。示例:1e067a2831b641db90d570b6480f****。
           playauth : '{$PlayAuth}',//必選參數。音視頻播放憑證。
         },function(player){
           console.log('The player is created.')
        });
    </script>
 
這裏是通過音頻id 和播放憑證播放。還有直接獲取播放地址播放。
最麻煩的是m3u8流播放,暫未研究
如沒特殊注明,文章均為ManBetX万博全站app網絡原創,轉載請注明來自https://www.engstuff.com/news/6410.html
視頻相關公司評論
  • 包括您引用其他網站的圖片,視頻文件等。如果您直接在頁麵上引用其他網站,並且該網站的速度很慢,或者該網站的頁麵不再存在,那麽您的開放速度將非常緩慢。
    林芝製作網站公司
  • 因為視頻製作的sop流程比較簡單,不需要對整體在進行完整的五個流程,這裏基於五的視頻內容,以及其他的問題的綜合考量,對實用場景進行設計
    拉薩設計網頁公司