LowLagPhotoSequenceCapture 类

定义

提供快速拍摄低快门滞后照片序列的方法。

public ref class LowLagPhotoSequenceCapture sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
class LowLagPhotoSequenceCapture final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
public sealed class LowLagPhotoSequenceCapture
Public NotInheritable Class LowLagPhotoSequenceCapture
继承
Object Platform::Object IInspectable LowLagPhotoSequenceCapture
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

注解

照片序列模式可快速拍摄照片序列。 照片序列的一个关键方案是获取过去的照片,即用户拍照之前的照片。 如果要拍摄一系列具有不同设置(如曝光或闪光)的照片,请使用 VariablePhotoSequenceCapture

可以通过 MediaCapture.VideoDeviceController 访问捕获设备的 LowLagPhotoSequenceControlLowLagPhotoSequenceControl 用于管理与照片序列会话相关的设置。

可以通过检查 LowLagPhotoSequenceControl.Supported 来确定设备是否支持照片序列模式。

使用 MediaCapture.PrepareLowLagPhotoSequenceCaptureAsync 初始化照片序列捕获。 这是一个异步调用,它在完成后返回 LowLagPhotoSequenceCapture 对象。 必须在 StartAsync 之前调用它。

若要开始捕获照片,请调用 StartAsync。 应用将继续从设备接收照片,直到操作停止。

StopAsync 停止操作,该操作可使用 StartAsync 重启。

将处理程序添加到 PhotoCaptured 事件,以便获取序列中捕获的照片。 PhotoCapturedEventArgs 为捕获的帧提供数据。 PhotoCapturedEventArgs.Frame 包含捕获的照片, PhotoCapturedEventArgs.Thumbnail 包含缩略图。

FinishAsync 停止照片序列捕获操作,并释放照片序列操作使用的 LowLagPhotoSequenceCapture 对象和资源。 如果要在调用 FinishAsync 后重新启动照片序列操作,则必须调用 MediaCapture.PrepareLowLagPhotoSequenceCaptureAsync 以初始化新的 LowLagPhotoSequenceCapture 对象。

如果更改了媒体类型或添加了效果,则必须调用 MediaCapture.PrepareLowLagPhotoSequenceCaptureAsync 以创建新的 LowLagPhotoCapture 对象。

LowLagPhotoSequenceControl.GetCurrentFrameRate 指定拍摄照片的帧速率。

PhotoCapturedEventArgs.CaptureTimeOffset 可用于判断某一帧是未来、大于 0 还是过去小于 0。

如果应用想要限制每秒获取的帧数,可以使用 LowLagPhotoSequenceControl.PhotosPerSecondLimit。 当设备上的传感器可以处理 30fps,但应用只需要 4fps 时,这非常有用。

若要启用缩略图,请将 LowLagPhotoSequenceControl.ThumbnailEnabled 设置为 true

可以通过 LowLagPhotoSequenceControl.DesiredThumbnailSize 设置所需的缩略图大小,并通过 LowLagPhotoSequenceControl.ThumbnailFormat 设置缩略图格式。

过去的照片数不能超过 LowLagPhotoSequenceControl.MaxPastPhotos,这是驱动程序支持的最大过去照片数。 返回的过去照片数将是以下值中的较小值: LowLagPhotoSequenceControl.PastPhotoLimitLowLagPhotoSequenceControl.MaxPastPhotos 或当前可用的过去照片数。

方法

FinishAsync()

异步释放照片序列捕获操作使用的 LowLagPhotoSequenceCapture 对象和资源。

StartAsync()

异步开始捕获照片。

StopAsync()

异步停止捕获照片。

事件

PhotoCaptured

捕获照片时发生。

适用于

另请参阅