Tag: video操作

使用webview在iPhone应用程序中播放YouTube上的video

我正在尝试使用以下代码在iPhone应用程序中观看video: -(void) viewDidLoad{ [super viewDidLoad]; UIWebView *webView = [[UIWebView alloc]initWithFrame:self.view.frame]; NSString *youTubeVideoHTML = @"<html><head>\ <body style=\"margin:0\">\ <embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \ width=\"%0.0f\" height=\"%0.0f\"></embed>\ </body></html>"; // Populate HTML with the URL and requested frame size NSString *html = [NSString stringWithFormat:youTubeVideoHTML,@"http://www.youtube.com/watch?v=ZiIcqZoQQwg" , 100, 100]; // Load the html into the webview [webView loadHTMLString:html baseURL:nil]; [self.view addSubview:webView]; } […]

iOS – 如何从video中获取缩略图而不玩游戏?

我试图从video中获取缩略图,并在我的桌面视图中显示它。 这是我的代码: – (UIImage *)imageFromVideoURL:(NSURL *)contentURL { AVAsset *asset = [AVAsset assetWithURL:contentURL]; // Get thumbnail at the very start of the video CMTime thumbnailTime = [asset duration]; thumbnailTime.value = 25; // Get image from the video at the given time AVAssetImageGenerator *imageGenerator = [[AVAssetImageGenerator alloc] initWithAsset:asset]; CGImageRef imageRef = [imageGenerator copyCGImageAtTime:thumbnailTime actualTime:NULL error:NULL]; UIImage *thumbnail […]

警告:在正常情况下,_fillInQueueWithExtraSpace:ignoreExistingItems:不应该被重新input

这是我的class级pipe理我的video: #import "video.h" #import <MediaPlayer/MediaPlayer.h> @interface video() { MPMoviePlayerController* videoView; } @end @implementation video static video *sharedSingleton = nil; + (video *)sharedSingleton { @synchronized() { if (!sharedSingleton) sharedSingleton = [[super allocWithZone:NULL] init]; return sharedSingleton; } return nil; } – (id)init { self = [super init]; CGRect dimVideo = CGRectMake(0, 0, 472, 400); NSURL* videoPath = […]

SKVideoNode作为SCNSphere的纹理

我试图使用SKVideoNode作为我的SCNView中SCNSphere的video纹理源 我正在回答这个问题: SKVideoNode(embedded在SKScene中)作为用于场景套件节点不起作用的纹理 和我的代码(粘贴在问题的最后),我得到一个video和audio播放。 问题是,映射只发生在球体的四分之一(全xy正四分之一)。 cameraNode在sphere(0,0,0)内,并且独立于sphereNode。 我将一个缩放应用于球体节点,只是为了扭转纹理的节点: sphereNode.scale = SCNVector3Make(-1, 1, 1) 但是评论说这个没有效果。 这是所有在设备上testing(iphone 6 +,使用iOS 9.1): let sphere = SCNSphere(radius: 1) . . . func setupView() { // setup the sphere sphere.segmentCount = 55 // sphere material sceneMaterial = SCNMaterial() // setup the sphereNode sphereNode = SCNNode(geometry: sphere) sphereNode.position = SCNVector3Make(0, 0, 0) sphereNode.scale […]

通过UIActivityController共享视​​频PHAsset

我正尝试使用requestAVAsset通过UIActivityController共享videoPHAsset 。 这适用于消息传递,但不适用于AirDrop,指示为“失败”。 PHCachingImageManager.default().requestAVAsset(forVideo: asset, options: nil, resultHandler: { (givenAsset, audioMix, info) in let videoAsset = givenAsset as! AVURLAsset let videoURL = videoAsset.url DispatchQueue.main.async { let activityViewController = UIActivityViewController( activityItems: [videoURL], applicationActivities: nil) activityViewController.excludedActivityTypes = [UIActivityType.saveToCameraRoll] if let popoverPresentationController = activityViewController.popoverPresentationController { popoverPresentationController.barButtonItem = (sender) } self.present(activityViewController, animated: true, completion: nil) } }) 这似乎正确地build立了UIActivityController ,只能用于某些活动: […]

为Android和iOS开发简单video聊天应用程序的最佳方式

我正在尝试开发一个简单的video聊天应用程序。 但我不知道如何开始。 我知道有一些方法可以做到这一点。 WebRTC,Adobe Flex。 但是WebRTC只是用于p2p和Adobe Produkts是昂贵的。 你知道更好的方法来开发video聊天? 最好的将是一个小教程。 谢谢

Swift – 从iOS PHAsset播放video

我想从PHAsset播放来自iOS照片的video。 PHAssetvideonsurl ( https://stackoverflow.com/a/35099857/1084174 )是有效的我自己的应用程序可以说MyPlayer的片刻/块。 当我将图像/video复制到MyPlayers自己的沙盒中时, nsurl总是有效的。 在我看来, 我需要将每个video从临时PHAsset复制到MyPlayers沙盒(appgroup / documents),然后才能使用沙盒相关nsurl播放video。 如果是这样,所有其他玩家如何在飞行中播放长video? 如果有其他方式播放video而不复制到应用程序沙盒,请让我知道的方式。

video中的AVfoundation模糊背景

在我的应用程序中,我已经修复了1280 x 720的合成渲染大小。因此,如果将导入任何肖像video,那么我必须显示模糊背景填充和纵向框架的video中心。 像这样: 我实现了使用AVMtableComposition播放这两个video,但我不知道如何模糊特定的背景音轨。 我没有在我的代码中: self.composition = [AVMutableComposition composition]; AVAsset *firstAsset = [AVAsset assetWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"ScreenFlow_Blend" ofType:@"mp4"]]]; [self addAsset:firstAsset toComposition:self.composition withTrackID:1]; [self addAsset:firstAsset toComposition:self.composition withTrackID:2]; // [self addAsset:ThirdAsset toComposition:self.composition withTrackID:3]; AVAssetTrack *backVideoTrack = [firstAsset tracksWithMediaType:AVMediaTypeVideo][0];; self.videoComposition = [AVMutableVideoComposition videoComposition]; self.videoComposition.renderSize = CGSizeMake(1280, 720); self.videoComposition.frameDuration = CMTimeMake(1, 30); AVMutableVideoCompositionInstruction *instruction = [AVMutableVideoCompositionInstruction videoCompositionInstruction]; instruction.timeRange […]

修复使用AVMutableComposition拼接(合并)video时的方向

TLDR – 看编辑 我正在Swift中创build一个testing应用程序,我想使用AVMutableComposition从应用程序文档目录AVMutableComposition多个video拼接在一起。 在某种程度上,我已经取得了成功,我的所有video都被拼接在一起,所有内容都显示出正确的尺寸和风景。 但是,我的问题是, 所有video都以编辑中最后一个video的方向显示 。 我知道,要解决这个问题,我将需要为每个添加的轨道添加图层指令,但我似乎无法得到这个正确的答案,我发现整个编译似乎以纵向方向出现与景观video简单地缩放以适应纵向视图,所以当我将手机放在侧面来观看横向video时,由于它们被缩放为纵向尺寸,所以它们仍然很小。 这不是我正在寻找的结果,我希望预期的function,即如果一个video是横向,它显示缩放时,在纵向模式,但如果手机旋转,我希望该景观video填满屏幕(就像它只是在观看在照片中的风景video)和相同的肖像,以便在纵向观看时,它是全屏幕,当横向转动时,video缩放到横向大小(就像在查看照片中的肖像video时一样)。 总之,我希望得到的结果是,当查看具有横向和纵向video的编辑时,可以使用手机查看整个编辑,而横向video是全屏和缩放的,或者在查看同一个video时纵向纵向video是全屏幕和风景video缩放到大小。 有了所有的答案,我发现情况并非如此,当从照片导入video以添加到编辑中时,他们似乎都有非常意想不到的行为,并且在添加使用前置摄像头拍摄的video时也会出现相同的随机行为用我目前实现的从库导入的video清楚,“selfie”video出现在正确的大小没有这些问题)。 我正在寻找一种方法来旋转/缩放这些video,以便他们始终以正确的方向和比例显示,具体取决于用户握住手机的方式。 编辑 :我现在知道,我不能在一个单一的video都具有风景和肖像方向,所以我期待的预期结果将是在横向方向有最终的video。 我已经想出了如何使切换所有的方向和规模,以获得一切相同的方式,但我的输出是一个肖像video,如果任何人都可以帮助我改变这一点,所以我的输出是景观,将不胜感激。 下面是我的function来获取每个video的指令: func videoTransformForTrack(asset: AVAsset) -> CGAffineTransform { var return_value:CGAffineTransform? let assetTrack = asset.tracksWithMediaType(AVMediaTypeVideo)[0] let transform = assetTrack.preferredTransform let assetInfo = orientationFromTransform(transform) var scaleToFitRatio = UIScreen.mainScreen().bounds.width / assetTrack.naturalSize.width if assetInfo.isPortrait { scaleToFitRatio = UIScreen.mainScreen().bounds.width / assetTrack.naturalSize.height let scaleFactor = CGAffineTransformMakeScale(scaleToFitRatio, […]

iOS:在video中裁剪video奇怪的绿线左侧和底侧

– 如何删除video上的绿线 当在此时裁剪2或3次video时,在video中显示绿色或混合绿色 – 红色闪烁线,在video中左边或底部或左右两侧。 video裁剪方法。 -(void)cropButton { CGRect cropFrame = self.cropView.croppedImageFrame; //load our movie Asset AVAsset *asset; asset = [AVAsset assetWithURL:[NSURL fileURLWithPath:[self.videoDataArr objectAtIndex:self.selectedIndex-1]]]; //create an avassetrack with our asset AVAssetTrack *clipVideoTrack = [[asset tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0]; //create a video composition and preset some settings AVMutableVideoComposition* videoComposition = [AVMutableVideoComposition videoComposition]; videoComposition.frameDuration = CMTimeMake(1, 30); //create a […]