Android MediaPlayer详解视屏播放之SurfaceView(四)
来源:互联网 发布:python 2.7.x下载官网 编辑:程序博客网 时间:2024/06/01 10:16
Android MediaPlayer详解视屏播放之SurfaceView(四)
效果图
Android MediaPlayer详解(一)
Android MediaPlayer音频播放(二)
Android MediaPlayer视频播放之VideoView(三)
MediaPlayer 视屏播放之SurfaceView
1.XML布局文件
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.cxy.mediaplayer.MainActivity"> <SurfaceView android:id="@+id/sfv_show" android:layout_width="match_parent" android:layout_height="300dp"/> <Button android:id="@+id/btn_start" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开始"/> <Button android:id="@+id/btn_pause" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="暂停 "/> <Button android:id="@+id/btn_stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="终止"/></LinearLayout>
2.主类MainActivity
package com.example.cxy.mediaplayer;import android.media.AudioManager;import android.media.MediaPlayer;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.SurfaceHolder;import android.view.SurfaceView;import android.view.View;import android.widget.Button;public class MainActivity extends AppCompatActivity implements View.OnClickListener, SurfaceHolder.Callback { private MediaPlayer mPlayer = null; private SurfaceView sfv_show; private SurfaceHolder surfaceHolder; private Button btn_start; private Button btn_pause; private Button btn_stop; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); } private void initView() { sfv_show = (SurfaceView) findViewById(R.id.sfv_show); btn_start = (Button) findViewById(R.id.btn_start); btn_pause = (Button) findViewById(R.id.btn_pause); btn_stop = (Button) findViewById(R.id.btn_stop); btn_start.setOnClickListener(this); btn_pause.setOnClickListener(this); btn_stop.setOnClickListener(this); //初始化SurfaceHolder类,SurfaceView的控制器 surfaceHolder = sfv_show.getHolder(); surfaceHolder.addCallback(this); //显示的分辨率,不设置为视频默认 surfaceHolder.setFixedSize(320, 220); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn_start: mPlayer.start(); break; case R.id.btn_pause: mPlayer.pause(); break; case R.id.btn_stop: mPlayer.stop(); break; } } @Override public void surfaceCreated(SurfaceHolder holder) { mPlayer = MediaPlayer.create(MainActivity.this, R.raw.oppo); mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); //设置显示视频显示在SurfaceView上 mPlayer.setDisplay(surfaceHolder); } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { } @Override public void surfaceDestroyed(SurfaceHolder holder) { } @Override protected void onDestroy() { super.onDestroy(); if (mPlayer.isPlaying()) { mPlayer.stop(); } mPlayer.release(); }}
0 0
- Android MediaPlayer详解视屏播放之SurfaceView(四)
- Android 视频播放之MediaPlayer+SurfaceView
- Android播放视频之MediaPlayer和SurfaceView
- Android MediaPlayer详解视屏播放之VideoView(三)
- android视频播放MediaPlayer+SurfaceView
- Android开发之MediaPlayer和SurfaceView播放视频
- Android之视频播放使用MediaPlayer+SurfaceView代替ViedoView控件
- 使用SurfaceView+MediaPlayer播放视
- Android SurfaceView + MediaPlayer实现视频播放器
- android MediaPlayer SurfaceView 网络视频播放器
- Android 播放视频(一)SurfaceView + MediaPlayer
- Android MediaPlayer+SurfaceView实现视频播放
- Android SurfaceView+MediaPlayer实现视频播放
- android surfaceView+mediaPlayer 自定义视频播放器
- Android:使用MediaPlayer和SurfaceView播放视频
- Android SurfaceView+ mediaplayer 重复播放视频
- Android SurfaceView+MediaPlayer 无缝播放 视频
- Android 使用 MediaPlayer + SurfaceView 播放视频
- c#数组的写法
- 谈谈我对面向对象编程的经验看法
- Wolf从零学编程-用Django撸个Blog(一)
- Nnuit 简介
- 商人小鑫
- Android MediaPlayer详解视屏播放之SurfaceView(四)
- 使用CSDN-markdown编辑器编写博客
- socketIo 搭建长连接(1)
- 类的hello,world
- Caffe:图像数据转换成ldb(leveldb/lmdb)文件
- 历届试题 回文数字
- Maven入门指南(一)
- 第11节 C语言三大结构之顺序结构与选择结构
- 图像处理学习之改进的混合高斯背景建模