2

我正在使用 AVFoundation 库编写视频应用程序。

基本上,我正在将视频录制到文件中,并在录制完成时收听以下事件。

- (void)captureOutput:(AVCaptureFileOutput *)captureOutput didFinishRecordingToOutputFileAtURL:(NSURL *)outputFileURL fromConnections:(NSArray *)connections error:(NSError *)error
{
   switch([error code] {
        //handle different AV foundation errors such as 
        case AVErrorMaximumFileSizeReached:
        { //do something }
        case AVErrorMaximumDurationReached:
        { //do something }            
        case AVErrorDiskFull:
        { //do something }
   }
}

当我在低磁盘空间手机中运行我的应用程序时,我收到了一个奇怪的错误-12670。我想这与 diskfull 类似,但是,我在AVError.h.

有什么简单的方法可以找到随机错误代码对应的宏吗?(我需要找到这个错误到底是什么的文档)

这很令人困惑,我在互联网上搜索,找不到知道整个故事的人。

问候,霍华德

4

2 回答 2

1

这是一个古老的错误问题,但这是我的答案。如果您仔细查看 NSError,它确实显示错误代码是 -11807 ( AVErrorDiskFull )。确保您没有查看 OSStatus 错误。您可以在此处找到有关 OSStatus 错误的更多信息。

下面是一个 NSError 的例子:

Error Domain=AVFoundationErrorDomain 
Code=-11807 "Operation Stopped" 
UserInfo=0x16eabcf0 {NSLocalizedRecoverySuggestion=There is not enough available space to continue the file writing. Make room by deleting existing videos or photos., 
AVErrorRecordingSuccessfullyFinishedKey=false, 
NSLocalizedDescription=Operation Stopped, 
NSUnderlyingError=0x16e9e720 
"The operation couldn’t be completed. (OSStatus error -12670.)"}*
于 2014-03-26T00:05:49.173 回答
0

从文档

https://developer.apple.com/documentation/avfoundation/avfoundation_constants?language=objc

这里有一些填充文字供您娱乐。

于 2013-07-15T10:52:05.810 回答