问题标签 [avassetwriter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
recording - CTCallStateIncoming 时 AVAssetWriter 完成写入失败
我使用 AVAssetWriter AVCaptureSession 来录制视频。它运行良好。我使用 UIApplicationDidEnterBackgroundNotification 和 CTCallCenter.callEventHandler 在应用程序进入后台或来电时停止记录。UIApplicationDidEnterBackgroundNotification 运行良好。但在 CTCallCenter.callEventHandler,[AVAssetWriter finishWriting] 返回 NO 。这是 AVAssetWriter.error:
Error Domain=AVFoundationErrorDomain Code=-111800 "这个操作无法完成" UserInfo=0x6c0bc20 {NSLocalizedFailureReason=发生未知错误(-12785), NSUnderlyingError=0x6c0fc80 "The operation could not be completed. (OSStatus error -12785.)", NSLocalizedDescription=本次操作无法完成}
来电时似乎 AVAssetWriter 立即失败。录制的文件未完成,无法播放。有人能告诉我怎么处理吗?
CTCallCenter 代码:
stopRecording 在其他情况下工作正常。
iphone - 如何根据我的特定时间 iOS SDK 更改图像
我创建了一个带有图像数组的电影并将其保存到我的照片库中。
当我播放电影时,我的所有图像都会同时出现,这意味着如果在我的电影中保存了 10 张图像,当我开始播放电影时,我所有的 10 张图像都会在一秒钟内出现,但歌曲会继续播放。
这里我的问题是我想滑动我的图像,如:
前 3 秒第一张图片,接下来 3 秒 2 张图片
如何使用 AVMutableCompositionTrack 或其他东西创建该类型的电影。
我的示例代码是:
objective-c - 如何将我的整数值分配给 CMTime iOS Sdk
我想将我的 int 值分配给 CMTime 类型变量
我希望这个代码像:
代替:
这可能吗?
iphone - 在 PhotoLibrary iPad 中没有得到结果电影
我正在用一组图像和一个音频文件创建一个电影,并将创建的电影保存到照片库中,在模拟器中我用我的图像和音频文件数组得到正确的电影,但是在设备中运行时我没有得到我的结果电影相反,我得到了我添加的视频(我在代码中使用的 OutPut.mov)来编写我的输出文件(混合音频和图像文件数组)。
这是我将混合音频和图像文件数组保存到照片库的代码:
iphone - 如何为使用 Objective c iPhone 创建的电影添加效果(如 CurlUp、CurlDown 等)
我已经使用 AVAssetWriter、AVMutableComposition 和图像数组和音频歌曲创建了一部电影,我将其保存到照片库中......知道我想在创建电影时为该图像添加效果......
是否可以在创建电影时为图像添加效果(如 CurlUp、CurlDown 等),如果可以,请提供答案。
iphone - 在应用程序目录 iPhone 中创建的文件夹的限制是什么
我正在尝试使用 AVAssetWriter 创建一个包含大约 20 个图像的 MPEG4 ..
对于 10 张图片,我可以在我的 app 目录中创建一个文件,但是对于 20 张图片,我无法创建一个文件。
这是我尝试保存图像 mpeg4 格式文件的路径(设备路径):
这里我的问题是:在应用程序目录中创建的文件夹是否有任何限制,如果有,限制是什么以及如何找到创建文件的大小
这是我的代码:
objective-c - 视频后未显示的持续时间
我已经使用相机录制了实时视频AVCaptureVideoDataOuput
,AVAssetWriter
但生成的视频没有持续时间。任何人都可以给出一个简短的想法或大致方向的观点以使持续时间有效吗?
ios - 为什么 AVAssetWriter 会膨胀视频文件?
奇怪的问题。我从视频文件 (.mov) 中获取帧,并使用 AVAssetWriter 将它们写入另一个文件,而无需任何显式处理。实际上,我只是将帧从一个内存缓冲区复制到另一个内存缓冲区,然后它们通过 PixelbufferAdaptor 刷新它们。然后我取出生成的文件,删除原始文件,将生成的文件替换为原始文件并执行相同的操作。有趣的是文件的大小不断增长!有人可以解释为什么吗?
iphone - 如何在 iphone sdk 中使用 AVAssertWriter 和 AVAssertReader 录制和播放捕获的视频
我在预览层上显示相机数据(视频)。现在我想录制视频并将其存储在本地文件中并访问它以在屏幕上播放。
我看过一些网站可以使用AVAssertWriter
和AVAssertReader
。我很难理解。任何人都可以用明确的方式或任何示例代码给我建议。
任何人的帮助将不胜感激。
谢谢大家,莫尼什。
objective-c - CVPixelBufferRef的优化
我正在做一个项目,在该项目中我从 UIImage 生成一个视频,代码是我在这里找到的,我现在正在努力优化它几天(对于大约 300 张图像,在模拟器上大约需要 5 分钟,并且由于内存而简单地在设备上崩溃)。
我将从今天的工作代码开始(我使用 arc):
现在获取像素缓冲区的功能,我正在努力:
第一个奇怪的事情:正如你在这个函数中看到的,我必须将宽度和高度乘以 2,否则结果视频全乱了,我不明白为什么(如果有帮助,我可以发布截图;像素似乎来自我的图像,但宽度不正确,视频的半底部有一个大的黑色方块)。
另一个问题是它需要大量的内存。我认为像素缓冲区不能很好地释放,但我不明白为什么。
最后,它很慢,但是我有两个想法可以改进它,但我没有使用。
首先是避免使用 UIImage 来创建我的像素缓冲区,因为我自己使用 (uint8_t *) 数据生成 UIImage。我尝试使用“CVPixelBufferCreateWithBytes”,但它不起作用。这是我的尝试方法:
/li>
(参数与上述函数相同;我的图像数据以每像素 16 位编码,我找不到一个好的 OSType 参数来提供给函数。)如果有人知道如何使用它(也许是16 位/像素数据不可能?),这将帮助我避免真正无用的转换。
- 第二件事是我想为我的视频避免 kCVPixelFormatType_32ARGB。我想使用更少位/像素的东西会更快,但是当我尝试它时(我已经尝试了所有 kCVPixelFormatType_16XXXXX 格式,使用 5 位/组件和 kCGImageAlphaNoneSkipFirst 创建的上下文),要么它崩溃,要么生成视频不包含任何内容(使用 kCVPixelFormatType_16BE555)。
我知道我只在一篇文章中问了很多问题,但我有点迷失在这段代码中,我尝试了很多组合,但没有一个能奏效......