[Live-devel] Live555 Streaming from a live source
Sagi Ben Moshe
sagi at netvision.net.il
Thu Jul 8 13:53:06 PDT 2010
Hi,
We are trying to stream from a live source with Live555.
We implement our own DeviceSource class. In this class we implement
doGetNextFrame in the following (logic) way. We remove all the unnecessary
implementation details so you can see the idea
If no frame is available do the following
nextTask() =
envir().taskScheduler().scheduleDelayedTask(30000,(TaskFunc*)nextTime,
this);
If a frame is available do the following
If (fFrameSize < fMaxSize)
{
memcpy(fTo, Buffer_getUserPtr(hEncBuf) ,fFrameSize); // copy the frame to
Live555
nextTask() =
envir().taskScheduler().scheduleDelayedTask(0,(TaskFunc*)FramedSource::after
Getting, this);
}
else
{
What should we do? (We do not understand what should we do in this option)
}
As you can see we would like to feed the Live555 frame by frame from the
live source. However, after some calls of the function doGetNextFrame the
fMaxSize is smaller than fFrameSize and the application is in deadlock
state.
We do not understand what should we do in order to eliminate this state.
We can give part of a frame to Live555 but then it means that we are not
going to feed the Live555 library in frame by frame scenario. (We can build
a byte buffer between the live source and live555 but we do not sure it is
the right way)
Please let us know what is the preferred way of handing this issue
Thanks,
Sagi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20100708/6a0d2814/attachment.html>
More information about the live-devel
mailing list