【VLC-Android】LibVLC API簡介(相當於VLC的MediaPlayer)

來源:互聯網
上載者:User

標籤:

前言

學新東西API很重要,這裡拋磚引玉整理了一下,歡迎反饋!

 

聲明

 

  歡迎轉載,但請保留文章原始出處:)     部落格園:http://www.cnblogs.com    農民伯伯: http://over140.cnblogs.com

 

本文

vlc-android的LibVLC相當於MediaPlayer對象,這裡列一下對應關係。

1、public void playMRL(String mrl)

對應MediaPlayer的setDataSource,注意不要轉成Uri再toString,否則無法播放。用法如下:

playMRL("http://live.3gv.ifeng.com/zixun.m3u8") 

 

2、 public native void play()

對應MediaPlayer的start(),開始播放。

 

3、 public native void pause()

對應MediaPlayer的pause(),暫停播放。

 

4、public native void stop() 

對應MediaPlayer的stop(),停止播放。

 

5、public native boolean isPlaying() 

對應 MediaPlayer的isPlaying,是否現正播放。

 

6、public native int getPlayerState();

擷取播放器的狀態。 

 

7、public native int getVolume() 

 擷取音量。

 

8、public native int setVolume(int volume) 

設定音量。(取值範圍和MediaPlayer不一樣)

 

9、public native long getLength()

 對應 MediaPlayer的getDuration。擷取視頻的長度,以毫秒為單位。

 

10、public native long getTime()

返回視頻目前時間,以毫秒為單位。 

 

11、public native long setTime(long time)

設定視頻目前時間,以毫秒為單位。 

 

12、public native float getPosition()

對應MediaPlayer的getCurrentPosition。設定視頻當前位置。 

 

 

13、public native void setPosition(float pos)

對應 MediaPlayer的seekTo。設定視頻當前位置。 

 

14、public native void setRate(float rate)

設定播放速度(可實現快進快退)1是正常速度,2是兩倍速(我猜可能和Vitamio一樣取值是0.5 ~ 2.0) ,對應的有getRate方法。

 

15、public native boolean isSeekable()

是否支援seek(拖拽)。比如直播就不支援seek操作 

 

16、public void destroy() 

 對應 MediaPlayer的release,銷毀LibVLC執行個體。

 

17、public byte[] getThumbnail(String mrl, int i_width, int i_height)

擷取視頻的,rgba的byte數組。 

 

18、public void setHardwareAcceleration(int hardwareAcceleration)

設定硬解編碼,參考LibVLC.HW_ACCELERATION_FULL等參數

 

19、public void setNetworkCaching(int networkcaching)

設定網路緩衝。(還不知道怎麼用,有看到設定值為3000、6000) 

 

20、public void setFrameSkip(boolean frameskip) 

(暫時也不知道有啥用,好像可以提高效能,幀解碼出錯以後直接跳過?) 

 

【VLC-Android】vlc-android簡例

 

 

結束

雖然用播放器很長時間了,很多基礎性和原理性的東西都還不懂,還要加強學習,比如上面的frame skip就不知道是啥。

【VLC-Android】LibVLC API簡介(相當於VLC的MediaPlayer)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.