gpt4 book ai didi

ios - iphone 的存储空间快满了,如何停止录像?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:05:04 25 4
gpt4 key购买 nike

有没有一种方法可以在录制视频时设备存储快满时通知我。

我发现你可以设置maxRecordedFileSize 如果我使用 AVCaptureMovieFileOutput,我可以使用它来录制视频,但不幸的是我不能使用它,因为在将视频帧存储到视频文件之前我必须进行一些视频操作。

相反,我必须使用 AVCaptureVideoDataOutputAVAssetWriter 的方法。

是否可以观察存储空间已满时发出的某种系统通知?

最佳答案

您可以使用以下代码获取磁盘中的可用空间

-(uint64_t)getFreeDiskspace{
uint64_t totalSpace = 0.0f;
uint64_t totalFreeSpace = 0.0f;
NSError *error = nil;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error];

if (dictionary) {
NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize];
NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize];
totalSpace = [fileSystemSizeInBytes floatValue];
totalFreeSpace = [freeFileSystemSizeInBytes floatValue];
NSLog(@"Memory Capacity of %llu MiB with %llu MiB Free memory available.", ((totalSpace/1024ll)/1024ll), ((totalFreeSpace/1024ll)/1024ll));
} else {
NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %@", [error domain], [error description]);
}

return totalFreeSpace;
}

你可以检查一下

if([self getFreeDiskspace]>100.0){
//The store
}else{
//Alert user
}

希望对您有所帮助。

关于ios - iphone 的存储空间快满了,如何停止录像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38018858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com