Android開發之控制手機音頻,android開發音頻
本執行個體通過MediaPlayer播放一首音樂並通過AudioManager控制手機音頻,關於AudioManager的詳解可參照:Android開發之AudioManager(音頻管理器)詳解
程式運行:
執行個體代碼:
package com.jph.audiomanagerdemo;import android.media.AudioManager;import android.media.MediaPlayer;import android.os.Bundle;import android.app.Activity;import android.app.Service;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.CompoundButton;import android.widget.CompoundButton.OnCheckedChangeListener;import android.widget.ToggleButton;/** * Describe:</br> * 控制資料音頻 * 本執行個體通過MediaPlayer播放一首音樂並 * 通過AudioManager控制手機音頻 * */public class AudioManagerDemo extends Activity {Button btnPlay,btnUp,btnDown;ToggleButton btnMute;AudioManager aManager;MediaPlayer mPlayer;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);btnDown=(Button)findViewById(R.id.btnDown);btnPlay=(Button)findViewById(R.id.btnPlay);btnUp=(Button)findViewById(R.id.btnUp);btnMute=(ToggleButton)findViewById(R.id.btnMute);//初始化AudioManageraManager=(AudioManager) getSystemService(Service.AUDIO_SERVICE);OnClickListener listener=new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.btnPlay://初始化MediaPlayer為播放音樂做準備mPlayer=MediaPlayer.create(AudioManagerDemo.this, R.raw.music);//設定音樂迴圈播放mPlayer.setLooping(true);//播放mPlayer.start();break;case R.id.btnUp://指定調節音樂的音頻為增大,並顯示音量圖形aManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);break;case R.id.btnDown://指定調節音樂的音頻為減小,並顯示音量圖形aManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);break;default:break;}}};//為按鈕添加監聽器btnDown.setOnClickListener(listener);btnPlay.setOnClickListener(listener);btnUp.setOnClickListener(listener);btnMute.setOnCheckedChangeListener(new OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {// TODO Auto-generated method stub//設定音樂靜音aManager.setStreamMute(AudioManager.STREAM_MUSIC, isChecked);}});}}main.xml
<RelativeLayout 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"> <Button android:id="@+id/btnPlay" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:text="播放"/> <Button android:id="@+id/btnUp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_below="@+id/btnPlay" android:text="增大音量"/> <Button android:id="@+id/btnDown" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_below="@+id/btnUp" android:text="減小音量"/> <ToggleButton android:id="@+id/btnMute" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_below="@+id/btnDown" android:textOn="關閉靜音" android:textOff="開啟靜音"/></RelativeLayout>
android開發 音樂播放器 控制聲音的方法有幾種?
/**
* Android 系統聲音控制對象
*/
AudioManager audioManager;
//根據AudioManager 對象獲得系統聲音的服務
audioManager = (AudioManager)getSystemService(AUDIO_SERVICE);
int maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
int currentVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, progress, MaxVolume);
android手機怎實現語音控制
語音控制並不是靠單純的聲音採集觸發,而是採集聲音後將聲音轉碼為文字,靠文字來觸發這些功能。向單片機發送的最終資料是文字,通過文字觸發功能,而並不是用語音檔案觸發功能。您明白了嗎?