From 8e507bb06cd45e89e0998ee05133433802589b2e Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Thu, 8 Jun 2023 10:07:13 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B8=A7=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=8F=91=E9=80=81=E6=97=B6=E5=A4=B4=E5=92=8Cbody?= =?UTF-8?q?=E5=88=86=E5=BC=80=E5=8F=91=E9=80=81=E5=81=B6=E7=8E=B0=E4=BA=91?= =?UTF-8?q?=E6=9C=BAcamera=E6=9C=8D=E5=8A=A1=E5=B4=A9=E6=BA=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../virtualdevice/common/VirtualDeviceProtocol.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java index 9e3983e..a421a05 100644 --- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java +++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/common/VirtualDeviceProtocol.java @@ -92,7 +92,6 @@ public class VirtualDeviceProtocol { for (Map.Entry entry : virtualDeviceManagers.entrySet()) { entry.getValue().start(); } - mContext.unregisterReceiver(mPermissionResultReceiver); } public void stopProcess() { @@ -105,15 +104,21 @@ public class VirtualDeviceProtocol { for (Map.Entry entry : virtualDeviceManagers.entrySet()) { entry.getValue().stop(); } + mContext.unregisterReceiver(mPermissionResultReceiver); } public void sendMsg(MsgHeader header, byte[] body, int deviceType) { synchronized (mSendMsgLock) { - byte[] headerData = header.getData(); - writeN(headerData, 0, headerData.length, deviceType); + int length = header.getData().length; + if(body != null) { + length += body.length; + } + byte[] data = new byte[length]; + System.arraycopy(header.getData(), 0, data, 0, header.getData().length); if(body != null) { - writeN(body, 0, body.length, deviceType); + System.arraycopy(body, 0, data, header.getData().length, body.length); } + writeN(data, 0, length, deviceType); } } -- Gitee From 0a8cf80df8168a5912c4c50a407539c80cb42395 Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Thu, 8 Jun 2023 10:07:13 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B8=A7=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=8F=91=E9=80=81=E6=97=B6=E5=A4=B4=E5=92=8Cbody?= =?UTF-8?q?=E5=88=86=E5=BC=80=E5=8F=91=E9=80=81=E5=81=B6=E7=8E=B0=E4=BA=91?= =?UTF-8?q?=E6=9C=BAcamera=E6=9C=8D=E5=8A=A1=E5=B4=A9=E6=BA=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/huawei/cloudapp/ui/CasCloudMainActivity.java | 6 ++++++ .../cloudphone/virtualdevice/camera/VirtualCamera.java | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java index 520ba79..5ed6ad5 100644 --- a/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java +++ b/app/src/main/java/com/huawei/cloudapp/ui/CasCloudMainActivity.java @@ -80,11 +80,15 @@ public class CasCloudMainActivity extends Activity { mEncodeType = 1; mRemoteEncodeServerIpLayout.setVisibility(View.GONE); mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + mRemoteEncodeServerIp.setText(""); + mRemoteEncodeServerPort.setText(""); break; case R.id.radioButtonGpu: mEncodeType = 2; mRemoteEncodeServerIpLayout.setVisibility(View.GONE); mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + mRemoteEncodeServerIp.setText(""); + mRemoteEncodeServerPort.setText(""); break; case R.id.radioButtonRemote: mRemoteEncodeServerIpLayout.setVisibility(View.VISIBLE); @@ -94,6 +98,8 @@ public class CasCloudMainActivity extends Activity { mEncodeType = 0; mRemoteEncodeServerIpLayout.setVisibility(View.GONE); mRemoteEncodeServerPortLayout.setVisibility(View.GONE); + mRemoteEncodeServerIp.setText(""); + mRemoteEncodeServerPort.setText(""); break; } } diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java index c033b7d..0db9af5 100644 --- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java +++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/camera/VirtualCamera.java @@ -56,7 +56,7 @@ public class VirtualCamera implements Camera.PreviewCallback { private int mWidth = DEFAULT_WIDTH; private int mHeight = DEFAULT_HEIGHT; - private int mFps = 30; + private int mFps = 15; private int mBitrate = 4000000; private SurfaceHolder mSurfaceHolder; private boolean mIsUseH264; @@ -116,6 +116,7 @@ public class VirtualCamera implements Camera.PreviewCallback { Log.i(TAG, "startPreview: support fps range is " + ele[0] + "-" + ele[1]); if ((mFps * 1000 >= ele[0]) && (mFps * 1000 >= ele[1])) { param.setPreviewFpsRange(ele[0], ele[1]); + param.setPreviewFrameRate(mFps); } } -- Gitee From 44e42a59c6ed092a40da3ec1c5a78d4ed9a2613e Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Thu, 8 Jun 2023 15:45:55 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=BA=A6=E5=85=8B?= =?UTF-8?q?=E9=A3=8E=E6=B6=88=E6=81=AF=E4=BA=A4=E4=BA=92=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../microphone/VirtualMicrophoneManager.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/microphone/VirtualMicrophoneManager.java b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/microphone/VirtualMicrophoneManager.java index b930993..98f1fcf 100644 --- a/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/microphone/VirtualMicrophoneManager.java +++ b/cloudphone/src/main/java/com/huawei/cloudphone/virtualdevice/microphone/VirtualMicrophoneManager.java @@ -84,9 +84,18 @@ public class VirtualMicrophoneManager extends VirtualDeviceManager { public void initMicrophone() { mVirtualMicrophone.setOnRecvDataListener(new MicrophoneDataListener()); - if (mVirtualMicrophone.start() != 0) { + int result = mVirtualMicrophone.start(); + if (result != 0) { Log.e(TAG, "initMicrophone: failed to start microphone"); } + byte[] rspBody = new byte[RSP_RESULT_LENGTH + RSP_AUDIO_TYPE_LENGTH]; + rspBody[0] = 0x0; + rspBody[1] = (byte) (result == 0 ? 0x0 : 0x1); + rspBody[2] = 0x00; + rspBody[3] = 0x01; + int rspMsgLen = MSG_HEADER_LEN + RSP_RESULT_LENGTH + RSP_AUDIO_TYPE_LENGTH; + MsgHeader rspHeader = new MsgHeader(OPT_MICROPHONE_START_RECORD_RSP, DEV_TYPE_MICROPHONE, DEV_MIC_ID, rspMsgLen); + mVirtualDeviceProtocol.sendMsg(rspHeader, rspBody, MICROPHONE_DATA); } private void handleStartRecordReq(byte[] msgBody) { -- Gitee From efc57c528bf51382784c8212f28e637fdca18820 Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Thu, 8 Jun 2023 16:41:34 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9android=E9=BB=98=E8=AE=A4?= =?UTF-8?q?clientType=E4=B8=BA1=EF=BC=8C=E4=BB=A3=E8=A1=A8APP=5FTLS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cloudphone/src/main/cpp/CasController.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cloudphone/src/main/cpp/CasController.cpp b/cloudphone/src/main/cpp/CasController.cpp index 2b5a948..2b4b253 100644 --- a/cloudphone/src/main/cpp/CasController.cpp +++ b/cloudphone/src/main/cpp/CasController.cpp @@ -33,7 +33,7 @@ const int HEIGHT_MIN = 240; const int TIMES = 8; const int FRAME_RATE_MIN = 10; const int FRAME_RATE_MAX = 60; -const std::string CLIENT_TYPE = "0"; +const std::string CLIENT_TYPE = "1"; CasController *CasController::g_instance = nullptr; CasController *CasController::GetInstance() -- Gitee From 76eda22a5abc71c48e5b2888bfb8945065d4e091 Mon Sep 17 00:00:00 2001 From: wangshuo <584363327@qq.com> Date: Thu, 8 Jun 2023 16:41:34 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9camera=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E7=A0=81=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/res/layout/activity_cas_cloud_main.xml | 6 ++++-- .../cloudphone/virtualdevice/camera/VirtualCamera.java | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/res/layout/activity_cas_cloud_main.xml b/app/src/main/res/layout/activity_cas_cloud_main.xml index b2e7e16..edc4fdd 100644 --- a/app/src/main/res/layout/activity_cas_cloud_main.xml +++ b/app/src/main/res/layout/activity_cas_cloud_main.xml @@ -68,7 +68,8 @@ android:layout_marginLeft="20dp" android:layout_marginTop="30dp" android:layout_marginRight="20dp" - android:orientation="vertical"> + android:orientation="vertical" + android:visibility="gone"> + android:orientation="horizontal" + android:visibility="gone">