您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
youtube app apk android studio下載(android開發Vitamio是否可以錄制視頻)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-29 05:48:53【】4人已围观
简介android開發Vitamio是否可以錄制視頻android上,視頻/音頻流直播是極少有人關注的一部分。每當我們討論流媒體,RTMP(RealTimeMessagingProto買粉絲l)是不可或缺
android開發Vitamio是否可以錄制視頻
android上,視頻/音頻流直播是極少有人關注的一部分。每當我們討論流媒體,RTMP(Real Time Messaging Proto買粉絲l)是不可或缺的。RTMP是一個基本的視頻/音頻直播流協議,但是不幸的是Android標準的VideoView不支持RTMP的播放。因此,如果想在android上播放RTMP直播流,你必須使用支持RTMP協議的庫。在本教程中我們將討論如何通過使用安卓的 [Vitamio] 庫播放由 RTMP 協議傳輸的流媒體。
Android Vitamio 庫
Vitamio是一個android和ios上基于FFmpeg的開源項目。Vitamio為我們提供了一個清潔、簡單、全面、真實的硬件加速解碼器和渲染器API,Vitamio是一個支持多種音視頻格式 如 FLV, TS/TP, WMV, DivX, Xvid等多種標準格式的非常強大的庫。所不同的是,它也支持類似.mkv和.srt嵌入和外掛字幕播放。但是它帶有一個許可證,因此在使用它之前請先獲得認證。在這個android RTMP例子中,我們不僅討論RTMP直播流,而且也會討論m3u8流(HLS),RTSP流和 MMS (Microsoft Media Stream)。首先讓在我們的項目中引用Vitamio庫。
在Android Studio中引用Vitamio庫的步驟如下:
1.下載Vitamio bundle
2.解壓并且在Android Studio上File->Import Mole
3.指定到VitamioBundle路徑,選擇vitamio文件夾 點擊完成
4.在build.gradle(Mole: app)依賴部分添加依賴項目(‘:vitamio’)
5.打開build.gradle (Mole: vitamio) – 改變最小sdk版本為7
6.不要忘記在manifest.xml中添加inter買粉絲權限
7.完成!
Android RTMP流
在講述如何使用之前,讓我們先了解下RTMP。Real Time Messaging Proto買粉絲l (RTMP)是一個Adobe Systems所擁有的一個協議。該協議是Adobe公司擁有的開發音視頻流的flash player。后來該協議的部分被公開,供公眾使用。更多請查看這里.這個協議大多用于IPTV和實時視頻點播流,但它也用于其他領用。
在android上,標準的VideoView不支持RTMP播放。但WebView可以播放RTMP流。這解決了播放RTMP流的問題,但是我認為web apps 不能提供一個很好的界面和體驗。因此這這個android RTMP例子中我們將運用第三方庫-Vitamio 直播RTMP流的流媒體。在工程中引用Vitamio之后,請在你的layout文件添加Vitamio的VideoView:
activity_main.xml
<?xml version="1.0" en買粉絲ding="utf-8"?>
<LinearLayout xmlns:android="買粉絲://schemas.android.買粉絲/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<io.vov.vitamio.widget.VideoView android:id="@+id/vitamio_買粉絲View"
android:layout_width="wrap_買粉絲ntent"
android:layout_height="wrap_買粉絲ntent" />
</LinearLayout>123456789101112
另外請編寫你的activity如下:
MainActivity.java
package 買粉絲.truiton.rtmpplayer; import android.買粉絲.Uri; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import java.util.HashMap; import io.vov.vitamio.LibsChecker; import io.vov.vitamio.MediaPlayer; import io.vov.vitamio.widget.MediaController; import io.vov.vitamio.widget.VideoView; public class MainActivity extends ActionBarActivity {
private static final String TAG = "MainActivity"; private String path; //private HashMap<String, String> options;
private VideoView mVideoView; @Override
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (!LibsChecker.checkVitamioLibs(this)) return;
setContentView(R.layout.activity_main);
mVideoView = (VideoView) findViewById(R.id.vitamio_買粉絲View);
path = "rtmp://rrbalancer.broadcast.tneg.de:1935/pw/ruk/ruk"; /*options = new HashMap<>();
options.put("rtmp_playpath", "");
options.put("rtmp_swfurl", "");
options.put("rtmp_live", "1");
options.put("rtmp_pageurl", "");*/
mVideoView.setVideoPath(path); //mVideoView.setVideoURI(Uri.parse(path), options);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.setPlaybackSpeed(1.0f);
}
});
}
}1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
雖然上面代碼很清晰明了,但需要指出的是請修改你播放RTMP流的路徑。在android上,有時可能使用帶報頭路徑來播放RTMP流。幸運的是,Vitamio RTMP播放器也支持這種方式。因此,所有類型的RTMP流可以使用Vitamio庫。上面的例子會是這個樣子:
Android Vitamio 直播視頻播放功能的實現
Android RTSP流媒體
但是如果你使用Vitamio庫,可以更好的播放RTSP流。事實上Vitamio也支持RTSP流的回播。和上面過程是一樣的,包括Vitamio的VideoView在布局文件,并使用路徑變量指定的RTSP url
mVideoView = (VideoView) findViewById(R.id.vitamio_買粉絲View);
path = "rtsp://wowzaec2demo.streamlock.買粉絲/vod/mp4:BigBuckBunny_115k.mov";
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.setPlaybackSpeed(1.0f);
}
});12345678910111213
Android m3u8 流媒體
“如何在android上播放m3u8視頻”是android開發者最常見的問題之一。通過Http 協議進行視頻流直播最簡單的辦法就是使用標準的 VideoView. 但只能在android3.0以上的設備上播放m3u8流。因為在Android 3.0引入HTTP/ HTTPS直播和HTTP/ HTTPS漸進式流媒體協議,在android3.1完全支持HTTPS。
如果你希望在早期的版本上實現支持android m3u8流的HTTP實時流媒體 (HLS)。應該考慮使用Vitamio庫,這個庫支持在android API7以上播放m3u8。使用方式,同樣的在布局文件中使用Vitamio的VideoView,并指定的HTTP實時流媒體URL。
mVideoView = (VideoView) findViewById(R.id.vitamio_買粉絲View);
path = "買粉絲://93.184.221.133/00573D/236/236-0.m3u8";
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.setPlaybackSpeed(1.0f);
}
});12345678910111213
Playing m3u8 stream on Android with Vitamio would look something like this:
在androi上使用Vitamio播放m3u8流效果如下:
Android Vitamio 直播視頻播放功能的實現
Android MMS 流
Vitamio庫是一個強大的庫,還支持Microsoft媒體服務器(MMS)流中的播放。 MMS是網絡流媒體協議,主要用于網絡廣播和電臺直播。使用Vitamio用于在anroid的MMS流和其他協議沒有什么不同。所有你需要做的只是更換路徑變量指向一個MMS url:
mVideoView = (VideoView) findViewById(R.id.vitamio_買粉絲View);
path = "mms://beotelmedia.beotel.買粉絲/studiob";
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.setPlaybackSpeed(1.0f);
}
});123456789101112
結論
通過上面的討論,可以確定地說,Vitamio是一個強大的多平臺庫(ios and android)。通過使用Vitamio庫 能播放多種類型的視頻格式和協議如RTMP, RTSP, HTTP Live, and HTTP漸進式流協議。另外一個很好的功能是,vitamio支持字幕和多音軌的播放。Vitamio的唯一的缺點是,它不是完全的開源。
閱讀全文
很赞哦!(7377)
相关文章
- 02 新疆海外國際旅行社電話(新疆海外國際旅行社的旅行社發展)
- 02 新型離岸國際貿易新在哪(當代國際分工有哪些新特點、這給中國和亞太國家發展帶來了哪些機遇?最好條理一點~~)
- 02 新加坡第一大貿易伙伴(新加坡的三大經濟支柱是哪幾個?)
- 01 inspire me什么意思(inspire是什么意思)
- 02 新疆博物館買粉絲關注(8月新疆多個文博場館限流-疫情防控通知)
- 01 how old is youtube 2023(SAT重回1600分 新版2023年實施)
- 02 新疆博物館網上預約買粉絲官網入口(蘇州博物館買粉絲買粉絲預約入口+方式蘇州博物館官方買粉絲買粉絲)
- 02 新疆見義勇為買粉絲買粉絲(怎么評價2015高考作文題目)
- 02 新年采購年貨的作文(購年貨作文)
- 01 inside you什么意思中文(leep in loving you這首英文歌的中文翻譯是什么?)
热门文章
站长推荐
01 how to use powerpoint youtube(怎么將YouTube視頻嵌入到PPT PowerPoint中)
01 inside手游下載華軍軟件園(囚禁inside手游在哪可以下載)
01 ieee期刊怎么訂閱(IEEE,EI,SCI 投稿過程中都有哪些狀態?時間大概多久)
02 新興發展北京國際貿易有限公司業務市場部(石藥集團恩必普藥業有限公司是國企嗎)
02 新中國初期對外貿易的變化(新中國對外開放的歷程?)
02 新中國成立初期對外貿易的特點(新中國外交有哪些成就)
01 inspire sb of sth(inspire的用法)
02 新生兒網織紅細胞計數偏高(紅細胞壓積是什么)