Skip to content

Commit 2595126

Browse files
committed
开发acr插件
1 parent ecff455 commit 2595126

File tree

7 files changed

+73
-7
lines changed

7 files changed

+73
-7
lines changed

VideoOS/VenvyLibrary/src/main/java/cn/com/venvy/VenvyRegisterLibsManager.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import cn.com.venvy.common.image.IImageLoader;
55
import cn.com.venvy.common.image.IImageSize;
66
import cn.com.venvy.common.image.IImageView;
7+
import cn.com.venvy.common.interf.IACRCloud;
78
import cn.com.venvy.common.interf.ISocketConnect;
89
import cn.com.venvy.common.interf.ISvgaImageView;
910
import cn.com.venvy.common.webview.IVenvyWebView;
@@ -21,6 +22,7 @@ public class VenvyRegisterLibsManager {
2122
private static Class<? extends IImageView> sImageViewClass;
2223
private static Class<? extends ISvgaImageView> sSvgaImageViewClass;
2324
private static Class<? extends ISocketConnect> sSocketConnect;
25+
private static Class<? extends IACRCloud> sACRCloud;
2426

2527
public static Class<? extends IRequestConnect> getConnectLib() {
2628
return sConnectClass;
@@ -56,11 +58,13 @@ public static void registerImageLoaderLib(Class<? extends IImageLoader> imageLoa
5658
sImageLoaderClass = imageLoaderLib;
5759
}
5860
}
61+
5962
public static void registerImageSizeLib(Class<? extends IImageSize> imageSizeLib) {
6063
if (sImageSizeClass == null) {
6164
sImageSizeClass = imageSizeLib;
6265
}
6366
}
67+
6468
public static Class<? extends IVenvyWebView> getWebViewLib() {
6569
return sWebViewClass;
6670
}
@@ -88,4 +92,12 @@ public static Class<? extends ISocketConnect> getSocketConnect() {
8892
public static void registerSocketConnect(Class<? extends ISocketConnect> socketConnect) {
8993
VenvyRegisterLibsManager.sSocketConnect = socketConnect;
9094
}
95+
96+
public static Class<? extends IACRCloud> getACRCloud() {
97+
return sACRCloud;
98+
}
99+
100+
public static void registerACRCloud(Class<? extends IACRCloud> ACRCloud) {
101+
VenvyRegisterLibsManager.sACRCloud = ACRCloud;
102+
}
91103
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package cn.com.venvy.common.acr;
2+
3+
import cn.com.venvy.VenvyRegisterLibsManager;
4+
import cn.com.venvy.common.interf.IACRCloud;
5+
import cn.com.venvy.common.utils.VenvyLog;
6+
7+
/***
8+
*
9+
*/
10+
11+
public class VenvyACRCloudFactory {
12+
13+
public static IACRCloud getACRCloud() {
14+
try {
15+
Class<? extends IACRCloud> ACRCloud = VenvyRegisterLibsManager.getACRCloud();
16+
if (ACRCloud == null) {
17+
return null;
18+
}
19+
return ACRCloud.newInstance();
20+
} catch (Exception e) {
21+
VenvyLog.e(VenvyACRCloudFactory.class.getName(), e);
22+
}
23+
return null;
24+
}
25+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package cn.com.venvy.common.interf;
2+
3+
/**
4+
* Created by lgf on 2020/2/24.
5+
*/
6+
7+
public interface IACRCloud {
8+
/***
9+
* 识别存储在buffer参数中的音频内容。
10+
音频格式:RIFF,PCM,16位,单声道8000 Hz。
11+
它不再开始录制过程。
12+
这是一个同步功能,它将等待直到结果返回。
13+
由于“ Android UI主线程”无法发送网络请求,因此必须在子线程中调用此函数。
14+
* @param buffer
15+
*/
16+
void startRecognize(byte[] buffer);
17+
18+
/***
19+
* 此功能将立即取消识别。
20+
*/
21+
void stopRecognize();
22+
23+
/***
24+
* 当不再使用ACRCloudClient实例时,请调用此函数以释放系统资源。
25+
注意:对于本地(脱机)识别,忘记调用此函数将导致内存泄漏。
26+
*/
27+
void destroyRecognize();
28+
}

VideoOS/VenvyLibrary/src/main/java/cn/com/venvy/common/observer/VenvyObservableTarget.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ public class VenvyObservableTarget {
1414
public static final String TAG_CLIP_MEDIA_STATUS_CHANGED = "notifyClipMediaStatusChanged";
1515

1616
public static final String TAG_ARRIVED_DATA_MESSAGE = "notifyLiveOnlineMessage";
17+
public static final String TAG_ACR_DATA_MESSAGE = "notifyAcrRecognizeMessage";
1718
public static final String TAG_JS_BRIDGE_OBSERVER = "notifyJSBridge";
1819
public static final String TAG_KEYBOARD_STATUS_CHANGED = "notifyKeyboardChanged";
1920
public static final String TAG_VOLUME_STATUS_CHANGED = "notifyVolumeStatusChanged";

VideoOS/venvy_pub/src/main/java/cn/com/videopls/pub/VideoPlusAdapter.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import cn.com.venvy.common.image.IImageLoader;
77
import cn.com.venvy.common.image.IImageSize;
88
import cn.com.venvy.common.image.IImageView;
9+
import cn.com.venvy.common.interf.IACRCloud;
910
import cn.com.venvy.common.interf.IMediaControlListener;
1011
import cn.com.venvy.common.interf.IPlatformLoginInterface;
1112
import cn.com.venvy.common.interf.ISocketConnect;
@@ -61,6 +62,10 @@ public Class<? extends ISocketConnect> buildSocketConnect() {
6162
return null;
6263
}
6364

65+
public Class<? extends IACRCloud> buildACRCloud() {
66+
return null;
67+
}
68+
6469
public OnTagKeyListener buildOttKeyListener() {
6570
return null;
6671
}

VideoOS/venvy_pub/src/main/java/cn/com/videopls/pub/VideoPlusController.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ public void setAdapter(VideoPlusAdapter videoOSAdapter) {
9292
VenvyRegisterLibsManager.registerImageViewLib(videoOSAdapter.buildImageView());
9393
VenvyRegisterLibsManager.registerSvgaImageView(videoOSAdapter.buildSvgaImageView());
9494
VenvyRegisterLibsManager.registerSocketConnect(videoOSAdapter.buildSocketConnect());
95+
VenvyRegisterLibsManager.registerACRCloud(videoOSAdapter.buildACRCloud());
9596
}
9697

9798
public void setAppletListener(IAppletListener appletListener) {

VideoOS/venvy_pub/src/main/java/cn/com/videopls/pub/VideoPlusH5Controller.java

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,14 @@
11
package cn.com.videopls.pub;
22

33
import android.content.Context;
4-
import android.net.Uri;
54
import android.text.TextUtils;
65
import android.util.Log;
76
import android.view.ViewGroup;
87

9-
import java.util.HashMap;
10-
import java.util.Set;
11-
128
import cn.com.venvy.CacheConstants;
139
import cn.com.venvy.Platform;
1410
import cn.com.venvy.PlatformInfo;
1511
import cn.com.venvy.VenvyRegisterLibsManager;
16-
import cn.com.venvy.common.router.IRouterCallback;
17-
import cn.com.venvy.common.router.PostInfo;
18-
import cn.com.venvy.common.router.VenvyRouterManager;
1912
import cn.com.venvy.common.utils.VenvyAPIUtil;
2013
import cn.com.venvy.common.utils.VenvyDeviceUtil;
2114
import cn.com.venvy.common.utils.VenvyLog;
@@ -42,6 +35,7 @@ public void setAdapter(VideoPlusAdapter videoOSAdapter) {
4235
VenvyRegisterLibsManager.registerImageViewLib(videoOSAdapter.buildImageView());
4336
VenvyRegisterLibsManager.registerSvgaImageView(videoOSAdapter.buildSvgaImageView());
4437
VenvyRegisterLibsManager.registerSocketConnect(videoOSAdapter.buildSocketConnect());
38+
VenvyRegisterLibsManager.registerACRCloud(videoOSAdapter.buildACRCloud());
4539
}
4640

4741
protected VideoPlusAdapter getVideoPlusAdapter() {

0 commit comments

Comments
 (0)