Windows Dev Center

CameraCaptureUI.CaptureFileAsync | captureFileAsync Method

Startet die CameraCaptureUI-Benutzeroberfläche.

Syntax


cameraCaptureUI.captureFileAsync(mode).done( /* Erfolgs- und Fehlerhandler */ );

Parameter

mode

Typ: CameraCaptureUIMode

Gibt an, ob die Benutzeroberfläche, die angezeigt wird, dem Benutzer gestattet, ein Foto aufzunehmen, ein Video aufzunehmen oder sowohl Fotos als auch Videos aufzunehmen.

Rückgabewert

Typ: IAsyncOperation<StorageFile>

Wird dieser Vorgang abgeschlossen, wird ein StorageFile-Objekt zurückgegeben.

Hinweise

Rufen Sie CaptureFileAsync zum Starten der UI auf. Der Benutzer kann den Beginn der Erfassung steuern. Wenn der asynchrone Vorgang abgeschlossen ist, wird ein StorageFile-Objekt zurückgegeben.

Beispiele

Im folgenden Beispiel wird CaptureFileAsync aufgerufen und eine Meldung angezeigt, die angibt, ob die Mausauswahl erfolgreich war.


// Take a photo using the default JPEG format.
function takepicture() {
    var captureUI = new Windows.Media.Capture.CameraCaptureUI();
    captureUI.captureFileAsync(Windows.Media.Capture.CameraCaptureUIMode.photo).then(function (capturedItem) {
        if (capturedItem) {
            document.getElementById("message").innerHTML = "User captured a photo."
        }
        else {
            document.getElementById("message").innerHTML = "User didn't capture a photo."
        }
    });
}


Im folgenden Beispiel wird gezeigt, wie die Eigenschaften von VideoSettings festgelegt werden, und wie dann CaptureFileAsync aufgerufen wird, um ein Video aufzuzeichnen.


// Captures a video using the specified settings.
function captureVideo() {
    var captureUI = new Windows.Media.Capture.CameraCaptureUI();
    captureUI.videoSettings.allowTrimming = true;
    captureUI.videoSettings.format = Windows.Media.Capture.CameraCaptureUIVideoFormat.wmv;
    captureUI.videoSettings.maxResolution = Windows.Media.Capture.CameraCaptureUIMaxVideoResolution.standardDefinition;
    captureUI.videoSettings.maxDurationInSeconds = 3;
    captureUI.captureFileAsync(Windows.Media.Capture.CameraCaptureUIMode.video).then(function (file) {
        if (file) {
            document.getElementById("message").innerHTML = "User captured a video."
        }
        else {
            document.getElementById("message").innerHTML = "User didn't capture a video."
        }
    });
}


Im Folgenden ein Code, der die CameraCaptureUI startet. Und wenn es eine aufgezeichnete Datei gibt, wird sie in einem MediaElement als Vorschau angezeigt.


<MediaElement x:Name="mediaPreivew"
              Width="320" />



async private void CameraCaptureUI_Click(object sender, RoutedEventArgs e)
{
    CameraCaptureUI cameraUI = new CameraCaptureUI();
    
    Windows.Storage.StorageFile capturedMedia = 
        await cameraUI.CaptureFileAsync(CameraCaptureUIMode.Video);

    if (capturedMedia != null)
    {
        var stream = await capturedMedia.OpenAsync(FileAccessMode.Read);

        mediaPreivew.SetSource(stream, capturedMedia.ContentType);
        mediaPreivew.Play();
    }
}


Anforderungen

Mindestens unterstützter Client

Windows 8

Mindestens unterstützter Server

Windows Server 2012

Namespace

Windows.Media.Capture
Windows::Media::Capture [C++]

Metadaten

Windows.winmd

Capabilities

webcam
microphone

Siehe auch

CameraCaptureUI

 

 

Anzeigen:
© 2015 Microsoft