Libraryless. Click here for Pure Java version (585L/5K/17K).
!7 import android.app.Activity; import android.widget.*; import android.graphics.*; import android.hardware.Camera; import android.view.*; p { print "Listing cameras..." runOnUiThread(runnable { final int n = Camera.getNumberOfCameras(); print("Cameras: " + n); //final Camera cam = Camera.open(0/*n-1*/); TextureView mTextureView = new TextureView(androidContext()); mTextureView.setSurfaceTextureListener(new TextureView.SurfaceTextureListener() { Camera mCamera; public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) { mCamera = Camera.open(n-1); try { mCamera.setPreviewTexture(surface); mCamera.startPreview(); } catch (IOException ioe) { // Something bad happened } } public void onSurfaceTextureSizeChanged(SurfaceTexture surface, int width, int height) { // Ignored, Camera does all the work for us } public boolean onSurfaceTextureDestroyed(SurfaceTexture surface) { mCamera.stopPreview(); mCamera.release(); return true; } public void onSurfaceTextureUpdated(SurfaceTexture surface) { // Invoked every time there's a new Camera preview frame } }); androidShow(mTextureView); }); } static class CamCallback implements SurfaceHolder.Callback { public void surfaceChanged (SurfaceHolder holder, int format, int width, int height) { print "surfaceChanged" } public void surfaceCreated (SurfaceHolder holder) { print "surfaceCreated" } public void surfaceDestroyed (SurfaceHolder holder) { print "surfaceDestroyed" } } static class ShutterCallback implements Camera.ShutterCallback { public void onShutter() { print "Shutter!" } } static class JpegCallback implements Camera.PictureCallback { public void onPictureTaken (byte[] data, Camera cam) { TextView tv = new TextView(androidContext()); tv.setText("Picture data: " + data.length); androidShow(tv); System.out.println("Picture data: " + data.length); cam.release(); print "Camera released." } }
Began life as a copy of #1000447
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, nbgitpuheiab, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1000448 |
| Snippet name: | Android: Open camera v2 (developing) |
| Eternal ID of this version: | #1000448/4 |
| Text MD5: | d2686cd856e49a36e9e44efa494cef1f |
| Transpilation MD5: | 3007b8542ae9b45a749c93927c61cd68 |
| Author: | stefan |
| Category: | javax android |
| Type: | JavaX source code (Android) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2017-02-19 12:20:59 |
| Source code size: | 2294 bytes / 81 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 903 / 891 |
| Version history: | 3 change(s) |
| Referenced in: | #3000382 - Answer for ferdie (>> t = 1, f = 0) #3000383 - Answer for funkoverflow (>> t=1, f=0 okay) |