基本上,通过使用相机应用程序的自定义叠加,我想要拍摄多个图像(在我的情况下为5),只需按一下"捕捉"按钮.
我理解以下代码:
- (void)takePicture:(id)sender
{
self.pictureButton.enabled = NO;
[self.delegate takePicture];
}
Run Code Online (Sandbox Code Playgroud)
导致拍摄单张图像.有一种方法可以在按下一个按钮后将此操作复制5次吗?实际上,这将实现类似"爆发"效果,就像在Camera + app中实现的那样.
我想很多人在这几种尺寸之间感到像我一样困惑.
让我宣布一些事情:比率=宽度/高度.
在surfaceView中,我们将previewSize和pictureSize设置为参数.
但如何选择最佳尺寸?
如果我想捕获全屏图像,那么previewSize和pictureSize应该设置为什么?
有些情况下预览是全屏但是保存的图像比预览屏幕图像大,为什么?
另外,如果previewSize和pictureSize的比例不同,有什么问题吗?
而且,是否有必要将previewSize和screenSize的比例设置为相同?
说实话,我只想捕获全屏图像并将其保存为jpg/png,保存的图像与预览的宽度和高度完全相同,怎么做?
我只是混淆了screenSize,previewSize和pictureSize之间的关系.谢谢.
我正在建立一个应用程序,允许用户通过按主屏幕上的按钮录制视频(在应用程序中).我不希望用户被带到照片应用程序,因为视频只能在应用程序上查看(最多15秒),我无法得到它.任何人都有代码来做到这一点?我希望相机做的一个很好的例子是应用程序Cinemagram中的相机.谢谢你的帮助.
在Android 2.x设备上运行时,我的相机应用程序总是会出现异常.在较新的Android设备上,该应用运行良好.
堆栈跟踪:
10-31 19:51:52.187: W/System.err(14904): java.lang.RuntimeException: startPreview failed
10-31 19:51:52.195: W/System.err(14904): at android.hardware.Camera.startPreview(Native Method)
10-31 19:51:52.195: W/System.err(14904): at com.example.MainActivity.startCamera(MainActivity.java:418)
10-31 19:51:52.195: W/System.err(14904): at com.example.MainActivity.surfaceChanged(MainActivity.java:467)
10-31 19:51:52.195: W/System.err(14904): at android.view.SurfaceView.updateWindow(SurfaceView.java:558)
10-31 19:51:52.195: W/System.err(14904): at android.view.SurfaceView.dispatchDraw(SurfaceView.java:350)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
10-31 19:51:52.195: W/System.err(14904): at android.view.ViewGroup.drawChild(ViewGroup.java:1644) …Run Code Online (Sandbox Code Playgroud) 我是iOS新手.
我有一个录制视频的应用程序,并在iPad上播放.
现在我必须在视野中打开相机.所以我使用了avcapturesession.
现在通过我的编码,我可以录制和播放视频,但录制的视频处于旋转模式.
我使用LandscapeRight进行录制.
这是我的编码:
AVCaptureVideoPreviewLayer *captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
captureVideoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
captureVideoPreviewLayer.orientation=AVCaptureVideoOrientationLandscapeRight;
captureVideoPreviewLayer.frame = vwvideo.bounds;
[vwvideo.layer addSublayer:captureVideoPreviewLayer];
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
if (!input) {
// Handle the error appropriately.
NSLog(@"ERROR: trying to open camera: %@", error);
}
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
AVCaptureMovieFileOutput *movieFileOutput = [[AVCaptureMovieFileOutput alloc] init];
NSString *documentsDirectory = [paths objectAtIndex:0];
NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init] autorelease];
[dateFormat setDateFormat:@"yyyy-MM-dd HH.mm.SS"];
NSDate …Run Code Online (Sandbox Code Playgroud) 我想创建一个skydome并制作shpere,纹理加载也很好,但我无法将相机移动到球体内部.球体消失了.我知道这是一个业余问题,但无法看到球体的内部.
是某种切割或Z缓冲问题吗?
我该如何解决?
我的代码:
<html>
<head>
<script src="js/jquery-1.8.3.min.js"></script>
<script src="js/three.min.js"></script>
</head>
<body>
<div id="container">
</div>
<script>
function addSpaceSphere( ){
// set up the sphere vars
var radius = 200,
segments = 16,
rings = 16;
var material = new THREE.MeshPhongMaterial({
color:0xFFFFFF,
map: THREE.ImageUtils.loadTexture( 'textures/SPACE014SX.png' )
});
var sphere = new THREE.Mesh(
new THREE.SphereGeometry(
radius,
segments,
rings
),
material
);
// add the sphere to the scene
scene.add(sphere);
}
function addLights(){
// create a point light
var ambient = new THREE.AmbientLight( …Run Code Online (Sandbox Code Playgroud) 我想拍一张长方形物体的照片.如果相机预览有一个边界矩形,我可以通过将对象放在边界框内来拍摄图片.我只需要图像中指定的(框内)区域.现在我开发了一个相机应用程序(使用Camera API Not INTENT),它可以拍照并存储照片,就像内置的相机应用程序一样.如何在相机预览上绘制矩形?以及如何在保存前进行裁剪?我正在使用android 2.2
Update在一个Switch案例中,我有一个动画在-function 中播放.
动画结束后,将布尔值设置为true.
我的代码:
case "play":
animation.Play("play");
gobool = true;
startbool = false;
break;
Run Code Online (Sandbox Code Playgroud)
问题是我的,gobool并startbool立即设置而不完成动画.我怎样才能让我的程序等到动画结束?
在我的OpenGL应用程序中,我有一个使用键盘(移动)和鼠标(环顾四周)控制的相机.
到目前为止,每个人都做得很好,我注意到如果我将相机在Y轴上移动到300以上,那么当移动鼠标时它会开始变得混乱.例如,如果我转到Y = 310,并且向上移动鼠标,当它开始向上看时,它也会开始向左转.
我不确定这是什么原因.有人可以帮忙吗?
下面是代码,为gluLookAt()提供前向和上升位置
双cosR,cosP,舒适; //来自双sinR,sinP,sinY的sin/cos的临时值; //输入的滚动/俯仰/偏航
if(Yaw > 359) Yaw = 0;
if(Pitch > 359) Pitch = 0;
if(Yaw < 0) Yaw = 359;
if(Pitch < 0) Pitch = 359;
cosY = cosf(Yaw*3.1415/180);
cosP = cosf(Pitch*3.1415/180);
cosR = cosf(Roll*3.1415/180);
sinY = sinf(Yaw*3.1415/180);
sinP = sinf(Pitch*3.1415/180);
sinR = sinf(Roll*3.1415/180);
//forward position
forwardPos.x = sinY * cosP*360;
forwardPos.y = sinP * 360;
forwardPos.z = cosP * -cosY*360;
//up position
upPos.x = -cosY * sinR - sinY * sinP * …Run Code Online (Sandbox Code Playgroud) 我正在开发一个Windows Store App,我正在使用Camera和Microphone功能.我想要对后置摄像头进行初始化,但我发现的示例总是初始化前置摄像头.这是我的代码:
Windows.Devices.Enumeration.DeviceInformation.findAllAsync(Windows.Devices.Enumeration.DeviceClass.videoCapture)
.done(function (devices) {
if (devices.length > 0) {
// Using Windows.Media.Capture.MediaCapture APIs to stream from webcam
mediaCaptureMgr = new Windows.Media.Capture.MediaCapture();
mediaCaptureMgr.initializeAsync().done(initializeComplete, initializeError);
} else {
var div = document.createElement('div');
div.innerHTML = "No Camera found";
document.body.appendChild(div);
}
});
Run Code Online (Sandbox Code Playgroud)
在这种情况下mediaCaptureMgr指的是前置摄像头.我浏览了文档,它说我已经提供了videoDeviceId这样的MediaCapture()函数:
mediaCaptureMgr = new Windows.Media.Capture.MediaCapture({
videoDeviceId: devices[1].id
});
Run Code Online (Sandbox Code Playgroud)
然而,前置摄像头仍然被初始化.我正在Surface上编写和测试它.你能帮帮我吗?