If an AudioRecord is created with the "fixedVolume" tag
when recording from REMOTE_SUBMIX, treat the
device DEVICE_OUT_REMOTE_SUBMIX as a fixed full volume
device during the recording. Also register a death
handler during the recording.
Otherwise this is a no-op.
Bug 17635294
Change-Id: I8d26fe777047126f34308e1e1b7ac28ba269ad89
1.MediaRecorder.java: Add FM_TUNER audio source type for FM record.
2.AudioRecord.java: For FM output to the other device,
(except the headset case), record the FM tuner signal to a track
and playback the recorded signal by a track.
3.AudioAttributes.java: Thus we use AudioRecord, need to modify
setCapturePreset to support MediaRecorder.AudioSource.FM_TUNER.
Review: https://partner-android-review.git.corp.google.com/#/c/182071
Signed-off-by: Benson Huang <benson.huang@mediatek.com>
Change-Id: If068d0bbbffb4848887004396a8a8d9bcba1334e
Found a very simple fix. Just set the cached metadata so we have
it to copy over when editMetadata(false) is called.
bug:17796693
Change-Id: Ib27f0c3d28e7f2a3c7d9495697f36c8045e2bcf6
The motivation is an API change: FloatMath is going to be
deprecated and/or removed. Performance is not the goal of
this change.
That said...
Math is faster than FloatMath with AOT compilation.
While making the change, occurances of:
{Float}Math.sqrt(x * x + y * y) and
{Float}Math.sqrt({Float}Math.pow(x, 2) + {Float}Math.pow(y, 2))
have been replaced with:
{(float)} Math.hypot(x, y)
Right now there is no runtime intrinsic for hypot so is not faster
in all cases for AOT compilation:
Math.sqrt(x * x + y * y) is faster than Math.hypot(x, y) with
AOT, but all other combinations of FloatMath, use of pow() etc.
are slower than hypot().
hypot() has the advantage of being self documenting and
could be optimized in future. None of the behavior differences
around NaN and rounding appear to be important for the cases
looked at: they all assume results and arguments are in range
and usually the results are cast to float.
Different implementations measured on hammerhead / L:
AOT compiled:
[FloatMath.hypot(x, y)]
benchmark=Hypot_FloatMathHypot} 633.85 ns; σ=0.32 ns @ 3 trials
[FloatMath.sqrt(x*x + y*y)]
benchmark=Hypot_FloatMathSqrtMult} 684.17 ns; σ=4.83 ns @ 3 trials
[FloatMath.sqrt(FloatMath.pow(x, 2) + FloatMath.pow(y, 2))]
benchmark=Hypot_FloatMathSqrtPow} 1270.65 ns; σ=12.20 ns @ 6 trials
[(float) Math.hypot(x, y)]
benchmark=Hypot_MathHypot} 96.80 ns; σ=0.05 ns @ 3 trials
[(float) Math.sqrt(x*x + y*y)]
benchmark=Hypot_MathSqrtMult} 23.97 ns; σ=0.01 ns @ 3 trials
[(float) Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2))]
benchmark=Hypot_MathSqrtPow} 156.19 ns; σ=0.12 ns @ 3 trials
Interpreter:
benchmark=Hypot_FloatMathHypot} 1180.54 ns; σ=5.13 ns @ 3 trials
benchmark=Hypot_FloatMathSqrtMult} 1121.05 ns; σ=3.80 ns @ 3 trials
benchmark=Hypot_FloatMathSqrtPow} 3327.14 ns; σ=7.33 ns @ 3 trials
benchmark=Hypot_MathHypot} 856.57 ns; σ=1.41 ns @ 3 trials
benchmark=Hypot_MathSqrtMult} 1028.92 ns; σ=9.11 ns @ 3 trials
benchmark=Hypot_MathSqrtPow} 2539.47 ns; σ=24.44 ns @ 3 trials
Bug: https://code.google.com/p/android/issues/detail?id=36199
Change-Id: I06c91f682095e627cb547d60d936ef87941be692
- DVB and ISDB ratings are added.
- Remove rating systems whose countries uses DVB and ISDB.
- Updated java doc for AR, AU, and BR.
Bug: 17494772
Change-Id: Ia2a63c7914148b42078decb8de1ae45baefb010d
Bug: 17675571
- Check for JPEG footer in correct location from ImageReader
when using the RGBA override.
- Add additional error checks in produceFrame method.
- Avoid allocating extra space for jpeg buffers due to
incorrect width calculations.
Change-Id: I926f37e8b3e5c4bad24c16dcee48d52adb1706dd
This checks if the phone app is currently getting or in a call when a
media key event is sent and sends it to the phone session instead of the
foreground app if it is.
bug:17527302
Change-Id: Ie5d6cf0c897da81d106f2b1a0561b79f4fc35e82
* commit '1769e28d34857bf78708c595e7ce71759aa961ea':
Check the return value of bindService, and notify media browser client onConnectionFailed if it returns false.
A behavior change in the BT stack caused it to stop sending connection
changes for connected devices when you turn BT off. To work around this
we need to remove the connected BT route when BT is turned off.
bug:17512270
Change-Id: I3e5aa8863409c5abac51aa4e93a15f1978cf74b3
Handle the other ways queueBuffer can fail. Revalidate the buffers
properly, e.g. without clearing them.
Bug: 17630446
Change-Id: I22e0e89c2835eb6a461046a8cf3be03635088302