зеркало из https://github.com/mozilla/gecko-dev.git
64 строки
2.1 KiB
Plaintext
64 строки
2.1 KiB
Plaintext
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
[scriptable, builtinclass, uuid(df31c280-1ef1-11e5-867f-0800200c9a66)]
|
|
interface nsIAudioManager : nsISupports
|
|
{
|
|
/**
|
|
* Microphone muted?
|
|
*/
|
|
attribute boolean microphoneMuted;
|
|
|
|
/**
|
|
* Are we playing audio from the FM radio?
|
|
*/
|
|
attribute boolean fmRadioAudioEnabled;
|
|
|
|
/**
|
|
* Set the phone's audio mode.
|
|
*/
|
|
const long PHONE_STATE_INVALID = -2;
|
|
const long PHONE_STATE_CURRENT = -1;
|
|
const long PHONE_STATE_NORMAL = 0;
|
|
const long PHONE_STATE_RINGTONE = 1;
|
|
const long PHONE_STATE_IN_CALL = 2;
|
|
const long PHONE_STATE_IN_COMMUNICATION = 3;
|
|
|
|
attribute long phoneState;
|
|
|
|
/**
|
|
* Configure a particular device ("force") to be used for one of the uses
|
|
* (communication, media playback, etc.)
|
|
*/
|
|
const long FORCE_NONE = 0; // the default
|
|
const long FORCE_SPEAKER = 1;
|
|
const long FORCE_HEADPHONES = 2;
|
|
const long FORCE_BT_SCO = 3;
|
|
const long FORCE_BT_A2DP = 4;
|
|
const long FORCE_WIRED_ACCESSORY = 5;
|
|
const long FORCE_BT_CAR_DOCK = 6;
|
|
const long FORCE_BT_DESK_DOCK = 7;
|
|
const long FORCE_ANALOG_DOCK = 8;
|
|
const long FORCE_DIGITAL_DOCK = 9;
|
|
const long FORCE_NO_BT_A2DP = 10;
|
|
const long USE_COMMUNICATION = 0;
|
|
const long USE_MEDIA = 1;
|
|
const long USE_RECORD = 2;
|
|
const long USE_DOCK = 3;
|
|
|
|
void setForceForUse(in long usage, in long force);
|
|
long getForceForUse(in long usage);
|
|
|
|
/**
|
|
* These functions would be used when we enable the new volume control API
|
|
* (mozAudioChannelManager). The range of volume index is from 0 to N.
|
|
* More details on : https://gist.github.com/evanxd/41d8e2d91c5201a42bfa
|
|
*/
|
|
void setAudioChannelVolume(in unsigned long channel, in unsigned long index);
|
|
unsigned long getAudioChannelVolume(in unsigned long channel);
|
|
unsigned long getMaxAudioChannelVolume(in unsigned long channel);
|
|
};
|