Add a C API for DataSource/Base, and a helper so extractors
can continue using a C++ API.
Bug: 111407253
Test: build, boot, play some files
Change-Id: I1c8b2990e17d18eee53c9abf7ebef2ced0e8b7fd
Define a C extractor plugin API, along with some helpers
so extractors can still be implemented in C++ if desired.
Bug: 111407253
Test: build, boot, play some files
Change-Id: Iba947381441769d77929b4235cdb4a4cd5d4f606
Merging is temporarily disabled for now because the readers managed by
the merger are the same as the ones used for the dumpsys log dump, and
reading from the log effectively consumes the buffer. Eventually, the
readers for the two functionalities will need to be separated to avoid
conflict. The dump of the merged buffer is also disabled, which removes
the dumping of histograms.
The new types added are monotonic thread cycle time, CPU thread cycle
time, CPU frequency, and latency (which will need to be specified in
further detail later). Logging support is added only for monotonic
thread cycle time at the moment.
Test: build, log monotonic thread cycle time in FastThread, check output
in dumpsys media.log -r.
Change-Id: I1b781d6db102fb917fd0bac964eeebd0309234c0
Bug: 68148948
1.Pcm(twos and sowt) parsing support in MPEG4Extractor
2.Pcm data reading from SampleTable support
Bug: 80501047
Test: Play XAVC-S Video and check if the audio is heard
Change-Id: I5edc7f1920c80e23dfdb069259d19e28240799b5
Merged-In: I5edc7f1920c80e23dfdb069259d19e28240799b5
mMetaData was inconsistently initialized to either a MetaData or
MetaDataBase object. The former resulted in the destruction of
a RefBase object without ever incrementing its reference count.
This is normally very brittle, since the accidental creation of
an sp<> results in duplicate deallocation. Hence we are starting
to diagnose it. In this case it appears to just add extra overhead.
Since mRefCount can be concurrently accessed, declare it as atomic.
This is a minimal fix, which can be improved further. Local and remote
reference counts are currently still read with inconsistent memory
orders. Since the results appear to only be trusted when they
guarantee that there is no concurrent access (as they should be),
memory_order_relaxed on loads seems sufficient. Generally reference
count increments can also be relaxed, while decrements should be
acq_rel to ensure that all accesses to the object become effective
before deallocation. I believe that's correct here as well. Since
I'm unfamiliar with the code, I made only essential changes.
Bug: 79265389
Test: Built and booted master.
Merged-In: I3cb65e9f880588abdb0712890e7a654311577b07
Change-Id: I3cb65e9f880588abdb0712890e7a654311577b07
(cherry picked from commit b421f6ea33)
1.Pcm(twos and sowt) parsing support in MPEG4Extractor
2.Pcm data reading from SampleTable support
Bug: 80501047
Test: Play XAVC-S Video and check if the audio is heard
Change-Id: I5edc7f1920c80e23dfdb069259d19e28240799b5
Some applications apparently put bogus values in the edit list,
causing some files to not play correctly.
Ignore the edit list if the values don't make sense.
Bug: 80513071
Test: manual
Change-Id: I6035fbe8174ec462a5bdf42088682a2bb9dd814b
Should not configure effect by thread sample rate
if effect is not offloadable.
Because of offload output may be different from
the sample rate supported by sw effect.
Bug: 70912361
Test: Create AudioEffect during 24kHz mp3 playback
Change-Id: Ie5bf264a9790d936c24476ea127bc6da9eefde73
Even though effect module has "EFFECT_FLAG_VOLUME_CTRL" flag,
there is some case where volume setting is not sent to offload thread.
That leads to sudden increase of audio volume or too low volume.
This change is to support delegation of volume control completely
for offload audio effect.
Bug: 37443095
Test: Enable/Disable Audio effects during offload playback
Change-Id: I7033071edc99fadc519efd7adc895dc10f7b9d86
Updating of the mDevice sp<> is racy.
This change will cause the Camera3Device object lives until
the client is destructed (which can be a few seconds after
camera app closed and GC kicking in to delete the client)
The benefit is the dumpDevice can remain lock free.
Also fix a problem where we call virtual function disconnect in
Camera3Device destructor.
Test: the double free problem cannot reproduce
Bug: 112639939
Change-Id: I77762db8f59cf33891631d13fc3bdb3830ae08fb
Public API doesn't see android.logicalcam.physicalIds. Remove it
from public doc.
Bug: 112655222
Test: Manual reading of modified text
Change-Id: I111a57d6dbdbd2f10df5e440c34ee8526918e134
This would allow other client modules defined in Android.bp to include
libcameraservice as a dependency.
Bug: 110364143
Test: mm -j64
Change-Id: Ia3be563e4fbb27155d6a46278931ca689b8cf8fd
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>