Vitamio中文名稱“維他蜜”,是一款Android與IOS平台上的全能多媒體開發架構,全面支援硬體解碼與GPU渲染。Vitamio能夠流程播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常見格式的視訊,還可以在Android與IOS上跨平台支援MMS,RTSP,RTMP,HLS等常見的多種視訊流媒體協定,包括點播與直播。
下載下傳位址:https://github.com/yixia/VitamioBundle
引用Vitamio包流程
在建立的工程目錄下建立一個檔案夾,這邊取名libraries
将下載下傳好的檔案,解壓,把vitamio檔案夾複制粘貼過來
再把dist檔案夾下的arm_x86_mips檔案夾下的libs檔案夾裡的mips和x86複制粘貼到libraries檔案夾下的vitamio檔案夾下的libs檔案夾
打開工程的settings.gradle,導入如圖
右鍵app打開設定
添加
對照工程的build.gradle修改vitamio的build.gradle,主要修改框起來的部分
之後重新建立一下
如果還有問題,系統提示去修改
播放音頻
package com.example.vitamio;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import java.io.IOException;
import io.vov.vitamio.LibsChecker;
import io.vov.vitamio.MediaPlayer;
public class MainActivity extends AppCompatActivity implements MediaPlayer.OnPreparedListener{
private MediaPlayer mediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//加載so類庫(通常使用C或C++編寫)
if (!LibsChecker.checkVitamioLibs(this))
return;
setContentView(R.layout.activity_main);
initMediaPlay();
}
private void initMediaPlay() {
mediaPlayer=new MediaPlayer(this);
}
public void play(View v){
String path= Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC)+"/zhh.mp3";
try {
mediaPlayer.reset();
mediaPlayer.setDataSource(path);
mediaPlayer.setOnPreparedListener(this);
mediaPlayer.prepareAsync();
} catch (IOException e) {
e.printStackTrace();
}
}
public void pause(View v){
mediaPlayer.pause();
}
public void stop(View v){
mediaPlayer.stop();
mediaPlayer.release();
}
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
}
權限設定
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
清單檔案中添加引用的activity
<activity
android:name="io.vov.vitamio.activity.InitActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|keyboard|keyboardHidden|navigation"
android:launchMode="singleTop"
android:theme="@android:style/Theme.NoTitleBar"
android:windowSoftInputMode="stateAlwaysHidden" />
播放視訊
package com.example.vitamio;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import io.vov.vitamio.LibsChecker;
import io.vov.vitamio.widget.MediaController;
import io.vov.vitamio.widget.VideoView;
public class Main2Activity extends AppCompatActivity {
private VideoView vv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (!LibsChecker.checkVitamioLibs(this))
return;
setContentView(R.layout.activity_main2);
vv=findViewById(R.id.surface_view);
MediaController mc=new MediaController(this);
vv.setMediaController(mc);
String path= Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES)+"/2.mp4";
vv.setVideoPath(path);
vv.requestFocus();
vv.start();
}
}