[android] 안드로이드 Audio API
안드로이드 애플리케이션에서 오디오를 처리하기 위한 API는 안드로이드 플랫폼에서 다양한 오디오 작업을 수행하는 데 사용됩니다. 안드로이드 애플리케이션에서는 오디오 녹음, 재생, 오디오 스트림 제어 등 다양한 오디오 관련 작업을 수행할 수 있습니다.
안드로이드 오디오 API 종류
-
AudioRecord 안드로이드에서 오디오를 녹음하기 위한 API로, PCM (Pulse-Code Modulation) 데이터를 읽어들일 수 있습니다.
AudioRecord audioRecord = new AudioRecord.Builder() .setAudioSource(MediaRecorder.AudioSource.MIC) .setAudioFormat(new AudioFormat.Builder() .setEncoding(AudioFormat.Encoding.PCM_16BIT) .setSampleRate(44100) .setChannelMask(AudioFormat.CHANNEL_IN_MONO) .build()) .setBufferSizeInBytes(minBufferSize) .build();
-
MediaPlayer 오디오 파일을 재생하기 위한 API로, 로컬 파일이나 네트워크에서 가져온 오디오 데이터를 재생할 수 있습니다.
MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.audio_file); mediaPlayer.start();
-
AudioManager 디바이스 오디오 설정을 관리하는 API로, 볼륨 조절, 오디오 모드 설정, 오디오 스트림 제어 등을 관리할 수 있습니다.
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); int maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC); int currentVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
안드로이드 오디오 API 사용 예시
-
오디오 녹음 및 재생
// 녹음 AudioRecord audioRecord = new AudioRecord(...); byte[] buffer = new byte[minBufferSize]; audioRecord.startRecording(); audioRecord.read(buffer, 0, minBufferSize); // 재생 AudioTrack audioTrack = new AudioTrack(...); audioTrack.play(); audioTrack.write(buffer, 0, minBufferSize);
-
오디오 파일 재생
MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.audio_file); mediaPlayer.start();
-
볼륨 조절
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, 0);
위와 같이 안드로이드 애플리케이션에서는 다양한 오디오 작업을 수행할 수 있으며, Android Developers 사이트에 상세한 정보가 제공되고 있으니 참조하시기 바랍니다.
Android Developers - Audio API
안드로이드 애플리케이션에서 오디오를 처리하는 방법과 주요 API에 대한 기본 내용을 살펴보았습니다. 계속해서 이러한 API를 활용하여 음악 애플리케이션, 녹음 앱 등을 개발할 수 있습니다.