14d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent/* 24d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * Copyright (C) 2011 The Android Open Source Project 34d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * 44d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * Licensed under the Apache License, Version 2.0 (the "License"); 54d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * you may not use this file except in compliance with the License. 64d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * You may obtain a copy of the License at 74d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * 84d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * http://www.apache.org/licenses/LICENSE-2.0 94d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * 104d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * Unless required by applicable law or agreed to in writing, software 114d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * distributed under the License is distributed on an "AS IS" BASIS, 124d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 134d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * See the License for the specific language governing permissions and 144d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent * limitations under the License. 154d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent */ 164d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 174d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#ifndef ANDROID_EFFECT_NS_H_ 184d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#define ANDROID_EFFECT_NS_H_ 194d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 204d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#include <hardware/audio_effect.h> 214d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 224d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#if __cplusplus 234d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurentextern "C" { 244d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#endif 254d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 264d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent// The NS type UUID is not defined by OpenSL ES and has been generated from 274d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent// http://www.itu.int/ITU-T/asn1/uuid.html 284d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurentstatic const effect_uuid_t FX_IID_NS_ = 294d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent { 0x58b4b260, 0x8e06, 0x11e0, 0xaa8e, { 0x00, 0x02, 0xa5, 0xd5, 0xc5, 0x1b } }; 304d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurentconst effect_uuid_t * const FX_IID_NS = &FX_IID_NS_; 314d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 324d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurenttypedef enum 334d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent{ 344d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent NS_PARAM_LEVEL, // noise suppression level (t_ns_level) 354d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent NS_PARAM_PROPERTIES 364d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent} t_ns_params; 374d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 384d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent// noise suppression level 394d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurenttypedef enum { 404d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent NS_LEVEL_LOW, 414d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent NS_LEVEL_MEDIUM, 424d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent NS_LEVEL_HIGH 434d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent} t_ns_level; 444d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 454d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent// s_ns_settings groups all current ns settings for backup and restore. 464d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurenttypedef struct s_ns_settings { 474d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent uint32_t level; 484d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent} t_ns_settings; 494d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 504d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#if __cplusplus 514d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent} // extern "C" 524d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#endif 534d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 544d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent 554d64e7d0abff40010796dbf199f6bc935690afa1Eric Laurent#endif /*ANDROID_EFFECT_NS_H_*/ 56