Камера эмулятора встроенный багги приложения в Froyo / 2.2?

камера Эмулятора хорошо работала для того, чтобы снять в 2.1 Эклерах. То, что не работало, записывало видео, очевидно.
Теперь запуская приложение, которое работало просто безупречное над 2.1 причинами Эмулятора приложение для камеры для катастрофического отказа. Я разжигаю намерение запустить его:

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(TEMP_PHOTO_FILE)));
startActivityForResult(intent, REQUEST_CAMERA);

Это запускает приложение для камеры, но после нескольких секунд оно отказывает. Вывод:

06-01 09:57:15.593: DEBUG/libEGL(5212): egl.cfg not found, using default config
06-01 09:57:15.593: DEBUG/libEGL(5212): loaded /system/lib/egl/libGLES_android.so
06-01 09:57:15.733: ERROR/AndroidRuntime(5212): FATAL EXCEPTION: GLThread 11
06-01 09:57:15.733: ERROR/AndroidRuntime(5212): java.lang.IllegalArgumentException: No configs match configSpec
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):     at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:760)
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):     at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:916)
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):     at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1246)
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):     at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)

На самом деле я просто хотел видеть, была ли ошибка, которая заставила Вас получить маленькое изображение от камеры даже при том, что EXTRA_OUTPUT был указан, исправлена в FroYo. К сожалению, я даже не добираюсь для тестирования его.
Кто-либо сталкивается с подобными проблемами?

Спасибо,
Steff

6
задан stfn 1 June 2010 в 10:03
поделиться

1 ответ

Похоже, есть несоответствие между EGLConfig, запрашиваемым камерой, и EGLConfigs, которые в настоящее время поддерживаются s/w GL рендерером, поставляемым в Froyo. Попробуйте запросить конфигурацию RGB565 EGL Config.

Более того, приведенные ниже изменения сработали для меня. Они в основном удаляют буфер Stencil из EGLConfig, так как эта конфигурация, похоже, вообще не поддерживается в s/w GL renderer в Froyo. Добавьте оригинальную конфигурацию обратно, если вы тестируете на реальных устройствах, таких как Droid.

diff --git a/src/com/android/camera/ui/GLRootView.java b/src/com/android/camera/ui/GLRootView.java
индекс d8ae0f8... 545c66a

--- a/src/com/android/camera/ui/GLRootView.java  
+++ b/src/com/android/camera/ui/GLRootView.java  
@@ -174,7 +174,8 @@ public class GLRootView extends GLSurfaceView  

     private void initialize() {  
         mFlags |= FLAG_INITIALIZED;  
-        setEGLConfigChooser(8, 8, 8, 8, 0, 4);  
+        setEGLConfigChooser(8, 8, 8, 8, 0, 0);  
         getHolder().setFormat(PixelFormat.TRANSLUCENT);  
         setZOrderOnTop(true);  
3
ответ дан 17 December 2019 в 18:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: