优化时间的准确性

serial
Matthew 1 year ago
parent c2076b1aed
commit a527c2ee0c

@ -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;

Loading…
Cancel
Save