Tag: avfoundation

AVAssetTrack与alpha通道?

我正在尝试将AVAssetTracks层叠到AVMutableComposition中,AVAssetTracks在video中有一个alpha通道。 我成功地导出了一个videoAVAsset与像素缓冲区比alpha通道和透明度,但是当我试图将其添加到一个AVMutableCompositionTrack和层,它不能正确显示。 这可能吗? 魔术是在AVAsset创build时还是在AVMutableComposition或AVVideoComposition中执行的? 任何线索将是一个巨大的帮助。

肖像video播放黑屏

更新 不要使用模拟器来testingvideo翻译 。 但我在这里有另一个问题的编解码器问题。 任何帮助表示赞赏。 我正在使用AVURLAsset来创build我的video,并且只要从画廊中选取的video处于横向模式,它们就能正常工作。 但是,当我使用纵向video时,它会以黑色屏幕(audio播放)播放,或者帧被扭曲(请参阅图像)。 更新:我尝试使用CGAffineTransform仍然没有运气。 代码如下: -(void) createVideo{ AVMutableComposition* mixComposition = [AVMutableComposition composition]; NSDictionary *options = @{AVURLAssetPreferPreciseDurationAndTimingKey:@YES}; _videoAsset = [[AVURLAsset alloc]initWithURL:video_url options:options]; CMTime startTimeV=CMTimeMakeWithSeconds(videoStartTime.floatValue, 1); CMTime endTimeV=CMTimeMakeWithSeconds(videoEndTime.floatValue, 1); CMTimeRange video_timeRange = CMTimeRangeMake(startTimeV,endTimeV); AVMutableCompositionTrack *a_compositionVideoTrack = [mixComposition addMutableTrackWithMediaType:AVMediaTypeVideo preferredTrackID:kCMPersistentTrackID_Invalid]; [a_compositionVideoTrack insertTimeRange:video_timeRange ofTrack:[[_videoAsset tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0] atTime:kCMTimeZero error:nil]; AVMutableVideoCompositionInstruction *mainInstruction = [AVMutableVideoCompositionInstruction videoCompositionInstruction]; mainInstruction.timeRange = […]

我有videourl,并希望使用此URl从iPhone中删除它

我创build了一个存储video的应用,现在我想在用户单击删除button时删除该video。 我正在使用AVFoundation录制video。 我的应用程序相机给我一个这样的输出url: file://localhost/private/var/mobile/Applications/4B2E02E5-3EE2-493E-8ECF-4B1DA29B9387/tmp/output.mov 我已经尝试过,但没有奏效: – (void) removeFile:(NSURL *)fileURL { NSString *filePath = [fileURL path]; NSFileManager *fileManager = [NSFileManager defaultManager]; if ([fileManager fileExistsAtPath:filePath]) { NSLog(@"here it is : %@",fileURL); NSError *error; // Attempt to delete the file at filePath2 if ([fileManager removeItemAtPath:filePath error:&error] != YES) NSLog(@"Unable to delete file: %@", [error localizedDescription]); // Show contents […]

如何发挥多个声音?

我需要播放多个声音文件。 我有以下代码: 我的课 #import <UIKit/UIKit.h> #import <AVFoundation/AVFoundation.h> #import <AudioToolbox/AudioToolbox.h> @interface ViewController : UIViewController { AVAudioPlayer *musicPlayer; } – (IBAction)music1:(id)sender; – (IBAction)music2:(id)sender; – (IBAction)music3:(id)sender; – (IBAction)music4:(id)sender; – (IBAction)music5:(id)sender; @end 我的.m文件 #import "ViewController.h" @interface ViewController () @end @implementation ViewController – (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. […]

video直播需要什么types的服务器?

我正在制作一个iPhone应用程序,将video发送到服务器进行直播,我想知道我们需要一个媒体服务器吗?

AVMutableVideoComposition请求sourceImage有时是空的

这是我的这个问题的延伸,但我认为这是不同的值得自己的问题: 我正在过滤各种大小,尺度等video喂养他们成AVMutableVideoComposition 。 这是我目前的代码: private func filterVideo(with filter: Filter?) { if let player = playerLayer?.player, let playerItem = player.currentItem { let composition = AVMutableComposition() let videoAssetTrack = playerItem.asset.tracks(withMediaType: .video).first let videoCompositionTrack = composition.addMutableTrack(withMediaType: .video, preferredTrackID: kCMPersistentTrackID_Invalid) try? videoCompositionTrack?.insertTimeRange(CMTimeRange(start: kCMTimeZero, duration: playerItem.asset.duration), of: videoAssetTrack!, at: kCMTimeZero) let videoComposition = AVMutableVideoComposition(asset: composition, applyingCIFiltersWithHandler: { (request) in print(request.sourceImage.pixelBuffer) […]

我可以添加UIImage或CGImageRefvideo?

我想在video之间添加图片,就像笑脸或剪贴画一样。 笑脸和剪贴画最有可能有animation。 我提到了在库中查找资产 – 添加到AVMutableComposition – 导出=崩溃 ,还有苹果的ALAssetLibrary 。 但没有任何想法来完成我的要求。 有什么function可以将UIImage和CGImageRef添加到AVMutableComposition吗? 如何将图像添加到video中?

在iOS中暂停/静音背景音乐

我有一个使用文本到语音的应用程序偶尔会向用户提供口头提示。 目前我已经设置了它,所以TTS会混合在另一个应用程序中播放的任何音乐。 有什么方法可以暂时暂停/静音在另一个应用程序中播放的音乐,而口头提示播放?

通过AVMutableVideoComposition和CAAnimation输出黑色video

我正在构buildiOS应用程序,可以loggingvideo,并使用AVFoundation和CAAnimation在录制的video上添加animation叠加。 所有子function工作正常,但最终video的背景是黑色,但animation播放。 这不是渲染我select的背景video。 我已经使用AVAssetWriter来录制video,并在相机胶卷上播放。 但是如果我使用这个录制的video添加叠加,最终的video背景是黑色的。 有趣的是,如果我通过本机的iOS相机应用程序录制video,并使用它来添加覆盖,它是完美的工作。 我检查了这个问题,但没有为我工作。 黑色videoCAAnimation和AVFoundation AVAssetExportSession 任何帮助将不胜感激。 谢谢

audio和video合并后的video方向

我试图合并一个audio和video,但是当我将video保存到我的图书馆,这是保存。 我正在按照这个教程,但没有find任何合适的答案。 但问题是video不是肖像模式。 那么我怎样才能在我的图书馆这里得到video与肖像我试试 func mergeFilesWithUrl(videoUrl:NSURL, audioUrl:NSURL) { let mixComposition : AVMutableComposition = AVMutableComposition() var mutableCompositionVideoTrack : [AVMutableCompositionTrack] = [] var mutableCompositionAudioTrack : [AVMutableCompositionTrack] = [] let totalVideoCompositionInstruction : AVMutableVideoCompositionInstruction = AVMutableVideoCompositionInstruction() //start merge let aVideoAsset : AVAsset = AVAsset(url: videoUrl as URL) let aAudioAsset : AVAsset = AVAsset(url: audioUrl as URL) mutableCompositionVideoTrack.append(mixComposition.addMutableTrack(withMediaType: AVMediaTypeVideo, preferredTrackID: […]