void CH263plusVideoDXFrameSource::setPresentationTime()
{
// Check if this is the first frame we send
if (fPresentationTime.tv_sec == 0 && fPresentationTime.tv_usec == 0)
{
// This is the first frame, so we set the current time
gettimeofday
Hi Ross
I have been analyzing the feedback you have sent me. However I'm still stuck
with this same issue. Here is a short brief of what I'm doing:
In addition to what I had described in my first e-mail, I have an
H263plusVideoRTPSink instance which is constructed in the
CH263plusVideoDXServerMed
Thanks for the input Brett and Charlie, I upgraded my copy of VLC and it did make things better
now it appears to work if I have the server and VLC on the same system (i.e. rtsp://localhost/liveSource)
But if I try to stream across my local network the problem crops up again.
The frame rate
What should happened at the ImxDeviceSource::doGetNextFrame()?
1.Does the function should return only when a frame is valid (and
return the poiter and size)
No. Your "doGetNextFrame()" should *not* block. It should return
immediately, even if no frame is currently available for delivery.
Hi Dario.
I had the same problem and Alkassoum suggested the right way to solve it:
"If you are running your application under windows you might have the same
problem i had few months ago.
My problem was due to an windows OS limitation on the number of sockets that
can be open at any one time.
I'm using one process per stream to stream from RTSP server.
After creating 31 processes, On 32nd the debug says:
recvfrom() error:
Groupsock read failed:
This is almost certainly due to some limit (most likely in the number
of open files) in your OS, not an inherent limit in our software.
Ross,
I am still tyring to understand the live capture issue.
I imlemented the framer (H264LiveVideoStreamFramer) and the source
(ImxDeviceSource)
Now, when the following chain is being called:
H264FUAFragmenter::doGetNextFrame() ->
H264LiveVideoStreamFramer::doGetNextFrame() ->
ImxDeviceSource:
Hi.
I'm using one process per stream to stream from RTSP server.
After creating 31 processes, On 32nd the debug says:
recvfrom() error:
Groupsock read failed:
It dosn't matter if there is 4 processes handling 8 streams or 32 processes
alltogether,
the limit is 31.
Any idea on how to fix this?