mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Merge mozilla-central to mozilla-inbound
This commit is contained in:
commit
f1673efd62
@ -119,7 +119,7 @@ public:
|
||||
/**
|
||||
* Function mapping from cross platform roles to ATK roles.
|
||||
*/
|
||||
inline static PRUint32 AtkRoleFor(mozilla::a11y::role aRole);
|
||||
static PRUint32 AtkRoleFor(mozilla::a11y::role aRole);
|
||||
|
||||
protected:
|
||||
virtual nsresult FirePlatformEvent(AccEvent* aEvent);
|
||||
|
@ -216,9 +216,18 @@ AudioManager::GetForceForUse(PRInt32 aUsage, PRInt32* aForce) {
|
||||
|
||||
void
|
||||
AudioManager::SetAudioRoute(int aRoutes) {
|
||||
audio_io_handle_t handle = AudioSystem::getOutput(AudioSystem::SYSTEM);
|
||||
audio_io_handle_t handle = 0;
|
||||
if (static_cast<
|
||||
audio_io_handle_t (*)(AudioSystem::stream_type, uint32_t, uint32_t, uint32_t, AudioSystem::output_flags)
|
||||
>(AudioSystem::getOutput)) {
|
||||
handle = AudioSystem::getOutput((AudioSystem::stream_type)AudioSystem::SYSTEM);
|
||||
} else if (static_cast<
|
||||
audio_io_handle_t (*)(audio_stream_type_t, uint32_t, uint32_t, uint32_t, audio_policy_output_flags_t)
|
||||
>(AudioSystem::getOutput)) {
|
||||
handle = AudioSystem::getOutput((audio_stream_type_t)AudioSystem::SYSTEM);
|
||||
}
|
||||
|
||||
String8 cmd;
|
||||
cmd.appendFormat("%s=%d", AudioParameter::keyRouting, GetRoutingMode(aRoutes));
|
||||
cmd.appendFormat("routing=%d", GetRoutingMode(aRoutes));
|
||||
AudioSystem::setParameters(handle, cmd);
|
||||
}
|
||||
|
@ -22,6 +22,14 @@
|
||||
#include "IAudioFlinger.h"
|
||||
|
||||
#ifndef VANILLA_ANDROID
|
||||
/* request to open a direct output with get_output() (by opposition to
|
||||
* sharing an output with other AudioTracks)
|
||||
*/
|
||||
typedef enum {
|
||||
AUDIO_POLICY_OUTPUT_FLAG_INDIRECT = 0x0,
|
||||
AUDIO_POLICY_OUTPUT_FLAG_DIRECT = 0x1
|
||||
} audio_policy_output_flags_t;
|
||||
|
||||
/* device categories used for audio_policy->set_force_use() */
|
||||
typedef enum {
|
||||
AUDIO_POLICY_FORCE_NONE,
|
||||
@ -54,6 +62,166 @@ typedef enum {
|
||||
AUDIO_POLICY_FORCE_USE_CNT,
|
||||
AUDIO_POLICY_FORCE_USE_MAX = AUDIO_POLICY_FORCE_USE_CNT - 1,
|
||||
} audio_policy_force_use_t;
|
||||
|
||||
typedef enum {
|
||||
AUDIO_STREAM_DEFAULT = -1,
|
||||
AUDIO_STREAM_VOICE_CALL = 0,
|
||||
AUDIO_STREAM_SYSTEM = 1,
|
||||
AUDIO_STREAM_RING = 2,
|
||||
AUDIO_STREAM_MUSIC = 3,
|
||||
AUDIO_STREAM_ALARM = 4,
|
||||
AUDIO_STREAM_NOTIFICATION = 5,
|
||||
AUDIO_STREAM_BLUETOOTH_SCO = 6,
|
||||
AUDIO_STREAM_ENFORCED_AUDIBLE = 7, /* Sounds that cannot be muted by user and must be routed to speaker */
|
||||
AUDIO_STREAM_DTMF = 8,
|
||||
AUDIO_STREAM_TTS = 9,
|
||||
|
||||
AUDIO_STREAM_CNT,
|
||||
AUDIO_STREAM_MAX = AUDIO_STREAM_CNT - 1,
|
||||
} audio_stream_type_t;
|
||||
|
||||
/* PCM sub formats */
|
||||
typedef enum {
|
||||
AUDIO_FORMAT_PCM_SUB_16_BIT = 0x1, /* DO NOT CHANGE - PCM signed 16 bits */
|
||||
AUDIO_FORMAT_PCM_SUB_8_BIT = 0x2, /* DO NOT CHANGE - PCM unsigned 8 bits */
|
||||
AUDIO_FORMAT_PCM_SUB_32_BIT = 0x3, /* PCM signed .31 fixed point */
|
||||
AUDIO_FORMAT_PCM_SUB_8_24_BIT = 0x4, /* PCM signed 7.24 fixed point */
|
||||
} audio_format_pcm_sub_fmt_t;
|
||||
|
||||
/* Audio format consists in a main format field (upper 8 bits) and a sub format
|
||||
* field (lower 24 bits).
|
||||
*
|
||||
* The main format indicates the main codec type. The sub format field
|
||||
* indicates options and parameters for each format. The sub format is mainly
|
||||
* used for record to indicate for instance the requested bitrate or profile.
|
||||
* It can also be used for certain formats to give informations not present in
|
||||
* the encoded audio stream (e.g. octet alignement for AMR).
|
||||
*/
|
||||
typedef enum {
|
||||
AUDIO_FORMAT_INVALID = 0xFFFFFFFFUL,
|
||||
AUDIO_FORMAT_DEFAULT = 0,
|
||||
AUDIO_FORMAT_PCM = 0x00000000UL, /* DO NOT CHANGE */
|
||||
AUDIO_FORMAT_MP3 = 0x01000000UL,
|
||||
AUDIO_FORMAT_AMR_NB = 0x02000000UL,
|
||||
AUDIO_FORMAT_AMR_WB = 0x03000000UL,
|
||||
AUDIO_FORMAT_AAC = 0x04000000UL,
|
||||
AUDIO_FORMAT_HE_AAC_V1 = 0x05000000UL,
|
||||
AUDIO_FORMAT_HE_AAC_V2 = 0x06000000UL,
|
||||
AUDIO_FORMAT_VORBIS = 0x07000000UL,
|
||||
AUDIO_FORMAT_MAIN_MASK = 0xFF000000UL,
|
||||
AUDIO_FORMAT_SUB_MASK = 0x00FFFFFFUL,
|
||||
|
||||
/* Aliases */
|
||||
AUDIO_FORMAT_PCM_16_BIT = (AUDIO_FORMAT_PCM |
|
||||
AUDIO_FORMAT_PCM_SUB_16_BIT),
|
||||
AUDIO_FORMAT_PCM_8_BIT = (AUDIO_FORMAT_PCM |
|
||||
AUDIO_FORMAT_PCM_SUB_8_BIT),
|
||||
AUDIO_FORMAT_PCM_32_BIT = (AUDIO_FORMAT_PCM |
|
||||
AUDIO_FORMAT_PCM_SUB_32_BIT),
|
||||
AUDIO_FORMAT_PCM_8_24_BIT = (AUDIO_FORMAT_PCM |
|
||||
AUDIO_FORMAT_PCM_SUB_8_24_BIT),
|
||||
} audio_format_t;
|
||||
|
||||
typedef enum {
|
||||
/* output channels */
|
||||
AUDIO_CHANNEL_OUT_FRONT_LEFT = 0x1,
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT = 0x2,
|
||||
AUDIO_CHANNEL_OUT_FRONT_CENTER = 0x4,
|
||||
AUDIO_CHANNEL_OUT_LOW_FREQUENCY = 0x8,
|
||||
AUDIO_CHANNEL_OUT_BACK_LEFT = 0x10,
|
||||
AUDIO_CHANNEL_OUT_BACK_RIGHT = 0x20,
|
||||
AUDIO_CHANNEL_OUT_FRONT_LEFT_OF_CENTER = 0x40,
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT_OF_CENTER = 0x80,
|
||||
AUDIO_CHANNEL_OUT_BACK_CENTER = 0x100,
|
||||
AUDIO_CHANNEL_OUT_SIDE_LEFT = 0x200,
|
||||
AUDIO_CHANNEL_OUT_SIDE_RIGHT = 0x400,
|
||||
AUDIO_CHANNEL_OUT_TOP_CENTER = 0x800,
|
||||
AUDIO_CHANNEL_OUT_TOP_FRONT_LEFT = 0x1000,
|
||||
AUDIO_CHANNEL_OUT_TOP_FRONT_CENTER = 0x2000,
|
||||
AUDIO_CHANNEL_OUT_TOP_FRONT_RIGHT = 0x4000,
|
||||
AUDIO_CHANNEL_OUT_TOP_BACK_LEFT = 0x8000,
|
||||
AUDIO_CHANNEL_OUT_TOP_BACK_CENTER = 0x10000,
|
||||
AUDIO_CHANNEL_OUT_TOP_BACK_RIGHT = 0x20000,
|
||||
|
||||
AUDIO_CHANNEL_OUT_MONO = AUDIO_CHANNEL_OUT_FRONT_LEFT,
|
||||
AUDIO_CHANNEL_OUT_STEREO = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT),
|
||||
AUDIO_CHANNEL_OUT_QUAD = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_BACK_LEFT |
|
||||
AUDIO_CHANNEL_OUT_BACK_RIGHT),
|
||||
AUDIO_CHANNEL_OUT_SURROUND = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_CENTER |
|
||||
AUDIO_CHANNEL_OUT_BACK_CENTER),
|
||||
AUDIO_CHANNEL_OUT_5POINT1 = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_CENTER |
|
||||
AUDIO_CHANNEL_OUT_LOW_FREQUENCY |
|
||||
AUDIO_CHANNEL_OUT_BACK_LEFT |
|
||||
AUDIO_CHANNEL_OUT_BACK_RIGHT),
|
||||
// matches the correct AudioFormat.CHANNEL_OUT_7POINT1_SURROUND definition for 7.1
|
||||
AUDIO_CHANNEL_OUT_7POINT1 = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_CENTER |
|
||||
AUDIO_CHANNEL_OUT_LOW_FREQUENCY |
|
||||
AUDIO_CHANNEL_OUT_BACK_LEFT |
|
||||
AUDIO_CHANNEL_OUT_BACK_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_SIDE_LEFT |
|
||||
AUDIO_CHANNEL_OUT_SIDE_RIGHT),
|
||||
AUDIO_CHANNEL_OUT_ALL = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_CENTER |
|
||||
AUDIO_CHANNEL_OUT_LOW_FREQUENCY |
|
||||
AUDIO_CHANNEL_OUT_BACK_LEFT |
|
||||
AUDIO_CHANNEL_OUT_BACK_RIGHT |
|
||||
AUDIO_CHANNEL_OUT_FRONT_LEFT_OF_CENTER |
|
||||
AUDIO_CHANNEL_OUT_FRONT_RIGHT_OF_CENTER |
|
||||
AUDIO_CHANNEL_OUT_BACK_CENTER|
|
||||
AUDIO_CHANNEL_OUT_SIDE_LEFT|
|
||||
AUDIO_CHANNEL_OUT_SIDE_RIGHT|
|
||||
AUDIO_CHANNEL_OUT_TOP_CENTER|
|
||||
AUDIO_CHANNEL_OUT_TOP_FRONT_LEFT|
|
||||
AUDIO_CHANNEL_OUT_TOP_FRONT_CENTER|
|
||||
AUDIO_CHANNEL_OUT_TOP_FRONT_RIGHT|
|
||||
AUDIO_CHANNEL_OUT_TOP_BACK_LEFT|
|
||||
AUDIO_CHANNEL_OUT_TOP_BACK_CENTER|
|
||||
AUDIO_CHANNEL_OUT_TOP_BACK_RIGHT),
|
||||
|
||||
/* input channels */
|
||||
AUDIO_CHANNEL_IN_LEFT = 0x4,
|
||||
AUDIO_CHANNEL_IN_RIGHT = 0x8,
|
||||
AUDIO_CHANNEL_IN_FRONT = 0x10,
|
||||
AUDIO_CHANNEL_IN_BACK = 0x20,
|
||||
AUDIO_CHANNEL_IN_LEFT_PROCESSED = 0x40,
|
||||
AUDIO_CHANNEL_IN_RIGHT_PROCESSED = 0x80,
|
||||
AUDIO_CHANNEL_IN_FRONT_PROCESSED = 0x100,
|
||||
AUDIO_CHANNEL_IN_BACK_PROCESSED = 0x200,
|
||||
AUDIO_CHANNEL_IN_PRESSURE = 0x400,
|
||||
AUDIO_CHANNEL_IN_X_AXIS = 0x800,
|
||||
AUDIO_CHANNEL_IN_Y_AXIS = 0x1000,
|
||||
AUDIO_CHANNEL_IN_Z_AXIS = 0x2000,
|
||||
AUDIO_CHANNEL_IN_VOICE_UPLINK = 0x4000,
|
||||
AUDIO_CHANNEL_IN_VOICE_DNLINK = 0x8000,
|
||||
|
||||
AUDIO_CHANNEL_IN_MONO = AUDIO_CHANNEL_IN_FRONT,
|
||||
AUDIO_CHANNEL_IN_STEREO = (AUDIO_CHANNEL_IN_LEFT | AUDIO_CHANNEL_IN_RIGHT),
|
||||
AUDIO_CHANNEL_IN_ALL = (AUDIO_CHANNEL_IN_LEFT |
|
||||
AUDIO_CHANNEL_IN_RIGHT |
|
||||
AUDIO_CHANNEL_IN_FRONT |
|
||||
AUDIO_CHANNEL_IN_BACK|
|
||||
AUDIO_CHANNEL_IN_LEFT_PROCESSED |
|
||||
AUDIO_CHANNEL_IN_RIGHT_PROCESSED |
|
||||
AUDIO_CHANNEL_IN_FRONT_PROCESSED |
|
||||
AUDIO_CHANNEL_IN_BACK_PROCESSED|
|
||||
AUDIO_CHANNEL_IN_PRESSURE |
|
||||
AUDIO_CHANNEL_IN_X_AXIS |
|
||||
AUDIO_CHANNEL_IN_Y_AXIS |
|
||||
AUDIO_CHANNEL_IN_Z_AXIS |
|
||||
AUDIO_CHANNEL_IN_VOICE_UPLINK |
|
||||
AUDIO_CHANNEL_IN_VOICE_DNLINK),
|
||||
} audio_channels_t;
|
||||
|
||||
#endif
|
||||
|
||||
namespace android {
|
||||
@ -397,18 +565,28 @@ public:
|
||||
#ifdef VANILLA_ANDROID
|
||||
static status_t setForceUse(force_use usage, forced_config config);
|
||||
static forced_config getForceUse(force_use usage);
|
||||
#else
|
||||
static status_t setForceUse(force_use usage, forced_config config) __attribute__((weak));
|
||||
static forced_config getForceUse(force_use usage) __attribute__((weak));
|
||||
|
||||
static status_t setForceUse(audio_policy_force_use_t usage, audio_policy_forced_cfg_t config) __attribute__((weak));
|
||||
static audio_policy_forced_cfg_t getForceUse(audio_policy_force_use_t usage) __attribute__((weak));
|
||||
#endif
|
||||
static audio_io_handle_t getOutput(stream_type stream,
|
||||
uint32_t samplingRate = 0,
|
||||
uint32_t format = FORMAT_DEFAULT,
|
||||
uint32_t channels = CHANNEL_OUT_STEREO,
|
||||
output_flags flags = OUTPUT_FLAG_INDIRECT);
|
||||
#else
|
||||
static status_t setForceUse(force_use usage, forced_config config) __attribute__((weak));
|
||||
static forced_config getForceUse(force_use usage) __attribute__((weak));
|
||||
static audio_io_handle_t getOutput(stream_type stream,
|
||||
uint32_t samplingRate = 0,
|
||||
uint32_t format = FORMAT_DEFAULT,
|
||||
uint32_t channels = CHANNEL_OUT_STEREO,
|
||||
output_flags flags = OUTPUT_FLAG_INDIRECT) __attribute__((weak));
|
||||
|
||||
static status_t setForceUse(audio_policy_force_use_t usage, audio_policy_forced_cfg_t config) __attribute__((weak));
|
||||
static audio_policy_forced_cfg_t getForceUse(audio_policy_force_use_t usage) __attribute__((weak));
|
||||
static audio_io_handle_t getOutput(audio_stream_type_t stream,
|
||||
uint32_t samplingRate = 0,
|
||||
uint32_t format = AUDIO_FORMAT_DEFAULT,
|
||||
uint32_t channels = AUDIO_CHANNEL_OUT_STEREO,
|
||||
audio_policy_output_flags_t flags = AUDIO_POLICY_OUTPUT_FLAG_INDIRECT) __attribute__((weak));
|
||||
#endif
|
||||
static status_t startOutput(audio_io_handle_t output,
|
||||
AudioSystem::stream_type stream,
|
||||
int session = 0);
|
||||
|
Loading…
Reference in New Issue
Block a user