1

CaptureSource()このトピックWindows Phone のカメラ アプリでビデオを録画する方法のようなビデオを録画していましたが、録画したビデオのサムネイルを取得できません。

4

2 に答える 2

3

解決策は次のとおりです。

[...]

// Add eventhandlers for captureSource.
captureSource.CaptureFailed += new EventHandler<ExceptionRoutedEventArgs>(OnCaptureFailed);
captureSource.CaptureImageCompleted += captureSource_CaptureImageCompleted;

[...]

captureSource.Start();
captureSource.CaptureImageAsync();

[...]

void captureSource_CaptureImageCompleted(object sender, CaptureImageCompletedEventArgs e)
{
 using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication())
  {
    System.Windows.Media.Imaging.WriteableBitmap wb = e.Result;

     string fileName = "CameraMovie.jpg";
     if (isoStore.FileExists(fileName))
         isoStore.DeleteFile(fileName); 

     IsolatedStorageFileStream file = isoStore.CreateFile(fileName);

     System.Windows.Media.Imaging.Extensions.SaveJpeg(wb, file, wb.PixelWidth, wb.PixelHeight, 0, 85);

     file.Close();
 }
}



更新:ユーザーが必要なときにサムネイルを取得できるようにします

Tapイベントを追加するviewfinderRectangle

<Rectangle 
    x:Name="viewfinderRectangle"
    [...]
    Tap="viewfinderRectangle_Tap" />

captureSource.CaptureImageAsync();そのタップイベントを呼び出す

private void viewfinderRectangle_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
 captureSource.CaptureImageAsync();
}
于 2013-03-09T00:25:49.817 に答える