I need a C#/WPF control to use in my larger app.
1. I have a remote GStreamer app, which sends me the 1080p or higher H.265 video via UDP. This is emulated locally with a command line:
gst-launch-1.0 filesrc location=./v/[login to view URL] ! h265parse ! rtph265pay config-interval=1 ! application/x-rtp,encoding-name=H265 ! udpsink host=[login to view URL] port=5400
2. I also have a Windows C/C++ GStreamer app, which receives this stream and:
a) stores it to a local video file [FILE01]
b) forwards the packets to our main application via udp.
I will provide this app as a Visual Studio solution.
3. I need you to develop a C#/WPF control I would later put into our main C#/WPF application.
This control needs to:
a) display the incoming H.265 1080p+ video low with latency (no buffering) in a video player
b) provide a callback when the next video frame is ready and example of using (DirectDraw?) to draw text, graphics lines on top of every frame. In other words, I need our main app to be able to dynamically draw some text and graphics on top of the live video playback. Maybe, the videoframe would come to our main app as a textures, so I'll just render a current video frame as a background and draw text/graphics on top of it. Example of what it might look like is in the attached hud(1)_834.jpg file. You don't need to draw anything specific. Just a few lines and text on top of the video to demonstrate.
c) when user resizes the video player window with C#/WPF control, it needs to be handled without interrupting the video playback and without reconnecting, like modern video players do these days - user resizes, playback continues without a pause.
4. This C#/WPF control should also be able to switch from playing back a live stream to playing back a local video file [FILE01], which is being recorded live by our Windows GStreamer app if user selects this mode by clicking a [Button01], for example. The control should not lose the connection to the live stream when playing back a local video [FILE01]. Clicking the same [Button01], again should return the video player to play the live stream again immediately.
5. I also want this control to automatically make use of the hardware acceleration in decoding the H.265 if it's available on a target system. Say, if the target system is equipped with a modern and capable nVidia video card, etc.
I don't have a preference on the technology, however, keep in mind that the video player needs to be compatible with H.265, H264 and some seekable video file format, like mp4.
Also, video player needs to be compatible with the video stream forwarded by our C/C++ GStreamer app. You might
I don't want to use any commercial software for this. Only your work or open source. This control might be a possibility for customization, provided you can draw on top of the video, resize the control on the fly without interruption, and display H.265 video received via udp.([login to view URL]).
GStreamer-sharp is probably another possibility. If you know how to make it work with FFMediaElement, also good. Let me know in the bid or PM which solution you are familiar with and can make work fast and solid.
I need the solution fast. I also need to see a weekly milestones with the progress of your work. There might be more similar work after that. Only experienced programmer/team, please.
13 freelancers are bidding on average $598 for this job
Hi, I can do this work. Individual and hard working person done your work accurately. Waiting your response. Relevant Skills and Experience H265, GStreamer WPF/C# Proposed Milestones $500 USD - complete
Hello, If you have 1 day for it I can provide an ffmpeg based player demo app (I'm on GMT+1) regards Balazs Relevant Skills and Experience C# / WPF / ffmpeg Proposed Milestones $555 USD - depend on details