AudioEffect::command() should not interpret the status
returned in pReplyData unless the command is ENABLE or
DISABLE.
Also fixed:
- bug in Visualizer::getWAveForm() status reporting.
- wrong initialization value for capture buffer in visualizer engine.
Change-Id: I60fb0011f9dba96ee74661dec1e8ef441edcaf35
There is a problem in AudioEffect and Visualizer native_setup() methods
that causes a crash in the application after the mediaserver process
has crashed and restarted.
The problem is that the native AudioEffect/Visualizer constructor is
called while the JNI is in critical state after calling
GetPrimitiveArrayCritical(). As the mediaserver process just restarted, the
first call to AudioSystem will cause the binder IAudioflinger interface to
be reteived and a callback send to AudioSystem JNI to clear the mediaserver
error state. This will call env->FindClass() and crash due to the JNI being
in critical state.
Also fixed a similar problem in AudioTrack JNI
Change-Id: I4a9026a3e26c7f78d9b4b4bec1aac90fbee2ab62
- Created sub-package android.media.audiofx for audio effects.
- Hid AudioEffect class contructor, methods and variables not needed by
applications
- Added more javadoc comments for AudioEffect Class
Change-Id: Ibbb40d4e714bb248aa32cf82d7763d74efae96d1
commit 672c0dc3a0 broke the energy probe
used by auto tests to verify that an effect is actually enabled.
The probe is based on the Visualizer which now scales the capture to maximise
the signal level: this prevents from detecting level changes between subsequent captures.
Playing sound at a lower volume moves the signal level out of the range where
scalling occurs and makes comparison possible again.
Change-Id: Ib56dec6e619c6d778dcc3ca6453091bf6136f290
commit 27a2fdfb8a changed the
insert reverb behavior when it is attached to a track in that
the reverb tail is silenced immediately when the track is paused.
The tests have been modified to test the insert reverb on session 0.
Change-Id: I90c6fec40167966853acfeaa4dec2b96f9e7839f
Scale audio signal during capture according to peak level so that
returned values on 8 bits contain enough information even for weak
signals.
Also do not reject requests to enable/disable the visualizer if we are
already in the requested state.
Change-Id: I07a705619764350834e61f82d161761eab688747
The decoder has to decode the very first two frames (decoder specific data + first data
frame) in order to be really sure whether a stream is AAC or AAC+/eAAC+.
bug - 2966336
Change-Id: Ib12a07285933df0d6c346370a12f70e99e811881
According to OMX spec, the levels returned is the max level settings.
In fact, we could not enum all the levels.
Change-Id: Ib1cba74100512800a5761c7567894c7ea5b5a452
When an effect was deleted while enabled, the count of enabled effects
in the bundle was not decremented. Resulted a state where if another effect
was still enabled, its process function was called only every other time.
Change-Id: I59a0c5b7f50f416a9ecadae297b42912e56ddd51
Added intents to launch audio effects control panel UI and
communicate playback state from media player applications
to effect control application/service.
Change-Id: Iede23ae11fa9f0802df5f36299dd80ea57eda376
- Use a constant input level to the reverb engine and implement volume control in the
insert reverb. This avoids the volume spikes when an effect that was inserted after
the reverb is disabled or removed.
- Fix clicks (one silent buffer) at the end of the reverb disable period.
- Modified volume management in audioflinger so that the volume ramp is also done by
the insert effect if present when the track is paused (avoids clicks).
- Increased room level for all presets.
Also fixed problems with output stage session (-1):
- effect bundle wrapper was not designed to support session -1
- the permission check in audioflinger for using session -1 failed due to a wrong usage of
getCallingPid()
Change-Id: Id1ff51327263364bf71d3f2668fa5cde4311d84f
Change java/lang/IOException to java/lang/RuntimeException
since there is no java/lang/IOException while keeping
the signature of the MediaRecorder class
constructor unchanged.
Change-Id: Id9b9aa55db42bef528069ef1e2102038391bc15f