From 3e8437ae559487362fae3525beb79c534c213a51 Mon Sep 17 00:00:00 2001
From: 单军华
Date: Thu, 12 Jul 2018 13:44:34 +0800
Subject: [PATCH] bug修复和功能优化

---
 screendisplay/Pods/EaseUI/EaseUI/EMUIKit/3rdparty/DeviceHelper/internal/EMCDDeviceManager+Microphone.m |   46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/screendisplay/Pods/EaseUI/EaseUI/EMUIKit/3rdparty/DeviceHelper/internal/EMCDDeviceManager+Microphone.m b/screendisplay/Pods/EaseUI/EaseUI/EMUIKit/3rdparty/DeviceHelper/internal/EMCDDeviceManager+Microphone.m
new file mode 100755
index 0000000..c9b2a0a
--- /dev/null
+++ b/screendisplay/Pods/EaseUI/EaseUI/EMUIKit/3rdparty/DeviceHelper/internal/EMCDDeviceManager+Microphone.m
@@ -0,0 +1,46 @@
+/************************************************************
+ *  * Hyphenate CONFIDENTIAL
+ * __________________
+ * Copyright (C) 2016 Hyphenate Inc. All rights reserved.
+ *
+ * NOTICE: All information contained herein is, and remains
+ * the property of Hyphenate Inc.
+ * Dissemination of this information or reproduction of this material
+ * is strictly forbidden unless prior written permission is obtained
+ * from Hyphenate Inc.
+ */
+
+#import "EMCDDeviceManager+Microphone.h"
+#import "EMAudioRecorderUtil.h"
+
+@implementation EMCDDeviceManager (Microphone)
+
+// Check the availability for microphone
+- (BOOL)emCheckMicrophoneAvailability{
+    __block BOOL ret = NO;
+    AVAudioSession *session = [AVAudioSession sharedInstance];
+    if ([session respondsToSelector:@selector(requestRecordPermission:)]) {
+        [session performSelector:@selector(requestRecordPermission:) withObject:^(BOOL granted) {
+            ret = granted;
+        }];
+    } else {
+        ret = YES;
+    }
+    
+    return ret;
+}
+
+// Get the audio volumn (0~1)
+- (double)emPeekRecorderVoiceMeter{
+    double ret = 0.0;
+    if ([EMAudioRecorderUtil recorder].isRecording) {
+        [[EMAudioRecorderUtil recorder] updateMeters];
+        //Average volumn  [recorder averagePowerForChannel:0];
+        //Maximum volumn  [recorder peakPowerForChannel:0];
+        double lowPassResults = pow(10, (0.05 * [[EMAudioRecorderUtil recorder] peakPowerForChannel:0]));
+        ret = lowPassResults;
+    }
+    
+    return ret;
+}
+@end

--
Gitblit v1.8.0