草庐IT

avAssetWriterInput

全部标签

ios - 在 iOS 上使用 HEVC 编码器输出巨大的视频

我有一个项目目前使用H.264编码器在iOS上录制视频。我想尝试使用iOS11中的新HEVC编码器来减小文件大小,但发现使用HEVC编码器会导致文件大小急剧膨胀。Here'saprojectonGitHubthatshowstheissue-itsimultaneouslywritesframesfromthecameratofilesusingtheH.264andH.265(HEVC)encoders,andtheresultingfilesizesareprintedtotheconsole.AVFoundation类的设置如下:classVideoWriter{varavAss

ios - 使用 AVAssetWriter 录制视频 : first frames are black

我正在用AVAssetWriter录制视频(用户也可以只切换到音频)。我在应用程序启动时开始录制。但是第一帧是黑色(或非常暗)。当我从音频切换到视频时也会发生这种情况。感觉AVAssetWriter和/或AVAssetWriterInput还没有准备好记录。我怎样才能避免这种情况?我不知道这是否有用,但我也使用GLKView来显示视频。funcstart_new_record(){do{tryself.file_writer=AVAssetWriter(url:self.file_url!,fileType:AVFileTypeMPEG4)ifvideo_on{iffile_write

ios - 带有音频 AVAssetWriterInput "leaks"内存的 appendSampleBuffer 直到 endSessionAtSourceTime

AVAssetWriterInputappendSampleBuffer我有一个奇怪的内存“泄漏”。我同时编写视频和音频,所以我有一个带有两个输入的AVAssetWriter,一个用于视频,一个用于音频:self.videoWriter=[[[AVAssetWriteralloc]initWithURL:[self.currentVideocurrentVideoClipLocalURL]fileType:AVFileTypeMPEG4error:&error]autorelease];...self.videoWriterInput=[AVAssetWriterInputassetW

ios - 带有音频 AVAssetWriterInput "leaks"内存的 appendSampleBuffer 直到 endSessionAtSourceTime

AVAssetWriterInputappendSampleBuffer我有一个奇怪的内存“泄漏”。我同时编写视频和音频,所以我有一个带有两个输入的AVAssetWriter,一个用于视频,一个用于音频:self.videoWriter=[[[AVAssetWriteralloc]initWithURL:[self.currentVideocurrentVideoClipLocalURL]fileType:AVFileTypeMPEG4error:&error]autorelease];...self.videoWriterInput=[AVAssetWriterInputassetW

ios - AVAssetWriterInput 附加失败,错误代码为 -11800 AVErrorUnknown -12780

我正在尝试使用AVCaptureSession在内存中捕获摄像机视频,以便稍后将视频数据写入电影文件。虽然我已经能够成功启动捕获session,但我无法使用AVAssetWriter将捕获的CMSampleBuffers成功写入压缩的电影文件。使用AVAssetWriterInput的附加方法附加示例缓冲区失败,当我检查AVAssetWriter的错误属性时,我得到以下信息:ErrorDomain=AVFoundationErrorDomainCode=-11800"操作无法完成"UserInfo={NSUnderlyingError=0x17005d070{ErrorDomain=N

iphone - AVAssetWriterInput H.264 直通到 QuickTime (.mov) - 传入 SPS/PPS 以创建 avcC 原子?

我有一个H.264/AVCNAL流,由类型1(P帧)、5(I帧)、7(SPS)和8(PPS)组成。我想将它们写入.mov文件而不重新编码。我正在尝试使用AVAssetWriter来执行此操作。AVAssetWriterInput的文档指出:PassingnilforoutputSettingsinstructstheinputtopassthroughappendedsamples,doingnoprocessingbeforetheyarewrittentotheoutputfile.Thisisusefulif,forexample,youareappendingbuffersth

ios - 一起使用 AVCaptureSession 和音频单元会导致 AVAssetWriterInput 出现问题

我正在开发一个同时做两件事的iOS应用:它捕获音频和视频并将它们中继到服务器以提供视频聊天功能。它捕获本地音频和视频并将它们编码为mp4文件以供后代保存。不幸的是,当我们使用音频单元配置应用程序以启用回声消除时,录音功能会中断:我们用来编码音频的AVAssetWriterInput实例拒绝传入样本。当我们不设置音频单元时,录音工作正常,但回声很糟糕。为了启用回声消除,我们像这样配置一个音频单元(为简洁起见解释):AudioComponentDescriptiondesc;desc.componentType=kAudioUnitType_Output;desc.componentSub

ios - LLSimpleCamera : AVAssetWriterInput appendSampleBuffer crashing

我正在使用LLSimpleCamera录制视频。我用后置摄像头录制的很好,但是当我切换到前置摄像头时,应用程序崩溃,报告的错误是*Terminatingappduetouncaughtexception'NSInvalidArgumentException',reason:'*-[AVAssetWriterInputappendSampleBuffer:]Mediatypeofsamplebuffermustmatchreceiver'smediatype("soun")'我已经尝试了很多stackOverflow帖子,但无法修复崩溃。谁能告诉我可能是什么问题?

ios - 具有 2 个以上 channel 的 AVAssetWriterInput

有人知道如何使用超过2个channel的AVAssetWriterInputinit吗?我正在尝试初始化audioInput,以这种方式在AVAssetWriter之后添加它:letaudioInput=AVAssetWriterInput(mediaType:AVMediaTypeAudio,outputSettings:audioOutputSettings)assetWriter.add(audioInput)assetWriter.startWriting()但是当我使用包含大于2的channel键数的audioOutputSettings字典初始化audioInput时它崩溃

ios - AVAssetWriterInput - 黑屏,长达 46 小时

我正在尝试获取AVCaptureSession并将其编码为mp4。看起来这应该很简单,我正在尝试对单个960x540视频流进行编码;出于这个问题的目的,我不担心音频。当我运行以下代码并使用Xcode从文档容器中抓取out2.mp4时,我在quicktime中出现黑屏,持续时间为46小时。至少分辨率看起来是正确的。这是ffmpeg-iout2.mp4的输出Input#0,mov,mp4,m4a,3gp,3g2,mj2,from'out2.mp4':Metadata:major_brand:mp42minor_version:1compatible_brands:mp41mp42isomc