zoukankan      html  css  js  c++  java
  • 互联网视频直播点播平台EasyDSS如何集成流媒体平台调取登录及上传接口?

    当我们从网络摄像头上接收视频时,首先要了解协议(RTSP/RTMP/HTTP),然后是解码格式(MKV,RMVB),之后才是将视频(H264)和音频(AAC)格式数据分别解码为图像(RGB/YUV)和声音(PCM),再根据时间戳同步到流媒体平台播放。我们的视频直播点播流媒体服务器EasyDSS就是RTMP推流流媒体服务器。

    今天碰到一个用户需要二次开发互联网直播点播平台EasyDSS上传点播文件接口,并集成到自己的业务当中。

    然后编写的demo界面如下

    这里需要用到登录和上传两个接口,两个接口我们都是支持调用的。

    代码运行在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)    //失败的回调
              }            
          });
        }
      });
    

     

  • 相关阅读:
    [转]Greenplum的工作负载及资源管理
    [转]Tomcat中的Session小结
    [转]Class.forName()的作用与使用总结
    [转]如何在 Git 里撤销(几乎)任何操作
    [转]session和cookie的区别和联系,session的生命周期,多个服务部署时session管理
    piwik获取访客头像,自定义显示访问者头像(URL)和描述(标题和替代)
    php解析url并得到url中的参数及获取url参数
    php结合phantomjs实现网页截屏、抓取js渲染的页面
    利用PhantomJS进行网页截屏,完美解决截取高度的问题
    多线程编程
  • 原文地址:https://www.cnblogs.com/easydss/p/13036120.html
Copyright © 2011-2022 走看看