1. 程式人生 > >阿里雲播放器Aliplayer-WEB走坑中

阿里雲播放器Aliplayer-WEB走坑中

最近在做直播,用得阿里的地址推流,然後PC 端播放器的介面文件寫的,反正我是看不懂, 各種猜測,各種實驗,

方便小白們研究脫坑 

我先寫我的程式碼 然後加備註

截至 6.4日我這邊寫了

 快捷鍵 【 空格暫停播放,快進/快退  音量大小】

 截圖【事件自己寫】 【還不知道直播能不能截圖,因為直播用的是falsh播放器暫時沒發現能截圖的操作,有大佬會的歡迎指點】

自定義倍數 【自己設定把】

阿里的 播放器介面 文件

都是需要

 var player=new Aliplayer({});
 //建立播放器之後用的,裡面所有的操作都是 player.XXXXXX 這樣

官方簡介

https://help.aliyun.com/document_detail/51991.html?spm=5176.doc51991.6.698.OHeEbs

官方介面說明

https://help.aliyun.com/document_detail/62941.html?spm=a2c4g.11186623.6.713.Q0wYfV

官方簡單生成播放器

https://player.alicdn.com/aliplayer/setting/setting.html

<link rel="stylesheet" href="//g.alicdn.com/de/prismplayer/2.6.0/skins/default/aliplayer-min.css" />
<script charset="utf-8" type="text/javascript" src="//g.alicdn.com/de/prismplayer/2.6.0/aliplayer-min.js"></script>

這是必須引入的

 var  playbackurl = 播放地址 
    var playvideosnum = 0;
    $('[data-role="play-0"]').addClass("active");
    var player = new Aliplayer({
            id: "J_prismPlayer",
            autoplay: true,//是否自動播放
            playsinline:true,//H5是否內建播放
            useH5Prism:true,//強制H5播放器
            isLive:false,//是不是直播
            preload:true,//播放器自動載入
            snapshot:true,//falsh啟用截圖
            width:"100%",
            height:"100%",
            controlBarVisibility:"always",//控制面板的實現 ‘click’ 點擊出現、‘hover’ 浮動出現、‘always’ 一直在 
            source:JSON.stringify(playbackurl), //這裡 記住一定是JSON字串型別 播放地址  如果有好幾種格式 {'LD':556464,'HD':4564} 只有標準格式才能切換清晰度
   
            extraInfo:{ //定製型介面引數
                crossOrigin:"anonymous"
            },
            skinLayout:[ //按鈕UI   給一部分 其餘自己試
                {"name":"controlBar","align":"blabs","x":0,"y":0,"children":[{"name":"progress","align":"blabs","x":0,"y":44},
                        {"name":"playButton","align":"tl","x":15,"y":12},//播放
                        {"name":"volume","align":"tr","x":10,"y":10},//聲音
                        {"name":"fullScreenButton","align":"tr","x":10,"y":10},
                        {"name":"timeDisplay","align":"tl","x":10,"y":7},
                        {"name":"snapshot","align":"tr","x":10,"y":10},//截圖
                        {"name":"speedButton","align":"tr","x":10,"y":10},//倍數 {這個可以自定義 但是怎麼調我一直搞不懂 會的可以幫我補充一下}
                        {"name":"streamButton","align":"tr",'x':0,'y':10},//截圖
                        ]},
                {"name":"fullControlBar","align":"tlabs","x":0,"y":0,"children":[{"name":"fullTitle","align":"tl","x":25,"y":6},
                        {"name":"fullNormalScreenButton","align":"tr","x":24,"y":13},
                        {"name":"fullTimeDisplay","align":"tr","x":10,"y":12},
                        {"name":"fullZoom","align":"cc"},
                        ]},
                {"name":"errorDisplay","align":"tlabs","x":0,"y":0},
                {"name":"H5Loading","align":"cc"},
                {"name":"infoDisplay","align":"cc"},//顯示資訊
            ]},function(player){

            console.log("播放器建立了。");
        }
    );

然後我在這裡寫點播放事件

  function getkeyval(){ //繫結按鈕事件
        document.onkeydown=function(e){
            var keyNum=window.event ? e.keyCode :e.which;
            return keyNum;
        };
    }
    player.on("ended", endedHandle());
    //播放器快捷鍵
    document.onkeydown=function(e){
        var keyNum=window.event ? e.keyCode :e.which;
       //空格暫停播放
        if(keyNum=='32'){
         var videoplay = $('input[name="videoplay"]').val();//定義一個隱藏域 來區分播放狀態
            if(videoplay==0){
                player.pause();
                $('input[name="videoplay"]').val(1);
            }else{
                player.play();
                $('input[name="videoplay"]').val(0);
            }
        }else if(keyNum=='37'){//快進
           var videotimes =  player.getDuration();
           var playnum =  player.getCurrentTime();
           playnum =parseInt(playnum-10);
           if(playnum<=(videotimes-30)){
               player.seek(playnum);
           }
        }else if(keyNum=='39'){
//快進/快退/聲音大小調節 我是用方向鍵來操作的
var videotimes = player.getDuration(); var playnum = player.getCurrentTime(); playnum =parseInt(playnum +10); if(playnum>15){ player.seek(playnum); }else{ player.seek(0); } }else if(keyNum=='38'){ //音量大小 //獲得當前音量 var volume =parseInt(player.getVolume()*100); if(volume<100){ volume = (volume+1)/100; player.setVolume(volume); }else{ } }else if(keyNum=='40'){ var volume =parseInt(player.getVolume()*100); if(volume>0){ volume = (volume-1)/100; player.setVolume(volume); } } };

// 截圖
    player.on("snapshoted", function(data) {
        console.log(data.paramData.time);
        console.log(data.paramData.base64);
        console.log(data.paramData.binary);
    });
//這裡是 自定義倍數的  先建立播放器後才會生效
player.serseep(倍數數值)



相關推薦

阿里播放Aliplayer-WEB

最近在做直播,用得阿里的地址推流,然後PC 端播放器的介面文件寫的,反正我是看不懂, 各種猜測,各種實驗,方便小白們研究脫坑 我先寫我的程式碼 然後加備註截至 6.4日我這邊寫了 快捷鍵 【 空格暫停播放,快進/快退  音量大小】 截圖【事件自己寫】 【還不知道直播能不能截圖

阿里播放SDK的正確開啟方式 | 功能、架構與應用(一)

阿里雲播放器SDK(ApsaraVideo for Player SDK)是阿里視訊雲端到雲到端服務的重要一環,除了支援點播和直播的基礎播放功能外,還深度融合視訊雲業務,支援視訊的加密播放、安全下載、首屏秒開、低延時等業務場景,為使用者提供簡單、快速、安全、穩定的視訊播放

阿里播放除錯心得,android的學習筆記

   接觸android接近一個月,摸爬滾打實屬不易,加上又有諸多瑣事纏身,讓原本定下的計劃遲遲沒有完成。。    對於基礎知識的急於求成,處於一種有一些功利化的學習心態,所以適時的複習顯得空前重要。。   談談對安卓的理解,不論對錯,只對自己的理解做一些記錄:    

繼百度天工物可視之後,阿里Link Develop提供WEB視覺化搭建服務(手機瀏覽請橫向)

        小邁閘道器最近對接了阿里的Link Develop平臺,並在實際專案中得到應用,阿里雲在平臺側推出了快速web應用,進一步降低了WEB應用的門檻。簡介如下:         Web 應用即完整的基於瀏覽器展示的網頁程式: 在Web端體現為獨立部署的一整

阿里上配置Java Web專案部署環境

①安裝前準備 ②配置環境 1.jdk的安裝 1.1 gzip: stdin: not in gzip format 問題的解決 後來找到了問題,我是用wget命令直接下載的JDK,這是問題的根源。 去Oracle官網下載過jdk的童鞋應該都知道,下載之前需要

阿里http配置ssl遇到的&&天

1、在Tomcat的安裝目錄下建立cert目錄,並且將阿里雲提供的ssl全套壓縮包全部檔案拷貝到cert目錄中。 2、使用java jdk將PFX格式證書轉換為JKS格式證書(windows環境注意在%JAVA_HOME%/jdk/bin目錄下執行) key

阿里伺服器centos部署web環境的步驟詳解

主要任務 使用ssh工具,在阿里雲伺服器配置jdk,tomcat,mysql,並部署專案。 所需工具 SSH Secure Shell 、jdk1.7(linux版)、tomcat7(linux版)、mysql5.5(linux版) 文中有連結

Nginx+阿里伺服器部署靜態web專案

    這兩天,因為工作需求,身為一個後端開發人員,接觸了使用Nginx+阿里雲輕量伺服器CentOS系統部署靜態web專案的嘗試。    首先,宣告一點,專案部署前,已經由資深前端老員工幫我用Fis3工具構建好了專案,並不是所有專案都可以直接部署的,關於Fis3我也不是很瞭

選購和配置阿里伺服器(Java web版)

1 購買伺服器 1.1 進入阿里雲服務官網,購買雲伺服器 ECS。 1.2 選擇下圖所示的預裝環境,配置和地域根據自己喜好選擇就行了,然後進行下一步購買就可以了。 經過上面操作,一個阿里雲伺服器的購買就完成了,下面我們來講下怎麼配置。 2 Win

阿里直播服務端API的

使用ffmpeg 推流過程中,想通過 Aliyun 的 live API來確定流是否線上。但是當流還在推送的情況下,API返回的列表中還是有可能不包含正在推送的流的,雖然這種情形出現的機率不高。有時候推送一個90分鐘的流一次都不出現,但也有的時候能出現好多次。

記錄:阿里Centos7.3 Java web專案部署基本環境

一、安裝JDK 1、jdk下載官網:jdk 右鍵複製下載連線, 2、建立jdk的下載路徑:執行建立資料夾命令 :mkdir /usr/web/jdk  (可以根據自己的實際需求建立) 3、下載jdk即執行以下命令 (--no-check-certificate

使用阿里OSS伺服器進行web簽名直傳

@Controller @RequestMapping("oss") public class OssUploadController { private static Logger log = LoggerFactory.getLogger(OssUtils.class); /** * 獲取os

阿里佈署服務的那些之一—不能遠端訪問mysql匯入資料

最近弄了一個阿里雲伺服器,想把公司相關的工程都導到阿里雲上在公網測試一下域名服務,因為我本地有mysql資料庫就想通過遠端連線到雲伺服器的資料庫,直接通過IDE工具把現有的測試資料匯入。廢話不多說,切入正題: 如何設定遠端訪問mysql這種東西不用我多說了,我直接上圖我的設

阿里伺服器部署正式web環境

        簡單分享下如何在阿里雲伺服器下部署web正式公網環境。        上一篇文章簡單的說了些平時後臺開發人員如何簡單的部署測試環境,這應對平時開發和測試足以。但是,如果專案開發到完成的

阿里上部署kafka--遇到的

阿里雲防火牆關閉,並且配置規則。不然會導致訪問不到服務。 問題一: Caused by: java.net.UnknownHostException: iZuf68tztea6l5ccdz7wemZ: iZuf68tztea6l5ccdz7wemZ: N

阿里伺服器一鍵WEB環境配置---Linux學習筆記(3)

我們可以看到正在執行狀態的服務及埠:9000埠是php程序服務,3306埠是mysql服務,80埠是nginx服務,21埠是ftp服務。 如果看到以上資訊,則說明安裝沒有異常。這裡有一點需要注意的是,如果您選擇安裝的是apache,則沒有上面的9000埠。為什麼選擇安裝的是apache,就沒有9000

阿里資料庫POLARDB技術沙龍火熱報名,李飛飛,曹偉 眾大神齊到場,200個席位先到先得!

本次沙龍將結合RDS雲資料庫技術架構的演化,分享阿里雲自研雲原生資料庫的產品架構和技術創新點,並深度剖析POLARDB在SQL併發效能、多活高可用、讀寫分離延遲、四維彈性、快照備份和查詢加速等應用場景的技術實踐。 時間:2019年1月19日 13:00 ~ 2019年1月19日 17:00 地址:北京

在windows環境下將基於FFMpeg和SDL的播放整合到Qt creator

然後,你得有在windows下的FFmpeg以及SDL的標頭檔案和庫檔案,上面給的這個連結中,博主已經把所有的標頭檔案和庫檔案都給出來了。 再然後,在QT的工程檔案.pro裡面新增標頭檔案和庫檔案的路徑。關於新增庫檔案的方法,網上有很多種格式,貌似都可以,反正條條大路

android直播播放(整合阿里基礎播放

1.播放器初建:        先在application中需先初始化阿里雲的直播播放器    AliVcMediaPlayer.init(getApplicationContext());      在activity中實列化播放器,需要先例項化一個surfaccev

關於前端直播(videoJS與百度web播放:Cyberplayer3.0試用)

文章目錄 videoJS 開啟方式 記錄 初始化 居中播放按鈕 百度視訊播放器demo 開啟方式 修改