Vitamio

来源:互联网 发布:绝世唐门进阶数据 编辑:程序博客网 时间:2024/05/19 08:05
  • 打开百度云—音视频直播LSS

这里写图片描述

  • 管理控制台—音视频直播认证

这里写图片描述

  • 下载Vitamio

    这里写图片描述

  • AndroidStudio导入model

这里写图片描述

  • 代码
    <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.WRITE_EXTERNAL_STORAGE" />
<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" />
        <activity android:name=".MainActivity">            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.DEFAULT" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>
public class MyApp extends Application {    @Override    public void onCreate() {        super.onCreate();        Vitamio.initialize(this);    }}
import android.graphics.PixelFormat;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.support.v7.app.AppCompatActivity;import android.view.SurfaceHolder;import android.view.SurfaceView;import android.view.View;import android.widget.ImageView;import java.io.IOException;import io.vov.vitamio.MediaPlayer;import static com.example.liveplayer.R.id.iv;import static com.example.liveplayer.R.id.sv;public class MainActivity extends AppCompatActivity implements SurfaceHolder.Callback, View.OnClickListener {    String url = "rtmp://live.hkstv.hk.lxdns.com/live/hks";    SurfaceView surfaceView;    ImageView imageView;    MediaPlayer mediaPlayer;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        surfaceView= (SurfaceView) findViewById(sv);        imageView= (ImageView) findViewById(iv);        surfaceView.getHolder().addCallback(this);        surfaceView.setOnClickListener(this);        surfaceView.getHolder().setFormat(PixelFormat.RGBA_8888);    }    @Override    public void surfaceCreated(SurfaceHolder surfaceHolder) {        mediaPlayer=new MediaPlayer(this);        try {            mediaPlayer.setDataSource(url);            mediaPlayer.setDisplay(surfaceHolder);            mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {                @Override                public void onPrepared(MediaPlayer mp) {                    mediaPlayer.start();                }            });            mediaPlayer.prepareAsync();            mediaPlayer.setBufferSize(1024 * 1024 * 2);        } catch (IOException e) {            e.printStackTrace();        }    }    @Override    public void surfaceChanged(SurfaceHolder surfaceHolder, int i, int i1, int i2) {    }    @Override    public void surfaceDestroyed(SurfaceHolder surfaceHolder) {        if (mediaPlayer != null) {            if (mediaPlayer.isPlaying())                mediaPlayer.stop();            mediaPlayer.release();            mediaPlayer = null;        }    }    Handler handler=new Handler(){        @Override        public void handleMessage(Message msg) {            super.handleMessage(msg);            imageView.setVisibility(View.GONE);        }    };    @Override    public void onClick(View view) {        if (mediaPlayer != null) {            if (mediaPlayer.isPlaying()) {                imageView.setVisibility(View.VISIBLE);                imageView.setImageResource(R.mipmap.pause);                mediaPlayer.pause();            }else {                imageView.setImageResource(R.mipmap.play);                mediaPlayer.start();                handler.sendEmptyMessageDelayed(1, 2000);            }        }    }}
0 0
原创粉丝点击