标签: camera-overlay

用户照片的相机叠加未保存为已编辑

我正在使用带有剪切的透明图像,以便用户插入/拍摄自己的图像.出于某种原因,在使用UIImagePickerControllerEditedImage和裁剪用户拍摄的照片时,图像不会像编辑时那样保存; 比如看照片.

我的问题是图像没有准确保存照片的编辑方式.(即:裁剪/调整大小).

设置UIImagePicker

-(void)choosePhotoDialog:(id)sender
{        
    OverlayView * overlay = [[OverlayView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH_IPHONE, SCREEN_HEIGTH_IPHONE) andPhoto:[dict objectForKey:@"imageUrl"]];
    [overlay setUserInteractionEnabled: NO];

    UIImagePickerController * picker = [[UIImagePickerController alloc] init];
    [picker setSourceType: UIImagePickerControllerSourceTypeCamera];
    [picker setDelegate: self];
    [picker setAllowsImageEditing: YES];
    [picker setShowsCameraControls: YES];
    [picker setNavigationBarHidden: YES];
    [picker setWantsFullScreenLayout: YES];
    [picker setCameraOverlayView: overlay];
    [self presentModalViewController:picker animated:YES];  
    [picker release];
}
Run Code Online (Sandbox Code Playgroud)

编辑图像后:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    SDWebImageManager * manager = [SDWebImageManager sharedManager];
    UIImage * cachedImage  = [manager imageWithURL: [NSURL URLWithString: …
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller uiimage cgimage ios camera-overlay

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

UIImagePicker cameraOverlayView出现在Retake屏幕上

我正在努力解决问题.我正在捕捉一个视频,我把UIImageView和UIImage放在其中作为UIImagePicker CameraOverLay.因此,当用户启动相机以捕获视频时,他可以在相机上看到叠加.当用户停止捕获并且正在移动到UIImagePicker的"取消或重新启动"屏幕时,cameraOverlayView仍然可见.

有关如何在"重拍或取消"屏幕中不显示叠加层的任何想法?

uiimagepickercontroller ios camera-overlay

16
推荐指数
2
解决办法
3005
查看次数

将cameraOverlayView与UIImagePickerController一起使用

我知道这已被问了很多次,但我找不到答案.

我有一个应用程序,用于UIImagePickerController拍照.问题是我只想要相机选项可用,我知道我需要隐藏标准控件:

cameraUI.showsCameraControls=NO;
Run Code Online (Sandbox Code Playgroud)

并使用a cameraOverlayView来提供我自己的控件.我已经看过Apple的PhotoPicker项目,我最初的问题是如何将一个Overlay对象放到我的故事板上?我在图书馆找不到这样的对象.任何帮助感激不尽.

objective-c uiimagepickercontroller ios camera-overlay

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

在OSX上使用相机覆盖进行ffmpeg屏幕录制

我想用ffmpeg记录我的桌面以及我的相机作为桌面上的叠加层.

所以基本上我将有两个需要记录的输入源

$ ffmpeg -f avfoundation -list_devices true -i ''
[AVFoundation input device @ 0x7fded1c223e0] AVFoundation video devices:
[AVFoundation input device @ 0x7fded1c223e0] [0] FaceTime HD Camera
[AVFoundation input device @ 0x7fded1c223e0] [1] Capture screen 0
[AVFoundation input device @ 0x7fded1c223e0] AVFoundation audio devices:
[AVFoundation input device @ 0x7fded1c223e0] [0] Built-in Microphone
Run Code Online (Sandbox Code Playgroud)

从上面,我需要[0] FaceTime高清摄像机作为叠加,[1]捕获屏幕0作为主要视频.

这甚至可能吗?

更新(2015-10-06):

我从ffscreencast找到了以下命令:

ffmpeg \
-f avfoundation -i "1" \
-f avfoundation -r 30 -video_size 640x480 -i "0" \
-c:v libx264 -crf 0 -preset …
Run Code Online (Sandbox Code Playgroud)

macos ffmpeg screen-capture avfoundation camera-overlay

9
推荐指数
1
解决办法
2784
查看次数

如何更改相机Overlayview方向横向左右iPhone?

在我的iPhone应用程序中,我有一个用于拍照的UIImagePickerController.我隐藏了所有默认的相机控件,并在UIImagePickerController中添加了带有两个按钮的UIView作为CameraOverLayView.我的应用程序始终只在横向模式下运行.相机也仅启动横向模式.现在,CameraOverlayView仅在Landscape左侧不变为Landscape to Right.当设备方向改变时,如何左右更改CameraOverlayView LandscapeMode?请帮我修理一下.这是我的应用程序中的主要问题.此代码在横向模式下保持Overlayview为Left

imgpicker.cameraOverlayView.transform = CGAffineTransformRotate(CGAffineTransformIdentity, 117.81);
Run Code Online (Sandbox Code Playgroud)

并且此代码在横向模式下保持cameraoverlayview权限GAffineTransform transform = self.view.transform;

    transform = CGAffineTransformRotate(transform, (M_PI / 2.0));

    imgpicker.cameraOverlayView.transform = transform;
Run Code Online (Sandbox Code Playgroud)

我在这样的UIInterfaceOrientation方法中使用了这些代码,

UIInterfaceOrientation orientation= [[UIApplication sharedApplication] statusBarOrientation];
    if (orientation == UIInterfaceOrientationLandscapeLeft) 
    {
        imgpicker.cameraOverlayView.transform = CGAffineTransformRotate(CGAffineTransformIdentity, 117.81);
    }
    else if (orientation == UIInterfaceOrientationLandscapeRight)
    {
        CGAffineTransform transform = self.view.transform;
            transform = CGAffineTransformRotate(transform, (M_PI / 2.0));
        imgpicker.cameraOverlayView.transform = transform;
    }
Run Code Online (Sandbox Code Playgroud)

但是,这些并没有帮助我.当我左右旋转设备方向横向时,相机覆盖视图不会改变.你能解决我的问题吗?谢谢.

iphone landscape orientation camera-overlay

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

cameraOverlayView阻止使用allowsEditing进行编辑

在拍摄照片后进行编辑(移动和缩放)在我的应用程序中使用此行正常工作:

[imagePicker setAllowsEditing:YES];
Run Code Online (Sandbox Code Playgroud)

但如果我也使用cameraOverlayView,则编辑模式不再起作用.屏幕出现,但平移和捏动手势不会发生任何事情.

我正在使用你的普通图像选择器控制器:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
Run Code Online (Sandbox Code Playgroud)

我添加了一个相机覆盖视图,从自定义视图控制器的视图创建:

CameraOverlayViewController *overlayController = [[CameraOverlayViewController alloc] init];
UIView *overlayView = overlayController.view;
[imagePicker setCameraOverlayView:overlayView];
Run Code Online (Sandbox Code Playgroud)

在IB中,该视图被设置为允许用户交互和多次触摸,这允许其在拍摄照片时进行缩放和聚焦.但是一旦拍摄照片并进入编辑模式,您就无法平移或捏合移动或缩放照片.

我错过了什么?

camera editing uiimagepickercontroller ios camera-overlay

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

iOS - 在相机上定位自定义叠加层(垂直对齐).顶部黑色条的大小

我正在寻找以下问题的程序化解决方案:我想在相机(iOS)上绘制自定义叠加层.我希望它在摄像机输出视图的垂直中心.我已经完成了相对于屏幕中心绘制我的自定义视图,但没有绘制到相机图片.

要做到这一点,我需要得到顶部黑色条大小.我怎么才能得到它?

顶部和底部条的大小不相等,这就是为什么我得到的图片有这个恼人的y偏移到底部.

在拍摄照片之前

注意结果pic的偏移量: 拍完照片后

objective-c ios camera-overlay

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

当有相机覆盖时,iOS相机会在预览视频时冻结

我试图在UIImagePicker中覆盖视频捕获会话的视图.叠加层工作正常,但当应用程序进入用户可以"重拍","播放"或"使用视频"的屏幕时,应用程序崩溃并提供错误:

2017-04-16 21:33:04.129212-0400 ChugMug [429:59833] libMobileGestalt MobileGestalt.c:2690:statfs(/ mnt4):没有这样的文件或目录2017-04-16 21:33:04.129871-0400 ChugMug [ 429:59833] libMobileGestalt MobileGestalt.c:2587:SInt64 NANDSize():找不到disk0的kIOMediaSizeKey!2017-04-16 21:33:09.352085-0400 ChugMug [429:60065] [MediaRemote]错误操作需要注册客户端回调.请求回放队列

代码非常简单,当叠加层被注释掉时,视频预览屏幕和按钮工作正常,但是当叠加层出现时,应用程序会冻结在以下屏幕: 在此输入图像描述

以下是相机和叠加层的代码:

func startMediaBrowserFromViewController(viewController: UIViewController, usingDelegate delegate: UINavigationControllerDelegate & UIImagePickerControllerDelegate) -> Bool {
    // 1
    if UIImagePickerController.isSourceTypeAvailable(.savedPhotosAlbum) == false {
        return false
    }

    // 2
    let mediaUI = UIImagePickerController()
    mediaUI.sourceType = .savedPhotosAlbum
    mediaUI.mediaTypes = [kUTTypeMovie as NSString as String]
    mediaUI.allowsEditing = true
    mediaUI.delegate = delegate

    // 3
    present(mediaUI, animated: true, completion: nil)
    return true
}

func startCameraFromViewController(viewController: UIViewController, withDelegate delegate: UIImagePickerControllerDelegate …
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller ios camera-overlay

5
推荐指数
0
解决办法
1042
查看次数

UIImagePickerController 相机视图:黑色底栏的高度?

我发现默认情况下,当显示UIImagePickerControllerwith type时camera,屏幕底部会出现一个黑条。

我想cameraOverlayView在顶部完全显示一个自定义项,并与此类黑色底栏的尺寸相匹配,但我找不到获取其高度的方法。

编辑:或者,我如何计算cameraViewTransform保持相机视图的纵横比,这样黑色底部将具有我可以选择的一定高度?

编辑 2:所有设备的黑色底部高度相同吗?

uiimagepickercontroller ios camera-overlay swift

5
推荐指数
1
解决办法
314
查看次数

React Native - 相机中的叠加

我正在开发一个反应本机应用程序,我会拍一些照片。

我的相机上需要有一个网格,当用户拍照时,我的应用程序会将图像和网格保存在一起。

有谁知道我如何解决这个问题?

谢谢

下面的这个链接正好显示了我需要的

https://pt.stackoverflow.com/questions/362327/react-native-overlay-em-camera

camera android ios camera-overlay react-native

4
推荐指数
1
解决办法
2857
查看次数

AVCaptureSession VS UIImagePickerController相机预览

我正在开发类似于Instagram iOS应用程序的应用程序.Instagram有自定义相机预览.我想开发类似的东西,问题是 - 为此目的更好地使用什么 - 具有自定义cameraOverlayView属性的UIImagePickerController还是应该使用AVCaptureSession?也许有人有这样的经历,可以给我一个建议.将不胜感激.

preview uiimagepickercontroller ios avcapturesession camera-overlay

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

刚捕获部分的相机叠加视图

我想补充一个cameraOverlayView上一个UIImagePickerController,但我想覆盖到覆盖显示了将被相机捕捉,而不是"取消"按钮在屏幕的只是一部分,拍照按钮,闪光灯设置,或类似的东西.如何动态确定UIImageView叠加层的帧应该是什么?

我附上了一张图片来说明我正在讨论的部分.

在此输入图像描述

objective-c uiimageview uiimagepickercontroller ios camera-overlay

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