CaptureSource Class
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Provides methods that work with specific audio or video captures from the associated capture device.
Assembly: System.Windows (in System.Windows.dll)
The CaptureSource type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | AudioCaptureDevice | Gets or sets the associated audio capture device that is relevant to this capture. |
![]() | Dispatcher | Gets the Dispatcher this object is associated with. (Inherited from DependencyObject.) |
![]() | State | Gets the CaptureState of this capture. State might indicate that the capture is still ongoing or has failed. |
![]() | VideoCaptureDevice | Gets or sets the associated video capture device that is relevant to this capture. |
| Name | Description | |
|---|---|---|
![]() | CaptureImageAsync | Initiates an asynchronous image capture request. Retrieve the returned image by handling the CaptureImageCompleted event on this CaptureSource. |
![]() | CheckAccess | Determines whether the calling thread has access to this object. (Inherited from DependencyObject.) |
![]() | ClearValue | Clears the local value of a dependency property. (Inherited from DependencyObject.) |
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetAnimationBaseValue | Returns any base value established for a Windows Phone dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | GetValue | Returns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ReadLocalValue | Returns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject.) |
![]() | SetValue | Sets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject.) |
![]() | Start | Initiates capture from all capture devices that are relevant to this CaptureSource. |
![]() | Stop | Stops capture from all capture devices that are relevant to this CaptureSource. |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() | CaptureFailed | Occurs when a requested capture operation does not generate a captured sample. |
![]() | CaptureImageCompleted | Occurs when an asynchronous image capture request has returned a captured image. |
| Name | Description | |
|---|---|---|
![]() ![]() | AudioCaptureDeviceProperty | Identifies the AudioCaptureDevice dependency property. |
![]() ![]() | VideoCaptureDeviceProperty | Identifies the VideoCaptureDevice dependency property. |
By using CaptureSource APIs, you can enable the following scenarios:
Capture a complete video into this CaptureSource by calling Start and Stop. Then use this CaptureSource as the value for SetSource to play back the video. For more information, see How to record video in a camera app for Windows Phone 8.
Grab a video frame and convert it to a static image by calling CaptureImageAsync, and handling CaptureImageCompleted to obtain the result.
CaptureSource does not enable access to raw audio or video. To access this data, you must provide overrides for AudioSink::OnSamples or VideoSink::OnSample. You use Start and Stop for raw-format scenarios to start and stop the captures so that the sinks can process the resulting streams.
Tip: |
|---|
To save video to a file, you can use the FileSink class. |
Capabilities
If you use this API in your app, you must specify the following capabilities in the app manifest. Otherwise, your app might not work correctly or it might exit unexpectedly.
ID_CAP_ISV_CAMERA | Windows Phone 8, Windows Phone OS 7.1 |
ID_CAP_MICROPHONE | Windows Phone 8, Windows Phone OS 7.1 |
For more info, see App capabilities and hardware requirements for Windows Phone 8.
Version Notes
Windows Phone OS 7.1
In Windows Phone applications that use the CaptureSource class, you must also use the Microsoft.Devices::Camera, Microsoft.Devices::PhotoCamera, or Microsoft.Xna.Framework.Audio.Microphone class to enable audio capture and accurate capability detection in the application.






Tip: