草庐IT

android - 如何设置由 MediaCodec 创建的编码器缓冲区大小

我正在尝试使用Nexus测试MediacodecAPI的编码。我可以看到编码器提供的inputBuffers是119040(通过记录inputBuffers.capacity)。但是帧的大小,即输入,是460800。我在inputBuffer.put收到错误消息,其中包含bufferoverflow。所以我准备将输入缓冲区设置为460800。我可以找到的API是BufferInfo.set。但是,我找不到将此设置附加到编码器的方法。有人可以帮忙吗?谢谢!!!encoder=MediaCodec.createByCodecName(codecInfo.getName());ByteBuf

android - Genymotion 无法创建帧缓冲区图像,没有得到任何可行的解决方案

你好开发者,我一直在努力解决我在基于WindowsVista的系统上遇到的Genymotion错误。我遵循了所有可用的问题和解决方案,但没有对我有利的方法。在这里我添加了我得到的错误详细信息-首先,我得到了找不到设备的IP地址。我更新了我的genymotion和虚拟机,以便解决这个问题。现在出现无法启动虚拟设备的错误。无法创建帧缓冲区。请确保您的视频卡支持opengl2.0,更新驱动程序。尝试过-从英特尔网站更新了驱动程序,之后也没有效果。更新了我正在使用的最新的genymotion,Jdk一切,虚拟机抱歉,由于这里有新蜜蜂,我无法上传图片。我会在获得至少10个声誉后更新,这是最低要求

android - 不调用带缓冲区的 PreviewCallback 和 PreviewCallback

我对Android4.0.x的预览回调有疑问。我设置了一个摄像头,创建了一个表面以在previewCallback事件上显示摄像头图像。一切正常。但在Android4.0.x中,onPreviewCallback和onPreviewCallbackWithBuffer都不会被调用。这个问题有解决方法吗?我想截屏,不想使用takePicture()方式,因为它会短时间卡住实时图像。 最佳答案 您必须在surfaceChanged方法中调用setPreviewCallback,而不仅仅是在surfaceCreated中。publicvo

android - AudioRecord:缓冲区溢出?

我在使用我的应用程序RECORDING时出现缓冲区溢出。录制在Service中执行。我不明白为什么我会从AudioFlinger收到这条消息。下面我实例化了AudioRecord对象并设置了它的回调。bufferSize=AudioRecord.getMinBufferSize(sampleRate,channelConfig,audioFormat);aRecorder=newAudioRecord(audioSource,sampleRate,channelConfig,audioFormat,bufferSize);aRecorder.setRecordPositionUpdat

android - 使用前置摄像头录制视频时分别获取视频和音频缓冲区

我在SO和一些不错的博客文章上挖掘了很多但似乎我有独特的要求单独读取视频和音频缓冲区以便在录制过程中对其进行进一步处理。我的用例就像当用户开始录制视频时,我需要使用ML-Face-Detection-Kit不断处理视频帧,并不断处理音频帧以确保用户正在说些什么并检测噪音水平。为此,我认为我需要将视频和音频都放在一个单独的缓冲区中,并在处理后将其合并并保存到MP4文件中作为录音。我试过了CameraView由伟人开发MattiaIavarone但它仅提供视频帧。我愿意接受其他有用的建议/反馈来处理这种情况。 最佳答案 这是一个answ

android - 在 OpenGL ES 2.0 中写入深度缓冲区/深度值的解决方法

我需要写入Android设备(OpenGLES2.0)上的深度缓冲区。由于gl_FragDepth在OGLES2.0下不可写,我必须找到解决方法。我实际上想通过光线转换来渲染球体,类似于:http://www.sunsetlakesoftware.com/2011/05/08/enhancing-molecules-using-opengl-es-20.然而,本网站上解释的解决方案(使用特殊的glBlendEquation编写深度的屏幕外渲染channel)仅适用于Apple设备,不适用于Android,因为GL_MIN_EXT-混合是不支持。在我的Tegra3平板电脑上,我能够实现这

Android Camera takePicture 正在使用预览小缓冲区

我正在使用OPENCV开发一个项目。我在onCameraFrame上有一些过程。当它显示预览时,用户可以拍照。但是在某些设备中,我在调用takePicture(...)方法后出错。我应该怎么办?E/Camera-JNI(11783):Manuallysetbufferwastoosmall!Expected539380bytes,butgot460800!新症状:此缓冲区的大小是我的帧大小,460800。我在onCameraFrame记录了帧大小。每帧的大小都是460800。据我了解,takePicture尝试使用预览缓冲区。而且它们的尺寸不同。 最佳答案

android - 如何加载 RGB565 缓冲区到 ImageView

我有文件“Image_RGB565.raw”,其中包含RGB565格式的图像缓冲区。我希望这张图片显示在ImageView中。是否可以不用额外的代码转换为RGB888?我试过了BitmapFactory.Optionsopt=newBitmapFactory.Options();opt.inPreferredConfig=Bitmap.Config.RGB_565;Bitmapbitmap=BitmapFactory.decodeFile("Image_001_RGB565.raw");但位图为空。然后我也尝试使用bytearray加载BitmapFactory.Optionsopt=

java - 让 OpenGL-ES 模板缓冲区工作

使用Android版opengl-es中的模板缓冲区,我只是想屏蔽掉屏幕的绘图部分。我想我已经设置好了,但它并没有掩盖非模板部分。下面是我正在做的代码的提取。gl.glEnable(GL10.GL_STENCIL_TEST);gl.glClearStencil(0);gl.glClear(GL10.GL_STENCIL_BUFFER_BIT);gl.glColorMask(false,false,false,false);gl.glDepthMask(false);gl.glStencilFunc(GL10.GL_ALWAYS,1,1);gl.glStencilOp(GL10.GL_R

android - 如何同时将来自麦克风阵列上每个麦克风的音频记录到 Android 中的单独缓冲区中?

许多平板电脑和一些智能手机使用一组麦克风来实现降噪等功能。例如摩托罗拉DroidX使用三个麦克风阵列,甚至允许您设置“音频场景”。一个exampleisdiscussedhere.我希望能够同时从平板电脑/手机上可用的所有麦克风进行录音。我发现使用AudioSource我们可以选择麦克风(我不知Prop体是哪个麦克风,但它可能是面向用户的那个)或与摄像机方向相同的麦克风,但无论如何都找不到访问权限麦克风阵列中的所有其他麦克风。任何帮助我指明正确方向进行调查的帮助都会很棒。提前感谢您的宝贵时间。 最佳答案 您似乎已经确认没有用于访问阵