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
2019-05-02Merge commit '1e56173515826aa4d680d3b216d80a3879ed1c68'James Almer
* commit '1e56173515826aa4d680d3b216d80a3879ed1c68': rtsp: add pkt_size option Merged-by: James Almer <jamrial@gmail.com>
2019-04-15rtsp: add pkt_size optionTristan Matthews
This allows users to specify an upper limit on the size of outgoing packets when publishing via RTSP. Signed-off-by: Martin Storsjö <martin@martin.st>
2019-03-25avformat/rtsp: Add https tunneling supportJun Li
Add https based tunneling for RTSP/RTP. Tested on Axis and Bosch cameras. Https is widely used for security consideration.
2018-02-11lavf/rtpdec: Constify several pointers.Carl Eugen Hoyos
Fixes two warnings: libavformat/rtpdec.c:155:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] libavformat/rtpdec.c:168:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
2017-10-04Merge commit '79331df362fb05a0d04ca9489c87e5b80077a3f4'James Almer
* commit '79331df362fb05a0d04ca9489c87e5b80077a3f4': rtsp: Lazily set up the pollfd array once Merged-by: James Almer <jamrial@gmail.com>
2017-02-28rtsp: Lazily set up the pollfd array onceLuca Barbato
2016-06-21Merge commit 'bc2a32969eb4db17677971def5ad5b936d9d1648'Clément Bœsch
* commit 'bc2a32969eb4db17677971def5ad5b936d9d1648': rtsp: Parse SSRC attributes in the SDP Merged-by: Clément Bœsch <u@pkh.me>
2016-05-11rtsp: Parse SSRC attributes in the SDPMartin Storsjö
When feeding input RTP packets to the depacketizer via custom IO, it needs to pick the right stream using the payload type for RTP packets, and using the SSRC for RTCP packets. If the first packet is an RTCP packet, we don't (currently) know the SSRC yet and thus can't pick the right RTP depacketizer to handle it. By parsing the SSRC attribute in the SDP, we can map initial RTCP packets to the right stream. Signed-off-by: Martin Storsjö <martin@martin.st>
2016-02-22urlprotocol: receive a list of protocols from the callerAnton Khirnov
This way, the decisions about which protocols are available for use in any given situations can be delegated to the caller.
2015-11-29Merge commit '2c17fb61ced2059034856a6c6cd303014aed01fe'Hendrik Leppkes
* commit '2c17fb61ced2059034856a6c6cd303014aed01fe': rtsp: Log getaddrinfo failures Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-11-25rtsp: Log getaddrinfo failuresLuca Barbato
And forward the logging contexts when needed.
2015-04-01Merge commit 'e3ec6fe7bb2a622a863e3912181717a659eb1bad'Michael Niedermayer
* commit 'e3ec6fe7bb2a622a863e3912181717a659eb1bad': rtsp: Add a buffer_size option Conflicts: libavformat/rtsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-01rtsp: Add a buffer_size optionLuca Barbato
And forward it to rtp and udp. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-02-22rtsp: parse lang attribute in SDPGilles Chanteperdrix
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-13avformat/rtsp: parse lang attribute in SDPGilles Chanteperdrix
Reviewed-by: Thomas Volkert <silvo@gmx.net> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10Merge commit '8b2e9636c57b22582143467a8a06b509b47b92f9'Michael Niedermayer
* commit '8b2e9636c57b22582143467a8a06b509b47b92f9': rtsp: Support tls-encapsulated RTSP Conflicts: libavformat/rtsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10rtsp: Support tls-encapsulated RTSPLuca Barbato
2014-03-05Add "prefer_tcp" flag to "rtsp_flags"Andrey Utkin
If set, and if TCP is available as RTSP RTP transport, then TCP will be tried first as RTP transport. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-01Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: rtspenc: Make sure BYE packets are sent before TEARDOWN Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-01rtspenc: Make sure BYE packets are sent before TEARDOWNMartin Storsjö
Also make sure the BYE packets are sent at all when using TCP interleaved transport. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-08-14Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: sdp: Add an option for sending RTCP packets to the source of the last packets Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-14sdp: Add an option for sending RTCP packets to the source of the last packetsMartin Storsjö
An SDP description normally only contains the target IP address and port for the packets. This means that we don't really have any clue where to send the RTCP RR packets - previously they're sent to the destination IP written in the SDP (at the same port), which rarely is the actual peer. And if the source for the packets is on a different port than the destination, it's never correct. With a new option, we can choose to send the packets to the address that the latest packet on each socket arrived from. --- Some may even argue that this should be the default - perhaps, but I'd rather keep it optional at first. Additionally, I'm not sure if sending RTCP RR directly back to the source is desireable for e.g. multicast. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-30Merge commit '1f57d60129b0e297cd197c6031c4439b30a6b503'Michael Niedermayer
* commit '1f57d60129b0e297cd197c6031c4439b30a6b503': rtsp: Support RFC4570 (source specific multicast) more properly. Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-29rtsp: Support RFC4570 (source specific multicast) more properly.Ed Torbett
Add support for domain names, for multiple source addresses, for exclusions, and for session level specification of addresses. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-20Merge commit '36fb0d02a1faa11eaee51de01fb4061ad6092af9'Michael Niedermayer
* commit '36fb0d02a1faa11eaee51de01fb4061ad6092af9': rtsp: Support multicast source filters (RFC 4570) rtpproto: Check the source IP if one single source has been specified rtpproto: Support IGMPv3 source specific multicast inclusion Conflicts: libavformat/rtpproto.c libavformat/rtsp.c libavformat/rtsp.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-19rtsp: Support multicast source filters (RFC 4570)Ed Torbett
This supports inclusion of one single IP address for now, at the media level. Specifying the filter at the session level (instead of at the media level), multiple source addresses, exclusion, or using FQDNs instead of plain IP addresses is not supported (yet at least). Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-18avformat/rt*p: Joining a SSM multicast group using an SDP (Issue #2171)Ed Torbett
Passes Source-Specific Multicast parameters read from an sdp file through to the UDP socket code, allowing source-specific multicast streams to be correctly received. As an integral part of this change, additional checking (currently only enabled in the case of SSM streams, but probably useful in similar scenarios) has been added to the RTP protocol handler to distinguish UDP packets arriving from multiple sources to the same port and process only the expected packets (those transmitted from the expected UDP source address). This resolves an issue identified when multiple instances of FFmpeg subscribe to different Source-Specific Multicast streams but with each sharing the same destination port. Signed-off-by: Edward Torbett <ed.torbett@simulation-systems.co.uk> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12Supply a User-Agent header when opening rtsp streams.Carl Eugen Hoyos
Some rtsp servers like the IP Cam IcyBox IB-CAM2002 need it. Fixes ticket #2761. Reported, analyzed and tested by trac user imavra.
2013-04-08rtsp: add option to set the socket timeout of the lower protocol.Michael Niedermayer
Fixes Ticket2294 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-15Merge commit '2f3bada63e57345329c4f9b48e9b81b5cfc03d05'Michael Niedermayer
* commit '2f3bada63e57345329c4f9b48e9b81b5cfc03d05': lavf: Add a protocol for SRTP encryption/decryption rtsp: Support decryption of SRTP signalled via RFC 4568 (SDES) Conflicts: libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-15rtsp: Support decryption of SRTP signalled via RFC 4568 (SDES)Martin Storsjö
This only takes care of decrypting incoming packets; the outgoing RTCP packets are not encrypted. This is enough for some use cases, and signalling crypto keys for use with outgoing RTCP packets doesn't fit as simply into the API. If the SDP demuxer is hooked up with custom IO, the return packets can be encrypted e.g. via the SRTP protocol. If the SRTP keys aren't available within the SDP, the decryption can be handled externally as well (when using custom IO). Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-09Merge commit '86d9181cf41edc3382bf2481f95a2fb321058689'Michael Niedermayer
* commit '86d9181cf41edc3382bf2481f95a2fb321058689': rtpdec: Support sending RTCP feedback packets Conflicts: libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08rtpdec: Support sending RTCP feedback packetsMartin Storsjö
This sends NACK for missed packets and PLI (picture loss indication) if a depacketizer indicates that it needs a new keyframe, according to RFC 4585. This is only enabled if the SDP indicated that feedback is supported (via the AVPF or SAVPF profile names). The feedback packets are throttled to a certain maximum interval (currently 250 ms) to make sure the feedback packets don't eat up too much bandwidth (which might be counterproductive). The RFC specifies a more elaborate feedback packet scheduling. The feedback packets are currently sent independently from normal RTCP RR packets, which is not totally spec compliant, but works fine in the environments I've tested it in. (RFC 5506 allows this, but requires a SDP attribute for enabling it.) Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-04Merge commit 'e96406eda4f143f101bd44372f7b2d542183000a'Michael Niedermayer
* commit 'e96406eda4f143f101bd44372f7b2d542183000a': rtsp: Add support for depacketizing RTP data via custom IO Conflicts: libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-03rtsp: Add support for depacketizing RTP data via custom IOMartin Storsjö
To use this, set sdpflags=custom_io to the sdp demuxer. During the avformat_open_input call, the SDP is read from the AVFormatContext AVIOContext (ctx->pb) - after the avformat_open_input call, during the av_read_frame() calls, the same ctx->pb is used for reading packets (and sending back RTCP RR packets). Normally, one would use this with a read-only AVIOContext for the SDP during the avformat_open_input call, then close that one and replace it with a read-write one for the packets after the avformat_open_input call has returned. This allows using the RTP depacketizers as "pure" demuxers, without having them tied to the libavformat network IO. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-10-22Merge commit 'c3e15f7b39aac2012f09ee4ca86d2bc674ffdbd4'Michael Niedermayer
* commit 'c3e15f7b39aac2012f09ee4ca86d2bc674ffdbd4': rtpdec: Don't pass a non-AVClass pointer as log context rtsp: Update a comment to the current filename scheme avcodec: handle AVERROR_EXPERIMENTAL avutil: Add AVERROR_EXPERIMENTAL avcodec: prefer decoders without CODEC_CAP_EXPERIMENTAL Conflicts: doc/APIchanges ffmpeg.c libavcodec/utils.c libavformat/rtpdec.c libavutil/error.c libavutil/error.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-22rtsp: Update a comment to the current filename schemeMartin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-10-19Merge commit '1cd432e167b1a80853760c89a33606e2b5f229c2'Michael Niedermayer
* commit '1cd432e167b1a80853760c89a33606e2b5f229c2': configure: fix libcdio check rtsp: Allow setting the reordering buffer size via an AVOption rtsp: Vertically align a constant definition rtp: Update the check for distinguishing between RTP and RTCP aac: fix build with hardcoded tables fate: dependencies for screen codec tests riff: Move functions around to be covered by appropriate #ifdefs Conflicts: configure tests/fate/screen.mak Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-19rtsp: Allow setting the reordering buffer size via an AVOptionMartin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-10-19rtsp: Vertically align a constant definitionMartin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-09Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: mpegvideo: reduce excessive inlining of mpeg_motion() mpegvideo: convert mpegvideo_common.h to a .c file build: factor out mpegvideo.o dependencies to CONFIG_MPEGVIDEO Move MASK_ABS macro to libavcodec/mathops.h x86: move MANGLE() and related macros to libavutil/x86/asm.h x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h aacdec: Don't fall back to the old output configuration when no old configuration is present. rtmp: Add message tracking rtsp: Support mpegts in raw udp packets rtsp: Support receiving plain data over UDP without any RTP encapsulation rtpdec: Remove an unused include rtpenc: Remove an av_abort() that depends on user-supplied data vsrc_movie: discourage its use with avconv. avconv: allow no input files. avconv: prevent invalid reads in transcode_init() avconv: rename OutputStream.is_past_recording_time to finished. Conflicts: configure doc/filters.texi ffmpeg.c ffmpeg.h libavcodec/Makefile libavcodec/aacdec.c libavcodec/mpegvideo.c libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-09rtsp: Support mpegts in raw udp packetsMartin Storsjö
This is basically the same way as mpegts packets are parsed in rtpdec.c. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-09rtsp: Support receiving plain data over UDP without any RTP encapsulationMartin Storsjö
EvoStream Media Server can serve data in this format, and VLC/live555 already supports it. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-12Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: configure: Check for the math function rint TechSmith Screen Codec 2 decoder rtsp: Add listen mode rtsp: Make rtsp_open_transport_ctx() non-static rtsp: Move rtsp_read_close rtsp: Parse the mode=receive/record parameter in transport lines Conflicts: Changelog libavcodec/avcodec.h libavcodec/version.h libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-10rtsp: Add listen modeJordi Ortiz
This makes the RTSP demuxer act as a server, listening for an incoming connection. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-10rtsp: Make rtsp_open_transport_ctx() non-staticJordi Ortiz
This is required for the upcoming RTSP listen mode. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-10rtsp: Parse the mode=receive/record parameter in transport linesJordi Ortiz
We need to support the nonstandard mode=receive, for compatibility with older libavformat clients. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-05-10Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (27 commits) libxvid: Give more suitable names to libxvid-related files. libxvid: Separate libxvid encoder from libxvid rate control code. jpeglsdec: Remove write-only variable in ff_jpegls_decode_lse(). fate: cosmetics: lowercase some comments fate: Give more consistent names to some RealVideo/RealAudio tests. lavfi: add avfilter_get_audio_buffer_ref_from_arrays(). lavfi: add extended_data to AVFilterBuffer. lavc: check that extended_data is properly set in avcodec_encode_audio2(). lavc: pad last audio frame with silence when needed. samplefmt: add a function for filling a buffer with silence. samplefmt: add a function for copying audio samples. lavr: do not try to copy to uninitialized output audio data. lavr: make avresample_read() with NULL output discard samples. fate: split idroq audio and video into separate tests fate: improve dependencies fate: add convenient shorthands for ea-vp6, libavcodec, libavutil tests fate: split some combined tests into separate audio and video tests fate: fix dependencies for probe tests mips: intreadwrite: fix inline asm for gcc 4.8 mips: intreadwrite: remove unnecessary inline asm ... Conflicts: cmdutils.h configure doc/APIchanges doc/filters.texi ffmpeg.c ffplay.c libavcodec/internal.h libavcodec/jpeglsdec.c libavcodec/libschroedingerdec.c libavcodec/libxvid.c libavcodec/libxvid_rc.c libavcodec/utils.c libavcodec/version.h libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/buffersink.h tests/Makefile tests/fate/aac.mak tests/fate/audio.mak tests/fate/demux.mak tests/fate/ea.mak tests/fate/image.mak tests/fate/libavutil.mak tests/fate/lossless-audio.mak tests/fate/lossless-video.mak tests/fate/microsoft.mak tests/fate/qt.mak tests/fate/real.mak tests/fate/screen.mak tests/fate/video.mak tests/fate/voice.mak tests/fate/vqf.mak tests/ref/fate/ea-mad tests/ref/fate/ea-tqi Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08rtsp: Add content-type message header parsingJordi Ortiz
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-01-23Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (25 commits) riff: fix invalid av_freep() calls on EOF in ff_read_riff_info pam: Fix a typo that broke writing and reading PAM files. mxfdec: fix memleak on av_realloc failures mxfdec: Do not parse slices or DeltaEntryArrays. mxfdec: hybrid demuxing/seeking solution mxfdec: Add Avid's essence element key. mfxdec: Separate mxf_essence_container_uls for audio and video. mxfdec: Compute packet offsets properly. mxfdec: Use MaterialPackage - Track - TrackID instead of the system_item hack. mxfdec: use av_dlog() for 'no corresponding source package found' mxfdec: Make mxf->partitions sorted by offset. mxfdec: parse ThisPartition mxfdec: Speed up metadata and index parsing. mxfdec: Make sure DataDefinition is consistent between material track and source track. mxfdec: add EssenceContainer UL found in 0001GL00.MXF.A1.mxf_opatom.mxf mxfdec: Add hack that adjusts the n_delta calculation when system items are present. mxfdec: Parse IndexTableSegments and convert them into AVIndexEntry arrays. mxfdec: Move FooterPartition to MXFContext and make sure it is never zero. mxfdec: check return value of avio_seek mxfdec: skip to end of structural sets ... Conflicts: configure libavcodec/pnm.c libavformat/mxfdec.c libavformat/riff.c libavformat/rtsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>