History log of /frameworks/av/services/audioflinger/test-resample.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5e58b0abe5b6c8f5bd96a8f78bbeeeb4d3892020 24-Jun-2014 Andy Hung <hunga@google.com> Add floating point volume handling to AudioMixer

Use floating point volume in AudioMixer mixing when floating
point input is used with the new mixer engine.
AudioResampler is updated to take floating point volume to match.
Both legacy integer and floating point mixer engines work.

For now, integer volume is used when the new mixer engine
runs in integer input mode, for backward compatibility with
the legacy mixer. The new mixer engine will generally run in
floating point input mode. When the legacy path is removed,
the integer volumes will be removed.

Change-Id: I79e80c292ae7c8b8bdd0aa371a1b2c3a1b618290
3348e36c51e91e78020bcc6578eda83d97c31bec 07-Jul-2014 Andy Hung <hunga@google.com> Replace int bitDepth with audio_format_t in Resampler

Remove mBitDepth from class (not used).
Replace with audio_format_t in factory method to distinguish
between float and pcm 16-bit.

Change-Id: I166860796c68285077ef4458d8758d19b82523f9
df383a5a54582811e5e038efc557172b8ec69dd1 10-Apr-2014 Andy Hung <hunga@google.com> Update test-resample to handle multichannel

Option -c # specifies number of channels (mono default).
Option -s to specify stereo is removed (-c 2 replaces).
Option -h to specify WAV header is removed (WAV is now default).

Change-Id: Iba4b83806028a8a9c1ddba6f555182d214ef73ff
Signed-off-by: Andy Hung <hunga@google.com>
781366833a12877b8d5ad4aa081114e30f799319 09-Apr-2014 Andy Hung <hunga@google.com> Update test-resample to handle floating point

Change-Id: Ib34d716fbabcd5eb70f8a5ffcf362e242671d916
Signed-off-by: Andy Hung <hunga@google.com>
1e4e4f40b4e2c655ca377adbba53df897545c3ae 08-Apr-2014 Glenn Kasten <gkasten@google.com> Fix 64-bit build warnings

Change-Id: I667401522cb4ccd41013e2883a4c75ddeca08ef6
84a0c6e87c48f58a0d3be71961432c086a4d24cc 02-Apr-2014 Andy Hung <hunga@google.com> Change references of Q19.12 to Q4.27 for clarity

Change-Id: I5beb7daf6ff9bc123ff3582f7c294edcaf8652f6
Signed-off-by: Andy Hung <hunga@google.com>
c52b033f0be38ca915d389b672bcf9c46b4c78ef 21-Feb-2014 Glenn Kasten <gkasten@google.com> The -O option now takes a CSV instead of a single value

Also added -P option to provide a CSV list of provided values.

Change-Id: I4e0d6fe8b062d27d95d33493f80bd8f1c510d2c8
56df9ff31d583ad3eae4f279a3df550273c58e1e 17-Feb-2014 Glenn Kasten <gkasten@google.com> Allow specifying frames per call to resample()

Bug: 13073201
Change-Id: Id2f0fcd7562d9ba5a58c128d71bbba42dfea86cc
6582f2b14a21e630654c5522ef9ad64e80d5058d 03-Jan-2014 Andy Hung <hunga@google.com> Improve dynamic audio resampler filter generation

Improve dynamic audio resampler filter generation speed by 2x.
The resulting filters should be the same (excepting roundoff).

Also added check for upsampling sample rate changes to share
previously generated filters.

Modify the profiling to improve output format and sampling result

Change-Id: I9aa6b914fd552a63f79dd4a95945df2f8275772a
Signed-off-by: Andy Hung <hunga@google.com>
86eae0e5931103e040ac2cdd023ef5db252e09f6 09-Dec-2013 Andy Hung <hunga@google.com> Audio resampler update to add S16 filters

This does not affect the existing resamplers.
New resampler accessed through additional quality settings:


Change-Id: Iebbd31871e808a4a6dee3f3abfd7e9dcf77c48e1
Signed-off-by: Andy Hung <hunga@google.com>
47f3f5a119194d4c06815453be9950ba112c8e3e 18-Dec-2013 Glenn Kasten <gkasten@google.com> Fix bug in test-resample's AudioBufferProvider

The contract for AudioBufferProvider::releaseBuffer() was missing.

Bug: 12194314
Change-Id: I2fcf75e7b8eaf6db34f360206d79457a04a73565
bd72d22097f78f5bd668b223bc8c94e351311e31 18-Dec-2013 Glenn Kasten <gkasten@google.com> Add ability to read .wav files to test-resample

Previously test-resample could only read .raw files, and the input
sample rate had to be specified. Now the input sample rate is derived
from the input file. This also allows us to read 8-bit PCM files,
and other formats such as floating-point in the future.

However, the ability to read raw files is lost.
A workaround is to use sox or equivalent on the host.

Change-Id: Icd06b4d02482b3ad07bf03979f46860e68d38ad9
f5293648b727fb3909cd2300a73377f032f8b050 17-Dec-2013 Glenn Kasten <gkasten@google.com> Use libsndfile to write .wav files

This will reduce code duplication, and allow us take advantage of more
advanced capabilities of libsndfile in the future.

Change-Id: I25fa2b6d0c21e325aeaf05bda62cf7aab0c5deb4
e00eefe64e3bad166c672db96c9c35992766e819 17-Dec-2013 Glenn Kasten <gkasten@google.com> Fix several test-resample BufferProvider bugs

Previously getNextBuffer always returned the same data address over
and over. Now it correctly returns the right portion of the input buffer.

Previously getNextBuffer always returned the total number of frames in
the input, which might be larger than the size requested by the caller,
and/or larger than the number of remaining input frames. It also always
returned successfully, even when there should be no frames available.
This violates the contract for getNextBuffer. Now getNextBuffer will
return the maximum of the number of frames requested, and the number of
remaining frames available. If that maximum is zero, getNextBuffer will
return an error instead.

Previously releaseBuffer would silently allow releasing more frames than
were actually gotten, which violates the contract for releaseBuffer.
Now releaseBuffer checks for this and logs a message if it happens.

Add 'v' (verbose) option to log buffer provider calls.

Bug: 12194314
Change-Id: I9b915e954b3612a07ef271da8652486b8875e0fd
da1a325bc0a1421f4233e62704da4fab8b0acf7b 10-May-2013 Glenn Kasten <gkasten@google.com> Replace obsolete CLOCK_MONOTONIC_HR by CLOCK_MONOTONIC

Bug: 8895727
Change-Id: I0abf6da941965e9e29e232943184dbc72b95d03c
b26e3e9f2ab0334bff21a4fa4851dbf6e57fba5d 14-Nov-2012 Glenn Kasten <gkasten@google.com> Fix build warnings

Change-Id: Ic43bcca166a529a6431711b05a7fa21849b6a38b
ad9af03c4b491912239fc8c97a3ad0d342a33303 05-Nov-2012 Mathias Agopian <mathias@google.com> NEON optimized SINC resampler

this currently gives us a 60% to 80% boost depending
on the quality level selected.

Change-Id: I7db385007e811ed7bffe5fd3403b44e300894f5b
3f71761cab8a08e4ae9e4cf8cb8f1b82643825b2 05-Nov-2012 Mathias Agopian <mathias@google.com> improve resample test

- handle stereo input
- input file can now be ommited, in this case
a linear chirp will be used automatically
- better usage information

Change-Id: I5d62a6c26a9054a1c1a517a065b4df5a2cdcda22
85ab62c4b433df3f1a9826bed1c9bec07a86c750 01-Nov-2012 Glenn Kasten <gkasten@google.com> Line length 100

Change-Id: Ib28fd7b9ce951a6933f006e7f8812ba617625530
9aec8c3f7f72cd36a8e3d7aafc1149f50514087a 30-Oct-2012 Mathias Agopian <mathias@google.com> test-resample: clip instead of overflowing

Change-Id: I550e5a59e51c11e1095ca338222b094f92b96878
0fc2cb59d5f77412f5922540d67fea81f4d1744b 21-Oct-2012 Mathias Agopian <mathias@google.com> a test app for the resamplers

Change-Id: I66852d90d384f1d9e77b51ad1a1ebdbaf61d0607