小编Chi*_*tel的帖子

iPhone:以编程方式压缩录制的视频以进行共享?

在录制视频之前,我在调用摄像机视图时实现了叠加视图.

pickerController.cameraOverlayView =myOverlay;
Run Code Online (Sandbox Code Playgroud)

视频录制并在录制视频和通过电子邮件等共享后将视频保存到相册中一切正常.

如果我将视频质量用作"高品质",那么录制的视频已变得庞大.例如,如果我以高质量录制视频30秒,录制的视频大约为30 - 40 mb.

pickerController.videoQuality = UIImagePickerControllerQualityTypeHigh;
Run Code Online (Sandbox Code Playgroud)

如何在共享之前对高质量录制视频进行压缩编程,就像Apple如何使用内置录像机一样?

请指导我解决这个问题.

谢谢!

更新:

这就是我最近的尝试,但仍然没有成功:我想压缩拍摄的录制视频来到didFinishPickingMediaWithInfo并存储在相同的相册实际视频路径本身,而不是其他任何地方.我测试同一个视频被压缩到非常小的尺寸,当我从照片库中选择时,但从相机拍摄的同一视频来自didFinishPickingMediaWithInfo并未压缩,尽管我使用下面的AVAssetExportSession代码.

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{

    NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];


if ([mediaType isEqualToString:(NSString *)kUTTypeMovie])
{

    NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
    NSString *urlPath = [videoURL path];

    if ([[urlPath lastPathComponent] isEqualToString:@"capturedvideo.MOV"])
    {
        if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (urlPath))
        {
            [self copyTempVideoToMediaLibrary :urlPath];


        }
        else
        {
            NSLog(@"Video Capture Error: Captured video cannot be saved...didFinishPickingMediaWithInfo()");                
        }
    }       
    else
    {
        NSLog(@"Processing soon to saved photos album...else loop of lastPathComponent..didFinishPickingMediaWithInfo()");
    }
}    
[self …
Run Code Online (Sandbox Code Playgroud)

iphone

42
推荐指数
4
解决办法
5万
查看次数

如何在iPhone上录制像Talking Tom Cat这样的屏幕视频?

我想知道AVFoundation中是否有任何公共API或任何其他可用于记录屏幕的框架,如Talking Tom Cat.我查看了AVFoundation和CoreVideo框架,但无法从头文件中找到任何内容.

如果有人知道如何使用iPhone SDK以电子方式录制屏幕视频,请告诉我.

iphone avfoundation ios4

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

图像而不是iPhone的MapKit框架中的默认引脚?

是否有可能拥有我们自己的图像而不是iPhone上MapKit地图中的默认图钉?

我正在开发一个应用程序,它可以像谷歌纵横一样显示朋友的位置,并且需要在他们的位置显示朋友的图像.

可以使用JavaScript Google Map,但我想知道是否有人可以为基于MapKit的地图提供一些示例代码.

iphone google-maps mapkit

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

iOS:UIView动画,没有动画发生

有一个令人费解的问题.我有一个通用的应用程序,在iPad和iPhone版本之间有很多共享代码.在nib中有不同的布局,但基本上是相同的视图和视图层次结构 - 一个UIView用作两个兄弟UITextViews的容器.

UIView的MAINVIEW儿童:
UITextView的passageTextView
的UITextView notesTextView

一个UITextView被隐藏,另一个可见.

以下是我的代码.注释掉的部分是我原来的动画尝试.这在iPad上可以正常工作,但在iPhone上却没有.使用文档中建议的方法,取消注释部分为2.未注释的代码在iPad或iPhone上都不起作用 - 它隐藏/取消隐藏我的视图但没有任何动画.如果我将代码添加到也被执行的完成块,那么它正在做某事,而不是动画.

/*  
[UIView beginAnimations:nil context:nil];  
[UIView setAnimationDuration:1.0];  
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:mainView cache:YES];  

passageTextView.hidden = YES;  
notesTextView.hidden = NO;  

[UIView commitAnimations];  
*/  

UIViewAnimationOptions options = UIViewAnimationOptionBeginFromCurrentState | UIViewAnimationTransitionFlipFromRight;  

[UIView transitionWithView:mainView  
                  duration:1.0  
                   options:options  
                animations:^{ passageTextView.hidden = YES; notesTextView.hidden = NO; }  
                completion:NULL];  
Run Code Online (Sandbox Code Playgroud)

编辑:仍然在解决这个问题,希望有人有一个建议.

其他更新

弄清楚为什么以下不适用于iPhone:

[UIView beginAnimations:nil context:nil];  
[UIView setAnimationDuration:1.0];  
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:mainView cache:YES];  

passageTextView.hidden = YES;  
notesTextView.hidden = NO;  

[UIView commitAnimations];
Run Code Online (Sandbox Code Playgroud)

我忽略了将视图连接到Interface Builder中的mainView.几个小时的调试,我刚考虑检查.

但是,我仍然不知道为什么动画块不能用于iPhone或iPad.我已经尝试了几种方法,但即使显示/隐藏正在工作,我也没有得到任何动画.

uiview uiviewanimation ios

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