[url removed, login to view] GPU Based Bitmap Streaming Server


We require the ability to transmit a stream of bitmaps from a Windows based server across the internet to a variety of clients running different operating systems. The network stream needs to be compressed as [url removed, login to view] in order to reduce the bandwidth required and the [url removed, login to view] encoding needs to be offloaded from the computer CPU to a graphics card GPU. Ideally we'd like the task to be completed used Microsoft's Media Foundation but are willing to accept other approaches, such as DirectShow or CUDA provided, it any required components can be deployed by a simple copy of the required binary libraries to the server.

It is essential that the encoding can be offloaded to the GPU as much as possible as our solution, of which video streaming is only a component, is already CPU-bound. Ideally we'd like the solution to support CUDA video encoding.

You will be required to fix any issues that arrise out of the solution within a business day for a period of 90 days after delivery.

In order to be able test the solution we require that it can be connected to by a VLC ([url removed, login to view]) client. The control protocol for the stream does not matter and can be RTSP, HTTP or whatever is easiest. An example of what we require is shown on this project [url removed, login to view] but rather than an MJPEG encoding we require an [url removed, login to view] one.

In addition we need a simple C# interface to the developed library along the lines of the sample code shown below. The IH264Stream interface implementation is the piece we require.

public interface IH264Stream


public void Start(IPEndPoint clientSocket);

public void AddBitmap(Bitmap bitmap);

public void Close();


class Program


public static bool Exit;

static void Main(string[] args)


Queue bitmapQueue = new Queue();

IH264Stream streamServer = new object() as IH264Stream;

[url removed, login to view](new IPEndPoint([url removed, login to view], 1234));

while (!Exit)


var bitmap = [url removed, login to view]();

[url removed, login to view](bitmap);


[url removed, login to view]();



Skills: C# Programming, CUDA, Software Architecture

See more: compressed 264 bitmaps, ih264stream, bitmap video stream, bitmap rtsp server, streaming video server client, what is computer programming used for, what is a string in programming, what does binary, vlc mjpeg, string library in c, string library c, sharp component, programming ability test, object based programming, mjpeg vlc, microsoft programming software, interface computer programming, html computer programming, foundation software, c sharp object, c sharp library, c queue library, computer systems programming, computer programming html, computer programming class

Project ID: #4729585