2011-01-29 5 views
3

저는 VB.net 2010 및 WPF 4를 사용하고 있습니다. 미디어 요소에서 재생되는 두 비디오 사이를 부드럽게 전환해야합니다. WPF 창에서 winhost를 사용해야하는 항목은 절대 사용할 수 없습니다. 비디오를 전체 화면으로 표시하고 컨트롤이 비디오 위에 있기 때문에 프로젝트를 불가능하게 만듭니다.WPF 용 부드러운 비디오 전환

기본적으로 나는 비디오를 재생 한 다음 코드 뒤에 지정된 다른 비디오로 부드럽게 이동합니다. 나는 두 개의 비디오를 함께 연결할 수 없습니다 - 그들은 분리되어 있어야합니다.

"깜박임"없이 동영상을 원활하게 전환하려면 어떻게해야합니까?

+0

여기 좀 보시라. http://www.darinhiggins.com/fading-two-video-windows-in-wpf/ –

답변

1

여기서는 테스트하지 않고 추측하고 있습니다. 아마도 CPU 코어와 좋은 비디오 카드가 필요할 것입니다.

메모리가 있다면 MediaElement을 두 개 사용하십시오.

  • 각 요소에 하나씩 두 동영상을 모두 대기열에 올려 놓습니다.
  • 두 번째 투명도를 완전히 투명하게 설정하십시오. 그들은 UIElements이므로이 작업을해야합니다 ...
  • 재생이 끝나기 몇 초 전에 이벤트를 얻을 수 있도록 첫 번째 재생에서 시작된 키의 종류를 사용하십시오.
  • 해당 이벤트 대리자를 사용하여 두 번째 MediaElement에서 비디오를 시작하고 첫 번째 불투명도를 0으로 애니메이트하는 동시에 두 번째 불투명도를 완전히 불투명하게 애니 메이팅합니다.
  • 다시해야 할 경우 타이머를 다시 설정하고 대리인이 다른 방법으로 애니메이션을 적용하는지 확인하십시오.
+0

나는 좋은 하드웨어를 가지고 있지만 최종 사용자의 의지는 보장 할 수 없다. 이것을 위해 최소한의 메모리 요구 사항은 무엇입니까? – CodeMouse92

+0

비디오 파일의 크기와'MediaElement'가 어떻게 처리하는지에 따라 다릅니다. 미안하지만 더 구체적 일 수는 없지만 최선의 방법은 선택하는 디자인에 관계없이 스트레스 테스트를하는 것입니다. –

+0

감사합니다. 동영상 파일은 제품의 90 %를 구성합니다. (게임입니다.) – CodeMouse92