在Xamarin.iOS中实现AVCapturePhotoCaptureDelegate

时间:2018-02-17 15:34:48

标签: ios xamarin xamarin.ios avfoundation

我尝试在针对iOS 11的Xamarin.iOS中实现AVCapturePhotoCaptureDelegate,但我还没有找到一个有效的例子。

大多数示例使用缓冲区实现已弃用的方法,但目前唯一支持的方法是:

void DidFinishProcessingPhoto(AVCapturePhotoOutput output,
                    AVCapturePhoto photo, Foundation.NSError error);

我已经为iOS 11找到了一些更新的教程,但是他们通常建议使用AVCapturePhoto.fileDataRepresentation method,但由于某种原因,这似乎不适用于Xamarin。

请您指点一下如何从Xamarin中的AVCapturePhoto检索JPEG和RAW数据?

更新

我已检查AVCapturePhoto bracketSettingsApple documentation似乎缺少许多其他成员,例如imageRepresentation,但只有UIImage相关的方法是实际上在代码中不可用。

我非常感谢对其原因的解释,因为如果没有数据表示方法,似乎没有任何方便的方法可以从AVCapturePhoto分离MERGE INTO dbo.Customers a USING dbo.Customers_stage b ON (a.ID = b.ExternalID) WHEN MATCHED THEN UPDATE SET a.col1 = b.col1 DELETE WHERE ID not in ( select ExternalID from Customers_stage ) WHEN NOT MATCHED THEN INSERT (ID, status) VALUES (b.ExternalID, b.col1); 使用已弃用的委托方法。

1 个答案:

答案 0 :(得分:1)

这是一个针对Xcode 9.3支持/里程碑安排的漏洞/问题:

re:https://github.com/xamarin/xamarin-macios/blob/4da8016db4330bde0a09b4a5453a26427ca6685d/tests/xtro-sharpie/iOS-AVFoundation.ignore

!missing-selector! +AVCapturePhotoBracketSettings::photoBracketSettingsWithRawPixelFormatType:rawFileType:processedFormat:processedFileType:bracketedSettings: not bound
!missing-selector! AVCapturePhoto::fileDataRepresentationWithReplacementMetadata:replacementEmbeddedThumbnailPhotoFormat:replacementEmbeddedThumbnailPixelBuffer:replacementDepthData: not bound
!missing-selector! AVCapturePhotoOutput::availableLivePhotoVideoCodecTypes not bound
!missing-selector! AVCapturePhotoOutput::isCameraCalibrationDataDeliverySupported not bound
!missing-selector! AVCapturePhotoOutput::isDualCameraDualPhotoDeliveryEnabled not bound
!missing-selector! AVCapturePhotoOutput::isDualCameraDualPhotoDeliverySupported not bound
!missing-selector! AVCapturePhotoOutput::setDualCameraDualPhotoDeliveryEnabled: not bound
!missing-selector! AVCaptureResolvedPhotoSettings::embeddedThumbnailDimensions not bound
!missing-selector! AVCaptureResolvedPhotoSettings::expectedPhotoCount not bound