public
class
MediaActionSound
extends Object
java.lang.Object | |
↳ | android.media.MediaActionSound |
A class for producing sounds that match those produced by various actions taken by the media and camera APIs.
This class is recommended for use with the android.hardware.camera2
API, since the
camera2 API does not play any sounds on its own for any capture or video recording actions.
With the older Camera
API, use this class to play an appropriate
camera operation sound when implementing a custom still or video recording mechanism (through the
Camera preview callbacks with
Camera.setPreviewCallback
, or through GPU
processing with Camera.setPreviewTexture
, for
example), or when implementing some other camera-like function in your application.
There is no need to play sounds when using
Camera.takePicture
or
MediaRecorder
for still images or video, respectively,
as the Android framework will play the appropriate sounds when needed for
these calls.
Constants | |
---|---|
int |
FOCUS_COMPLETE
A sound to indicate that focusing has completed. |
int |
SHUTTER_CLICK
The sound used by
|
int |
START_VIDEO_RECORDING
The sound used by
|
int |
STOP_VIDEO_RECORDING
The sound used by
|
Public constructors | |
---|---|
MediaActionSound()
Construct a new MediaActionSound instance. |
Public methods | |
---|---|
void
|
load(int soundName)
Preload a predefined platform sound to minimize latency when the sound is
played later by |
void
|
play(int soundName)
Play one of the predefined platform sounds for media actions. |
void
|
release()
Free up all audio resources used by this MediaActionSound instance. |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
int FOCUS_COMPLETE
A sound to indicate that focusing has completed. Because deciding when this occurs is application-dependent, this sound is not used by any methods in the media or camera APIs.
See also:
Constant Value: 1 (0x00000001)
int SHUTTER_CLICK
The sound used by
Camera.takePicture
to
indicate still image capture.
See also:
Constant Value: 0 (0x00000000)
int START_VIDEO_RECORDING
The sound used by
MediaRecorder.start()
to
indicate the start of video recording.
See also:
Constant Value: 2 (0x00000002)
int STOP_VIDEO_RECORDING
The sound used by
MediaRecorder.stop()
to
indicate the end of video recording.
See also:
Constant Value: 3 (0x00000003)
MediaActionSound ()
Construct a new MediaActionSound instance. Only a single instance is needed for playing any platform media action sound; you do not need a separate instance for each sound type.
void load (int soundName)
Preload a predefined platform sound to minimize latency when the sound is
played later by play(int)
.
Parameters | |
---|---|
soundName |
int :
The type of sound to preload, selected from
SHUTTER_CLICK, FOCUS_COMPLETE, START_VIDEO_RECORDING, or
STOP_VIDEO_RECORDING. |
void play (int soundName)
Play one of the predefined platform sounds for media actions.
Use this method to play a platform-specific sound for various media
actions. The sound playback is done asynchronously, with the same
behavior and content as the sounds played by
Camera.takePicture
,
MediaRecorder.start
, and
MediaRecorder.stop
.
With the camera2
API, this method can be used to play
standard camera operation sounds with the appropriate system behavior for such sounds.
With the older Camera
API, using this method makes it easy to
match the default device sounds when recording or capturing data through the preview
callbacks, or when implementing custom camera-like features in your application.
If the sound has not been loaded by load(int)
before calling play,
play will load the sound at the cost of some additional latency before
sound playback begins.
Parameters | |
---|---|
soundName |
int :
The type of sound to play, selected from
SHUTTER_CLICK, FOCUS_COMPLETE, START_VIDEO_RECORDING, or
STOP_VIDEO_RECORDING. |
void release ()
Free up all audio resources used by this MediaActionSound instance. Do not call any other methods on a MediaActionSound instance after calling release().