0

I have a vast MFC application that actually renders a continuous video buffer from a required source. Source driver sends those data in a queue and after decoding those buffer using FFmpeg finally we get yuv data and rendered it by using a custom player.

Now we decided to develop a new User Interface using WPF. As our application's video driver is based on C++ and it's a huge codebase, so we have to process our video stream from the current MFC application and have to send/stream to WPF application for rendering.

Is it possible to send those video buffers to WPF Application by using any reliable InterProcess communication?

After a bit of research, I have found some topics like PIPES, Shared Memory, Sockets, CLI, etc. I'm a little bit confused about those processes as our required buffer is 30FPS and a continuous process until the driver provides buffers or close the application.

Can you please suggest a reliable way to perform the above requirement?

Any kind of help will be appreciated. Thanks in advance.

Clemens
  • 123,504
  • 12
  • 155
  • 268
yeasir007
  • 2,110
  • 2
  • 28
  • 43
  • 1
    see https://stackoverflow.com/questions/54767732/using-a-directx-c-dll-in-a-c-sharp-wpf-or-windows-forms-application – Leonid Malyshev Jul 11 '20 at 19:05
  • 1
    *"we decided to develop a new User Interface using WPF"* - That's the bug you need to address. WPF is likely the *least* attractive platform to choose today. It ultimately locks you into a .NET-only universe, and is insanely alien to any sort of native interop. If you want a *"modern"* UI, choose WinUI. Native performance, open to native and managed development, and can be hosted in your native application. Once that's done, you no longer have to let your video data cross process boundaries. Not transferring data across processes is always faster than transferring data across processes. – IInspectable Jul 11 '20 at 19:42
  • Actually WinUI doesn't support MFC right now. According to Microsoft WinUI3.0 will support MFC which will be available in the next year. – yeasir007 Jul 12 '20 at 04:54
  • You can [host WinUI controls in a XAML islands](https://learn.microsoft.com/en-us/windows/apps/desktop/modernize/xaml-islands) even today. – IInspectable Jul 12 '20 at 06:13
  • will it support in windows 7 OS? Our application must have to run on both windows 7 & 10 – yeasir007 Jul 12 '20 at 06:19
  • Windows 7 is no longer supported since 2020-01-14. You cannot use XAML islands on Windows 7, nor are there plans to provide any support for this in the future. – IInspectable Jul 12 '20 at 16:02

0 Answers0