标签: camera

同时AVCaptureVideoDataOutput和AVCaptureMovieFileOutput

我需要能够同时拥有AVCaptureVideoDataOutputAVCaptureMovieFileOutput工作.以下代码有效,但视频录制没有.在didFinishRecordingToOutputFileAtURL直接后调用委托startRecordingToOutputFileURL被调用.现在,如果我AVCaptureVideoDataOutputAVCaptureSession简单的评论中删除该行:

[captureSession addOutput:captureDataOutput];

视频录制工作,但然后不调用SampleBufferDelegate(我需要).

我怎样才能兼顾AVCaptureVideoDataOutputAVCaptureMovieFileOutput同时工作.

- (void)initCapture {
 AVCaptureDeviceInput *captureInput = [AVCaptureDeviceInput deviceInputWithDevice:[AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo] error:NULL]; 

 captureDataOutput = [[AVCaptureVideoDataOutput alloc] init]; 
 [captureDataOutput setSampleBufferDelegate:self queue:dispatch_get_main_queue()]; 

 m_captureFileOutput = [[AVCaptureMovieFileOutput alloc] init];

 NSString* key = (NSString*)kCVPixelBufferPixelFormatTypeKey; 
 NSNumber* value = [NSNumber numberWithUnsignedInt:kCVPixelFormatType_32BGRA]; 
 NSDictionary* videoSettings = [NSDictionary dictionaryWithObject:value forKey:key]; 

 [captureDataOutput setVideoSettings:videoSettings]; 

 captureSession = [[AVCaptureSession alloc] init]; 

 [captureSession addInput:captureInput];
 [captureSession addOutput:m_captureFileOutput]; 
 [captureSession addOutput:captureDataOutput]; 

 [captureSession beginConfiguration]; 
 [captureSession setSessionPreset:AVCaptureSessionPresetLow]; 
 [captureSession commitConfiguration]; 

 [self performSelector:@selector(startRecording) …
Run Code Online (Sandbox Code Playgroud)

iphone camera record video-capture ios

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

在iPhone上拍照而不显示控件

有没有办法在不通过Apple控件的情况下在iPhone上的代码中拍照?我见过很多应用程序,但我不确定使用什么API调用.

camera ios

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

Android相机在横向模式下拉伸

我正在写的应用程序需要相机功能.因此,要了解如何操作相机,我遵循以下脚本:

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.html

我已将活动放入清单中,在横向模式下为其设置屏幕方向.

我遇到的问题是,当相机被侧向握住时(所以我将Galaxy Tab P1000保持在横向位置),视图就会伸展开来.

为了更具体地说明我的脚本,我使用了Google制作的完整代码副本.它可以在android-sdk\samples\android-8\ApiDemos\src\com\example\android\apis\graphics \中找到

该文件本身称为CameraPreview.

我真的不知道为什么屏幕看起来如此拉伸.当然,格式很奇怪而不是方形,但是当使用设备上安装的默认相机应用程序时,它根本不会变形.当我将图像侧向握住并将相机移动一点时,此相机会使图像变形.

在此输入图像描述

在此输入图像描述

我做的是:我拿着我的星系标签来拍摄物体的照片(在这种情况下是笔记本电脑),然后用我的银河手机拍了一张照片.在Galaxy上我在我正在制作的app中打开相机屏幕.这对两个图像都很重要.一个我侧身,一个我在纵向视图中.照片有点不清楚,但你可以看到,在风景画中,相机变得非常宽.

java camera android landscape stretched

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

在解除相机意图之前如何拍摄多张照片?

我正在尝试使用通过intent(MediaStore.ACTION_IMAGE_CAPTURE)启动的默认设备相机应用程序拍摄多张照片.使用我正在测试的设备,相机启动,拍照,要求确认,然后返回到我处理结果的活动.

我考虑过使用广播接收器回调或内容观察者; 但是,在用户完成之前,我找不到启动相机并保持活动状态的方法.如果可能,我希望避免开发自定义相机应用程序.

我必须这样做的原因是因为用户通常需要连续拍摄多张照片,而在某些设备上,相机启动时间超过5秒,使用该软件的用户连续拍摄10 - 30张照片; 不仅如此,他们还需要控制各种相机参数.

有没有办法启动相机意图,只有在用户退出相机应用程序后才返回我的活动

camera android

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

使用Kinect和OpenGL进行投影映射

我目前使用名为procamcalibJavaCV软件来校准Kinect-Projector设置,该设置以Kinect RGB Camera为原点.此设置仅包括Kinect RGB相机(我现在大致使用Kinect作为普通相机)和一台投影仪.该校准软件使用LibFreenect(OpenKinect)作为Kinect驱动程序.

一旦软件完成其过程,它将为我提供相机和投影仪的内在和外在参数,这些参数被抛出在OpenGL软件上以验证校准,并且是一些问题开始的地方.正确设置投影和模型视图后,我应该能够适应Kinect所看到的投影内容,但为了达到这个目的,我必须在所有3轴上进行手动平移,最后一部分不做对我有任何意义!你能帮我解整一下吗?用于检索Kinect数据的SDK是OpenNI(不是最新的2.x版本,应该是1.5.x)

我将解释我正在做什么来重现这个错误.校准参数使用如下:

投影矩阵设置为(基于 http://sightations.wordpress.com/2010/08/03/simulating-calibrated-cameras-in-opengl/):

r = width/2.0f;         l = -width/2.0f;
t = height/2.0f;        b = -height/2.0f;

alpha = fx;      beta = fy;
xo    = cx;      yo   = cy;

X = kinectCalibration.c_near + kinectCalibration.c_far;
Y = kinectCalibration.c_near*kinectCalibration.c_far;

d = kinectCalibration.c_near - kinectCalibration.c_far;


float* glOrthoMatrix = (float*)malloc(16*sizeof(float));

glOrthoMatrix[0] = 2/(r-l); glOrthoMatrix[4] = 0.0f;        glOrthoMatrix[8] = 0.0f;        glOrthoMatrix[12] = (r+l)/(l-r);
glOrthoMatrix[1] = 0.0f;    glOrthoMatrix[5] = 2/(t-b);     glOrthoMatrix[9] = …
Run Code Online (Sandbox Code Playgroud)

c++ opengl mapping camera kinect

22
推荐指数
1
解决办法
2840
查看次数

用自定义相机iOS 11.0 Swift拍照4.更新错误

我在我的应用程序中有一个自定义相机,它工作正常,但在新的更新后,我收到此错误:

'jpegPhotoDataRepresentation(forJPEGSampleBuffer:previewPhotoSampleBuffer :)'在iOS 11.0中已弃用:请改用 - [AVCapturePhoto fileDataRepresentation].

这是我收到错误的行:

    guard let imageData =
        AVCapturePhotoOutput.jpegPhotoDataRepresentation(forJPEGSampleBuffer: photoSampleBuffer, previewPhotoSampleBuffer: previewPhotoSampleBuffer) else {
            return
    }
Run Code Online (Sandbox Code Playgroud)

这是我的全部功能(如果需要):

//Take pic function
func photoOutput(_ captureOutput: AVCapturePhotoOutput,
                 didFinishProcessingPhoto photoSampleBuffer: CMSampleBuffer?,
                 previewPhoto previewPhotoSampleBuffer: CMSampleBuffer?,
                 resolvedSettings: AVCaptureResolvedPhotoSettings,
                 bracketSettings: AVCaptureBracketedStillImageSettings?,
                 error: Error?) {


    // Make sure we get some photo sample buffer
    guard error == nil,
        let photoSampleBuffer = photoSampleBuffer else {
            print("Error capturing photo: \(String(describing: error))")
            return
    }
    // Convert photo same buffer to a jpeg image data by using // …
Run Code Online (Sandbox Code Playgroud)

xcode camera swift swift4 xcode9

22
推荐指数
2
解决办法
9979
查看次数

如何在Android模拟器相机中模拟图片?

有没有办法在仿真器相机拍摄照片时设置静态图片?我想在模拟器上用zxing条形码阅读器测试ir.

camera android mocking emulation

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

Android相机setJpegQuality被忽略

看来Camera.Parameters的setJpegQuality方法被忽略了,至少在我尝试过的设备上是这样的(Nexus S,Galaxy S2).

它是否适用于其他任何人,或者这是一个已知问题,还是我做错了什么,还是......?

下面设置参数的代码.jpeg质量1非常独特,因此很容易在视觉上确定它是否正常工作......而事实并非如此!此处设置的其他参数(例如棕褐色)起作用.

    camera = Camera.open();
    final Camera.Parameters parameters = camera.getParameters();
    parameters.setJpegQuality(1);
    parameters.setPictureFormat(ImageFormat.JPEG);
    // Let's set a SEPIA effect, just to verify these parameters are working at all!
    parameters.setColorEffect(Camera.Parameters.EFFECT_SEPIA);
    // I've seen this syntax too on the internet, presumably it's legacy.
    parameters.set("jpeg-quality", 1);
    camera.setParameters(parameters);
Run Code Online (Sandbox Code Playgroud)

java camera android

21
推荐指数
1
解决办法
3457
查看次数

Android翻盖前置摄像头镜头翻转视频

我正在尝试从Android的前置摄像头录制视频,同时在表面视图上显示.

我在前置摄像头发现的是,即使表面视图显示正常视图,它也会在录制过程中镜像翻转视频.

有什么方法可以防止这种情况或修复它吗?

我读过其他stackoverflow文章,比如如何防止android从前置摄像头反转图像?

但它似乎只是谈论用前置摄像头拍摄照片并反转图像,我已经使用矩阵自行修复了这些照片.但是,似乎使用矩阵的视频不起作用.

video camera android

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

getUserMedia锁定焦点/曝光

我使用navigator.getUserMedia与约束来访问用户的摄像头,采用饲料作为HTML源<video>,然后复制其流,以drawImage一个<canvas>背景.我正在做这一切,所以我可以定期拍摄快照.

我想要做的是,一旦页面开始拍摄快照,锁定getUserMedia相机的焦点/曝光,以便在快照间隔之间环境可以改变,而不会改变光平衡或相机重新聚焦.

有谁知道JS方面是否可行?

javascript camera canvas html5-video getusermedia

21
推荐指数
1
解决办法
3084
查看次数