android播放流
㈠ android 怎麼播放rtsp流
package com.video.rtsp;
import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.VideoView;
public class rtspActivity extends Activity {
/** Called when the activity is first created. */
Button playButton ;
VideoView videoView ;
EditText rtspUrl ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
rtspUrl = (EditText)this.findViewById(R.id.url);
playButton = (Button)this.findViewById(R.id.start_play);
playButton.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
PlayRtspStream(rtspUrl.getEditableText().toString());
}
});
videoView = (VideoView)this.findViewById(R.id.rtsp_player);
}
//play rtsp stream
private void PlayRtspStream(String rtspUrl){
videoView.setVideoURI(Uri.parse(rtspUrl));
videoView.requestFocus();
videoView.start();
}
}
㈡ android如何播放RTMP協議視頻流
Adboe的Red5流媒體伺服器免費並且是開源的,與Flash搭配的時候可謂是天生一對,但使用Java和Android作為客戶端調用卻可謂一波三折。
Adobe的Red5源代碼里有一個RTMPClient的類,這個類在使用上其實不復雜,但卻沒辦法成功調用。觀察日誌,發現是連接成功後在開始創建流的時候,服務端把連接斷開了。我能想到的解釋就是可能公司現在所使用的Red5伺服器的版本與這個RTMPClient不兼容。
㈢ android 怎麼播放rtsp流
先解析協議rtsp,rtmp,rtp等等
先確定封裝格式滑神是mp4,avi,mkv等等,再解封裝
再確定編碼格式x264,MPEG-2等等,在進行解碼,可早數以軟解碼,也可以硬解碼
解碼後綁陸讓首定surface,渲染播放
㈣ android可以播放ts文件或者ts流嗎
雖然android是支持ts流額播放,但是嫌兄不能播放實時流,播放的時候會先將文件下載到內存在播放寬譽,這個果斷不行,將目芹巧襲標放在了m3u8上,從google上得到的一些資料,使用mediaplayer可以播放。
㈤ android可以播放ts文件或者ts流嗎
雖然android是支持ts流額播放,但是不能播放實時流,播放的時候會先將文件下載到內存在播放,這個果斷不行,將目標放在了m3u8上,從google上得到的一些資料,使用mediaplayer可以播放。
㈥ android怎麼播放rtsp實時網路串流代碼
android播放rtsp實時網路串流核心代碼如下:
import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.VideoView;
public class rtspActivity extends Activity {
/** Called when the activity is first created. */
Button playButton ;
VideoView videoView ;
EditText rtspUrl ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
rtspUrl = (EditText)this.findViewById(R.id.url);
playButton = (Button)this.findViewById(R.id.start_play); playButton.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
PlayRtspStream(rtspUrl.getEditableText().toString()); } });
videoView = (VideoView)this.findViewById(R.id.rtsp_player); }
//play rtsp stream
private void PlayRtspStream(String rtspUrl){
videoView.setVideoURI(Uri.parse(rtspUrl));
videoView.requestFocus();
videoView.start();
}
}
㈦ 安卓系統可以播放流媒體視頻嗎
安卓2.2系統支持在線流媒體(網頁視頻)的納余。但是也需要手機有圖形加速器,才能支持大解析度視頻,並且需要網速夠,否則會卡。再就是在線看視頻很旁賀費流量,要注意自己的手機上網套餐包月情運茄派況
望採納。
㈧ 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非常好用!
㈨ 怎麼讓android上的播放器支持rtmp流
安卓設備上的播放——Vitamio安卓設備3.0以上原生支持hls,但是岩備不支持rtmp,為了統一以及低版本兼容,可以使用第三方的一個播放器庫——vitamio。hls播放如果僅需要在移動設備的WebView上播放,可以選擇亂棗鎮使用html中嵌入hls播嘩粗放。