Giter VIP home page Giter VIP logo

camerafragment's People

Contributors

amadeu01 avatar dirgningrid avatar ericbets avatar florent37 avatar iamkdblue avatar jsjem avatar luizfp avatar skalaw avatar tonyydl avatar tzutalin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

camerafragment's Issues

Not able to open Back Camera(CAMERA_FACE_REAR) dirctly.

final Configuration.Builder builder = new Configuration.Builder();
builder.setCamera(Configuration.CAMERA_FACE_REAR);

    final CameraFragment cameraFragment = CameraFragment.newInstance(builder.build());
    getSupportFragmentManager().beginTransaction()
            .replace(R.id.content, cameraFragment, FRAGMENT_TAG)
            .commit();

Not work .

Nexus 7 crash

Hey
I got a crash on first nexus 7 device. it has no back camera - only front camera

Crashlog
java.lang.RuntimeException: Unable to start activity ComponentInfo{at.rosenbauer.emerec.mobile/at.rosenbauer.emerec.feed.feed.photovideo.CapturePhotoVideoActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Integer.equals(java.lang.Object)' on a null object reference
02-14 08:53:31.563 17915-17915/? W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2358)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2420)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.app.ActivityThread.access$900(ActivityThread.java:154)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.os.Looper.loop(Looper.java:135)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5294)
02-14 08:53:31.563 17915-17915/? W/System.err: at java.lang.reflect.Method.invoke(Native Method)
02-14 08:53:31.563 17915-17915/? W/System.err: at java.lang.reflect.Method.invoke(Method.java:372)
02-14 08:53:31.563 17915-17915/? W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
02-14 08:53:31.563 17915-17915/? W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)
02-14 08:53:31.563 17915-17915/? W/System.err: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Integer.equals(java.lang.Object)' on a null object reference
02-14 08:53:31.563 17915-17915/? W/System.err: at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.switchCamera(Camera1Controller.java:105)
02-14 08:53:31.563 17915-17915/? W/System.err: at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.setCameraTypeFrontBack(BaseAnncaFragment.java:436)
02-14 08:53:31.563 17915-17915/? W/System.err: at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onViewCreated(BaseAnncaFragment.java:270)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1314)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1528)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1595)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:757)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2355)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2146)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2098)
02-14 08:53:31.563 17915-17915/? W/System.err: at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2008)
02-14 08:53:31.564 17915-17915/? W/System.err: at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:388)
02-14 08:53:31.564 17915-17915/? W/System.err: at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:607)
02-14 08:53:31.564 17915-17915/? W/System.err: at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:178)
02-14 08:53:31.564 17915-17915/? W/System.err: at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1236)
02-14 08:53:31.564 17915-17915/? W/System.err: at android.app.Activity.performStart(Activity.java:6006)
02-14 08:53:31.564 17915-17915/? W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2321)
02-14 08:53:31.564 17915-17915/? W/System.err: ... 10 more

onPhotoTaken never gets called

The onPhotoTaken never gets called, even when i take a picture. Why is this?

btn_Capture.setOnClickListener {

        cameraFragment?.takePhotoOrCaptureVideo(object : CameraFragmentResultListener {
            override fun onVideoRecorded(filePath: String?) {

            }

            override fun onPhotoTaken(bytes: ByteArray?, filePath: String?) {

                val VC = Intent(this@camActivity, EditPostActivity::class.java)
                //VC.putExtra("picture", bytes)
                startActivity(VC)
            }

        },
                "/storage/self/primary",
                "photo0")
    }

Tap to focus is not present

Hi,

I am seeking a library with tap to focus feature, hoped to find here, but I saw it is not present. What a pitty...

George

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.hardware.camera2.CaptureRequest$Builder.set(android.hardware.camera2.CaptureRequest$Key, java.lang.Object)' on a null object reference

E/Camera2Manager: Error setting flash:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.hardware.camera2.CaptureRequest$Builder.set(android.hardware.camera2.CaptureRequest$Key, java.lang.Object)' on a null object reference
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.setFlashModeAndBuildPreviewRequest(Camera2Manager.java:705)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.setFlashMode(Camera2Manager.java:235)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.setFlashMode(Camera2Controller.java:130)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onFlashModeChanged(BaseAnncaFragment.java:509)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.setFlashMode(BaseAnncaFragment.java:561)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onViewCreated(BaseAnncaFragment.java:255)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1132)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1295)
at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:801)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1682)
at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:388)
at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:607)
at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:181)
at com.trello.rxlifecycle.components.support.RxAppCompatActivity.onStart(RxAppCompatActivity.java:52)
at cn.droidlover.xdroidmvp.mvp.XActivity.onStart(XActivity.java:70)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1254)
at android.app.Activity.performStart(Activity.java:6930)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2756)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2864)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1567)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6524)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:941)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:831)
E/Camera2Manager: Error setting flash:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.hardware.camera2.CaptureRequest$Builder.set(android.hardware.camera2.CaptureRequest$Key, java.lang.Object)' on a null object reference
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.setFlashModeAndBuildPreviewRequest(Camera2Manager.java:705)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.setFlashMode(Camera2Manager.java:235)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.setFlashMode(Camera2Controller.java:130)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onFlashModeChanged(BaseAnncaFragment.java:509)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.notifyListeners(BaseAnncaFragment.java:277)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onViewCreated(BaseAnncaFragment.java:272)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1132)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1295)
at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:801)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1682)
at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:388)
at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:607)
at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:181)
at


invoke the addCamera() then is a error

The FrontCamera is dark.

I use some cellphone to take a picture. However, I switch to frontCamera and the screen is whole dark.
Sony Xperia Z5 compat

Front camera image mirrored

When i take an image with the front facing camera, the resulting preview activity displays a rotated, mirrored version of the image. How can i get the exact image as is when image is taken like the rear camera.

onPhotoTaken not called in Fragment

Hi,

First of all great work for the library !
I've an issue, using cameraFragment in a fragment of mine.

I'm setting my cameraFragment like this:

final CameraFragment cameraFragment = CameraFragment.newInstance(new Configuration.Builder().build());

        getChildFragmentManager().beginTransaction()
                .replace(R.id.content, cameraFragment, "camera")
                .addToBackStack(null)
                .commit();

It's all looking great and the camera view is ok, but when i want to take a photo using the following code:

cameraFragment.takePhotoOrCaptureVideo(new CameraFragmentResultListener() {
                    @Override
                    public void onVideoRecorded(String filePath) {
                        Log.d("PhotoOrVideo","onVideoRecorded");
                    }

                    @Override
                    public void onPhotoTaken(byte[] bytes, String filePath) {
                        Log.d("PhotoOrVideo","onPhotoTaken");
                    }
                });

I don't get anything and neither onPhotoTaken or onVideoRecorded is called.
What is strange is i get log, saying it's all working great:

onRecordStatePhoto
Failed to open libwvm.so: dlopen failed: library "libwvm.so" not found
I/OMXClient: MuxOMX ctor
I/OMXClient: MuxOMX ctor
D/Camera2Manager: onCaptureCompleted:
D/Camera2Manager: onPhotoSuccessFinish:
D/Camera2Manager: onCaptureCompleted:
D/Camera2Manager: onPhotoSuccessFinish:

Is the issue comming from libwvm.so ? Looking into your code, the only way I can get onPhotoSuccessFinish but no call of onPhotoTaken would be for my listener to be null, but I just set it once and don't touch it anymore.

Any idea ?

Crash on opening camera. Device Samsung OS version 6.0.1

#0. Crashed: main: 0 0 0x0000000000000000
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:185)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:56)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:174)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:31)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager$4$1.run(Camera2Manager.java:228)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7409)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

--

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.os.Handler.post(java.lang.Runnable)' on a null object reference
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:185)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:56)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:174)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:31)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager$4$1.run(Camera2Manager.java:228)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7409)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

#0. Crashed: main: 0 0 0x0000000000000000
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:185)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:56)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:174)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:31)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager$4$1.run(Camera2Manager.java:228)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7409)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

#1. com.mixpanel.android.AnalyticsWorker
at com.android.org.conscrypt.NativeCrypto.SSL_read(NativeCrypto.java)
at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:811)
at com.android.okhttp.okio.Okio$2.read(Okio.java:140)
at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:211)
at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:316)
at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:310)
at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:206)
at com.android.okhttp.internal.http.HttpConnection.readResponse(HttpConnection.java:239)
at com.android.okhttp.internal.http.HttpTransport.readResponseHeaders(HttpTransport.java:104)
at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:1154)
at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:982)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:482)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:418)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:235)
at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210)
at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25)
at com.mixpanel.android.util.HttpService.performRequest(HttpService.java:142)
at com.mixpanel.android.mpmetrics.DecideChecker.getUrls(DecideChecker.java:289)
at com.mixpanel.android.mpmetrics.DecideChecker.getDecideResponseFromServer(DecideChecker.java:231)
at com.mixpanel.android.mpmetrics.DecideChecker.runDecideCheck(DecideChecker.java:86)
at com.mixpanel.android.mpmetrics.DecideChecker.runDecideChecks(DecideChecker.java:68)
at com.mixpanel.android.mpmetrics.AnalyticsMessages$Worker$AnalyticsMessageHandler.handleMessage(AnalyticsMessages.java:263)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)

#2. Queue
at java.lang.Object.wait(Object.java)
at java.lang.Thread.parkFor$(Thread.java:1220)
at sun.misc.Unsafe.park(Unsafe.java:299)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2013)
at java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:510)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.performOperation(DependencyPriorityBlockingQueue.java:197)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.get(DependencyPriorityBlockingQueue.java:236)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.take(DependencyPriorityBlockingQueue.java:65)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.take(DependencyPriorityBlockingQueue.java:46)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1036)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1098)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)

#3. Crashlytics Exception Handler1
at dalvik.system.VMStack.getThreadStackTrace(VMStack.java)
at java.lang.Thread.getStackTrace(Thread.java:580)
at java.lang.Thread.getAllStackTraces(Thread.java:522)
at com.crashlytics.android.core.CrashlyticsController.writeSessionEvent(CrashlyticsController.java:1114)
at com.crashlytics.android.core.CrashlyticsController.writeFatal(CrashlyticsController.java:852)
at com.crashlytics.android.core.CrashlyticsController.access$400(CrashlyticsController.java:59)
at com.crashlytics.android.core.CrashlyticsController$6.call(CrashlyticsController.java:292)
at com.crashlytics.android.core.CrashlyticsController$6.call(CrashlyticsController.java:285)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at io.fabric.sdk.android.services.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:75)
at io.fabric.sdk.android.services.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:30)
at java.lang.Thread.run(Thread.java:818)

#4. TubeSockReader-1
at com.android.org.conscrypt.NativeCrypto.SSL_read(NativeCrypto.java)
at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:811)
at libcore.io.Streams.readFully(Streams.java:81)
at java.io.DataInputStream.readFully(DataInputStream.java:99)
at blv.a(:com.google.android.gms.DynamiteModulesC@11509438:78)
at blv.a(:com.google.android.gms.DynamiteModulesC@11509438:13)
at blq.run(:com.google.android.gms.DynamiteModulesC@11509438:69)
at java.lang.Thread.run(Thread.java:818)

#5. Queue
at java.lang.Object.wait(Object.java)
at java.lang.Thread.parkFor$(Thread.java:1220)
at sun.misc.Unsafe.park(Unsafe.java:299)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2013)
at java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:510)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.performOperation(DependencyPriorityBlockingQueue.java:197)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.get(DependencyPriorityBlockingQueue.java:236)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.take(DependencyPriorityBlockingQueue.java:65)
at io.fabric.sdk.android.services.concurrency.DependencyPriorityBlockingQueue.take(DependencyPriorityBlockingQueue.java:46)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1036)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1098)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)

#6. TubeSockWriter-1
at java.lang.Object.wait(Object.java)
at java.lang.Thread.parkFor$(Thread.java:1220)
at sun.misc.Unsafe.park(Unsafe.java:299)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2013)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:410)
at blw.a(:com.google.android.gms.DynamiteModulesC@11509438:53)
at blx.run(:com.google.android.gms.DynamiteModulesC@11509438:5)
at java.lang.Thread.run(Thread.java:818)

Front camera selected

Hi

I add the camera fragment with the following settings:

Configuration.Builder configurationBuilder = new Configuration.Builder();
 configurationBuilder.setMediaAction(
     mIsPhoto ? Configuration.MEDIA_ACTION_PHOTO : Configuration.MEDIA_ACTION_VIDEO);
 configurationBuilder.setMediaQuality(
     mIsPhoto ? Configuration.MEDIA_QUALITY_HIGHEST : Configuration.MEDIA_QUALITY_LOW);
 configurationBuilder.setCamera(Configuration.CAMERA_FACE_REAR);

I would like to start with rear camera - but everytime the front facing camera is selected. What I am doing wrong?

Thanks for the great lib.

Select aspect ratio as part of the configuration set up

Hi!

First of all thanks for open sourcing this, is great. I've been using it and all great so far. I need to have a fullscreen camera by default (16:9). Right now the only thing I could do is provide the user your Settings dialog and they can try different resolutions but it won't look nice with my layout & needs. Would be great to be able to get the different resolutions or/and aspect ratios available for the device and then pass one of this to the Configuration Builder. What do you think? Is this something you would consider adding?

Best,

Rafa

brightness with dual rear camera phones

Hi @florent37,
I have tested the library on multiple phones and there seems to be an issue with brightness in dual rear camera phones.(the screen is almost completely black); this is happing on huawei p9 plus.
is there a way to solve this issue ?

thanks.

When phone is on a flat surface, icons rotate continuously.

Hi if you run the demo and start the camera and place it on a table (for example) or hold it flat, you will see that the icons start rotating like crazy.
I checked the issue and saw that it comes from the BaseAnncaFragment. I fixed it with this method and checking this before calling onScreenRotation(int degrees);

/**
     * Taken from https://stackoverflow.com/questions/11175599/how-to-measure-the-tilt-of-the-phone-in-xy-plane-using-accelerometer-in-android/15149421#15149421
     *
     * @param sensorEvent
     * @return - true if phone is on flat surcafe, false otherwise
     */
    private boolean isPhoneOnFlatSurface(SensorEvent sensorEvent) {
        float[] g;
        g = sensorEvent.values.clone();

        double norm_Of_g = Math.sqrt(g[0] * g[0] + g[1] * g[1] + g[2] * g[2]);

        // Normalize the accelerometer vector
        g[0] = (float) (g[0] / norm_Of_g);
        g[1] = (float) (g[1] / norm_Of_g);
        g[2] = (float) (g[2] / norm_Of_g);
        int inclination = (int) Math.round(Math.toDegrees(Math.acos(g[2])));
        return inclination < 25 || inclination > 155;
    }

Cameras reversed on Lenovo Moto G 4th Gen

Checking

https://github.com/florent37/CameraFragment/blob/master/camerafragment/src/main/java/com/github/florent37/camerafragment/internal/enums/Camera.java

and

https://developer.android.com/reference/android/hardware/Camera.CameraInfo.html

shouldn't the numbers from the enum be like Android's Camera?

Also, on Camera1Controller, the cameraFace, which is set on Configuration Builder, is pretty much useless.

@Override
public void switchCamera(@Configuration.CameraFace final int cameraFace) {
    final Integer backCameraId = cameraManager.getFaceBackCameraId();
    final Integer frontCameraId = cameraManager.getFaceFrontCameraId();

    if(cameraManager.getCurrentCameraId().equals(frontCameraId)){
        setCurrentCameraId(backCameraId);
    } else {
        setCurrentCameraId(frontCameraId);
    }

    cameraManager.closeCamera(this);
}

Camera Preview after take a photo

Hello,

I am using the Camera fragment, and here is my problem:
when i take a photo the camera fragment preview the captured photo and no live preview of the camera shown again,
i need to take a series of photos without previewing the captured photo,
right now i am recreating the hole activity in order to clear the camera preview - and that is not a efficient solution -
please help me or guide me to another solution

Bests,

Issue with camera being used post release

Hi,
Firstly thanks for the great library.
Ive implemented it in an app of mine and Im getting the following error for certain users

Fatal Exception: java.lang.RuntimeException: Camera is being used after Camera.release() was called at android.hardware.Camera.native_getParameters(Camera.java) at android.hardware.Camera.getParameters(Camera.java:1944) at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager.getPhotoSizeForQuality(Camera1Manager.java:271) at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager.getPhotoQualityOptions(Camera1Manager.java:680) at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.getPhotoQualityOptions(Camera1Controller.java:216) at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.setCameraPreview(BaseAnncaFragment.java:653) at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment$3.updateCameraPreview(BaseAnncaFragment.java:188) at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.onCameraOpened(Camera1Controller.java:164) at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.onCameraOpened(Camera1Controller.java:32) at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager$1$1.run(Camera1Manager.java:74) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697)

Its not something happening on every device and everytime its used but it does crop up from time to time. Havent been able to identify the exact conditions as yet but any help would be appreciated.
Thanks.

Camera2Manager.setFlashModeAndPreviewRequest NullPointerException

Looks like when Camera2Controller.setFlashMode have been called, from BaseAncaFragment onFlashModeChanged. The Camera2Manager previewRequestBuilder is null resulting this:

Error setting flash:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.hardware.camera2.CaptureRequest$Builder.set(android.hardware.camera2.CaptureRequest$Key, java.lang.Object)' on a null object reference
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.setFlashModeAndBuildPreviewRequest(Camera2Manager.java:705)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.setFlashMode(Camera2Manager.java:235)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.setFlashMode(Camera2Controller.java:112)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onFlashModeChanged(BaseAnncaFragment.java:500)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.setFlashMode(BaseAnncaFragment.java:552)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onViewCreated(BaseAnncaFragment.java:255)

How should I restart the process?

Hi,
I need to restart the process after taking and reviewing a photo/video.
Should I create a new instance of CameraFragment for to do it?
And is there any method to check the current state?

These are not issues, but they should be there, i think..

Regards,
Huseyin.

ImageSaver, IllegalStateException: Image is already closed

Application crash with IllegalStateException:

Terminating app due to an uncaught exception 'java.lang.IllegalStateException', reason: 'Image is already closed'

0 | java.lang.IllegalStateException: Image is already closed
1 | at android.media.Image.throwISEIfImageIsInvalid(Image.java:68)
2 | at android.media.ImageReader$SurfaceImage.getPlanes(ImageReader.java:733)
3 | at com.github.florent37.camerafragment.internal.utils.ImageSaver.run(ImageSaver.java:39)
4 | at android.os.Handler.handleCallback(Handler.java:751)
5 | at android.os.Handler.dispatchMessage(Handler.java:95)
6 | at android.os.Looper.loop(Looper.java:154)
7 | at android.os.HandlerThread.run(HandlerThread.java:61)

NullPointerException: Camera1Controller.switchCamera (Camera1Controller.java:105)

Got the following exception on Sony C1504, Android 4.1.1 (rooted):

Fatal Exception: java.lang.NullPointerException at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.switchCamera(Camera1Controller.java:105) at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.switchCameraTypeFrontBack(BaseAnncaFragment.java:421) at com.dgtalgroup.retailmonitor.gui.activities.CameraActivity.toggleCamara(CameraActivity.java:111) at com.dgtalgroup.retailmonitor.gui.activities.CameraActivity$$ViewBinder$1.doClick(CameraActivity$$ViewBinder.java:18)
at butterknife.internal.DebouncingOnClickListener.onClick(DebouncingOnClickListener.java:22)
at android.view.View.performClick(View.java:4106)
at android.view.View$PerformClick.run(View.java:17150)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4793)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575)
at dalvik.system.NativeStart.main(NativeStart.java)

Flash doesn't work after first time

Steps to reproduce it:

  • Toggle flash till is in ON state.
  • Take a picture (flash is fine), go to the preview
  • Come back to the camera screen
  • Take another picture (flash won't work).

Basically, it looks like the flash state is not preserved. Toggling programmatically using 3 times "toggleFlashMode()" fixes it (really hacky but it's the only public method of the api that interacts with the flash).

Camera switching not working on the samsung device only front camera works

First of all thanks for this useful library but im facing a problem in my Samsung Galaxy sm-g600fy .
When im trying to switch from front to rear camera then app stop working it's not a crash issue but it freeze the screen and all controls stop working.
i don't know why it's happening but i really need help to solve it.

if anyone facing the same issue then please contact me on [email protected]

How to set maximum video seconds?

Hello,

very great library it is. Can you please tell me how to set maximum seconds for recording video? I want to set maximum 20 seconds limit for video recording.

Full Screen camera not open

Hello,

I used Samsung galaxy note 4, a fullscreen camera can't open into device.
give me hint or guide me how to open fullscreen camera into device.

Corrupted video

unable to access recorded video. I get a corrupted video/missing codec error when trying to open. The audio works however.

NullPointerException:Camera1Manager.getPhotoSizeForQuality(Camera1Manager.java:258)

Phone: LG-D213, Android 4.4.2

Fatal Exception: java.lang.NullPointerException
at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager.getPhotoSizeForQuality(Camera1Manager.java:258)
at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager.getPhotoQualityOptions(Camera1Manager.java:621)
at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.getPhotoQualityOptions(Camera1Controller.java:200)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.setCameraPreview(BaseAnncaFragment.java:639)
at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment$3.updateCameraPreview(BaseAnncaFragment.java:183)
at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.onCameraOpened(Camera1Controller.java:148)
at com.github.florent37.camerafragment.internal.controller.impl.Camera1Controller.onCameraOpened(Camera1Controller.java:30)
at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager$1$1.run(Camera1Manager.java:73)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
at dalvik.system.NativeStart.main(NativeStart.java)

NullPointerException: Camera1Manager.setCameraPhotoQuality (Camera1Manager.java:488)

Sony C1504, Android 4.1.1 (rooted)

Fatal Exception: java.lang.NullPointerException at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager.setCameraPhotoQuality(Camera1Manager.java:488) at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager.access$400(Camera1Manager.java:39) at com.github.florent37.camerafragment.internal.manager.impl.Camera1Manager$3.run(Camera1Manager.java:166)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.os.HandlerThread.run(HandlerThread.java:60)

Preview and Photo have a different ratio

Hi florent37,

Thank you for sharing this awesome library.

I found the issue with different aspect ratio for preview of camera in Photo mode and captured photo.
I tested it with demo app.
So for example on Nexus 6, 7.1.1 device I choose 4160 x 3120 (4:3) resolution but it's previewing the fullscreen mode which is 16:9. And when I take a photo it's captured in 4160 x 3120.
It would be nice to have same preview and captured photo.

I will try to investigate it...

Camera issue Honor 8

Hi,

firstly, thanks for your work ! Then, I have a Honor 8, and mostly everything is working well, but as you can see there is a filter issue or something like that I think (Cause neither me or Coca Cola aren't blue).

screenshot_20170215-162746

The above screenshot is taken with the rear camera on Android 7.0.0 and the following with the front cam (the problem is increased with the front cam)

screenshot_20170215-163459

I don't know if you have time for this, but at least you are warned. I tryed with some Huawey if there is the same problem, but no issue with P9 and Nova.

Best regards,
Mike.

Nexus 7 (2012) very slow opening

Hi

if I use your library with my old Nexus 7 (1 version from 2012) it needs up to 15 seconds to show the camera image. I would say this is quite too long. Maybe you know a quick fix for that?

Could not find class 'android.util.Size'

E/dalvikvm: Could not find class 'android.util.Size', referenced from method com.github.florent37.camerafragment.internal.utils.Size.fromList2
W/dalvikvm: VFY: unable to resolve check-cast 376 (Landroid/util/Size;) in Lcom/github/florent37/camerafragment/internal/utils/Size;

Android 4.4.2
Device Samsung GT-I9195

Demo project crashed

When I tried to ran your demo project, I got this exception

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.toString()' on a null object reference at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.onStopVideoRecord(BaseAnncaFragment.java:730) at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.stopRecording(BaseAnncaFragment.java:633) at com.github.florent37.camerafragment.internal.ui.BaseAnncaFragment.takePhotoOrCaptureVideo(BaseAnncaFragment.java:296) at com.github.florent37.camerafragment.sample.MainActivity.onRecordButtonClicked(MainActivity.java:90) at com.github.florent37.camerafragment.sample.MainActivity$$ViewBinder$4.doClick(MainActivity$$ViewBinder.java:48)

Storage location

Hi
pictures and videos are stored in sdcard / Pictures / packagename

It would be nice to configure this path.

Best wishes

NullPointerException:Camera2Manager.openCamera (Camera2Manager.java:182)

Phone: HUAWEI VNS-L53, Android 6.0

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.os.Handler.post(java.lang.Runnable)' on a null object reference
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:182)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager.openCamera(Camera2Manager.java:56)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:156)
at com.github.florent37.camerafragment.internal.controller.impl.Camera2Controller.onCameraClosed(Camera2Controller.java:31)
at com.github.florent37.camerafragment.internal.manager.impl.Camera2Manager$4$1.run(Camera2Manager.java:225)
at android.os.Handler.handleCallback(Handler.java:743)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:150)
at android.app.ActivityThread.main(ActivityThread.java:5639)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:799)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:689)

shutter sound

I am loving this repo, but I see no options to disable the shutter sound and I am having a hard time coming up with a workaround that still allows me to use this well built repo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.