Great, It works :)
There is still one error when we have a connected clients and we do
Media::close(...) for server.

 "live555proxyDLLNative.dll!RTSPClient::handleAlternativeRequestByte1(unsigned
char requestByte)  Line 1205 + 0x27 bytes C++
  live555proxyDLLNative.dll!RTSPClient::handleAlternativeRequestByte(void *
rtspClient, unsigned char requestByte)  Line 1196 C++
  live555proxyDLLNative.dll!SocketDescriptor::~SocketDescriptor()  Line 348
+ 0x14 bytes C++
  live555proxyDLLNative.dll!SocketDescriptor::`scalar deleting
destructor'()  + 0xf bytes C++
  live555proxyDLLNative.dll!SocketDescriptor::deregisterRTPInterface(unsigned
char streamChannelId)  Line 391 + 0x20 bytes C++
  live555proxyDLLNative.dll!deregisterSocket(UsageEnvironment & env, int
sockNum, unsigned char streamChannelId)  Line 159 C++
  live555proxyDLLNative.dll!RTPInterface::stopNetworkReading()  Line 274 +
0x1d bytes C++
  live555proxyDLLNative.dll!RTCPInstance::~RTCPInstance()  Line 185 C++
  live555proxyDLLNative.dll!RTCPInstance::`scalar deleting destructor'()  +
0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  live555proxyDLLNative.dll!MediaSubsession::deInitiate()  Line 807 + 0xf
bytes C++
  live555proxyDLLNative.dll!MediaSubsession::~MediaSubsession()  Line 602
C++
  live555proxyDLLNative.dll!MediaSubsession::`scalar deleting destructor'()
 + 0xf bytes C++
  live555proxyDLLNative.dll!MediaSession::~MediaSession()  Line 82 + 0x23
bytes C++
  live555proxyDLLNative.dll!MediaSession::`scalar deleting destructor'()  +
0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  live555proxyDLLNative.dll!ProxyServerMediaSession::~ProxyServerMediaSession()
 Line 91 + 0xc bytes C++
  live555proxyDLLNative.dll!ProxyServerMediaSession::`scalar deleting
destructor'()  + 0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  
live555proxyDLLNative.dll!RTSPServer::removeServerMediaSession(ServerMediaSession
* serverMediaSession)  Line 74 + 0x9 bytes C++
  live555proxyDLLNative.dll!RTSPServer::~RTSPServer()  Line 260 C++
  live555proxyDLLNative.dll!RTSPServer::`scalar deleting destructor'()  +
0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  live555proxyDLLNative.dll!DoLoop()  Line 50 + 0xc bytes C++"
There is call RTSPClient::handleAlternativeRequestByte1(...) for a
destroyed RTSPClient object.
Destructor call stack for this object:
       "live555proxyDLLNative.dll!RTSPClient::~RTSPClient()  Line 328 C++
  live555proxyDLLNative.dll!ProxyRTSPClient::~ProxyRTSPClient()  Line 206 +
0xf bytes C++
  live555proxyDLLNative.dll!ProxyRTSPClient::`scalar deleting destructor'()
 + 0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  live555proxyDLLNative.dll!ProxyServerMediaSession::~ProxyServerMediaSession()
 Line 90 + 0xc bytes C++
  live555proxyDLLNative.dll!ProxyServerMediaSession::`scalar deleting
destructor'()  + 0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  
live555proxyDLLNative.dll!RTSPServer::removeServerMediaSession(ServerMediaSession
* serverMediaSession)  Line 74 + 0x9 bytes C++
  live555proxyDLLNative.dll!RTSPServer::~RTSPServer()  Line 260 C++
  live555proxyDLLNative.dll!RTSPServer::`scalar deleting destructor'()  +
0xf bytes C++
  live555proxyDLLNative.dll!MediaLookupTable::remove(const char * name)
 Line 151 + 0x21 bytes C++
  live555proxyDLLNative.dll!Medium::close(UsageEnvironment & env, const
char * name)  Line 54 C++
  live555proxyDLLNative.dll!Medium::close(Medium * medium)  Line 59 + 0x17
bytes C++
  live555proxyDLLNative.dll!DoLoop()  Line 50 + 0xc bytes C++"


2012/11/29 Ross Finlayson <[email protected]>

> I found that in ProxyServerMediaSubSession.cpp:339 for
> fClientMediaSubsession destructor has already been called, although further
> we call fClientMediaSubsession.rtcpInstance(), which return 0x00000000.
>
>
> Sergei,
>
> Thanks again.  I have installed another new version (2012.11.29) of the
> code that should fix this bug.
>
>
> Ross Finlayson
> Live Networks, Inc.
> http://www.live555.com/
>
>
> _______________________________________________
> live-devel mailing list
> [email protected]
> http://lists.live555.com/mailman/listinfo/live-devel
>
>
_______________________________________________
live-devel mailing list
[email protected]
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to