mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:50:18 +00:00
Merge "audio: Move Microphone[Dynamic]Info structs from core"
This commit is contained in:
@@ -120,8 +120,6 @@ aidl_interface {
|
||||
"android/hardware/audio/core/IStreamOut.aidl",
|
||||
"android/hardware/audio/core/IStreamOutEventCallback.aidl",
|
||||
"android/hardware/audio/core/ITelephony.aidl",
|
||||
"android/hardware/audio/core/MicrophoneDynamicInfo.aidl",
|
||||
"android/hardware/audio/core/MicrophoneInfo.aidl",
|
||||
"android/hardware/audio/core/MmapBufferDescriptor.aidl",
|
||||
"android/hardware/audio/core/ModuleDebug.aidl",
|
||||
"android/hardware/audio/core/StreamDescriptor.aidl",
|
||||
|
||||
@@ -58,7 +58,7 @@ interface IModule {
|
||||
void setMasterVolume(float volume);
|
||||
boolean getMicMute();
|
||||
void setMicMute(boolean mute);
|
||||
android.hardware.audio.core.MicrophoneInfo[] getMicrophones();
|
||||
android.media.audio.common.MicrophoneInfo[] getMicrophones();
|
||||
void updateAudioMode(android.media.audio.common.AudioMode mode);
|
||||
void updateScreenRotation(android.hardware.audio.core.IModule.ScreenRotation rotation);
|
||||
void updateScreenState(boolean isTurnedOn);
|
||||
|
||||
@@ -35,7 +35,7 @@ package android.hardware.audio.core;
|
||||
@VintfStability
|
||||
interface IStreamIn {
|
||||
android.hardware.audio.core.IStreamCommon getStreamCommon();
|
||||
android.hardware.audio.core.MicrophoneDynamicInfo[] getActiveMicrophones();
|
||||
android.media.audio.common.MicrophoneDynamicInfo[] getActiveMicrophones();
|
||||
android.hardware.audio.core.IStreamIn.MicrophoneDirection getMicrophoneDirection();
|
||||
void setMicrophoneDirection(android.hardware.audio.core.IStreamIn.MicrophoneDirection direction);
|
||||
float getMicrophoneFieldDimension();
|
||||
@@ -43,7 +43,7 @@ interface IStreamIn {
|
||||
void updateMetadata(in android.hardware.audio.common.SinkMetadata sinkMetadata);
|
||||
float[] getHwGain();
|
||||
void setHwGain(in float[] channelGains);
|
||||
const int MIC_FIELD_DIMENSION_WIDE_ANGLE = (-1);
|
||||
const int MIC_FIELD_DIMENSION_WIDE_ANGLE = (-1) /* -1 */;
|
||||
const int MIC_FIELD_DIMENSION_NO_ZOOM = 0;
|
||||
const int MIC_FIELD_DIMENSION_MAX_ZOOM = 1;
|
||||
const int HW_GAIN_MIN = 0;
|
||||
|
||||
@@ -46,7 +46,7 @@ interface ITelephony {
|
||||
const int VOICE_VOLUME_MAX = 1;
|
||||
@Backing(type="int") @VintfStability
|
||||
enum TtyMode {
|
||||
UNSPECIFIED = (-1),
|
||||
UNSPECIFIED = (-1) /* -1 */,
|
||||
OFF = 0,
|
||||
FULL = 1,
|
||||
HCO = 2,
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
|
||||
// two cases:
|
||||
// 1). this is a frozen version file - do not edit this in any case.
|
||||
// 2). this is a 'current' file. If you make a backwards compatible change to
|
||||
// the interface (from the latest frozen version), the build system will
|
||||
// prompt you to update this file with `m <name>-update-api`.
|
||||
//
|
||||
// You must not make a backward incompatible change to any AIDL file built
|
||||
// with the aidl_interface module type with versions property set. The module
|
||||
// type is used to build AIDL files in a way that they can be used across
|
||||
// independently updatable components of the system. If a device is shipped
|
||||
// with such a backward incompatible change, it has a high risk of breaking
|
||||
// later when a module using the interface is updated, e.g., Mainline modules.
|
||||
|
||||
package android.hardware.audio.core;
|
||||
@JavaDerive(equals=true, toString=true) @VintfStability
|
||||
parcelable MicrophoneDynamicInfo {
|
||||
@utf8InCpp String id;
|
||||
android.hardware.audio.core.MicrophoneDynamicInfo.ChannelMapping[] channelMapping;
|
||||
@Backing(type="int") @VintfStability
|
||||
enum ChannelMapping {
|
||||
UNUSED = 0,
|
||||
DIRECT = 1,
|
||||
PROCESSED = 2,
|
||||
}
|
||||
}
|
||||
@@ -1,82 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
|
||||
// two cases:
|
||||
// 1). this is a frozen version file - do not edit this in any case.
|
||||
// 2). this is a 'current' file. If you make a backwards compatible change to
|
||||
// the interface (from the latest frozen version), the build system will
|
||||
// prompt you to update this file with `m <name>-update-api`.
|
||||
//
|
||||
// You must not make a backward incompatible change to any AIDL file built
|
||||
// with the aidl_interface module type with versions property set. The module
|
||||
// type is used to build AIDL files in a way that they can be used across
|
||||
// independently updatable components of the system. If a device is shipped
|
||||
// with such a backward incompatible change, it has a high risk of breaking
|
||||
// later when a module using the interface is updated, e.g., Mainline modules.
|
||||
|
||||
package android.hardware.audio.core;
|
||||
@JavaDerive(equals=true, toString=true) @VintfStability
|
||||
parcelable MicrophoneInfo {
|
||||
@utf8InCpp String id;
|
||||
android.media.audio.common.AudioDevice device;
|
||||
android.hardware.audio.core.MicrophoneInfo.Location location = android.hardware.audio.core.MicrophoneInfo.Location.UNKNOWN;
|
||||
int group = GROUP_UNKNOWN;
|
||||
int indexInTheGroup = INDEX_IN_THE_GROUP_UNKNOWN;
|
||||
@nullable android.hardware.audio.core.MicrophoneInfo.Sensitivity sensitivity;
|
||||
android.hardware.audio.core.MicrophoneInfo.Directionality directionality = android.hardware.audio.core.MicrophoneInfo.Directionality.UNKNOWN;
|
||||
android.hardware.audio.core.MicrophoneInfo.FrequencyResponsePoint[] frequencyResponse;
|
||||
@nullable android.hardware.audio.core.MicrophoneInfo.Coordinate position;
|
||||
@nullable android.hardware.audio.core.MicrophoneInfo.Coordinate orientation;
|
||||
const int GROUP_UNKNOWN = (-1);
|
||||
const int INDEX_IN_THE_GROUP_UNKNOWN = (-1);
|
||||
@Backing(type="int") @VintfStability
|
||||
enum Location {
|
||||
UNKNOWN = 0,
|
||||
MAINBODY = 1,
|
||||
MAINBODY_MOVABLE = 2,
|
||||
PERIPHERAL = 3,
|
||||
}
|
||||
@VintfStability
|
||||
parcelable Sensitivity {
|
||||
float leveldBFS;
|
||||
float maxSpldB;
|
||||
float minSpldB;
|
||||
}
|
||||
@Backing(type="int") @VintfStability
|
||||
enum Directionality {
|
||||
UNKNOWN = 0,
|
||||
OMNI = 1,
|
||||
BI_DIRECTIONAL = 2,
|
||||
CARDIOID = 3,
|
||||
HYPER_CARDIOID = 4,
|
||||
SUPER_CARDIOID = 5,
|
||||
}
|
||||
@VintfStability
|
||||
parcelable FrequencyResponsePoint {
|
||||
float frequencyHz;
|
||||
float leveldB;
|
||||
}
|
||||
@VintfStability
|
||||
parcelable Coordinate {
|
||||
float x;
|
||||
float y;
|
||||
float z;
|
||||
}
|
||||
}
|
||||
@@ -39,12 +39,12 @@ parcelable StreamDescriptor {
|
||||
int frameSizeBytes;
|
||||
long bufferSizeFrames;
|
||||
android.hardware.audio.core.StreamDescriptor.AudioBuffer audio;
|
||||
const int LATENCY_UNKNOWN = (-1);
|
||||
const int LATENCY_UNKNOWN = (-1) /* -1 */;
|
||||
@FixedSize @VintfStability
|
||||
parcelable Position {
|
||||
long frames = UNKNOWN;
|
||||
long timeNs = UNKNOWN;
|
||||
const long UNKNOWN = (-1);
|
||||
long frames = UNKNOWN /* -1 */;
|
||||
long timeNs = UNKNOWN /* -1 */;
|
||||
const long UNKNOWN = (-1) /* -1 */;
|
||||
}
|
||||
@Backing(type="int") @VintfStability
|
||||
enum State {
|
||||
|
||||
@@ -26,7 +26,6 @@ import android.hardware.audio.core.IStreamIn;
|
||||
import android.hardware.audio.core.IStreamOut;
|
||||
import android.hardware.audio.core.IStreamOutEventCallback;
|
||||
import android.hardware.audio.core.ITelephony;
|
||||
import android.hardware.audio.core.MicrophoneInfo;
|
||||
import android.hardware.audio.core.ModuleDebug;
|
||||
import android.hardware.audio.core.StreamDescriptor;
|
||||
import android.hardware.audio.core.VendorParameter;
|
||||
@@ -39,6 +38,7 @@ import android.media.audio.common.AudioOffloadInfo;
|
||||
import android.media.audio.common.AudioPort;
|
||||
import android.media.audio.common.AudioPortConfig;
|
||||
import android.media.audio.common.Float;
|
||||
import android.media.audio.common.MicrophoneInfo;
|
||||
|
||||
/**
|
||||
* Each instance of IModule corresponds to a separate audio module. The system
|
||||
|
||||
@@ -18,7 +18,7 @@ package android.hardware.audio.core;
|
||||
|
||||
import android.hardware.audio.common.SinkMetadata;
|
||||
import android.hardware.audio.core.IStreamCommon;
|
||||
import android.hardware.audio.core.MicrophoneDynamicInfo;
|
||||
import android.media.audio.common.MicrophoneDynamicInfo;
|
||||
|
||||
/**
|
||||
* This interface provides means for receiving audio data from input devices.
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.audio.core;
|
||||
|
||||
/**
|
||||
* Structure providing dynamic information on a microphone. This information
|
||||
* changes between recording sessions.
|
||||
*/
|
||||
@JavaDerive(equals=true, toString=true)
|
||||
@VintfStability
|
||||
parcelable MicrophoneDynamicInfo {
|
||||
/**
|
||||
* Unique alphanumeric id for the microphone. It must match the id of one of
|
||||
* the 'MicrophoneInfo' entries returned by 'IModule.getMicrophones'.
|
||||
*/
|
||||
@utf8InCpp String id;
|
||||
|
||||
@VintfStability
|
||||
@Backing(type="int")
|
||||
enum ChannelMapping {
|
||||
/** Channel not used. */
|
||||
UNUSED = 0,
|
||||
/** Channel is used and the signal is not processed. */
|
||||
DIRECT = 1,
|
||||
/** Channel is used and the signal has some processing. */
|
||||
PROCESSED = 2,
|
||||
}
|
||||
/**
|
||||
* The vector is indexes by zero-based channels of the microphone, thus the
|
||||
* element '0' corresponds to the first channel, '1' is the second, etc. The
|
||||
* vector must contain at least 1 element.
|
||||
*/
|
||||
ChannelMapping[] channelMapping;
|
||||
}
|
||||
@@ -1,146 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.hardware.audio.core;
|
||||
|
||||
import android.media.audio.common.AudioDevice;
|
||||
|
||||
/**
|
||||
* Structure providing static information on a microphone. This information
|
||||
* never changes during the lifetime of the IModule which owns the microphone.
|
||||
* The information presented in this structure indicates the location and
|
||||
* orientation of the microphone on the device as well as useful information
|
||||
* like frequency response and sensitivity.
|
||||
*/
|
||||
@JavaDerive(equals=true, toString=true)
|
||||
@VintfStability
|
||||
parcelable MicrophoneInfo {
|
||||
/**
|
||||
* Unique alphanumeric id for the microphone. It must remain the same across
|
||||
* device reboots. The client must never attempt to parse the value of this
|
||||
* field.
|
||||
*/
|
||||
@utf8InCpp String id;
|
||||
/**
|
||||
* Describes the location of the microphone in terms of managed audio devices.
|
||||
*/
|
||||
AudioDevice device;
|
||||
|
||||
@VintfStability
|
||||
@Backing(type="int")
|
||||
enum Location {
|
||||
/** Microphone location is unknown. */
|
||||
UNKNOWN = 0,
|
||||
/** The microphone is located on the main body of the device. */
|
||||
MAINBODY = 1,
|
||||
/** The microphone is located on a movable main body of the device. */
|
||||
MAINBODY_MOVABLE = 2,
|
||||
/** The microphone is located on a peripheral. */
|
||||
PERIPHERAL = 3,
|
||||
}
|
||||
/** Location of the microphone in regard to the body of the device */
|
||||
Location location = Location.UNKNOWN;
|
||||
|
||||
/**
|
||||
* This value is used when the group of the microphone is unknown.
|
||||
*/
|
||||
const int GROUP_UNKNOWN = -1;
|
||||
/**
|
||||
* An identifier to group related microphones together, for example,
|
||||
* microphones of a microphone array should all belong to the same group.
|
||||
* Note that microphones assigned to 'GROUP_UNKNOWN' do not form a group.
|
||||
*/
|
||||
int group = GROUP_UNKNOWN;
|
||||
/**
|
||||
* This value is used when the index in the group of the microphone is
|
||||
* unknown.
|
||||
*/
|
||||
const int INDEX_IN_THE_GROUP_UNKNOWN = -1;
|
||||
/**
|
||||
* Index of this microphone within the group. The pair (group, index) must
|
||||
* be unique within the same HAL module, except the pair
|
||||
* (GROUP_UNKNOWN, INDEX_IN_THE_GROUP_UNKNOWN).
|
||||
*/
|
||||
int indexInTheGroup = INDEX_IN_THE_GROUP_UNKNOWN;
|
||||
|
||||
@VintfStability
|
||||
parcelable Sensitivity {
|
||||
/** Level in dBFS produced by a 1000 Hz tone at 94 dB SPL. */
|
||||
float leveldBFS;
|
||||
/** Level in dB of the max SPL supported at 1000 Hz */
|
||||
float maxSpldB;
|
||||
/** Level in dB of the min SPL supported at 1000 Hz */
|
||||
float minSpldB;
|
||||
}
|
||||
/**
|
||||
* If provided, must describe acceptable sound pressure levels (SPL)
|
||||
* for a 1 kHz sine wave, and the resulting level in dBFS.
|
||||
*/
|
||||
@nullable Sensitivity sensitivity;
|
||||
|
||||
@VintfStability
|
||||
@Backing(type="int")
|
||||
enum Directionality {
|
||||
UNKNOWN = 0,
|
||||
OMNI = 1,
|
||||
BI_DIRECTIONAL = 2,
|
||||
CARDIOID = 3,
|
||||
HYPER_CARDIOID = 4,
|
||||
SUPER_CARDIOID = 5,
|
||||
}
|
||||
/**
|
||||
* The standard polar pattern of the microphone.
|
||||
*/
|
||||
Directionality directionality = Directionality.UNKNOWN;
|
||||
|
||||
/**
|
||||
* A (frequency, level) pair. Used to represent frequency response.
|
||||
*/
|
||||
@VintfStability
|
||||
parcelable FrequencyResponsePoint {
|
||||
float frequencyHz;
|
||||
float leveldB;
|
||||
}
|
||||
/**
|
||||
* Vector with ordered frequency responses (from low to high frequencies)
|
||||
* with the frequency response of the microphone. Levels are in dB,
|
||||
* relative to level at 1000 Hz.
|
||||
*/
|
||||
FrequencyResponsePoint[] frequencyResponse;
|
||||
|
||||
/**
|
||||
* A 3D point used to represent position or orientation of a microphone.
|
||||
*/
|
||||
@VintfStability
|
||||
parcelable Coordinate {
|
||||
float x;
|
||||
float y;
|
||||
float z;
|
||||
}
|
||||
/**
|
||||
* If provided, must specify distances of the microphone's capsule, in
|
||||
* meters, from the bottom-left-back corner of the bounding box of device in
|
||||
* its natural orientation (PORTRAIT for phones, LANDSCAPE for tablets, TVs,
|
||||
* etc).
|
||||
*/
|
||||
@nullable Coordinate position;
|
||||
/**
|
||||
* If provided, describes the normalized point which defines the main
|
||||
* orientation of the microphone's capsule.
|
||||
* Magnitude = sqrt(x^2 + y^2 + z^2) = 1.
|
||||
*/
|
||||
@nullable Coordinate orientation;
|
||||
}
|
||||
@@ -40,6 +40,7 @@ using aidl::android::media::audio::common::AudioPortExt;
|
||||
using aidl::android::media::audio::common::AudioPortMixExt;
|
||||
using aidl::android::media::audio::common::AudioProfile;
|
||||
using aidl::android::media::audio::common::Int;
|
||||
using aidl::android::media::audio::common::MicrophoneInfo;
|
||||
using aidl::android::media::audio::common::PcmType;
|
||||
using android::hardware::audio::common::makeBitPositionFlagMask;
|
||||
|
||||
|
||||
@@ -55,6 +55,7 @@ using aidl::android::media::audio::common::AudioPortExt;
|
||||
using aidl::android::media::audio::common::AudioProfile;
|
||||
using aidl::android::media::audio::common::Boolean;
|
||||
using aidl::android::media::audio::common::Int;
|
||||
using aidl::android::media::audio::common::MicrophoneInfo;
|
||||
using aidl::android::media::audio::common::PcmType;
|
||||
using android::hardware::audio::common::getFrameSizeInBytes;
|
||||
using android::hardware::audio::common::isBitPositionFlagSet;
|
||||
|
||||
@@ -31,6 +31,8 @@ using aidl::android::media::audio::common::AudioDualMonoMode;
|
||||
using aidl::android::media::audio::common::AudioLatencyMode;
|
||||
using aidl::android::media::audio::common::AudioOffloadInfo;
|
||||
using aidl::android::media::audio::common::AudioPlaybackRate;
|
||||
using aidl::android::media::audio::common::MicrophoneDynamicInfo;
|
||||
using aidl::android::media::audio::common::MicrophoneInfo;
|
||||
using android::hardware::audio::common::getChannelCount;
|
||||
using android::hardware::audio::common::getFrameSizeInBytes;
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ using aidl::android::hardware::audio::common::SinkMetadata;
|
||||
using aidl::android::hardware::audio::common::SourceMetadata;
|
||||
using aidl::android::media::audio::common::AudioDevice;
|
||||
using aidl::android::media::audio::common::AudioOffloadInfo;
|
||||
using aidl::android::media::audio::common::MicrophoneInfo;
|
||||
|
||||
namespace aidl::android::hardware::audio::core {
|
||||
|
||||
|
||||
@@ -22,14 +22,14 @@
|
||||
|
||||
#include <aidl/android/hardware/audio/core/AudioPatch.h>
|
||||
#include <aidl/android/hardware/audio/core/AudioRoute.h>
|
||||
#include <aidl/android/hardware/audio/core/MicrophoneInfo.h>
|
||||
#include <aidl/android/media/audio/common/AudioPort.h>
|
||||
#include <aidl/android/media/audio/common/AudioPortConfig.h>
|
||||
#include <aidl/android/media/audio/common/MicrophoneInfo.h>
|
||||
|
||||
namespace aidl::android::hardware::audio::core::internal {
|
||||
|
||||
struct Configuration {
|
||||
std::vector<MicrophoneInfo> microphones;
|
||||
std::vector<::aidl::android::media::audio::common::MicrophoneInfo> microphones;
|
||||
std::vector<::aidl::android::media::audio::common::AudioPort> ports;
|
||||
std::vector<::aidl::android::media::audio::common::AudioPortConfig> portConfigs;
|
||||
std::vector<::aidl::android::media::audio::common::AudioPortConfig> initialConfigs;
|
||||
|
||||
@@ -94,7 +94,9 @@ class Module : public BnModule {
|
||||
ndk::ScopedAStatus setMasterVolume(float in_volume) override;
|
||||
ndk::ScopedAStatus getMicMute(bool* _aidl_return) override;
|
||||
ndk::ScopedAStatus setMicMute(bool in_mute) override;
|
||||
ndk::ScopedAStatus getMicrophones(std::vector<MicrophoneInfo>* _aidl_return) override;
|
||||
ndk::ScopedAStatus getMicrophones(
|
||||
std::vector<::aidl::android::media::audio::common::MicrophoneInfo>* _aidl_return)
|
||||
override;
|
||||
ndk::ScopedAStatus updateAudioMode(
|
||||
::aidl::android::media::audio::common::AudioMode in_mode) override;
|
||||
ndk::ScopedAStatus updateScreenRotation(
|
||||
|
||||
@@ -32,10 +32,10 @@
|
||||
#include <aidl/android/hardware/audio/core/BnStreamOut.h>
|
||||
#include <aidl/android/hardware/audio/core/IStreamCallback.h>
|
||||
#include <aidl/android/hardware/audio/core/IStreamOutEventCallback.h>
|
||||
#include <aidl/android/hardware/audio/core/MicrophoneInfo.h>
|
||||
#include <aidl/android/hardware/audio/core/StreamDescriptor.h>
|
||||
#include <aidl/android/media/audio/common/AudioDevice.h>
|
||||
#include <aidl/android/media/audio/common/AudioOffloadInfo.h>
|
||||
#include <aidl/android/media/audio/common/MicrophoneInfo.h>
|
||||
#include <fmq/AidlMessageQueue.h>
|
||||
#include <system/thread_defs.h>
|
||||
#include <utils/Errors.h>
|
||||
@@ -413,7 +413,8 @@ class StreamIn : public StreamCommonImpl<::aidl::android::hardware::audio::commo
|
||||
getStreamCommon(_aidl_return);
|
||||
}
|
||||
ndk::ScopedAStatus getActiveMicrophones(
|
||||
std::vector<MicrophoneDynamicInfo>* _aidl_return) override;
|
||||
std::vector<::aidl::android::media::audio::common::MicrophoneDynamicInfo>* _aidl_return)
|
||||
override;
|
||||
ndk::ScopedAStatus getMicrophoneDirection(MicrophoneDirection* _aidl_return) override;
|
||||
ndk::ScopedAStatus setMicrophoneDirection(MicrophoneDirection in_direction) override;
|
||||
ndk::ScopedAStatus getMicrophoneFieldDimension(float* _aidl_return) override;
|
||||
@@ -434,7 +435,7 @@ class StreamIn : public StreamCommonImpl<::aidl::android::hardware::audio::commo
|
||||
StreamIn(const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context, const DriverInterface::CreateInstance& createDriver,
|
||||
const StreamWorkerInterface::CreateInstance& createWorker,
|
||||
const std::vector<MicrophoneInfo>& microphones);
|
||||
const std::vector<::aidl::android::media::audio::common::MicrophoneInfo>& microphones);
|
||||
void createStreamCommon(const std::shared_ptr<StreamIn>& myPtr) {
|
||||
StreamCommonImpl<
|
||||
::aidl::android::hardware::audio::common::SinkMetadata>::createStreamCommon(myPtr);
|
||||
@@ -445,7 +446,8 @@ class StreamIn : public StreamCommonImpl<::aidl::android::hardware::audio::commo
|
||||
public:
|
||||
using CreateInstance = std::function<ndk::ScopedAStatus(
|
||||
const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context, const std::vector<MicrophoneInfo>& microphones,
|
||||
StreamContext&& context,
|
||||
const std::vector<::aidl::android::media::audio::common::MicrophoneInfo>& microphones,
|
||||
std::shared_ptr<StreamIn>* result)>;
|
||||
};
|
||||
|
||||
|
||||
@@ -43,13 +43,16 @@ class StreamInStub final : public StreamIn {
|
||||
public:
|
||||
static ndk::ScopedAStatus createInstance(
|
||||
const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context, const std::vector<MicrophoneInfo>& microphones,
|
||||
StreamContext&& context,
|
||||
const std::vector<::aidl::android::media::audio::common::MicrophoneInfo>& microphones,
|
||||
std::shared_ptr<StreamIn>* result);
|
||||
|
||||
private:
|
||||
friend class ndk::SharedRefBase;
|
||||
StreamInStub(const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context, const std::vector<MicrophoneInfo>& microphones);
|
||||
StreamInStub(
|
||||
const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context,
|
||||
const std::vector<::aidl::android::media::audio::common::MicrophoneInfo>& microphones);
|
||||
};
|
||||
|
||||
class StreamOutStub final : public StreamOut {
|
||||
|
||||
@@ -60,18 +60,22 @@ class DriverUsb : public DriverInterface {
|
||||
|
||||
class StreamInUsb final : public StreamIn {
|
||||
ndk::ScopedAStatus getActiveMicrophones(
|
||||
std::vector<MicrophoneDynamicInfo>* _aidl_return) override;
|
||||
std::vector<::aidl::android::media::audio::common::MicrophoneDynamicInfo>* _aidl_return)
|
||||
override;
|
||||
|
||||
public:
|
||||
static ndk::ScopedAStatus createInstance(
|
||||
const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context, const std::vector<MicrophoneInfo>& microphones,
|
||||
StreamContext&& context,
|
||||
const std::vector<::aidl::android::media::audio::common::MicrophoneInfo>& microphones,
|
||||
std::shared_ptr<StreamIn>* result);
|
||||
|
||||
private:
|
||||
friend class ndk::SharedRefBase;
|
||||
StreamInUsb(const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context, const std::vector<MicrophoneInfo>& microphones);
|
||||
StreamInUsb(
|
||||
const ::aidl::android::hardware::audio::common::SinkMetadata& sinkMetadata,
|
||||
StreamContext&& context,
|
||||
const std::vector<::aidl::android::media::audio::common::MicrophoneInfo>& microphones);
|
||||
};
|
||||
|
||||
class StreamOutUsb final : public StreamOut {
|
||||
|
||||
@@ -30,6 +30,8 @@ using aidl::android::hardware::audio::common::SourceMetadata;
|
||||
using aidl::android::media::audio::common::AudioDevice;
|
||||
using aidl::android::media::audio::common::AudioDeviceAddress;
|
||||
using aidl::android::media::audio::common::AudioOffloadInfo;
|
||||
using aidl::android::media::audio::common::MicrophoneDynamicInfo;
|
||||
using aidl::android::media::audio::common::MicrophoneInfo;
|
||||
|
||||
namespace aidl::android::hardware::audio::core {
|
||||
|
||||
@@ -239,4 +241,4 @@ StreamOutUsb::StreamOutUsb(const SourceMetadata& sourceMetadata, StreamContext&&
|
||||
},
|
||||
offloadInfo) {}
|
||||
|
||||
} // namespace aidl::android::hardware::audio::core
|
||||
} // namespace aidl::android::hardware::audio::core
|
||||
|
||||
@@ -64,8 +64,6 @@ using aidl::android::hardware::audio::core::IStreamCommon;
|
||||
using aidl::android::hardware::audio::core::IStreamIn;
|
||||
using aidl::android::hardware::audio::core::IStreamOut;
|
||||
using aidl::android::hardware::audio::core::ITelephony;
|
||||
using aidl::android::hardware::audio::core::MicrophoneDynamicInfo;
|
||||
using aidl::android::hardware::audio::core::MicrophoneInfo;
|
||||
using aidl::android::hardware::audio::core::ModuleDebug;
|
||||
using aidl::android::hardware::audio::core::StreamDescriptor;
|
||||
using aidl::android::hardware::audio::core::VendorParameter;
|
||||
@@ -93,6 +91,8 @@ using aidl::android::media::audio::common::AudioUsage;
|
||||
using aidl::android::media::audio::common::Boolean;
|
||||
using aidl::android::media::audio::common::Float;
|
||||
using aidl::android::media::audio::common::Int;
|
||||
using aidl::android::media::audio::common::MicrophoneDynamicInfo;
|
||||
using aidl::android::media::audio::common::MicrophoneInfo;
|
||||
using aidl::android::media::audio::common::Void;
|
||||
using android::hardware::audio::common::getChannelCount;
|
||||
using android::hardware::audio::common::isBitPositionFlagSet;
|
||||
|
||||
Reference in New Issue
Block a user