From a527c2ee0cf9f173cd86a14e9e1933a6618e9263 Mon Sep 17 00:00:00 2001 From: Matthew Date: Tue, 14 May 2024 10:52:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=97=B6=E9=97=B4=E7=9A=84?= =?UTF-8?q?=E5=87=86=E7=A1=AE=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mpapp/v2/Camera2VideoActivity.java | 65 +++++++++---------- 1 file changed, 32 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/com/xypower/mpapp/v2/Camera2VideoActivity.java b/app/src/main/java/com/xypower/mpapp/v2/Camera2VideoActivity.java index dab65330..e45ab8fa 100644 --- a/app/src/main/java/com/xypower/mpapp/v2/Camera2VideoActivity.java +++ b/app/src/main/java/com/xypower/mpapp/v2/Camera2VideoActivity.java @@ -309,31 +309,51 @@ public class Camera2VideoActivity extends AppCompatActivity { mOsdThread.start(); + if (!TextUtils.isEmpty(mOSDLeftTop) || !TextUtils.isEmpty(mOSDLeftTop) || !TextUtils.isEmpty(mOSDLeftTop) || !TextUtils.isEmpty(mOSDLeftTop)) { + mPaint = new Paint(Paint.ANTI_ALIAS_FLAG); + mPaint.setStyle(Paint.Style.FILL); + mPaint.setColor(Color.WHITE); + int fontSize = DEFAULT_FONT_SIZE; + mPaint.setTextSize(fontSize); + + mPaintStroker = new Paint(Paint.ANTI_ALIAS_FLAG); + mPaintStroker.setStyle(Paint.Style.STROKE); + mPaintStroker.setColor(Color.BLACK); + mPaintStroker.setTextSize(fontSize); + mPaintStroker.setStrokeWidth(1); + + mBitmap = Bitmap.createBitmap(mVideoWidth, mVideoHeight, Bitmap.Config.ARGB_8888); + + Canvas canvas = new Canvas(mBitmap); + canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR); + + mOSDFilter = new GlWatermarkFilter(mBitmap); + + long ts = System.currentTimeMillis(); + + initOSD(ts); + + mOsdTs = ts + 1000; + long ms = ts % 1000; + mOSDSemaphore.release(); + mHandler.postDelayed(mTimerRunnable, 1000 - ms); + } + mHandler.postDelayed(new Runnable() { @Override public void run() { mNextVideoAbsolutePath = getVideoFilePath(); - if (mTimeMask != 0) { - long ts = System.currentTimeMillis(); - long ms = ts % 1000; - initOSD(ts - ms); - - mOsdTs = ts + 1000; - mOSDSemaphore.release(); - mHandler.postDelayed(mTimerRunnable, 1000 - ms); - } - mGPUCameraRecorder.start(mNextVideoAbsolutePath); } - }, 200); + }, 32); mHandler.postDelayed(new Runnable() { @Override public void run() { mGPUCameraRecorder.stop(); } - }, 210 + mDuration * 1000); + }, 48 + mDuration * 1000); // getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); } @@ -642,27 +662,6 @@ public class Camera2VideoActivity extends AppCompatActivity { runOnUiThread(() -> { - if (!TextUtils.isEmpty(mOSDLeftTop) || !TextUtils.isEmpty(mOSDLeftTop) || !TextUtils.isEmpty(mOSDLeftTop) || !TextUtils.isEmpty(mOSDLeftTop)) { - mPaint = new Paint(Paint.ANTI_ALIAS_FLAG); - mPaint.setStyle(Paint.Style.FILL); - mPaint.setColor(Color.WHITE); - int fontSize = DEFAULT_FONT_SIZE; - mPaint.setTextSize(fontSize); - - mPaintStroker = new Paint(Paint.ANTI_ALIAS_FLAG); - mPaintStroker.setStyle(Paint.Style.STROKE); - mPaintStroker.setColor(Color.BLACK); - mPaintStroker.setTextSize(fontSize); - mPaintStroker.setStrokeWidth(1); - - mBitmap = Bitmap.createBitmap(mVideoWidth, mVideoHeight, Bitmap.Config.ARGB_8888); - - Canvas canvas = new Canvas(mBitmap); - canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR); - - mOSDFilter = new GlWatermarkFilter(mBitmap); - } - FrameLayout frameLayout = findViewById(R.id.wrap_view); frameLayout.removeAllViews(); mPreviewView = null;