Please carefully read the below requirements before bidding.
The goal of this project is implementing the required C# code for reading [url removed, login to view] encoded video stream from an IP camera.
The implemented code must satisfy the following requirements and constraints:
1. The implemented code must fully take advantage of DirectX, DirectShow and Windows Media Foundation libraries
2. The code must run (and will be tested) on Windows 7, Windows 8, Windows Server 2008 and Windows Server 2012 (the required DLLs will be copied together with the executable file)
3. The code must NOT rely on libraries which are not part of standard Microsoft Windows software libraries including VLC, FFMpeg or any other video decoder software (DivX etc) (we already have working solutions using these libraries)
4. The implemented code must have small memory and CPU footprint. For instance for a 800x600 15fps video stream, it should not consume more than 5% of CPU time on a quad core i7 laptop.
Implementation will be based on the following C# classes:
public class Image
public int Width = 0, Height = 0;
public byte data = null; // image data must be BGR, 24 bits per pixel
public int row_stride = 0;
public class H264IPStreamDecoder
// connects to the input video stream
//example: rtsp://[IPAddress]/axis-media/[url removed, login to view]
bool Open(string streamAddress);
// disconnects from stream, if required
// reads the next frame from stream
// other private methods and attributes
We require the solution to be completed within 5-7 days after awarding the project. If you do not have experience with video decoding and IP cameras please do NOT bid on this project.
The time for completion and delivery of the milestones is not negotiable, and cannot be extended. Hence no milestone is created and paid in advance prior to completion of the project.
Deliverables from the day project awarded:
1. Day 3: Freelancer will provide fully working source code with instruction for usage
2. Day 4: We provide feedback on enhancements or corrections if applicable
3. Day 6: Freelancer provides corrected code, fully tested against the original spec and the provided feedback
4. Day 7: We test the code and pay the bid amount if all requirement passed.
While we value Freelancers’ work, it is expected the above iterations do not take too much of our time for reporting bugs and issues back to the Freelancer. So, please be mindful and consider all of the requirements before bidding on this project.