音频,视频简单运用

package com.zl.media;

import java.io.File;
import java.io.IOException;
import java.util.Calendar;
import java.util.Locale;

import com.zl.listview.R;

import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.media.MediaRecorder;
import android.net.Uri;
import android.os.Bundle;
import android.text.format.DateFormat;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.MediaController;
import android.widget.TextView;
import android.widget.VideoView;

public class MusicPlayer extends Activity{
    private ImageButton btn_play,btn_pause,btn_stop,videoplay;
    private MediaPlayer mediaPlayer;
    private VideoView videoView;
    private MediaRecorder mediarecorder;
    private TextView text_play,text_pause;
    private Button bt_jump;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.musicplayer);
        btn_play = (ImageButton)findViewById(R.id.play);
        btn_pause = (ImageButton)findViewById(R.id.pause);
        btn_stop = (ImageButton)findViewById(R.id.stop);
        videoplay = (ImageButton)findViewById(R.id.videoplay);
        videoView = (VideoView)findViewById(R.id.videoview);
        text_play = (TextView)findViewById(R.id.text_play);
        text_pause = (TextView)findViewById(R.id.text_pause);
        bt_jump = (Button)findViewById(R.id.bt_jump);
        btn_play.setEnabled(false);
        btn_pause.setEnabled(false);
        btn_stop.setEnabled(false);
        //定义MediaController对象
        MediaController mediaController = new MediaController(this);
        //把MediaController对象绑定到VideoView上
        mediaController.setAnchorView(videoView);
        //设置VideoView的控制器是mediaController
        videoView.setMediaController(mediaController);
        OnClickListener ocl = new OnClickListener() {
            @Override
            public void onClick(View view) {
                int id = view.getId();
                switch (id) {
                case R.id.bt_jump:
//                    Intent intent = new Intent();
//                    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//                    ComponentName comp = new ComponentName("com.zl.musicplayer", "com.zl.musicplayer.IYue");    
//                    intent.setComponent(comp);     
//                    intent.setAction("android.intent.action.MAIN");  
//                    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//                    startActivity(intent);
//                    intent.setComponent(new ComponentName("com.zl.media","com.zl.musicplayer"));   
//                    intent.setAction(Intent.ACTION_VIEW);  
//                    intent.setAction("com.zl.musicplayer");   
//                    startActivity(intent);   
                    Uri uri = Uri.parse("http://blog.sina.com.cn/s/blog_781428870102v0q3.html");
                    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
                    startActivity(intent);
                    break;
                case R.id.play:
                    play();
                    break;
                case R.id.pause:
                    pause();
                    break;
                case R.id.stop:
                    stop();
                    break;
                case R.id.videoplay:
                    //这两种方法都可以 videoView.setVideoPath("file:///sdcard/love_480320.mp4");
                    videoView.setVideoURI(Uri.parse("/sdcard/love_480320.mp4"));
                    videoView.start();
                    break;
                case R.id.text_play:
                    File file = new File("/sdcard/"+"ZL"+
                             new DateFormat().format("yyyyMMdd_hhmmss",Calendar.getInstance(Locale.CHINA)) + ".amr");
                    mediarecorder = new MediaRecorder();
                    // 从麦克风源进行录音
                    mediarecorder.setAudioSource(MediaRecorder.AudioSource.DEFAULT);
                    // 设置输出格式
                    mediarecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
                    // 设置编码格式
                    mediarecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
                    // 设置输出文件
                    mediarecorder.setOutputFile(file.getAbsolutePath());
                    try {
                        // 创建文件
                        file.createNewFile();
                        // 准备录制
                        mediarecorder.prepare();
                    }catch (IOException e) {
                        e.printStackTrace();
                    }
                    // 开始录制
                    mediarecorder.start();
                    text_play.setText("录音中……");
                    break;
                case R.id.text_pause:
                    if (mediarecorder != null) {
                        mediarecorder.stop();
                        mediarecorder.release();
                        mediarecorder = null;
                        text_play.setText("录音");
                    }
                    break;
                }
            }
        };
        btn_play.setOnClickListener(ocl);
        btn_pause.setOnClickListener(ocl);
        btn_stop.setOnClickListener(ocl);
        videoplay.setOnClickListener(ocl);
        text_play.setOnClickListener(ocl);
        text_pause.setOnClickListener(ocl);
        bt_jump.setOnClickListener(ocl);
        initMediaPlayer();
    }
    
    private void initMediaPlayer(){
        mediaPlayer = MediaPlayer.create(getApplicationContext(),R.raw.song);
        mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                btn_play.setEnabled(true);
            }
        });
        mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mp) {
                stop();
            }
        });
    }
    
    private void play(){
        mediaPlayer.start();
        btn_play.setEnabled(false);
        btn_pause.setEnabled(true);
        btn_stop.setEnabled(true);
    }
    
    private void pause(){
        mediaPlayer.pause();
        btn_play.setEnabled(true);
        btn_pause.setEnabled(false);
        btn_stop.setEnabled(true);
    }
    private void stop(){
        mediaPlayer.stop();
        btn_pause.setEnabled(false);
        btn_stop.setEnabled(false);
        try {
            mediaPlayer.prepare();
            mediaPlayer.seekTo(0);
            btn_play.setEnabled(true);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    
    @Override
    protected void onDestroy() {
        // activity销毁前停止播放
        super.onDestroy();
        if(btn_stop.isEnabled()){
            stop();
        }
    }
}

音频,视频简单运用

时间: 2024-10-08 07:37:33

音频,视频简单运用的相关文章

Android 打开/播放电脑的音频/视频文件

今天早上一到办公室,照常打开博客园看文章,看到有一片文章是用  http://www.cnblogs.com/wdfrog/p/3738180.html 看到这哥们实现的方法好复杂,又是配置电脑端,又是配置手机端,还又是转码啥的,倒腾时间长不说,而且还很麻烦,这里介绍下我是如何用手机直接播放电脑上的文件的. 之所以播放电脑上的文件,主要原因是视频文件都很大,清晰度高的一部电影都1GB左右了,对于手机来说,虽然能够装得下,但是看完就得删了,没法长时间储存在手机上, 来回往手机上拷视频文件,就这文件

iOS 音频视频制作

--iOS多媒体 概览 随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制,还是对麦克风.摄像头的操作都提供了多套API.在今天的文章中将会对这些内容进行一一介绍: 音频 音效 音乐 音频会话 录音 音频队列服务 视频 MPMoviePlayerController MPMoviePlayerViewController AVPlayer 摄像头 UIImagePicker

我的启蒙--HTML5 第二章 音频视频

音频视频 标签如下 (1)audio音频 (2)video视频 媒体元素属型 controls : 显示或隐藏用户控制界面 autoplay : 媒体是否自动播放 loop : 媒体是否循环播放 currentTime : 开始到播放现在所用的时间 duration : 媒体总时间(只读) volume : 0.0-1.0的音量相对值 muted : 是否静音 paused : 媒体是否暂停(只读) ended : 媒体是否播放完毕(只读) error : 媒体发生错误的时候,返回错误代码 (只

embed标签的使用(在网页中播放各种音频视频的插件的使用)

embed标签的使用(在网页中播放各种音频视频的插件的使用) 链接地址:http://blog.csdn.net/TomyGuan/archive/2006/11/10/1377807.aspx 播放器插件使用说明: 代码:< EMBED src="music.mid"autostart="true"loop="2"width="80"height="30"> src:音乐文件的路径及文件名:(

多媒体音频视频与iPad基本使用

多媒体音频视频与iPad基本使用 一.多媒体播放 1.配置库  -->  AVFoundation.framework 头文件   #import <AVFoundation/AVFoundation.h> 2.播放音频 (1)播放本地音频 @interface ViewController () { // AVAudioPlayer *_player; UISlider *_volumeSlider; //音量控制 // UIProgressView *_playProgressVie

HTML5音频视频总结

音频格式 视频 音频 ogg ogg mp4 mp3 webm wav video标签属性 属性 值 作用 controls controls HTML5 默认视频样式 autoplay autoplay 自动播放属性 loop loop 循环播放 poster 图片路径 设置视频初始背景图片 video的API方法  play()  开始播放音频.视频  pause()  暂停播放  RequestFullScreen() 全屏模式 mozRequestFullScreen() moz内核 w

HTML5媒体(音频/视频)

摘要: 在HTML5出现之前,web媒体大部分通过Flash来实现.这种方式造成了文件大加载慢,影响网站性能,开发难度高,维护麻烦,不易扩展等.这就导致HTML5自己开始支持媒体功能.HTML5 DOM 为 <audio> 和 <video> 元素提供了方法.属性和事件. 浏览器: 从IE9已经开始支持audio和video标签. Audio: <audio> 标签定义声音,比如音乐或其他音频流. 音频格式:    IE9  Firefox3.5  Opera10.5

ffmpeg 音频视频格式转换

ffmpeg是Linux中转换音频视频文件的常用工具. mp4 to mp3: ffmpeg -i $ID.mp4 -acodec libmp3lame -ac 1 -ar 16000 $ID.mp3 ffmpeg -i $ID.mp4 -vn -ab 128k -ar 16000 -y $ID.mp3 -i: 表示输入的音频或视频 -ac: channel 设置通道3, 默认为1 -ar: sample rate 设置音频采样率 -acodec: 使用codec编解码 -ab: bitrate

手机音频视频数据被误删了还能恢复吗

生活中我们除了喜欢用手机拍照外,用手机录音也是一件必不可少的爱好录音的内容也是五花八门,运用于各种情形,这也是从另一方面更为形象的记录当时的情景.然而我们有时候会不小心将录制的音视频给删掉,那么手机音视频文件误删恢复跟一般的数据恢复方法有区别吗?其实想要快速的实现手机音视频文件恢复我们是有办法的,下面就给大家介绍一下恢复手机音视频的方法步骤.开始恢复:第一步:首先我们在手机应用商城或者浏览器中搜索"极速数据恢复"下载并安装就可以了,这款工具可以帮我们恢复音频视频记录.第二步:打开安装好