2017-12-27 23 views
0

UWP 캔버스에 비디오를 가져 오려고합니다. 그림을 성공적으로 가져 오는 코드는 다음과 같습니다. private 비동기 void AddImageButton_Click (개체 보낸 사람, RoutedEventArgs) { Image MyImage = new Image();UWP 비디오 가져 오기

 var picker = new FileOpenPicker(); 
     picker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; 
     picker.FileTypeFilter.Add(".jpg"); 
     picker.FileTypeFilter.Add(".png"); 

     StorageFile file = await picker.PickSingleFileAsync(); 

     if (file != null) 
     { 
      StorageApplicationPermissions.FutureAccessList.AddOrReplace("PickedFolderToken", file); 
      // var files = await file.GetFilesAsync(); 
      var bitmap = new BitmapImage(); 

      var stream = await file.OpenReadAsync(); 

      // AddHandler(, new ExceptionRoutedEventHandler(Bitmap_ImageFailed), true); 
      bitmap.ImageFailed += Bitmap_ImageFailed; 
      await bitmap.SetSourceAsync(stream); 
      MyImage.Source = bitmap; 

      AddHandler(ManipulationStartedEvent, new ManipulationStartedEventHandler(Image_ManipulationStarted), true); 
      AddHandler(ManipulationDeltaEvent, new ManipulationDeltaEventHandler(Image_ManipulationDelta), true); 
      AddHandler(ManipulationCompletedEvent, new ManipulationCompletedEventHandler(Image_ManipulationCompleted), true); 

      ManipulationMode = ManipulationModes.All; 
      MyImage.RenderTransform = ImageTransforms; 


      parentCanvas.Children.Add(MyImage); 
     } 

    } 

비트 맵을 MediaPlayerElement로 변환 할 때 비디오를 가져 오려고 시도했지만 막혔습니다. 어떤 제안?

감사합니다.

답변

0

Canvas에 이미지를 추가하여 위의 코드를 따르면, 당신은 캔버스에 MediaPlayerElement을 추가하고 MediaPlayerElement의 소스로 미디어 파일을 선택기하는 FileOpenPicker를 사용하려면 다음 코드를 시도 할 수 있습니다. 요구 사항을 충족시키기 위해 일부 수정을 할 수 있습니다.

private async void AddMediaPlayerElementButton_Click_1(object sender, RoutedEventArgs e) 
{ 
    var picker = new FileOpenPicker(); 
    picker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; 
    picker.FileTypeFilter.Add(".mp4"); 
    StorageFile file = await picker.PickSingleFileAsync(); 
    MediaPlayerElement mediaPlayer = new MediaPlayerElement() { AreTransportControlsEnabled = true }; 
    if (file != null) 
    { 
     mediaPlayer.Source = MediaSource.CreateFromStorageFile(file); 
    } 
    parentCanvas.Children.Add(mediaPlayer); 
} 
+0

정말 고마워요. – kmash