标签: camera

使用自定义相机创建预览屏幕

我正在创建一个应用程序,我为相机制作了自定义叠加层.我注意到当我使用相机的正常默认值时,会出现预览,您可以选择重新拍摄照片或使用它.在使用自定义叠加层时,是否有一种简单的方法来显示该屏幕?谢谢!

camera overlay ios

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

将位图设置为ImageView onActivityResult不会显示任何内容

我对将图像视图设置为相机拍摄的照片感兴趣。相机应用程序运行良好,并且将图像保存在sd卡中的适当位置,但是当我尝试加载图像并将其设置为图像视图时,它保持空白。除了使用最近拍摄的图像的路径之外,我还尝试对现有图像的路径进行硬编码,但是遇到了同样的问题。我检查了其他线程,但是看不到代码中的任何差异。

这是相机功能:

private void takePicture(){
    Intent imageIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    File imagesFolder = new File(Environment.getExternalStorageDirectory(), "/resources/resources/WI"+job_num); 
    image_name = username+"_"+date+".png";
    File image_file = new File(imagesFolder, image_name);
    while(image_file.exists()){
        image_name = username+"-"+date+"("+ image_count+").png";
        image_count+=1;
        image_file = new File(imagesFolder,image_name);
    }
    image_path = imagesFolder+image_name;
    Uri uriSavedImage = Uri.fromFile(image_file);
    imageIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage); 
    int request_code = 100;
    startActivityForResult(imageIntent, request_code);
}


@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(resultCode == RESULT_OK){ 
        ImageView thumb = (ImageView) findViewById(R.id.thumbnail);
        Bitmap bmp = BitmapFactory.decodeFile(image_path);
        thumb.setImageBitmap(bmp);
        Toast.makeText(this, "Image …
Run Code Online (Sandbox Code Playgroud)

camera android imageview

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

将下载的视频复制到相机胶卷

即使它看起来像一个简单的程序,现在是3个小时,我正在尝试没有成功.我可能错过了一些非常愚蠢的东西.

所以,我有这个应用程序从互联网上下载视频.视频正确存储在本地,因为我可以播放它们提供本地网址.但是,我无法成功将视频复制到相机胶卷.这是我做的:

    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
    ALAssetsLibraryWriteVideoCompletionBlock videoWriteCompletionBlock =
    ^(NSURL *newURL, NSError *error) {
        if (error) {
            NSLog( @"Error writing image with metadata to Photo Library: %@", error );
        } else {
            NSLog( @"Wrote image with metadata to Photo Library %@", newURL.absoluteString);
        }
    };

    NSLog(@"file %@", localPath);
    NSURL *url = [NSURL fileURLWithPath:localPath isDirectory:NO];
    [library writeVideoAtPathToSavedPhotosAlbum:url
                                completionBlock:videoWriteCompletionBlock];
Run Code Online (Sandbox Code Playgroud)

但我得到的输出是:

2013-07-24 00:13:32.094 App[1716:907] file /var/mobile/Applications/70C18C4E-9F97-4A6A-B63E-1BD19961F010/Documents/downloaded_video.mp4
2013-07-24 00:13:32.374 App[1716:907] Wrote image with metadata to Photo Library (null)
Run Code Online (Sandbox Code Playgroud)

当然,文件不会保存在相机胶卷中.它是一个简单的mp4,与我正在使用的设备兼容(即应该可以保存它).

老实说,我不知道该怎么做.任何提示都将受到高度赞赏.谢谢

iphone camera objective-c avfoundation ios

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

iOS UIImagePickerController,设置框架

我正在尝试完成以下结果:

将我的UIImagePickerController的框架设置为200 x 200,

将我的框架设置在右下角(就像Facetime/Skype一样)

并显示前/后(无关紧要)相机流.

这是我的代码,出于某种原因,setFrame无效!

self.picker = [[UIImagePickerController alloc] init];
self.picker.sourceType = UIImagePickerControllerSourceTypeCamera;
self.picker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
self.picker.cameraDevice = UIImagePickerControllerCameraDeviceRear;
self.picker.showsCameraControls = NO;
self.picker.navigationBarHidden = YES;
self.picker.view.frame = CGRectMake(600, 400, 200, 200); // NOT WORKING !!!
self.picker.toolbarHidden = YES;
self.picker.wantsFullScreenLayout = NO;
self.picker.delegate = delegate;

[self presentViewController:self.picker animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
  1. 我看过类似的SO主题,但他们都在谈论如何

    在UIImagePickerController上设置一个视图,而不是我的问题.

  2. 我尝试将self.picker添加到大小为200 x 200的自定义UIView中,但仍然如此

    没有成功.

我在这做错了什么?

谢谢

camera uiimagepickercontroller ios

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

ZbarSDK:停止处理而不禁用相机

我有一个应用程序,应该能够在几分钟内扫描大量的QR码.所以它必须是被动的.我使用ZBarSDK,我很满意.

当代表收到数据时processScannedData:(NSString *)scannedData,我会显示一条必须手动关闭的消息.为了快速,我通过与AVCaptureDevice交互来锁定焦距,假设下一个QR码将以相同的距离呈现.

除了在一种情况下,该系统运行良好:当我在扫描后显示我的信息时,我不会停止相机以避免失去我刚刚锁定的焦点.如果您在解除消息之前提供下面的下一个QR代码,我的processScannedData:(NSString *)scannedData委托方法将捕获它并按预期忽略数据.唯一的问题是,如果您在此时关闭消息(将相机保持在QR码之上),将无法接收数据但是已经触发了委托方法,您将被迫在另一个方向上寻找几秒钟点,然后回到你的QR码.

所以这是我的问题:在我明确告诉他这样做之前,是否可以告诉ZBar我不希望他解雇委托方法?是否可以在不停止相机的情况下停止处理数据?

谢谢您的帮助

iphone camera delegates ios zbar-sdk

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

运行phonegap相机样本时出错

嗨,我试图在Sony Xperia E设备上运行phonegap相机样本.该应用程序正确地在设备中启动,但是当我点击捕获照片按钮时,我得到并且警告框显示"失败,因为:找不到课程".在eclipse的LogCat视图中,我发现了以下错误日志:

W/System.err: java.lang.ClassNotFoundException: org.apache.cordova.CameraLauncher
W/System.err:   at java.lang.Class.classForName(Native Method)
W/System.err:   at java.lang.Class.forName(Class.java:217)
W/System.err:   at java.lang.Class.forName(Class.java:172)
W/System.err:   at org.apache.cordova.PluginEntry.getClassByName(PluginEntry.java:117)
W/System.err:   at org.apache.cordova.PluginEntry.createPlugin(PluginEntry.java:93)
W/System.err:   at org.apache.cordova.PluginManager.getPlugin(PluginManager.java:264)
W/System.err:   at org.apache.cordova.PluginManager.execHelper(PluginManager.java:219)
W/System.err:   at org.apache.cordova.PluginManager.exec(PluginManager.java:214)
W/System.err:   at org.apache.cordova.ExposedJsApi.exec(ExposedJsApi.java:53)
W/System.err:   at android.webkit.WebViewCore.nativeMouseClick(Native Method)
W/System.err:   at android.webkit.WebViewCore.nativeMouseClick(Native Method)
W/System.err:   at android.webkit.WebViewCore.access$6700(WebViewCore.java:57)
W/System.err:   at android.webkit.WebViewCore$EventHub.dispatchWebKitEvent(WebViewCore.java:1856)
W/System.err:   at android.webkit.WebViewInputDispatcher.dispatchWebKitEvent(WebViewInputDispatcher.java:689)
W/System.err:   at android.webkit.WebViewInputDispatcher.dispatchWebKitEvents(WebViewInputDispatcher.java:639)
W/System.err:   at android.webkit.WebViewInputDispatcher.access$800(WebViewInputDispatcher.java:78)
W/System.err:   at android.webkit.WebViewInputDispatcher$WebKitHandler.handleMessage(WebViewInputDispatcher.java:1153)
W/System.err:   at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err:   at android.os.Looper.loop(Looper.java:137)
W/System.err:   at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:827)
W/System.err:   at java.lang.Thread.run(Thread.java:856)
W/System.err: Caused by: java.lang.NoClassDefFoundError: org/apache/cordova/CameraLauncher
W/System.err: …
Run Code Online (Sandbox Code Playgroud)

plugins camera android cordova

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

自动登录网络摄像机

我有一个IP摄像机,我想在我的网页上显示实时取景。

IP摄像机不允许匿名登录,因此我需要在连接时输入用户名和密码。

我有JavaScript:

<img src="http://user:password@camera_ip_address/cgi-bin/jpg/image.cgi?" width="640" height="480" name="refresh">

<script language="JavaScript" type="text/javascript">     
image = "http://camera_ip_address/cgi-bin/jpg/image.cgi?"
function Start() {
tmp = new Date();
tmp = "?"+tmp.getTime()
document.images["refresh"].src = image+tmp
setTimeout("Start()", 100)
}
Start();       
</SCRIPT>
Run Code Online (Sandbox Code Playgroud)

它在Firefox中可以正常工作,但:

http://user:password@camera_ip_number
Run Code Online (Sandbox Code Playgroud)

不能在其他浏览器中使用(它弹出一个输入用户名和密码的表格)。

但是在PHP中,您可以使用user:password,我已经通过使用以下命令进行了检查:

<?php
header('Content-type: image/jpeg');
print( file_get_contents( 'http://user:password@camera_ip_address/cgi-bin/jpg/image.cgi?' ));
?>
Run Code Online (Sandbox Code Playgroud)

当然,它只显示一帧,但您不必输入用户名和密码。

如何使用PHP登录IP摄像机?如果我可以在登录网页时登录一次,则我的JavaScript可以正常运行,因为浏览器会记住用户名和密码,直到我关闭浏览器为止。

我不知道如何发送用户名和密码进行登录。

对不起我的英语不好。

javascript php ip camera autologin

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

使用PhotoCaptureDevice拍摄照片的方向错误

我已经实现了自己的取景器和相机逻辑来捕捉图像.这一切都很好,除了一些奇怪的方向问题.使用我的应用拍摄的照片可以是纵向或横向模式.当我通过内置照片应用程序浏览照片时,方向符合预期.当我通过USB连接手机时从PC浏览图片时,缩略图始终处于横向状态,但是当我打开文件时,照片正好处于纵向模式.当我将应用程序中的图像绑定到Telerik PanAndZoom图像时,方向再次出错.

这是我的初始化代码.

Windows.Foundation.Size best;
            //   Initialize the camera, when available.
            if (PhotoCaptureDevice.AvailableSensorLocations.Contains(CameraSensorLocation.Back))
            {
                // Use the back camera.
                best = FindBestResolutuion(CameraSensorLocation.Back, AspectRatio.R_16_9);
                _captureDevice = await PhotoCaptureDevice.OpenAsync(CameraSensorLocation.Back, best);
                _captureDevice.SetProperty(KnownCameraPhotoProperties.FlashMode, 
            }
            else if (PhotoCaptureDevice.AvailableSensorLocations.Contains(CameraSensorLocation.Front))
            {
                // Otherwise, use the front camera.
                best = FindBestResolutuion(CameraSensorLocation.Front);
                _captureDevice = await PhotoCaptureDevice.OpenAsync(CameraSensorLocation.Front, best);
            }
            if (Math.Round(best.Width / best.Height, 1) == 1.3)
                _detecteAspectRatio = AspectRatio.R_4_3;
            else
                _detecteAspectRatio = AspectRatio.R_16_9;


            SetOrientation(this.Orientation);
            //Set the VideoBrush source to the camera.

            viewfinderBrush.SetSource(_captureDevice);
Run Code Online (Sandbox Code Playgroud)

这是捕获的代码.

    if (!_capturing)
        {
            _capturing = true;
            _captureMemoryStream …
Run Code Online (Sandbox Code Playgroud)

camera windows-phone windows-phone-8

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

检测Android Camera文件夹

我想检测每个Android设备上的相机文件夹.从我读过这个文件夹从制造商到另一个不同,也不能保证会有设备上甚至DCIM文件夹.

这是我现在用来获取文件的方法:

private static final Set<String> FILTER_FOLDERS = new HashSet<String>(
        Arrays.asList(new String[] { "camera", "100andro", "100media" }));


private Set<String> getCameraPictures() {
        final String[] columns = new String[] {
                MediaStore.Images.ImageColumns._ID,
                MediaStore.Images.ImageColumns.DATA,
                MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
                MediaStore.Images.ImageColumns.DISPLAY_NAME,
                MediaStore.Images.ImageColumns.DATE_TAKEN,
                MediaStore.Images.ImageColumns.MIME_TYPE };
        // Order by options - by date & descending
        final String orderBy = MediaStore.Images.ImageColumns.DATE_TAKEN
                + " DESC";
        // Stores all the images from the gallery in Cursor
        final Cursor cursor = getContentResolver().query(
                MediaStore.Images.Media.EXTERNAL_CONTENT_URI, // base URI for
                                                                // the Images
                columns, // Which columns to …
Run Code Online (Sandbox Code Playgroud)

directory camera android

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

错误方向保存的Android自定义相机图像

我正在尝试为Android应用程序创建自定义相机。我已经通过自己的客户界面成功获取了相机进行拍照并保存。SurfaceView预览也将以“纵向”模式显示(需要)。我的问题是,保存图片后,它们不会以拍摄照片时相机所处的方向显示。我知道这里有一些与我的问题非常相似的问题,但是他们无法帮助我。我用于测试此功能的电话(当然是在仿真器之外)是HTC Evo 4G。下面是我的代码分解。非常感谢您提供的任何帮助!请注意,我将所有这些都放在一个类中,并将图像另存为文件而不是位图。

表现

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

<activity android:name=".CameraClass"
            android:screenOrientation="portrait" />
Run Code Online (Sandbox Code Playgroud)

按钮点击

btn_takepicture.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    mCamera.takePicture(null, null, pic_call);

                    Toast.makeText(getApplicationContext(), "Picture Added!", Toast.LENGTH_SHORT).show();
            }
        });
Run Code Online (Sandbox Code Playgroud)

图片回调方法

private PictureCallback pic_call= new PictureCallback() {
        public void onPictureTaken(byte[] datas, Camera mCamera) {
            // TODO Auto-generated method stub  
            String root = Environment.getExternalStorageDirectory().toString(); 
            File myDir = new File(root + "/Images/");  
            myDir.mkdirs();
            if (myDir.exists()){

        }

        Random generator = new Random(); …
Run Code Online (Sandbox Code Playgroud)

camera android orientation

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