Hello community, here is the log from the commit of package live555 for openSUSE:Factory checked in at 2015-10-19 22:52:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/live555 (Old) and /work/SRC/openSUSE:Factory/.live555.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "live555" Changes: -------- --- /work/SRC/openSUSE:Factory/live555/live555.changes 2015-02-06 10:17:08.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.live555.new/live555.changes 2015-10-20 00:06:22.000000000 +0200 @@ -1,0 +2,355 @@ +Fri Oct 16 20:24:23 UTC 2015 - [email protected] + +- Update to version 2015.10.12: + * The change that we made to the "ProxyServerMediaSession" code + in version 2015.07.31 (to reset the proxy server's state if + a back-end "SETUP" command fails) was too aggressive; it was + deleting the "ProxyServerMediaSubsession" object. This was + a problem, because "SETUP" commands can be called from within + "ProxyServerMediaSubsession::createNewStreamSource()". + Instead, we now deal with a failed back-end "SETUP" command + simply by resetting the 'back-end' connection. (Thanks to + Hardik Sangani for reporting this issue.) +- 2015.09.24: + * Fixed a bug in "RTSPClient" that could cause a crash if the + TCP connection was lost while resending a RTSP command. + (Thanks to ChaSeop Im for reporting this.) + * Moved some more generic 'media server' functionality from + "RTSPServer" to its parent class "GenericMediaServer". + * Added a new pure virtual function "getRTPSinkandRTCP()" + to "ServerMediaSubsession" to allow callers to get ('const') + access to a stream's "RTPSink" and/or "RTCPInstance" (and + thus their corresponding "Groupsock" objects) after the + stream has been created (using "getStreamParameters()". + * Updated "Groupsock" to allow for the possibility of there + being more than one 'destRecord' for each sessionId. + (This is something that doesn't happen in the normal case; + it's only a special case for WebRTC.) +- 2015.08.07: + * If a "RTCPInstance" happens to have both a source and a sink + (an unusual situation), we now include both "SR" and "RR" + reports in each outgoing RTCP report packet. + * When a "RTPSink" is being closed, we no longer turn off + background reading on its 'groupsock' (because, being a + "RTPSink", we never turned it on), just in case the + 'groupsock' is also being shared with something else + (e.g., a "RTPSource") that does background read handling). +- 2015.08.06: + * Fixed a bug that would cause the destruction of a + "RTCPInstance" that was sharing a 'groupsock' + with a "RTPSource" (i.e., for multiplexed RTP and RTCP) to + stop the "RTPSource" from continuing to receive incoming RTP + packets. This normally wasn't a major problem, because the + destruction of the "RTCPInstance" was usually followed + immediately by the destruction of the "RTPSource". + However, it's also possible for the "RTPSource" to stay alive + long after the "RTCPInstance" is deleted; in this case things + will now work correctly. +- 2015.07.31: + * Fixed a minor memory leak in the "ProxyServerMediaSession" + code ("PresentationTimeSessionNormalizer"s and + "PresentationTimeSubsessionNormalizer"s weren't being deleted + properly). (Thanks to Dnyanesh Gate for reporting this.) + * Made the "ProxyServerMediaSession" code a bit more + bullet-proof, by resetting the 'back-end' connection if a + "SETUP" command fails. (Thanks to Craig Matsuura for providing + a real-world example of "SETUP" failing.) + * Fixed the 'estimated bitrate' values in + "testMPEG1or2VideoReceiver.cpp" and + "testMPEG2TransportReceiver.cpp" to match those in the + corresponding "test*Streamer.cpp" files. + (Thanks to Alex Anderson for reporting this.) +- 2015.07.23: + * Fixed a potential buffer overflow bug in "RTSPServer". + (Thanks to "an anonymous researcher working with Beyond + Security's SecuriTeam Secure Disclosure" for discovering this.) +- 2015.07.19: + * Fixed a bug in "RTPInterface::sendDataOverTCP()"; it was + disabling transmission on its socket if the "send()" call + failed. We now do this only if the error was not "EAGAIN". + (Thanks to Erik Oomen for bringing this to our attention.) + * Changed "QuickTimeFileSink" to try to work around an issue with + QuickTime sometimes complaining about the frame number in the + last 'sync frame' being 'out of range'. + * Changed the parameter signature for + "ProxyServerMediaSession::createNew()" (and the + "ProxyServerMediaSession" constructor) to take a + "GenericMediaServer*" rather than a "RTSPServer" as parameter. + This makes it possible to create proxy servers that use protocols + other than RTSP at the 'front-end'. (The 'back-end' protocol will + still be RTSP, however.) + * Defined a new class "MediaTranscodingTable" that can be used to + generate "FramedFilter" (subclass) objects that perform media + transcoding. Added a parameter of this type (with default value + NULL) to the "ProxyServerMediaSession" constructor and + "createNew()" function. This makes it possible to - if you wish + - add transcoding functionality to a proxy server. (This feature + is still experimental, and might be changed in the future.) + * Added optional "initialPortNum" and "multiplexRTCPWithRTP" + parameters to the "ProxyServerMediaSession" constructor - to be + passed to the "ProxyServerMediaSubsession" objects that it creates. + This allows subclasses to change these parameters if they wish. + * Updated "ProxyServerMediaSession" to make it possible for + subclasses to create subclasses of "Groupsock" and/or + "RTCPInstance", if they wish. +- 2015.06.25: + * Changed the definition of the "doEventLoop()" "watchVariable" to + make it 'volatile'. (Ditto for the "fTriggersAwaitingHandling" + field in the "BasicTaskScheduler" implementation.) This is to + alleviate a concern about aggressive optimizing compilers + possibly generating incorrect code. (Thanks to Remi + Denis-Courmont for bringing this issue to our attention.) +- 2015.06.24: + * Updated the implementation of "GenericMediaServer" to move the + code that removes and deletes all "ClientConnection", + "ClientSession", and "ServerMediaS(ubs)ession" objects from the + "GenericMediaServer" destructor to a member function "cleanup()". + This member function MUST be called from the destructor of any + subclass of "GenericMediaServer". (Putting this code in the + destructor of "GenericMediaServer" itself was a bug, because the + "ClientConnection", "ClientSession", and + "ServerMediaS(ubs)ession" objects may themselves have been + subclassed, and there may be a problem deleting them after the + "GenericMediaServer" subclass destructor has already been called. + (Thanks to Christopher Benne for noting this.) + * Fixed the way that "RTSPClient" handles responses to + "GET_PARAMETER" to properly allow for possible additional + pipelined responses appearing afterwards. + (Thanks to Paul Clark for identifying this problem.) + * Moved the "ClientSession" liveness checking/timeout mechanism + from "RTSPServer" to its new abstract base class + "GenericMediaServer". (The API and functionality of the + "RTSPServer" class remains unchanged.) + * Updated the "OnDemandServerMediaSubsession" code to make it + possible for subclasses to create and use subclasses of + "RTCPInstance". + * Undid the change that we made to "RTSPClient.hh" in the + previous version. There is no longer a demonstrated need to + make "RTSPClient::connectToServer()" virtual. + * Made a syntactic change to "MatroskaFile.cpp" to eliminate + some compiler warnings. +- 2015.06.21: + * Updated "RTSPClient" to put "port=" rather than "client_port=" + in "Transport:" headers when requesting a multicast stream, + in accordance with RFC 2326. + (Thanks to Julian Scheel for noting this.) + * Updated "MultiFramedRTPSource" so that it doesn't deliver + 0-length frames to the downstream object - in case the + downstream object interprets this as being an error. + (Thanks to Julian Scheel for the suggestion.) + * Made the member function "RTSPClient::connectToServer()" + virtual, in response to a request from a developer who wanted + to reimplement this in their "RTSPClient" subclass. + * Changed the "Groupsock::output()" function to no longer + take a 'TTL' parameter. (Instead, we now use the TTL (usually + 255) that was provided when the "Groupsock" object was + created.) + * Cleaned up the "GroupEId" class that's used by "Groupsock". + (Previously, that class had some extra, experimental + functionality that turned out not to be useful.) + * Cleaned up the "destRecord" structure that's used in + "Groupsock" to represent the (possibly multiple) destinations + for each "Groupsock" object. + * Updated the "groupsock" library and + "OnDemandServerMediaSubsession" to better support (in some + future release) sockets whose destination endpoints are set + via STUN packet exchanges. +- 2015.06.11: + * Fixed a bug in "RTSPClient" that had accidentally been + introduced in version - 2015.06.04 that prevented "Session:" + headers from being included in some requests. +- 2015.06.10: + * Fixed the return type of the "createNewClientConnection()" + virtual function, redefined in + "RTSPServerSupportingHTTPStreaming". + * More changes to satisfy anal-retentive compilers. + * Removed the "DarwinInjector" code; that functionality has + not been supported for some time. +- 2015.06.09a: + * More changes to supposedly satisfy anal-retentive compilers. +- 2015.06.09: + * Added some "friend" declarations to "GenericMediaServer.hh" + and "RTSPServer.hh" in an attempt to placate an anal-retentive + Windows compiler. (Issue reported by Deanna Earley.) +- 2015.06.07: + * Restructured the "RTSPServer" class into an abstract base + class "GenericMediaServer" and a subclass "RTSPServer". + This makes it possible to develop other kinds of media server + that use the same "ServerMediaSession"/"ServerMediaSubsession" + objects to represent the stream(s) that they serve, but using + protocols other than RTSP. + * Added a new virtual function "createGroupsock" to + "OnDemandServerMediaSubsession". This makes it possible for + subclasses of "OnDemandServerMediaSubsession" to automatically + use subclasses of "Groupsock" (e.g., those that implement + STUN/DTLS). + * Moved the "ignoreSigPipeOnSocket()" function from + "RTSPCommon.hh" ("liveMedia" library) to "GroupsockHelper.hh" + ("groupsock" library), because the function is not specific to + RTSP. +- 2015.06.04: + * Added optional support for including the RTSP "Speed:" header + in "PLAY" requests. (Thanks to Sarma Kolavasi.) + * Updated the implementation of "setResultErrMsg()" in + "BasicUsageEnvironment" to work properly in Windows. + (Thanks to Stas Tsymbalov.) +- 2015.05.31: + * Updated the "ProxyServerMediaSession" code to recover better ++++ 158 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/live555/live555.changes ++++ and /work/SRC/openSUSE:Factory/.live555.new/live555.changes Old: ---- live.2015.01.27.tar.gz New: ---- live.2015.10.12.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ live555.spec ++++++ --- /var/tmp/diff_new_pack.oSkcvA/_old 2015-10-20 00:06:23.000000000 +0200 +++ /var/tmp/diff_new_pack.oSkcvA/_new 2015-10-20 00:06:23.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package live555 # -# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2013 Dominique Leuenberger, Amsterdam, The Netherlands # # All modifications and additions to the file contributed by third parties @@ -18,7 +18,7 @@ Name: live555 -Version: 2015.01.27 +Version: 2015.10.12 Release: 1.2 Summary: LIVE555 Streaming Media License: LGPL-2.1 ++++++ live.2015.01.27.tar.gz -> live.2015.10.12.tar.gz ++++++ ++++ 6102 lines of diff (skipped)
