互聯網視頻直播點播平臺EasyDSS如何集成流媒體平臺調取登錄及上傳接口?

當我們從網絡攝像頭上接收視頻時,首先要了解協議(RTSP/RTMP/HTTP),然後是解碼格式(MKV,RMVB),之後纔是將視頻(H264)和音頻(AAC)格式數據分別解碼爲圖像(RGB/YUV)和聲音(PCM),再根據時間戳同步到流媒體平臺播放。我們的視頻直播點播流媒體服務器EasyDSS就是RTMP推流流媒體服務器。

DSS.png

今天碰到一個用戶需要二次開發互聯網直播點播平臺EasyDSS上傳點播文件接口,並集成到自己的業務當中。

然後編寫的demo界面如下

409.png

這裏需要用到登錄和上傳兩個接口,兩個接口我們都是支持調用的。

410.png

411.png

代碼運行在web語言以html、js爲主,上傳之前首先要調取登陸接口獲取用戶信息及權限。然後選擇本地視頻文件,文件選擇完成點擊上傳按鈕。下圖爲主要邏輯代碼。

Html代碼:

<body>
    <h4>EasyDSS 點播文件上傳DEMO</h4>
    <b>注意:需要先登錄拿到token</b><input type="file" id="file_upload"/>
    <input type="button" value="上傳點播文件" id="upload"/>         
    <input type="button" value="登錄" id="login"/>        
</body>

Js代碼:

  $(function() { 
    var token = ''                            //token鑑權臨時變量
    var httpURL = 'http://127.0.0.1:10080'    //軟件IP地址

    $("#upload").click(function(){//上傳
        ajaxFileUpload();
    });
    $("#login").click(function(){//登錄
      $.post(httpURL+'/login',{
        username:"admin",
        password:"21232f297a57a5a743894a0e4a801fc3" //密碼爲admin md5加密後的字符串
      },function(data,status){
        token = data.token  //獲取token
        console.log(token);
      });
    });
    function ajaxFileUpload(){
      var formData = new FormData();
      formData.append('file',$("#file_upload")[0].files[0])    //將文件轉成二進制形式
      formData.append('token',token);    //將token寫入formData
      $.ajax({
          type:"post",
          url:httpURL+"/vod/upload",
          async:false,
          contentType: false,   //這個一定要寫
          processData: false,   //這個也一定要寫,不然會報錯
          data:formData,        //參數
          dataType:'text',      //返回類型,有json,text,HTML。這裏並沒有jsonp格式
          success:function(data){
            console.log(data)   //成功的回調
          },
          error:function(XMLHttpRequest, textStatus, errorThrown, data){
            console.log(errorThrown)    //失敗的回調
          }            
      });
    }
  });
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章