草庐IT

ios - 处理 AVAsset 中的所有帧

我正在尝试遍历AVAsset中的每一帧并将每一帧当作图像来处理。我无法从我的搜索中找到任何东西。我试图完成的任务在伪代码中看起来像这样foreachframeinassettaketheframeasanimageandconverttoacvMatProcessandstoredataofcenterpointsStorecenterpointsinarray我不知道如何编写该伪代码的唯一部分是遍历每一帧并将其捕捉到图像中。有人能帮忙吗? 最佳答案 一个答案是使用AVAssetImageGenerator.1)将电影文件加载到AV

ios - 在 AVPlayer 中播放慢动作 AVAsset 时出现问题

我正在尝试在AVPlayer中播放慢动作视频(由用户的iPhone拍摄)。我正在通过选择器对PHAsset的请求检索AVAsset:[managerrequestAVAssetForVideo:PHAssetoptions:videoRequestOptionsresultHandler:^(AVAsset*avasset,AVAudioMix*audioMix,NSDictionary*info){}];问题是一旦播放,我得到这个错误:-[AVCompositionURL]:unrecognizedselectorsenttoinstance0x138d17f40但是,如果我根据经理

iphone - 从 AVAsset 中查找 channel 数

我正在通过AVAssets加载音频Assets。我想弄清楚Assets中有多少个channel(基本上是单声道或立体声)。执行此操作的最佳方法是什么? 最佳答案 这似乎是我要找的。AVAssetTrack*songTrack=[mAssetToLoad.tracksobjectAtIndex:0];NSArray*formatDesc=songTrack.formatDescriptions;for(unsignedinti=0;imChannelsPerFrame==1){mIsMono=true;}}

ios - 如何从图像创建 AVAsset

我正在尝试使用AVFoundation一起编辑视频和图像。然而,AVAsset似乎无法从图像文件创建?有人给我一些建议吗? 最佳答案 好的,我很确定AVAsset是为媒体准备的,所以AVAsset不能通过图像创建。 关于ios-如何从图像创建AVAsset,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/9802271/

ios - 当状态为 AVKeyValueStatusFailed 时重新加载 AVAsset 中的键

我正在做以下事情:使用给定的URL创建一个新的AVAsset。该URL指向远程网络服务器上的视频。尝试通过调用loadValuesAsynchronouslyForKeys:completionHandler:加载tracks属性初始请求失败,因为不存在互联网连接我注意到通过调用statusOfValueForKey:error:请求失败了然后我等待连接重新出现(使用一些可达性代码)。一旦完成,我再次调用loadValuesAsynchronouslyForKeys:completionHandler:。这就是问题开始的地方。我想AVAsset会继续并尝试重新加载tracks属性,因为

iOS-如何使用 AVAsset 或 AVURLAsset 获取 .mp4 文件的持续时间

我知道之前已经回答了视频类型问题的持续时间,但我在使用AVAsset和获取.mp4文件的持续时间时遇到了真正的麻烦AVURLAssets。我正在使用以下代码NSString*itemPathString=[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)objectAtIndex:0]stringByAppendingPathComponent:obmodel.actualname];NSURL*itemPathURL=[NSURLURLWithString:itemPathSt

iphone - 使用音频类型的多个 AVAsset 轨道切换 AVURLAsset 的音轨

我有一个AVURLAsset,其中包含多个音频类型的AVAssetTrack。我希望能够允许用户通过触摸按钮在这些不同的音轨之间切换。可以打开和关闭第一首轨道的音量,但当音量设置为1.0时听不到其他轨道。这里是调整音轨音量的代码(发送器是一个UIButton,其标签设置为audioTracks中Assets的索引)。AVURLAsset*asset=(AVURLAsset*)[[playercurrentItem]asset];NSArray*audioTracks=[assettracksWithMediaType:AVMediaTypeAudio];NSMutableArray*a

ios - AVAssetWriter 从 AVAsset 转换 aac 5.1 音轨在 appendSampleBuffer 上失败

我正在尝试从.mp4视频文件中提取音轨,并使用使用此outputSettings转换为.m4a音频文件AVAssetWriter类AudioChannelLayoutchannelLayout;memset(&channelLayout,0,sizeof(AudioChannelLayout));channelLayout.mChannelLayoutTag=kAudioChannelLayoutTag_Stereo;NSDictionary*outputSettings=[NSDictionarydictionaryWithObjectsAndKeys:[NSNumbernumber

ios - AVAsset 的 NaturalSize 与视频文件不同

我在检查视频方向时遇到了很大的问题。有一个代码可以检查视频文件是否处于纵向模式:privatefunccheckIfVideoIsPortrait(videoURL:NSURL)->Bool{letvideoAsset=AVAsset.init(URL:videoURL)letvideoTrack=videoAsset.tracksWithMediaType(AVMediaTypeVideo)[0]letsize=videoTrack.naturalSizelettxf=videoTrack.preferredTransformletrealSize=CGSizeApplyAffine

swift - 来自 AVAudioFile 的 AVAsset 的持续时间为 0

我正在尝试录制来自麦克风的音频+然后将其与来自多个位置的视频组合以创建带有来自麦克风的音频的单个视频。使用AVCaptureDevice+AVCaptureSession有点断断续续,我想进行语音识别,所以我转而使用AVCaptureSession进行视频捕获,我正在尝试使用AVAudioEngine进行音频(因为我的理解是它是很容易将SFSpeechRecognizer附加到AudioTap)代码如下:classAudioCaptureSession{varengine=AVAudioEngine()varoutputFile:AVAudioFile!funcinitAudioEng