Hello,

I am trying to build an RTSP server using liveMedia to stream H.264 in real 
time from a live encoder. In essence, as soon as I try to connect with VLC, 
liveMedia abort()s with the following message:
FramedSource[0xbe838]::getNextFrame(): attempting to read more than once at the 
same time!

I am using live555-latest.tar.gz, downloaded from the live555 website on 
27/08/2014.

Here is the stack trace:
(gdb) bt
#0  FramedSource::getNextFrame (this=0xbe828, to=0xbeb78 
"\361s\177\211܂\257\320ΝЁG\372BZ%@u\265\033}\"?(\262k\034݆\362n\215", 
maxSize=201248,
    afterGettingFunc=0x129bc <MultiFramedRTPSink::afterGettingFrame(void*, 
unsigned int, unsigned int, timeval, unsigned int)>, 
afterGettingClientData=0xbe9d0,
    onCloseFunc=0x12100 <MultiFramedRTPSink::ourHandleClosure(void*)>, 
onCloseClientData=0xbe9d0) at FramedSource.cpp:65
#1  0x000122d8 in MultiFramedRTPSink::packFrame (this=0xbe9d0) at 
MultiFramedRTPSink.cpp:216
#2  0x00012b68 in MultiFramedRTPSink::buildAndSendPacket (this=0xbe9d0, 
isFirstPacket=0 '\000') at MultiFramedRTPSink.cpp:191
#3  0x00012b98 in MultiFramedRTPSink::sendNext (firstArg=0xbe9d0) at 
MultiFramedRTPSink.cpp:414
#4  0x0007d404 in AlarmHandler::handleTimeout (this=0xefe28) at 
BasicTaskScheduler0.cpp:34
#5  0x00079e58 in DelayQueue::handleAlarm (this=0xb059c) at DelayQueue.cpp:187
#6  0x00078f24 in BasicTaskScheduler::SingleStep (this=0xb0598, maxDelayTime=0) 
at BasicTaskScheduler.cpp:212
#7  0x0007be9c in BasicTaskScheduler0::doEventLoop (this=0xb0598, 
watchVariable=0xb55d8 "") at BasicTaskScheduler0.cpp:80
#8  0x0000bcd0 in CVideoSubsession::getAuxSDPLine (this=0xb5518, 
rtpSink=0xbe9d0, inputSource=0xbe828) at videosubsession.cpp:79
#9  0x00036abc in OnDemandServerMediaSubsession::setSDPLinesFromRTPSink 
(this=0xb5518, rtpSink=0xbe9d0, inputSource=0xbe828, estBitrate=1074845076)
    at OnDemandServerMediaSubsession.cpp:390
#10 0x000379bc in OnDemandServerMediaSubsession::sdpLines (this=0xb5518) at 
OnDemandServerMediaSubsession.cpp:76
#11 0x0003502c in ServerMediaSession::generateSDPDescription (this=0xb5400) at 
ServerMediaSession.cpp:236
#12 0x0001df2c in RTSPServer::RTSPClientConnection::handleCmd_DESCRIBE 
(this=0xb9860, urlPreSuffix=0xbe905998 "", urlSuffix=0xbe9058d0 "test",
    fullRequestStr=0xb9884 "DESCRIBE rtsp://192.168.0.8/test RTSP/1.0\r\nCSeq: 
3\r\nUser-Agent: LibVLC/2.1.5 (LIVE555 Streaming Media v2014.05.27)\r\nAccept: 
application/sdp\r\n\r\n") at RTSPServer.cpp:524
#13 0x0001aef0 in RTSPServer::RTSPClientConnection::handleRequestBytes 
(this=0xb9860, newBytesRead=143) at RTSPServer.cpp:988
#14 0x0001bb54 in RTSPServer::RTSPClientConnection::incomingRequestHandler1 
(this=0xb9860) at RTSPServer.cpp:788
#15 0x0001bb8c in RTSPServer::RTSPClientConnection::incomingRequestHandler 
(instance=0xb9860) at RTSPServer.cpp:781
#16 0x00078cf8 in BasicTaskScheduler::SingleStep (this=0xb0598, maxDelayTime=0) 
at BasicTaskScheduler.cpp:171
#17 0x0007be9c in BasicTaskScheduler0::doEventLoop (this=0xb0598, 
watchVariable=0x0) at BasicTaskScheduler0.cpp:80
#18 0x0000b7f0 in main () at rtsp.cpp:118
(gdb)

I derived the FramedSource and OnDemandServerMediaSubsession classes to 
implement my code, getting inspirations from both DeviceSource.cpp and 
wis-streamer.
I can provide more information and/or source code, just let me know what would 
be useful.

Thank you so much for your help!

  Fabrice

_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to