小编Ale*_*ohn的帖子

如何在三星Galaxy S上使用前置摄像头

我已经尝试了几个我在网上找到的答案,例如:

Camera.Parameters parameters = mCamera.getParameters();
parameters.set("camera-id", 2);
mCamera.setParameters(parameters);
Run Code Online (Sandbox Code Playgroud)

要么

mMediaRecorder.setVideoSource(2);
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我还在清单文件上设置了权限:

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?我已经搜索了StackOverflow,我知道之前已经问过这个问题,但似乎没有确定的解决方案,任何形式的帮助都将受到赞赏.

注意:我在2.1平台上使用Galaxy S.

android android-sdk-2.1 android-camera

8
推荐指数
1
解决办法
2万
查看次数

如何衡量iOS线程的实际CPU时间?

我正在寻找Android的SystemClock.currentThreadTimeMillis()或Microsoft的GetThreadTimes()或Posix clock_gettime(CLOCK_THREAD_CPUTIME_ID,)pthread_getcpuclockid()函数的iOS模拟来测量多线程应用程序中函数使用的实际"干净"时间.也就是说,我不想测量功能中花费的实际挂钟时间,而是测量CPU上的时间.

在stackoverflow其他地方找到了有关这方面的有趣讨论.不幸的是,它们都不适用于iOS.

在iOS上有这样的功能吗?

multithreading profiling pthreads objective-c ios

8
推荐指数
1
解决办法
4113
查看次数

Android相机原生访问:startPreview()vs startRecording()

尝试从Android ICS中的本机代码开始使用相机:大多数手册都是指startPreview()方法.但是浏览AOSP代码我发现了' startRecording() '方法<Camera.h>.这里说它来自接口ICameraRecordingProxy" 允许录音机在录音期间接收视频帧 "

所以问题是 - 在性能方面,'startRecording'方法比'startPreview'更有效吗?

进入本机代码的唯一目标是性能,Java'Camera'太慢,OpenCV也不提供所需的FPS级别.

编辑:目标平台是:API级别= 17,设备Allwinner A31开发板,1280x720x30FPS.任务是从相机捕获帧,修改它们,编码(H264)并存储到SD卡.纯java MediaRecorder用1280x720x30写入mp4文件.不需要在屏幕上显示实时预览.

本机模式下的OpenCV-demo1提供1920x1080x2(在java模式下相同).具有空PreviewCallback最大FPS的简单Java方法是15.

先感谢您..

camera android android-ndk

8
推荐指数
1
解决办法
6724
查看次数

直接从字节数组裁剪图像

我有一个字节数组,其中包含一个图像...我想保存它裁剪.

我的工作方法是:获取byte []将其转换为位图,使用BitmapFactory.decodebytearray使用createbitmap(sourceBitmap,x1,y1,whileX,whileY)从其创建另一个位图,回收第一个(未剪切的)保存第二个,然后回收那个

问题是,有一段时间它存在2位图,原始和裁剪的一个,这就是为什么我不能使用这个方法与更大的图像(超过3MP)

有没有办法直接从字节数组裁剪图像?我看到有一个decodeByteArray(dataArray,偏移,长度,选项),但我无法从中制作图像(剩下的数据不是图像)...有人可能会帮忙吗?

arrays android jpeg image crop

7
推荐指数
1
解决办法
2160
查看次数

java.lang.IllegalArgumentException:不是有效的类名:ANDROID NDK javah

我正在学习在WINDOWS Eclipse上用NDK编写Android代码....一直在关注Sylvain Ratabouil的教程书.所以即时运行| 外部工具| 外部工具配置...创建新的程序配置.

名称:MyProject javah

位置:$ {env_var:JAVA_HOME}\bin\javah.exe

工作目录:$ {workspace_loc:/ MyProject/bin}

问题来自于参数......当我尝试参数时:-d $ {workspace_loc:/ MyProject/jni} com.myproject.MyActivity就像书中所说的那样

我点击运行时得到

Exception in thread "main" java.lang.IllegalArgumentException: Not a valid class name: –d
Run Code Online (Sandbox Code Playgroud)

当我尝试$ {workspace_loc:/ MyProject/jni} com.myproject.MyActivity}

我明白了

Exception in thread "main" java.lang.IllegalArgumentException: Not a valid class name: C:\Paul\Workspace\MyProject\jni
Run Code Online (Sandbox Code Playgroud)

更新:我首先把-classpath放在运行但是找不到com.myproject的类文件

java-native-interface adt android-ndk

7
推荐指数
1
解决办法
1万
查看次数

具有相机意图和图像选择器意图的选择器

我创建了一个选择器,用于从文件中拾取图像或制作图片.

我使用的代码在Nexus 5上工作正常,但是当我在三星S5上试用时,选择器不会显示相机图标.

public Intent makePhotoIntent(String title, Context ctx, String uniqueImageId){

        //Build galleryIntent
        Intent galleryIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
        galleryIntent.setType("image/*");

        //Create chooser
        Intent chooser = Intent.createChooser(galleryIntent,title);

        if (checkexCameraHardware()){
            Intent  cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
            mTempImage = null;
            try {
                mTempImage = createImageFile(uniqueImageId);
            } catch (IOException e) {
                e.printStackTrace();
            }

            if (mTempImage != null){
                cameraIntent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(mTempImage)); //add file ure (photo is saved here)
                Intent[] extraIntents = {cameraIntent};
                chooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, extraIntents);
            }
        }
        return chooser;
    }
Run Code Online (Sandbox Code Playgroud)

三星关系

当我更改意图添加到选择器的顺序时,三星设备会显示相机,但只显示android-system作为文件选项.

public Intent makePhotoIntent(String title, Context ctx, String …
Run Code Online (Sandbox Code Playgroud)

camera android android-intent samsung-touchwiz

7
推荐指数
1
解决办法
2万
查看次数

使用新的 App Startup API 初始化实例

我在 Android 开发指南中看到了这个新 API,我想尝试一下,因为它看起来是一种非常好的初始化组件的方式。但是查看文章和示例,我认为如何使用此 API 毫无意义。我得到第一个例子,为了使用WorkManager你首先需要调用它的initialize方法,所以这个新的 API 可以为你处理。但是 的create方法Initializer返回您尝试初始化的任何实例的实例。这意味着该实例在某个地方可供您抓取。但是没有解释稍后如何在代码中检索该实例以使用它。

所以我的问题是,是否有人愿意测试这个新 API,能否举个例子说明如何使用 App Startup API 为您初始化的实例。提前致谢!

android android-architecture-components android-jetpack

7
推荐指数
1
解决办法
351
查看次数

$ {packageName}.$ {activityClass}如何在布局XML文件中工作?

ADT现在生成具有以下属性的XML布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="${packageName}.${activityClass}" >
Run Code Online (Sandbox Code Playgroud)

设计工具如何知道它属于哪个类?

android adt android-layout android-xml

6
推荐指数
1
解决办法
2967
查看次数

与API级别相比,Android NDK平台版本的确切含义是什么?

我有一个Android应用程序,minSdkVersion.apiLevel将18 targetSdkVersion.apiLevel设置为23。因此,我将NDK设置为platformVersion为18。

不幸的是,在将OpenSSL添加到组合中之后,JNI库现在无法链接:

/Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'signal'
/Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'tcsetattr'
/Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'tcsetattr'
/Users/pol/Downloads/Cross/External/Android-Libraries/openssl-1.0.2g/lib/libcrypto.a(ui_openssl.o):ui_openssl.c:function open_console: error: undefined reference to 'tcgetattr'
Run Code Online (Sandbox Code Playgroud)

如果设置,问题就消失了 platformVersion为21(在19上也不起作用)。

如果Android应用程序的API级别为18,但JNI库链接为21,这对Android应用程序意味着什么?在运行4.3的设备上启动时会崩溃吗?

我无法想象该signal符号会从4.3中丢失。这是NDK的错误吗?

android openssl android-ndk

6
推荐指数
1
解决办法
3391
查看次数

我如何区分imageReader相机API 2中的NV21和YV12编码?

我正在开发自定义相机API 2应用程序,我注意到当我使用ImageReader回调时,某些设备上的捕获格式转换是不同的.

例如在Nexus 4中工作不正常并且在Nexus5X中看起来没问题,这是输出.

在此输入图像描述

我以这种形式初始化ImageReader:

mImageReader = ImageReader.newInstance(320, 240, ImageFormat.YUV_420_888,2); 
Run Code Online (Sandbox Code Playgroud)

而我的回调是简单的回调ImageReader回调.

 mOnImageAvailableListener = new ImageReader.OnImageAvailableListener() {

    @Override
    public void onImageAvailable( ImageReader reader) {

       try {
             mBackgroundHandler.post(
                 new ImageController(reader.acquireNextImage())
             );
        }
        catch(Exception e)
        {
          //exception
        }
        }
Run Code Online (Sandbox Code Playgroud)

};

在Nexus 4的情况下:我有这个错误.

D/qdgralloc: gralloc_lock_ycbcr: Invalid format passed: 0x32315659
Run Code Online (Sandbox Code Playgroud)

当我尝试在两个设备中编写原始文件时,我有这些不同的图像.所以我知道Nexus 5X图像具有NV21编码,而Nexus 4具有YV12编码. 在此输入图像描述

我找到了图像格式的规范,我尝试在ImageReader中获取格式.有YV12和NV21选项,但显然,当我尝试获取格式时,我得到YUV_420_888格式.

 int test=mImageReader.getImageFormat();
Run Code Online (Sandbox Code Playgroud)

那么有没有办法让相机输入格式(NV21或YV12)区分相机类中的这种编码类型?CameraCharacteristics可能吗?

提前致谢.

垂发.PD:我使用OpenGL显示RGB图像,我使用Opencv进行转换为YUV_420_888.

android yuv android-camera2

6
推荐指数
1
解决办法
938
查看次数