@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Utils.getEventBus().post(new ShutdownEvent()); Intent intent = new Intent("com.google.zxing.client.android.SCAN"); startActivityForResult(intent, 0); }
public void processFrame(CameraEvents.Frame frameEvent) { if (service.getActivityMode() != ActivityEvent.Mode.WARP) return; if (mode == Mode.SAMPLEWARPPLANE || mode == Mode.SAMPLEWARPGLASS) { synchronized (this) { if (!isSetup) setupMatrices(); if (captureSample) { captureSample = false; Log.d(TAG, "Warp: Capturing Sample"); Mat frame = frameEvent.getCameraFrame().getRGB(); byte[] frameJPEG = frameEvent.getCameraFrame().getJPEG(); if (sampleBGR == null || sampleBGR.height() != frame.height() || sampleBGR.width() != frame.width()) sampleBGR = new Mat(frame.rows(), frame.cols(), CvType.CV_8UC3); Imgproc.cvtColor(frame, sampleBGR, Imgproc.COLOR_RGB2BGR); useSample = true; // TODO: Specialize it for this group/device com.dappervision.wearscript.Utils.eventBusPost( new SendEvent("warpsample", "", ValueFactory.createRawValue(frameJPEG))); } } } if (busy) return; synchronized (this) { busy = true; if (!isSetup) setupMatrices(); if (mode == Mode.CAM2GLASS) { Mat inputBGR; Mat frame = frameEvent.getCameraFrame().getRGB(); if (frameBGR == null || frameBGR.height() != frame.height() || frameBGR.width() != frame.width()) frameBGR = new Mat(frame.rows(), frame.cols(), CvType.CV_8UC3); Mat hSmallToGlassMat = getHSmallToGlassMat(frame.rows(), frame.cols()); if (hSmallToGlassMat == null) { Log.w(TAG, "Warp: Bad size"); busy = false; return; } Imgproc.cvtColor(frame, frameBGR, Imgproc.COLOR_RGB2BGR); inputBGR = frameBGR; Imgproc.warpPerspective( inputBGR, frameWarp, hSmallToGlassMat, new Size(frameWarp.width(), frameWarp.height())); drawFrame(frameWarp); } busy = false; } }
@Override public void onActivityResult(int requestCode, int resultCode, Intent intent) { Log.i(TAG, "QR: Got activity result: " + resultCode + " requestCode: " + requestCode); if (requestCode == 0) { String contents = null; if (resultCode == RESULT_OK) { contents = intent.getStringExtra("SCAN_RESULT"); String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); Log.i(TAG, "QR: " + contents + " Format: " + format); Utils.SaveData(contents.getBytes(), "", false, "qr.txt"); } else if (resultCode == RESULT_CANCELED) { } finish(); } }