Currently, TvInputManagerService notifies the initial state of each
input via TvInputManagetCallback#onInputStateChanged after TvInputManager
is created. However, this is racy because the client may call methods
like getTvInputState() before the initialization.
This patch makes sure that the client gets the control when the initialization
finishes completely.
Bug: 18419452
Change-Id: I5d8141c20984013e68f2809120710c670557c9ad
Volume control in master mode should be transformed to
CEC commands if system audio is activated to delegate
the control to the connected AV receiver.
Refactored to use the interface to CEC service for
both master and stream type volume control.
Bug: 18560079
Change-Id: I2aefdc94a1bc3091c14fab849f899a0dc37c47bc
- Simplify API for defining an exclusion-based rule: don't define
an exclusion rule, add instead a way to exclude a rule.
- API for defining rules for dynamic sources (rule match on capture
preset).
- Verify mix type when creating AudioRecord or AudioTrack for a mix.
- Use hashcode of mix for generating the device address.
- AudioService dump prints info about registered policies.
- Annotate as SystemApi the audio policy-related APIs.
- Express mixing match and exclude rule constants as flags for
future-proofness
Bug 16006090
Bug 16009464
Change-Id: I0dabe71204501acaffea7ef0ddbbab9700e1bd87
When useMasterVolume is set, we don't want to apply the volume
attenuation twice, once at the stream mixer and once at the master
volume control. It should only be applied once at the master volume
control.
Change-Id: Id5b1cf97571733515b5680c638f11cde8824cfc0
Fixed: b/18460548
- Make the system internal ringer mode change signal available to
other system components via a standard intent, instead of a
volume-controller-only binder call.
- Update sysui to use new intent for icon policy.
- Add proper muting state to the volumizer, to look more like
the associated volume panel slider.
- Add basic ringer mode state tracking for the notification-ring
slider setting.
Bug: 17899613
Change-Id: Ie2df52edb070055ef59c74039162a0e785d2fdbb
Background: The underlying passthrough TV input expects tune() command
to show video on the screen and call notifyVideoAvailable().
Bug: 18551619
Change-Id: I257db321c09d621e6bd3c0e69bfe0abfca5742a9
This CL fixes all android.media.* javadoc that includes an "ERROR(...)"
message when rendered to HTML.
Bug: 18537403
Change-Id: Ic60f7cfe4cf4961da163d955387d65a5d2011905
(cherry picked from commit d550f9028ee7f52018fbed3cfd2d0b18d6a7c4f0)
This CL fixes all android.media.* javadoc that includes an "ERROR(...)"
message when rendered to HTML.
Bug: 18537403
Change-Id: Ic60f7cfe4cf4961da163d955387d65a5d2011905
Stabilize mapping between ringer-mode=silent and zen=priority
by keeping track of two ringer modes:
- Internal ringer mode: Used for underlying stream muting
- External ringer mode: Reported to clients
The mapping between external ringer mode + zen is:
- normal = all
- vibrate = all
- silent = priority (read-write) or none (read)
Changes include:
- Remove "zen check" from audio service, back to audio
service having no knowledge of zen.
- Maintain a new external ringer mode in audio service,
this is the ringer mode reported through AudioManager
to callers, also mapped to the change intent.
- Introduce a "ringer mode delegate" to the local
audio manager interface, responsible for observing
external / internal mode changes, and making changes
if necessary.
- Internal ringer mode changes are still interesting
to the volume dialog, wire up a callback through
the existing IVolumeController interface.
- On devices without vibration, the mapping is the same
but since no ringer mode change is possible, disable
the icon toggle and remove the mute icon when volume=0.
- On devices with vibration, volume down presses should
pulse the vibrate icon (and vibrate) as a hint that this
is as low as the device can go using the keys. Since
the mechanics are similar to the existing zen=none hint,
pull into shared helper.
- Log ringer mode changes to the zen log, include calling
package information for issue diagnosis.
- Include whether vibration is supported in the audio service
dump.
- Update the status bar icon policy to use the internal ringer
mode, not the external mode (for vibrate icon).
- Update the "Muted by <x>" logic, include current suppressor
in dumpsys, ensure suppression icon is enabled & !clickable,
regardless of zen mode.
Bug: 17884168
Bug: 15471679
Bug: 16824970
Change-Id: Ia7d3bb23ce6d1e37b24fb6521d1c1ab9bb8f60c0
Allow setPlaybackHeadPosition and setLoopPoints in STATE_NO_STATIC_DATA
for consistency with other setters and older Android versions (JB).
Bug: 18217633
Change-Id: Id8ada3056540c4dfcb89f8afa887159e48db0263