Apple provides HTTP Streaming by breaking apart an MPEG file into segments based upon time. These segments much break on specific boundaries. The ability to do this is provided thru the use of an open source segmenting tool.

What we need is a variation of this tool, in a .NET class. The source code for the open source segmented is below, as well as an overview of how things work currently. This is provided so you can get a good understanding. What we need is slightly different.

What we are in need of is a .NET class which provides us the file/position (byte number), each time a SEGMENT would be made. As well, the file we will be using will be a LIVE active file being created. So while the segmenter source below would exit/complete at the end of the file, our class will continue to wait for more bytes in the file, when they exist - read, and process, and so on, until specifically told to stop. The way this class should work is as follows:

Function Init(filename as string) as Boolean = Return true if opened/false if not existent

. * One point here, the file needs to be opened in a manner which is SHARED, so that others apps writing to it are

. not affected, not apps opening it after will be affected

Subroutine Start - Starts the Processing

Property StopSize as long - A property we can set telling you the final byte of the file, where you can gracefully stop

Event Segment(int,long) - the int is a sequential counter each time this event is raised you increment it

. the long value is the byte index of the byte before segmenting

' In our class your not writing anything to a file, or creating a new files.

' You need only raise this event, we will handle the rest

Subroutine Stop - Stops Processing the File, raising Completed event as well with the last byte processed

Event ErroredOut(int,long) - Raises if an exception stopping you from processing occurs, int and long same as above

Event Completed(int,long) - Raised either from STOP or if you reached the position in StopSize

Property CurrentPosition as long = Current Byte Position you are currently at/processing

Thats it, so a lot code can be stripped from below, biggest piece here is doing it in MANAGED code (C++ Managed, or C++ with a C# Wrapper)

Source of Segmenter:

[url removed, login to view]


[url removed, login to view]

Skills: .NET, C# Programming, C++ Programming

See more: segmenter, mpeg segmenter, segmenter source, open source hls segmenter, hls segmenter open source, hls segmenter, segmenter source code, http live streaming, windows hls, segmenter net, hls segmenter source, hls open source, segmenter hls, mpeg segmenter windows, apple segmenter, windows http mpeg streaming, http live streaming segmenter, hls segmenter code, hls file segmenter, hls segmenter source code, open source segmenter windows, hls segmenter windows, windows mpeg segmenter, mpeg segmenter open source, mpeg segmenter source code

Project ID: #1005163

Awarded to:


Hello. I can do meet your request Ihave look into the source and I'm sure it is in my efforts. Best regards.

$300 USD in 15 days
(8 Reviews)

4 freelancers are bidding on average $625 for this job


Dear Hiring manager, We have read the details of your project.Please check PM Regards BluecallsTech

$700 USD in 20 days
(0 Reviews)

maybe i can help.

$750 USD in 15 days
(0 Reviews)

Hi, I have more than 7 years software development experience. I can accomplish it for you.

$750 USD in 30 days
(0 Reviews)