[AudioEffect V6] Add Device Effects
This CL updates the schemas of Audio Effect Configuration to support device effects. Bug: 136294538 Test: build Change-Id: I5bd72e9e5a6889000b91c78a25e46f6b26744c20 Signed-off-by: François Gaffie <francois.gaffie@renault.com>
This commit is contained in:
parent
72c3a98e9f
commit
f8ed37158b
2 changed files with 162 additions and 0 deletions
|
@ -3,11 +3,13 @@ package audio.effects.V6_0 {
|
|||
|
||||
public class AudioEffectsConf {
|
||||
ctor public AudioEffectsConf();
|
||||
method public audio.effects.V6_0.AudioEffectsConf.DeviceEffects getDeviceEffects();
|
||||
method public audio.effects.V6_0.EffectsType getEffects();
|
||||
method public audio.effects.V6_0.LibrariesType getLibraries();
|
||||
method public audio.effects.V6_0.AudioEffectsConf.Postprocess getPostprocess();
|
||||
method public audio.effects.V6_0.AudioEffectsConf.Preprocess getPreprocess();
|
||||
method public audio.effects.V6_0.VersionType getVersion();
|
||||
method public void setDeviceEffects(audio.effects.V6_0.AudioEffectsConf.DeviceEffects);
|
||||
method public void setEffects(audio.effects.V6_0.EffectsType);
|
||||
method public void setLibraries(audio.effects.V6_0.LibrariesType);
|
||||
method public void setPostprocess(audio.effects.V6_0.AudioEffectsConf.Postprocess);
|
||||
|
@ -15,6 +17,11 @@ package audio.effects.V6_0 {
|
|||
method public void setVersion(audio.effects.V6_0.VersionType);
|
||||
}
|
||||
|
||||
public static class AudioEffectsConf.DeviceEffects {
|
||||
ctor public AudioEffectsConf.DeviceEffects();
|
||||
method public java.util.List<audio.effects.V6_0.DeviceProcessType> getDevicePort();
|
||||
}
|
||||
|
||||
public static class AudioEffectsConf.Postprocess {
|
||||
ctor public AudioEffectsConf.Postprocess();
|
||||
method public java.util.List<audio.effects.V6_0.StreamPostprocessType> getStream();
|
||||
|
@ -25,6 +32,68 @@ package audio.effects.V6_0 {
|
|||
method public java.util.List<audio.effects.V6_0.StreamPreprocessType> getStream();
|
||||
}
|
||||
|
||||
public class DeviceProcessType extends audio.effects.V6_0.StreamProcessingType {
|
||||
ctor public DeviceProcessType();
|
||||
}
|
||||
|
||||
public enum DeviceType {
|
||||
method public String getRawName();
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_AUX_DIGITAL;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_BACK_MIC;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_BLUETOOTH_A2DP;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_BLUETOOTH_BLE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_BUILTIN_MIC;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_BUS;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_COMMUNICATION;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_DGTL_DOCK_HEADSET;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_ECHO_REFERENCE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_FM_TUNER;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_HDMI;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_HDMI_ARC;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_IP;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_LINE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_LOOPBACK;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_PROXY;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_REMOTE_SUBMIX;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_SPDIF;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_TELEPHONY_RX;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_TV_TUNER;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_USB_ACCESSORY;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_USB_DEVICE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_USB_HEADSET;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_VOICE_CALL;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_IN_WIRED_HEADSET;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_AUX_DIGITAL;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_AUX_LINE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BLUETOOTH_A2DP;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BLUETOOTH_SCO;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_BUS;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_EARPIECE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_ECHO_CANCELLER;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_FM;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_HDMI;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_HDMI_ARC;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_HEARING_AID;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_IP;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_LINE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_PROXY;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_REMOTE_SUBMIX;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_SPDIF;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_SPEAKER;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_SPEAKER_SAFE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_TELEPHONY_TX;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_USB_ACCESSORY;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_USB_DEVICE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_USB_HEADSET;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_WIRED_HEADPHONE;
|
||||
enum_constant public static final audio.effects.V6_0.DeviceType AUDIO_DEVICE_OUT_WIRED_HEADSET;
|
||||
}
|
||||
|
||||
public class EffectImplType {
|
||||
ctor public EffectImplType();
|
||||
method public String getLibrary();
|
||||
|
|
|
@ -58,6 +58,65 @@
|
|||
<xs:pattern value="[^/].*"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
<xs:simpleType name="deviceType">
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_EARPIECE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_SPEAKER"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_WIRED_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_WIRED_HEADPHONE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BLUETOOTH_SCO"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_AUX_DIGITAL"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_HDMI"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_USB_ACCESSORY"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_USB_DEVICE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_REMOTE_SUBMIX"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_TELEPHONY_TX"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_LINE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_HDMI_ARC"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_SPDIF"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_FM"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_AUX_LINE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_SPEAKER_SAFE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_IP"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_BUS"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_PROXY"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_USB_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_HEARING_AID"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_OUT_ECHO_CANCELLER"/>
|
||||
<!-- Due to the xml format, IN types can not be a separated from OUT types -->
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_COMMUNICATION"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_BUILTIN_MIC"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_WIRED_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_AUX_DIGITAL"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_HDMI"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_VOICE_CALL"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_TELEPHONY_RX"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_BACK_MIC"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_REMOTE_SUBMIX"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_DGTL_DOCK_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_USB_ACCESSORY"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_USB_DEVICE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_FM_TUNER"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_TV_TUNER"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_LINE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_SPDIF"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_BLUETOOTH_A2DP"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_LOOPBACK"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_IP"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_BUS"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_PROXY"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_USB_HEADSET"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_BLUETOOTH_BLE"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_HDMI_ARC"/>
|
||||
<xs:enumeration value="AUDIO_DEVICE_IN_ECHO_REFERENCE"/>
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
<!-- Complex types -->
|
||||
<xs:complexType name="librariesType">
|
||||
<xs:annotation>
|
||||
|
@ -174,6 +233,33 @@
|
|||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
<xs:complexType name="deviceProcessType">
|
||||
<xs:annotation>
|
||||
<xs:documentation xml:lang="en">
|
||||
Audio Device Effects configuration. The processing configuration consists
|
||||
of a list of effects to be automatically added on a device Port when involved in an audio
|
||||
patch.
|
||||
Valid device type are listed in "deviceType" and shall be aligned.
|
||||
Each stream element contains a list of "apply" elements. The value of the
|
||||
"effect" attr must correspond to the name of an "effect" element.
|
||||
Note that if the device is involved in a hardware patch, the effect must be hardware
|
||||
accelerated.
|
||||
Example:
|
||||
<devicePort address="BUS00_USAGE_MAIN" type="AUDIO_DEVICE_OUT_BUS">
|
||||
<apply effect="equalizer"/>
|
||||
<apply effect="effect2"/>
|
||||
</devicePort>
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="aec:streamProcessingType">
|
||||
<xs:complexType>
|
||||
<xs:attribute name="address" type="xs:string" use="required"/>
|
||||
<xs:attribute name="type" type="aec:deviceType" use="required"/>
|
||||
</xs:complexType>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
<!-- Root element -->
|
||||
<xs:element name="audio_effects_conf">
|
||||
<xs:complexType>
|
||||
|
@ -194,6 +280,13 @@
|
|||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="deviceEffects" minOccurs="0" maxOccurs="1">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="devicePort" type="aec:deviceProcessType" minOccurs="0" maxOccurs="unbounded"/>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
<xs:attribute name="version" type="aec:versionType" use="required"/>
|
||||
</xs:complexType>
|
||||
|
|
Loading…
Reference in a new issue