| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I085796569ea77336d32907ee2287ff7533b0c122
|
|
|
|
|
|
| |
keep traveling pointer local to the walking loop
Change-Id: I0038007d6e7a45e519b9b2162c674132477879cc
|
|
|
|
|
|
|
|
|
| |
The shutter callback timestamp should originate from the sensor itself,
since it knows exactly when the first line of the frame started
exposing. However, as a fallback (or in the CPU-painting case) query
CLOCK_BOOTTIME instead.
Change-Id: Id57c05525e9c575d009b9deb96a69557fccac16b
|
|
|
|
|
|
|
|
|
| |
Metadata is currently only used for immutable persistent settings
(static camera characteristics, and the capture templates), but will be
used for dynamic metadata as well. Make it deleteable so we can
create/destroy these at will.
Change-Id: I7372b07b904d5a6b55453093712e0bb2675918b5
|
|
|
|
| |
Change-Id: I4f51e509d86722c18308f4f1312ca3379cffd795
|
|
|
|
|
|
|
|
|
|
| |
max_buffers and usage are read by the framework inside the struct used
to pass the stream configuration parameters; scribble our new
calculated values whever they are updated internally.
Adds logging to stream creation method (reuse/new).
Change-Id: I04e12880820571900f2ae80c27100f8aedcf9d02
|
|
|
|
|
|
| |
Type is now enum, not mask.
Change-Id: I264da26a457957a7659154e507970e0303c76e25
|
|
|
|
| |
Change-Id: I4fbd4ad919b855168e3ff5424613271b1fa907af
|
|
|
|
| |
Change-Id: I0a4b389e1850c10e12a65b3c8a5670c78c6746f7
|
|
|
|
| |
Change-Id: Id1aa624d377776a7e37b52978664d30c927595be
|
|
|
|
|
|
|
| |
Basic static metadata statically constructed from preprocessor passes
over an array of camera metadata tags.
Change-Id: I16ea9f4d68120d5a0bc010a4a67b0cbcd761329e
|
|
|
|
| |
Change-Id: If4e377ba0ac327cc02ac2b9765ce5d406b8960a8
|
|
|
|
| |
Change-Id: I158ba833549aee47ca3be5673f6f5d33e455ef59
|
|
|
|
| |
Change-Id: I19c3a6a55a42e60f627702cd4a995664a0dfc4d2
|
|
|
|
| |
Change-Id: Ic1d20dd7f93a0ca3cd2c3af3b33a7a9df47b5e89
|
|
|
|
|
|
|
|
| |
Adds a Stream object, and configureStreams support in parsing the
provided stream_array. Streams are naively setup for sync-less software
painting.
Change-Id: Ibbd90e3e2c7fa984dd5d2dcbd4da7bf4dad43aa1
|
|
|
|
|
|
|
|
| |
This c++ helper class is normally provided by frameworks/native's
libutils, but cannot be used from the context of a hardware module. For
now just add the required functionality locally in the hardware module.
Change-Id: I5b399cbeb1c017a95baf19456dbf20569e677fbe
|
|
|
|
| |
Change-Id: Ic21cd58a750411167ef4b060e8d3abc295edc83d
|
|
|
|
| |
Change-Id: I2511653b3d2d21d03785ea220c760e2b65f0b035
|
|
|
|
|
| |
Bug: 8468756
Change-Id: Ia883f459ea9e2648ca4a0b5a6f09ded4f46f13b3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The register/unregister gralloc calls were avoiding
mmapping/munmapping the shared memory region if the buffer was created
by the current process. This is left over from the pmem-based
implementation, where trying to map the same region twice in the same
process would fail, or would reuse a single mapping without
refcounting.
This causes problems if a buffer is
- allocated in process A,
- transferred from A to process B and registered there
- unregistered/freed in A
- transferred back from B to A and re-registered
Process A then has a new handle to the buffer, but since it originally
created the buffer it will not be mmapped, so trying to read or write
the buffer will crash.
With ashmem, mmaping a region twice in the same process creates two
distinct mappings which can be used and munmapped independently. So
we no longer need to avoid mmapping again in the allocating process.
Bug: 8468756
Change-Id: I167bec5ca07e5534c5e2115630fe8386e481388e
|
|
|
|
| |
Change-Id: Ic36fa7c6193086aa6415647ff8fe59cc358dd99f
|
|
|
|
|
|
|
| |
Default camera HAL statically allocates camera devices. Update camera
device to API v3.
Change-Id: Ic53ffcf3b746b9b4011b932e26dbb0f533cba554
|
|
|
|
|
|
|
| |
Refactor the camera module into a single CameraHAL object. Adds
set_callbacks, new in the v2.1 module API.
Change-Id: I4da677c28d7425f545f68998844fcfa4caf0feb9
|
|
|
|
|
|
|
| |
Explicitly hide all symbols from being exported from the camera HAL
except the symbol required to load the module.
Change-Id: I940b24b8d3895f46e63df3c28e43b8cb012bd637
|
|
|
|
| |
Change-Id: I00ee447e6b57bc57fd09b6e7d8c62cb07cb37cf0
|
|
|
|
|
|
|
| |
Avoid duplicating the api docs in the example HAL, instead point to
canonical source for them.
Change-Id: If3f5acb7a73260248bd00ce01cb1c80f230f7188
|
|
|
|
|
|
|
|
| |
Rely on strong pointers and scope rather than the more error prone
incStrong / decStrong approach which can cause object leaks.
No change in functionality.
Change-Id: I1bfc7f0cdeeac022e4120482cd3521e52ffea94e
|
|
|
|
|
|
|
|
| |
This is meant to be an example and a reference for device manufacturers
on how to build a new Camera v2 HAL. This first patch has basic
configuration and entry/exit.
Change-Id: Ib4166e2eadb813228af38ec31a1215940c070bbf
|
|
|
|
| |
Change-Id: I17094052b67f2069d80ea140442e5a969bd4e96f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Writing to the audio pipe for the remote submix is blocking, unless
the audio output pipe is in shutdown mode. The playback thread
could stay blocked on the write if the input stream has already
been closed.
The change consists in shutting down the pipe also when the input
stream gets closed. When the pipe is in this state, simulate
timing in the write operation so we don't drain the output faster
than realtime.
Bug 7424646
Change-Id: I5feb3be642b0ee7eef10dee0141308684ee9c811
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 7258325
Change-Id: I02d8ea1bdcb8ea6a9430e3dc286f5c2647277f72
|
|/
|
|
|
|
|
|
| |
Support receiving a parameter that sets the remote audio submix
module in a state where the audio pipe will unblock any current
write operation and not block anymore.
Change-Id: Ia3119cd79972afff0de24187dae627855a468ebf
|
|
|
|
|
|
|
|
|
| |
The reference count on the strong pointers to the audio sink and
source should be done on the object retrieved from the device
structure, not by accessing the corresponding fields, as they
can be cleared while reading or writing audio data.
Change-Id: I446a2c7bdcb0758b4013b0ad75450a15203fb9da
|
|
|
|
| |
Change-Id: I61cd15534b1cd764b06f615569cdf02edbba909c
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change how the remote audio submix is handling piping audio
through the pipe:
- use a MonoPipe as audio sink for blocking writes,
- use a MonoPipeReader as audio source for non blocking reads,
and keep track of when recording started to align the
time at which the in_read() call should return with the
projected time of the recording duration.
Change-Id: I8b0f8c56a0486806101e272dfbf9c6d2d1c11112
|
|
|
|
|
| |
Bug: 7123942
Change-Id: Ic64aa6477f2eb65b489b3be5d49ad21ccce63e2d
|
|
|
|
|
|
|
|
| |
Neither write nor read are blocking, but write simulates
timing by checking the clock between two writes and
computing how long the next sleep should last.
Change-Id: I495ae6d44b0cf75a24fe4b70662cfac679049c67
|
|
|
|
|
|
|
| |
Update remote submix audio HAL API revision to 2.0
(new audio device enums).
Change-Id: I61d5faf498144002929e570ee50375b059fb17c5
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changed audio device API version to 2.0 because of
new enums for audio input and output devices.
Removed implementations of get_supported_devices() in
stub and usb audio modules.
Change-Id: I09345d38929d931e5015e36d18259f5a5f950298
|
|/
|
|
| |
Change-Id: I878c6f36685eff48a3cd51acceec812b61994945
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New definitions of audio devices for remote submix: one representing
a sink for writing the audio buffers that won't be played directly
locally, another representing the audio source that can be read from
to obtain the audio mix.
New audio hardware module encapsulating the submix loop functionality.
Create a Pipe to serve as non-blocking audio ring buffer between
the output device (the sink) and the input device (the source).
Change-Id: I527f4721a69ced0430a99ebba3b4db7d419f2bb2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cherry picked from commit d245968b7ef0be5c776c9aefff3eca9e293d1b35)
> Extend the audio HAL interface to support get/set master mute
>
> Hand merge from ics-aah
>
> > Extend the audio HAL interface to support get/set master mute: DO NOT MERGE
> >
> > Extend the audio HAL interface to allow HALs to optionally support HW
> > level master mute. This follows the same pattern as master volume and
> > is part of the fix for bug 6828363. Because of the divergences
> > between ICS and master, this change will need to be merged by hand.
> >
> > Signed-off-by: John Grossman <johngro@google.com>
> > Change-Id: Ica6f5e37e13d13dde60463966f41f271ffa104fd
>
> Change-Id: I5e7aea6d7da0012dcc077281f9077fc04cfb9889
> Signed-off-by: John Grossman <johngro@google.com>
Change-Id: I2011cc5bc41ca7081ce255a4bfba65f36f899bc4
Signed-off-by: John Grossman <johngro@google.com>
|
|
|
|
| |
Change-Id: I3b0446050648e2b386ffb32976c9943b6fd9793d
|
|
|
|
|
|
| |
This reverts commit 1d51b2b9fc713da6de18117bc19508ecdfde4f23
Change-Id: I1ae46d8cae1cb3064800cd24df56347b05eb6059
|
|
|
|
| |
Change-Id: I31b4fc293220bc51169971df93347dd35fdc30ef
|
|
|
|
|
|
| |
Also struct audio_stream in audio_stream_frame_size
Change-Id: Ie0de708e38a1850c186a8b4eb5f491adc44b3275
|
|
|
|
| |
Change-Id: Ib832c0b707b1e0b82adf4ab3d4d18a2dc459d240
|