Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-11-05Merge commit 'a490391157dcf4dc6b65352ec3eea2781dd0a404'Michael Niedermayer
* commit 'a490391157dcf4dc6b65352ec3eea2781dd0a404': rtmpproto: Ignore errors from the getStreamLength method Conflicts: libavformat/rtmpproto.c See: 09711545f5d256bd3ac77004d123dae36c5db8f9 Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-05rtmpproto: Ignore errors from the getStreamLength methodMartin Storsjö
It is never an error if this method failed. If rt->live was explicitly set to 0 (known to be a recorded file), print it as a warning, otherwise print it as a debug message. Based on a patch by Michael Niedermayer. Signed-off-by: Martin Storsjö <martin@martin.st>
2014-11-04avformat/rtmpproto: Do not fail when the length cannot be determined for ↵Michael Niedermayer
live streams Fixes Ticket4071 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-20rtmpproto: remove dead codeVittorio Giovara
Expression already evaluated before, redundant since 053386864219eccbcca1886c55f902f9555428a5. Bug-Id: CID 732199
2014-10-19rtmpproto: Don't mistake app for playpath.Kacper Michajłow
For URLs "rtmp://server[:port]/foo" determine what `foo` refers to. If application name has been defined by the user assume that `foo` is a playpath, otherwise assume application name. Signed-off-by: Kacper Michajłow <kasper93@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-19Merge commit '0034314a69e76a53534a74cceef865cfcb7b42cc'Michael Niedermayer
* commit '0034314a69e76a53534a74cceef865cfcb7b42cc': rtmp: Always call rtmp_close() on rtmp_open() failure Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-18rtmp: Always call rtmp_close() on rtmp_open() failureAlexander Drozdov
Prevent possible memory leaks. Connect to nginx and request a non-existent resource to trigger the issue. CC: libav-stable@libav.org Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Uwe L. Korn <uwelk@xhochy.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-10-18Merge commit '9bec3ca2b878c83d2337bc6095bd51c3e3f8eef0'Michael Niedermayer
* commit '9bec3ca2b878c83d2337bc6095bd51c3e3f8eef0': rtmpproto: Add pause support Conflicts: libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-18Merge commit 'f4cd8b80b9cb2a9a4112d8abb1d3b93cd3b4e467'Michael Niedermayer
* commit 'f4cd8b80b9cb2a9a4112d8abb1d3b93cd3b4e467': rtmpproto: Track last received timestamp Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-18rtmpproto: Add pause supportUwe L. Korn
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-18rtmpproto: Track last received timestampUwe L. Korn
Some RTMP commands need the most recent timestamp as their parameter, so keep track of it. This must be the most recent one and not e.g. the max received timestamp as it can decrease again through seeking. Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-17Merge commit 'e65c776d18dc14df8a279e017760862f9fc8763b'Michael Niedermayer
* commit 'e65c776d18dc14df8a279e017760862f9fc8763b': rtmpproto: Add getStreamLength call to query duration Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-17Merge commit '324b23dde1bc8638959eb32419c95a93906db272'Michael Niedermayer
* commit '324b23dde1bc8638959eb32419c95a93906db272': rtmpproto: Add function to read a number response Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-17rtmpproto: Add getStreamLength call to query durationUwe L. Korn
In (non-live) streams with no metadata, the duration of a stream can be retrieved by calling the RTMP function getStreamLength with the playpath. The server will return a positive duration upon the request if the duration is known, otherwise either no response or a duration of 0 will be returned. Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-17rtmpproto: Add function to read a number responseUwe L. Korn
Packets that contain a number as a result to a rtmp function call are structured the same way (String, Number, Null, Number). This new method also includes more bounds checks to better handle packets that are not structured as expected. Signed-off-by: Martin Storsjö <martin@martin.st>
2014-10-16Merge commit '79dd756e143a54efc25d64e90505f0dca6cbc4ec'Michael Niedermayer
* commit '79dd756e143a54efc25d64e90505f0dca6cbc4ec': rtmpproto: Fix a typo Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-15rtmpproto: Fix a typoMartin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-09-30RTMP: fix FD leak in rtmp_open()Alexander Drozdov
If we setup AVIO interrupt callback and it will be returns 1 on socket timeouts and we try to connect to non-existing streams on some servers (like nginx-rtmp) we got FD leak. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15Merge commit '4b1f5e5090abed6c618c8ba380cd7d28d140f867'Michael Niedermayer
* commit '4b1f5e5090abed6c618c8ba380cd7d28d140f867': cosmetics: Write NULL pointer inequality checks more compactly Conflicts: libavcodec/dvdsubdec.c libavcodec/h263dec.c libavcodec/libxvid.c libavcodec/rv10.c libavcodec/utils.c libavformat/format.c libavformat/matroskadec.c libavformat/segment.c libavutil/opt.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15cosmetics: Write NULL pointer inequality checks more compactlyGabriel Dume
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-06-02Merge commit '59cb5747ec3c5cd842b94e574c37889521c97cc4'Michael Niedermayer
* commit '59cb5747ec3c5cd842b94e574c37889521c97cc4': rtmpproto: read metadata to set correct FLV header Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-02rtmpproto: read metadata to set correct FLV headerUwe L. Korn
In the presence of no metadata, do not set any stream flag in the FLV header but let the demuxer handle the detection and creation of streams as data arrives. Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-17rtmpproto: info out for unsupported auth varsReynaldo H. Verdejo Pinochet
Should aid debugging badly formatted URLs Signed-off-by: Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
2014-05-17rtmpproto: avoid setting auth var value if nullReynaldo H. Verdejo Pinochet
Use default values if parsed variable is found not to have any value. Avoids crashing at strlen for salt/user on the auth call afterwards and needless NULL assignments for the rest (default is already NULL for those). Should fix Coverity Scan issues #966644 and #966645 Signed-off-by: Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
2014-05-09Merge commit '0bacfa8d37710b904897e7cbeb8d6f96fbf75e2e'Michael Niedermayer
* commit '0bacfa8d37710b904897e7cbeb8d6f96fbf75e2e': rtmpproto: Check the buffer sizes when copying app/playpath strings Conflicts: libavformat/rtmpproto.c See: 0c2a6dabced53b4df57aedf47f0c1b8233035fed See: 02ac3398eb52679301028c2fd3ebad1b6261b4da Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-08avformat/rtmpproto: add FFMIN() to av_strlcpy()Michael Niedermayer
Suggested-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-08rtmpproto: Check the buffer sizes when copying app/playpath stringsMartin Storsjö
As pointed out by Reimar Döffinger. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
2014-05-07Merge commit '7ce3bd9614717e545af8fb8455032c807e389b78'Michael Niedermayer
* commit '7ce3bd9614717e545af8fb8455032c807e389b78': rtmpproto: Support alternative slist parameter in rtmp URLs Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-07rtmpproto: Support alternative slist parameter in rtmp URLsUwe L. Korn
Support the URL scheme where the playpath is in an RTMP URL is passed as the slist argument and the app is given infront of the query part of the URL: rtmp://host[:port]/[app]?slist=[playpath] (other arguments in the query part are stripped as they are not used) Signed-off-by: Martin Storsjö <martin@martin.st>
2014-04-14avformat/rtmpproto: Added handling of an initial RTMP chunk size packet.Stephan Soller
Fixes ticket #2911. Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-14Merge commit '6477139721f559b26eafd415e23e13ea2b0c27e1'Michael Niedermayer
* commit '6477139721f559b26eafd415e23e13ea2b0c27e1': rtmpproto: Make sure to pass on the error code if read_connect failed Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-14rtmpproto: Handle RTMP chunk size packets before the connect packetStephan Soller
In all other cases where ff_rtmp_packet_read is used, the packet returned is passed to rtmp_parse_result more or less immediately. In this single case, the content of the packet was required to be a connect packet. Some clients, e.g. Open Broadcaster Software, send a chunk size packet before the connect packet. If the first packet is a chunk size packet, handle it and read another one, requiring this to be a connect packet instead. Signed-off-by: Martin Storsjö <martin@martin.st>
2014-04-14rtmpproto: Make sure to pass on the error code if read_connect failedMartin Storsjö
Previously, if read_connect failed, the ret variable was unmodified and had the value 0, indicating success, which then was returned from the rtmp_open function, even though it actually failed. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-21Merge commit '24eb3c791606fe98a1591c13a8b2ba6c342bb3b5'Michael Niedermayer
* commit '24eb3c791606fe98a1591c13a8b2ba6c342bb3b5': rtmpproto: Avoid using uninitialized memory Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-20rtmpproto: Avoid using uninitialized memoryMartin Storsjö
If the url ends with .flv, we stripped it but didn't initialize rt->playpath, doing av_strlcat on an uninitialized buffer. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-11-03rtmpproto: Reorder conditions to help dead code eliminationVittorio Giovara
This makes sure that these branches are eliminated properly with clang with optimizations disabled.
2013-10-14Merge commit '84a125c4c28f3e3e215d2e6c32f7f0ec43bbc04c'Michael Niedermayer
* commit '84a125c4c28f3e3e215d2e6c32f7f0ec43bbc04c': rtmp: Allocate the prev_pkt arrays dynamically Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-14rtmp: Allocate the prev_pkt arrays dynamicallyMartin Storsjö
Normally, all channel ids are between 0 and 10, while they in uncommon cases can have values up to 64k. This avoids allocating two arrays for up to 64k entries (at a total of over 6 MB in size) each when most of them aren't used at all. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-04Merge commit 'cd818b3a5709b9b08bd5901cb8863a8b61be265e'Michael Niedermayer
* commit 'cd818b3a5709b9b08bd5901cb8863a8b61be265e': rtmpproto: Validate the embedded flv packet size before copying Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04Merge commit '8921e32f730c191543b84e61338bc9d549aa05a3'Michael Niedermayer
* commit '8921e32f730c191543b84e61338bc9d549aa05a3': rtmpproto: Readjust the end of the flv buffer if handle_metadata exited early Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04Merge commit '24fee95321c1463360ba7042d026dae021854360'Michael Niedermayer
* commit '24fee95321c1463360ba7042d026dae021854360': rtmpproto: Move the flv header/trailer addition to append_flv_data Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04Merge commit '72540e514ceaaed8ecb97ed63637b2a2a4447ab8'Michael Niedermayer
* commit '72540e514ceaaed8ecb97ed63637b2a2a4447ab8': rtmpproto: Clear the flv allocation size on reallocp failures Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04Merge commit '4d6d70292e91a7ef027824d731b6b6570ceabf2f'Michael Niedermayer
* commit '4d6d70292e91a7ef027824d731b6b6570ceabf2f': rtmpproto: Pass the 'live' parameter in the right unit Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04Merge commit 'a6b361325f2bfc8d9d4e5f761d6c1a07b209c4fb'Michael Niedermayer
* commit 'a6b361325f2bfc8d9d4e5f761d6c1a07b209c4fb': rtmpproto: Print the error code string if there's no description Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04rtmpproto: Validate the embedded flv packet size before copyingMartin Storsjö
This wasn't an issue prior to 58404738, when the whole RTMP packet was copied at once and the length of the individual embedded flv packets only were validated by the flv demuxer. Prior to this patch, this could lead to reads and writes out of bound. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-04rtmpproto: Readjust the end of the flv buffer if handle_metadata exited earlyMartin Storsjö
If the embedded flv packets were incomplete and we aborted the copying loop early, make sure the flv buffer is trimmed to only contain full packets. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-04rtmpproto: Move the flv header/trailer addition to append_flv_dataMartin Storsjö
update_offset is also called from handle_metadata, where the packet header sizes is already included in the size. Previously this lead to flv_data/flv_size including 15 uninitialized bytes at the end after each call to handle_metadata, making the flv demuxer lose sync with the stream. Also remove leftover copying in handle_metadata. This is a leftover from the refactoring in 5840473. (Previously this final mempcy was the one that copied all the packets at once, while this is done within the loop right now.) After making sure flv_size is set to the right size, this write was out of bounds. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-04rtmpproto: Clear the flv allocation size on reallocp failuresMartin Storsjö
This was overlooked in d872fb0f7 since I assumed all the realloc issues in the rtmp code was fixed already. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-04rtmpproto: Pass the 'live' parameter in the right unitMartin Storsjö
The current magic numbers passed are values in seconds, while the parameter itself should be passed over the wire in milliseconds. This makes (some/all?) live streams from Red5 work correctly, that previously returned StreamNotFound even with "-rtmp_live live". After this commit, the default 'any' also works on these streams. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-04rtmpproto: Print the error code string if there's no descriptionMartin Storsjö
On (certain streams/setups at least on) Red5, the description string actually is present, but empty. Therefore, first try loading the description, but if not found or empty, load the code string instead. The code string is quite understandable in most cases anyway (like "NetStream.Play.StreamNotFound"). Signed-off-by: Martin Storsjö <martin@martin.st>