Add a value in audio policy flags to indicate an output
stream providing deep audio PCM buffers. Such an output
helps reducing the power consumption at the expense of audio latency.
Stagefright will indicate a preference for such an output when playing music
only (no video) and the audio duration is more than a given threshold.
Change-Id: I0e6a9f5746a22d2bfea2b21dd182489a34a4b528
Removed obsolete AUDIO_POLICY_OUTPUT_FLAG_xxx flags definition.
All project mmust use AUDIO_OUTPUT_FLAG_xxx flags from system/audio.h
Change-Id: Ib374dee96afcf176df35d9a621be02ce0e30caf5
Added definitions for output flags needed by new audio
HAL device API.
These flags where previously defined in audio_policy.h.
Definition in audio_policy.h remains temporarily until
all projects are changed to use new flags.
Change-Id: I371558c78050daae73942a36f51854372ab71068
This format is exposed outside of the HAL to applications.
RAW_SENSOR is a single-channel 16-bit format, typically representing raw
Bayer-pattern images from an image sensor, with minimal processing.
The exact pixel layout of the data in the buffer is sensor-dependent, and
needs to be queried from the camera device.
Generally, not all 16 bits are used; more common values are 10 or 12
bits. All parameters to interpret the raw data (black and white points,
color space, etc) must be queried from the camera device.
This format assumes
- an even width
- an even height
- a horizontal stride multiple of 16 pixels (32 bytes).
Change-Id: I67fc72d1c2c899e258fcd53b3ab91b459e9210f0
NATIVE_WINDOW_SCALING_MODE_CROP forces the SurfaceTexture
to match the crop rect's aspect ratio to that of the window.
Change-Id: Id126b106eac06fd34d2d650a1bc66ffbac26c501
Add token and wrapper function for a new private function
native_window_set_buffers_user_dimensions which overrides the native window
size as the default buffer size. This is intended for use primarily by
ANativeWindow_SetBuffersGeometry so that application-set buffer dimensions may
co-exist with pre-rotation in e.g. the GLES driver which calls
native_window_set_buffers_dimension.
Change-Id: I6c0fc334c070290cc15b04daae1484d0a28cd8ad
The problem is both face unlock and camera application try to open
the hardware camera at the same time. A new camera open API is
added to let face unlock take the camera away from the existing
client. The release message is used to notify the existing client,
so it has time to release the hardware camera and clean up.
If existing client tries to use the camera after it is released,
the method will return error. It is still possible that the
camera has been taken and the existing client has not got the
notification. When any method returns error, the existing client
can use ping command to check whether the camera has been released.
If yes, the client can silently finish the app itself or show a
toast if it wants.
bug:5584464
Change-Id: I87f9f7db2f7b2b70ab2405f9b3da0d8946d6a01b
Added a flag for output stream attributes indicating a primary
audio output stream.
The primary audio output stream is unique on a platform and receives all volume,
routing and parameters related to telephony use case.
Change-Id: Ic50b3c02cc60805031f26b819da6cf9ad65ad11c
Renamed AUDIO_POLICY_OUTPUT_FLAG_INDIRECT to AUDIO_POLICY_OUTPUT_FLAG_NONE
which is more appropriate.
Change-Id: Ie898ddc2279db55a65ece96e09232163c2e78024
this is needed if a display/gpu driver needs to create
service threads that can block the main ui thread.
to avoid priority inversions, these must run at
HAL_PRIORITY_URGENT_DISPLAY
Change-Id: I3af592e05a6d1b6f39a2b7885a7c842e54abfce2
these hooks are replaced by api_connect/api_disconnect
which serve exactly the same purpose than before.
the old hooks are deprecated because they won't be called
from the gl driver anymore, but instead will be called
by our EGL wrapper. to maintain binary compatibility
it was necessary to introduce these new hooks.
Change-Id: I11756a5d99e3ea3d6fb61b943f82037932dfa56a
The native channel mask values are equal to the Java values, which
differ from other standards simply for legacy reasons. It is
preferrable to use commonly used values, and translate from the
Java constants to the common values when specifying a Java mask.
The new definitions uses the same values and ordering as in
OpenSL ES and other standards.
Change-Id: I879f64b281714c60684cd8b36fe6ae648a555121
Add definitions for the side and elevated channels.
Ccorrect definition of 7.1 mask which uses
the side channels rather than the front half-pan channels.
Change-Id: I5b6f601f6404d782dc46ef47efac9cc8441fef90
Also cleanup the header a bit. Give fixed values to enum
because these can never change. And try to make all
comments C (as opposed to C++)
Change-Id: Ie0914ccd81a0231f32e8c21a8ff730985c5c3607
This change adds three new possible values for the 'api' argument to
native_window_connect: CPU, MEDIA and CAMERA.
Change-Id: I9305a5c0c87ab06a2c2bd7c585f54c7c7470408a
Bug: 5020877
This change adds two new 'perform' setters to set the dimensions and
pixel format of the buffers that will be dequeued from the
ANativeWindow. These new setters provide the same functionality as
_SET_BUFFERS_GEOMETRY, but allow the format and dimensions to be set
independently. The _SET_BUFFERS_GEOMETRY setter is still supported to
maintain backwards compatibility.
Change-Id: Ib49b7798ffebe61eff2c8e4202fc3048cfec7bdd
Make sure audio_is_valid_format() is true only
for formats supported by AudioTrack and AudioRecord.
Generalized audio_is_linear_pcm().
Added audio_bytes_per_sample() function.
Change-Id: If588af6c08f09796ab04bccbbd6e720f1e914412
Added formats for 32 bit PCM audio to allow direct use of
common audio formats defined in audio.h by audio effect
API defined in audio_effect.h
Change-Id: I5d58c2db8325ca625ab6d2b10cc0d422ba119ca5