導航:首頁 > 操作系統 > android本地視頻播放器源碼

android本地視頻播放器源碼

發布時間:2024-12-30 19:09:53

A. android實現視頻播放的幾種方式

Android提供了常見的視頻編碼,解碼機制,使用Android自帶的MediaPlayer,MediaController等類可以很方便的實現視頻播放的功能。支持的視頻格式有MP4和3GP等。這些多媒體數據可以來自於Android應用的資源文件,也可以來自於外部存儲器上的文件,甚至可以是來自於網路上的文件流。

1、MediaController+VideoView實現方式

這種方式是最簡單的實現方式。VideoView繼承了SurfaceView同時實現了MediaPlayerControl介面,MediaController則是安卓封裝的輔助控制器,帶有暫停,播放,停止,進度條等控制項。通過VideoView+MediaController可以很輕松的實現視頻播放、停止、快進、快退等功能。

布局文件如下:

使用此實現方式的步驟:

1.載入指定的視頻文件

2.建立VideoView和MediaController之間的關聯,這樣就不需要自己去控制視頻的播放、暫停等。讓MediaController控制即可。

3.VideoView獲取焦點。

2、MediaPlayer+SurfaceView+自定義控制器

雖然VideoView的實現方式很簡單,但是由於是自帶的封裝好的類,所以無論是播放器的大小、位置以及控制都不受我們控制。

這種實現方式步驟如下:

1.創建MediaPlayer對象,並讓它載入指定的視頻文件。可以是應用的資源文件、本地文件路徑、或者URL。

2.在界面布局文件中定義SurfaceView組件,並為SurfaceView的SurfaceHolder添加Callback監聽器。

3.調用MediaPlayer對象的setDisplay(SurfaceHolder sh)將所播放的視頻圖像輸出到指定的SurfaceView組件。

4.調用MediaPlayer對象的prepareAsync()或prepare()方法裝載流媒體文件

5.調用MediaPlayer對象的start()、stop()和pause()方法來控制視頻的播放。

在實現第二步之前需要先給surfaceHolder設置一個callback,callback的3個回調函數如下:

3、MediaPlayer+SurfaceView+MediaController

第二種實現方式使用的是自定義控制項,MediaPlayer+SurfaceView也可以使用系統自帶的MediaController控制器。

使用這個方式實現,布局文件只需一個SurfaceView即可,其他的控制項都交給MediaController控制器,布局文件如下:

實際過程中推薦大家使用B站的播放器ijkplayer非常好用!

B. android 如何調用系統播放器播放伺服器端視頻

這樣寫是播放本地的視頻文件的吧,要是想播放網路上的視頻你可以這樣試一下Uri uri = Uri.parse("rtsp://v2.cache2.c.youtube.com/CjgLENy73wIaLwm3JbT_%ED%AF%80%ED%B0%_vSmsbeSyd5JDA==/0/0/0/video.3gp");
39. VideoView videoView = (VideoView)this.findViewById(R.id.video_view);
40. videoView.setMediaController(new MediaController(this));
41. videoView.setVideoURI(uri);
42. //videoView.start();
43. videoView.requestFocus();

C. android如何調用系統視頻播放器,而且沒有發送qq這個選項

在Activity中的btn,點擊btn調用系統默認播放器進行本地視頻播放
public Intent getVideoFileIntent(File videoFile)
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("oneshot", 0);
intent.putExtra("configchange", 0);
Uri uri = Uri.fromFile(videoFile);
intent.setDataAndType(uri, "video/*");
return intent;
}
在OnCreate函數中:
btnplay = (Button)findViewById(R.id.button_play2);
btnplay.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
File file1 = new File("/sdcard/test.mp4");
Intent intent = getVideoFileIntent(file1);
startActivity(intent);

}
});

D. Android開發一個視頻播放器,播放列表中有視頻縮略圖,文件名,路徑,時間,大小,怎麼讓他們放在一個

這個問題本身不難,你貼一堆代碼這么亂怎麼看?

要實現這樣的功能呢,建議你自定義一個adapter繼承自BaseAdapter,然後在getView方法里,
載入一個item布局,這個item布局可以包含imageView,自己寫一個就好。
自定義的adapter可以設置數據源,構造方法中可以加上一個list map數據源,
獲取到數據源之後傳進來,根據position設置好對應數據就好了。

閱讀全文

與android本地視頻播放器源碼相關的資料

熱點內容
軟體app學習通怎麼復制 瀏覽:109
哄懵和安卓是什麼關系 瀏覽:473
pdf官方網站 瀏覽:385
信陽程序員招聘 瀏覽:231
變分的運演算法則推導ppt 瀏覽:593
互信息特徵選擇演算法 瀏覽:240
現代挖機空調壓縮機 瀏覽:275
程序員一生誰先寫完誰先走 瀏覽:551
雲伺服器怎麼加快速度 瀏覽:443
java編程規范google 瀏覽:712
免費圖片壓縮到指定大小 瀏覽:764
靶點伺服器什麼意思 瀏覽:599
安卓怎麼掃別人的吃雞二維碼 瀏覽:864
三星應用加密 瀏覽:56
玩雲游戲用哪個app好 瀏覽:916
文件夾添加到我的電腦打開界面 瀏覽:762
演算法導論第二版英文版 瀏覽:284
新建構PDF 瀏覽:76
雲伺服器可以更換么 瀏覽:863
工商個體戶網上交稅是哪個app 瀏覽:997