android視頻播放 vitamio的簡單運用

今天主要是講如何簡單的播放視頻,我們要用到的一個框架——vitamio,這個框架及其強大,播放視頻,直播神馬都可以。話不多說,我們來看看今天的任務,今天要教大家的是,vitamio的基礎用法。先上效果圖:
這裏寫圖片描述

效果解析

 1. 播放視頻
 2. 點擊視頻視圖,下面出現系統自帶的進度條
 3. 視頻加載的過程中,界面下面顯示加載圈,網速,和緩衝率

好了,至於我爲什麼不把加載圈這些東西放到視頻視圖上,我怕你們看不見嘛。

要完成這種效果,我們需要2個東西

  1. vitamio
  2. 視頻真實地址

vitamio大家可以很方便的在官網上下載—-傳送門 —-vitamio
那麼。。。什麼是視頻真實地址,視頻真實地址就是,純粹的視頻地址,而不是我們隨便點開的一個視頻網站中的一個視頻,像優酷什麼的,點開後雖然在播放視頻,但是周圍有廣告啊,評論什麼的,這怎麼能是真實的視頻地址呢,我們怎麼拿到真實的視頻地址?
解:點量軟件
官方給我們提供了一個的網站http://www.flvurl.cn/
看到這個網站後,我相信聰明的你馬上就能學會怎麼使用它。

導入vitamio

將下載好的vitamio作爲module導入到android studio中,期間可能會出現一個小問題,android studio可能會報個文件錯誤,如圖:
這裏寫圖片描述

將紅框中對應的值修改爲你當前版本的值就行了,比如我就改成了這樣:
這裏寫圖片描述

你們的不一定是這樣,總之要按照自己的設定修改

播放視頻

將vitamio提供的視頻控件放置到我們的佈局文件中
activity_main.xml

<io.vov.vitamio.widget.VideoView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/videoview"/>

使用vitamio之前一定要初始化vitamio

        // 初始化vitamio 初始化後,vitamio才能使用
        Vitamio.isInitialized(this);

videoview的基礎設置

        //設置視頻真實地址
        videoview.setVideoPath(videoUrl);
        //屏幕長亮
        videoview.setKeepScreenOn(true);
        //獲取焦點
        videoview.requestFocus();
        //設置控制視圖
        videoview.setMediaController(new MediaController(this));

播放視頻:

        videoview.start();

設置監聽:

//緩存監聽,當前緩存了多少,百分比
        videoview.setOnBufferingUpdateListener(new MediaPlayer.OnBufferingUpdateListener() {
            @Override
            public void onBufferingUpdate(MediaPlayer mp, int percent) {
                // percent代表緩衝率
            }
        });

        //video狀態監聽
        videoview.setOnInfoListener(new MediaPlayer.OnInfoListener() {
            @Override
            public boolean onInfo(MediaPlayer mp, int what, int extra) {

            // what代表視頻狀態
            // extra代表網速

                switch (what) {

                    //開始緩存 這裏面可以寫播放前要做的事,比如顯示緩衝視圖什麼的
                    case MediaPlayer.MEDIA_INFO_BUFFERING_START:
                        break;

                    //結束緩存 這裏面可以寫緩衝後要做的事,比如隱藏緩衝視圖什麼的
                    case MediaPlayer.MEDIA_INFO_BUFFERING_END:
                        videoview.start();//結束緩存,開始播放視頻
                        break;

                    //緩存時,這裏表示視頻正在緩衝中,可以利用下extra這個參數,顯示緩衝時的網速
                    case MediaPlayer.MEDIA_INFO_DOWNLOAD_RATE_CHANGED:
                        break;

                }
                return true;
            }

        });

基本的視頻使用已經講完了,簡單播放個視頻,我想你們應該學會了,
這裏我提供個直播的真實地址,你們試試看。
rtmp://live.hkstv.hk.lxdns.com/live/hks

源碼:http://download.csdn.net/detail/it_xf/9655517

發佈了45 篇原創文章 · 獲贊 82 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章