C/C++プログラマの管理者が, Androidプログラムにチャレンジ. AndroidプログラミングのTipsをメモっていく予定です.

音楽の再生用や着信音の再生用など, Androidには幾つかの再生ストリームが存在しており, それぞれに対して再生音量の設定などが行える.
音声のストリームタイプを設定するには, メディアプレイヤー(MediaPlayer)クラスのsetStreamTypeメソッドを使う.
ストリームタイプは, オーディオマネージャー(AndroidManager)クラスで定義されている.
ストリームタイプ意 味
STREAM_ALARMアラーム音
STREAM_DTMFプッシュダイヤル音
STREAM_MUSIC音楽
STREAM_NOTIFICATION通知音
STREAM_RING着信音
STREAM_SYSTEMシステム音
STREAM_VOICE_CALL通話音

音声のストリームタイプの設定

  • MeidaPlayer01.java
    • MediaPlayerのインスタンスを生成する.
    • MediaPlayer#setAudioStreamTypeメソッドで, 音声のストリームタイプを設定する.
package com.moonlight_aska.android.mediaplayer01;

import java.io.IOException;
import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;

public class MediaPlayer01 extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    MediaPlayer player = new MediaPlayer();
    try {
      // 音声メディアの指定&再生
      player.setDataSource("/sdcard/MusicSample/sample.m4a");
      // ストリームタイプの設定
      player.setAudioStreamType(AudioManager.STREAM_MUSIC);
      player.prepare();
      player.start();
    } catch (IllegalArgumentException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (IllegalStateException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
}



このページへのコメント

たけださん

askaです.

ご連絡ありがとうございます.
少し調べなおしたところ, STREAM_VOICE_CALLは通話音のようですので内容を修正いたしました.

0
Posted by aska 2012年04月19日(木) 00:56:31 返信

STREAM_VOICE_CALLは、呼出音ではなく、通話音声のようです。(バックスピーカではなく、イヤースピーカから聞こえる音です)

0
Posted by たけだ 2012年04月17日(火) 10:40:58 返信

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu


逆引き(基礎編)

画面表示/操作(49)

フラグメント(1)

逆引き(応用編)

Firebase(2)

AD



管理人/副管理人のみ編集できます