summaryrefslogtreecommitdiff
path: root/libavformat/rtsp.c
Commit message (Collapse)AuthorAge
* Add RTP/ASF header parsing, which is part of the SDP of these streams. SeeRonald S. Bultje2009-03-17
| | | | | | patch discussion in "[PATCH] RTSP-MS 10/15: ASF header parsing" thread. Originally committed as revision 18023 to svn://svn.ffmpeg.org/ffmpeg/trunk
* rtpmap is case-insensitive, see comment from Luca in "[PATCH] rtsp.c:Ronald S. Bultje2009-03-07
| | | | | | keep-alive" thread. Originally committed as revision 17862 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Oops, very silly typo.Ronald S. Bultje2009-03-06
| | | | Originally committed as revision 17853 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split rtsp_send_cmd() into two functions, one for the actual sending of theRonald S. Bultje2009-03-04
| | | | | | | | | command and a second, new function to read the reply to this command. This will make it possible to read server notices that are not in response to a command in future versions, such as EOS or interrupt notices. See "[PATCH] rtsp.c: split rtsp_send_cmd() in a send- and a receive-function" thread. Originally committed as revision 17797 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename "fd1" variable ro "fd". There were previously two variables (fd1 andRonald S. Bultje2009-03-03
| | | | | | | fd2) and one was just removed, so naming the other "fd1" is counter-intuitive. See "[RFC] rtsp.c EOF support" thread. Originally committed as revision 17780 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add url_get_file_handle(), which is used to get the file descriptorRonald S. Bultje2009-03-03
| | | | | | | | | | | associated with the I/O handle (e.g. the fd returned by open()). See "[RFC] rtsp.c EOF support" thread. There were previously some URI-specific implementations of the same idea, e.g. rtp_get_file_handles() and udp_get_file_handle(). All of these are deprecated by this patch and will be removed at the next major API bump. Originally committed as revision 17779 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reindent after r17777.Ronald S. Bultje2009-03-03
| | | | Originally committed as revision 17778 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make RTSP-MS-over-UDP negotiation work. See "[PATCH] RTSP-MS 8/15: fixRonald S. Bultje2009-03-03
| | | | | | | | | | | RTSP-MS UDP" thread on mailinglist. Basically, UDP setup needs to be done in a particular order (first rtx on two UDP ports (one for RTP, one for RTCP), then the other streams over one, single port for all of them together). Not doing this correctly results in a "461" error (invalid transport) during setup. Originally committed as revision 17777 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Recognize the "application" data type, which is required for WMS/UDPRonald S. Bultje2009-03-03
| | | | | | | | | | | | sessions. This type is used in RTP/ASF (served by WMS servers), and is required to make UDP sessions work, but breaks TCP sessions. Therefore, we disable setup for application streams in TCP/WMS streams. See discussion in "[PATCH] RTSP-MS 8/15: fix RTSP-MS UDP" thread. Originally committed as revision 17776 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename RTSPHeader to RTSPMessageHeader to reflect more clearly what theRonald S. Bultje2009-02-21
| | | | | | | structure is meant to represent. See "[PATCH] rtsp.[ch]: RTSPHeader -> RTSPServerResponse" and "[PATCH] document rtsp.h" threads on ML. Originally committed as revision 17504 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change sizeof(struct_type) to sizeof(variable).Ronald S. Bultje2009-02-21
| | | | Originally committed as revision 17474 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remame rtp_get_codec_info() to ff_rtp_get_codec_info(), as it is notLuca Abeni2009-02-17
| | | | | | a static function Originally committed as revision 17390 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename RTSP_*_LAST to RTSP_*_NB in line with PIX_FMT_* in lavc. See "[PATCH]Ronald S. Bultje2009-02-16
| | | | | | document rtsp.h" mailinglist thread. Originally committed as revision 17381 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split rtp.h in rtp.h, rtpdec.h, and rtpenc.hLuca Abeni2009-02-06
| | | | Originally committed as revision 17016 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename "tx_ctx" and "cur_tx" variables to "transport_priv" andRonald S. Bultje2009-02-05
| | | | | | | "cur_transport_priv", as discussed in the "[PATCH] rtsp.h: rename tx variables" thread. Originally committed as revision 17012 to svn://svn.ffmpeg.org/ffmpeg/trunk
* use new metadata API in rtsp demuxerAurelien Jacobs2009-02-02
| | | | Originally committed as revision 16961 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix the Transport: line in the SETUP request so that it works with WMSRonald S. Bultje2009-02-01
| | | | | | | | | | | | servers when trying to set up a session over TCP: - add the interleave property - add unicast, only for WMS (since it is normally only UDP, but WMS expects it for UDP and TCP) - add mode=play See discussion in "[PATCH] RTSP-MS 9/15: add interleave property to the TCP transport line of the SETUP request" thread on mailinglist. Originally committed as revision 16913 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge rtp_internal.h in rtp.h, and remove rtp_internal.hLuca Abeni2009-01-27
| | | | Originally committed as revision 16817 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Skip m= blocks in the SDP if the media type is unknown. This preventsRonald S. Bultje2009-01-24
| | | | | | | | | subsequent a= lines from the m= block to be applied to the previous m= line, thus breaking otherwise functional RTP streams. See discussion in [PATCH] RTSP-MS 7/15: parse and allow unknown m= line codes" thread on mailinglist. Originally committed as revision 16737 to svn://svn.ffmpeg.org/ffmpeg/trunk
* cosmetics: Remove pointless period after copyright statement non-sentences.Diego Biurrun2009-01-19
| | | | Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change semantic of CONFIG_*, HAVE_* and ARCH_*.Aurelien Jacobs2009-01-13
| | | | | | They are now always defined to either 0 or 1. Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix build: Add intreadwrite.h and bswap.h #includes where necessary.Diego Biurrun2009-01-11
| | | | Originally committed as revision 16556 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reindent to properly fit a 80 chars terminal.Ronald S. Bultje2009-01-09
| | | | Originally committed as revision 16511 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reindent after r16509.Ronald S. Bultje2009-01-09
| | | | Originally committed as revision 16510 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Apply rtpmap: SDP lines to the last m= line only, since they generally justRonald S. Bultje2009-01-09
| | | | | | | come directly after each m= line if required. See "[PATCH] RTSP-MS 5-6/15: parse only the last m= line stream per rtpmap line" thread on ML. Originally committed as revision 16509 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Increase buffer size for RTP packet data because some ASF streams use aRonald S. Bultje2009-01-09
| | | | | | | manual, non-standard blocksize which is bigger than RTP_MAX_PACKET_LENGTH. See "[PATCH] RTSP-MS 4/15: blocksize detection" thread on mailinglist. Originally committed as revision 16502 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use the "server" RTSP field to detect whether the server that we're talkingRonald S. Bultje2009-01-07
| | | | | | | | to is a Microsoft Windows Media Server (the field will be "WMServer/version"). See "[PATCH] RTSP-MS 3/15: Add Windows Media Server type" thread on mailinglist. Originally committed as revision 16472 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Export RTSPState and RTSPStream from rtsp.c into rtsp.h. This allows futureRonald S. Bultje2009-01-07
| | | | | | | | access to these structures in functions that will be located in rtp_asf.c. See "[PATCH] RTSP-MS 2/15: export RTSPState and RTSPStream" mailinglist thread. Originally committed as revision 16471 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Allow subscription to any of the streams, not just the first, available inRonald S. Bultje2009-01-07
| | | | | | | | | this RTSP/RDT session. This basically implies full RDT support, including stream selection in ffmpeg and multi-stream backupping in ffmpeg (by mapping each stream to an output). See "[PATCH] RTSP/RDT: subscriptions" thread on mailinglist. Originally committed as revision 16469 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Parse the OpaqueData field for every AVStream represented by this "set ofRonald S. Bultje2009-01-07
| | | | | | | | | | streams" (a single RTSPStream / RDTDemuxContext can represent several AVStreams, that's just how Real/RDT was designed...). This will fill in most of the AVStream/AVCodecContext header fields, similar to reading a RM file header would. See "[PATCH] multi-stream MDPR parsing" thread on mailinglist. Originally committed as revision 16468 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Parse the ASMRuleBook SDP line to dynamically create one new AVStream forRonald S. Bultje2009-01-07
| | | | | | | | | each "rule" described in the ASMRuleBook. Each rule represents a stream of identical content compared to other streams in the same rulebook, but with a possibly different codec/bitrate/etc. See "[PATCH] rdt.c: ASM rulebook parsing and AVStream creation" thread on mailinglist. Originally committed as revision 16466 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add comment to indicate why the SDP line buffer is as big as it is.Ronald S. Bultje2008-12-14
| | | | Originally committed as revision 16137 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Increase SDP line buffer size because ASF headers in RTSP-MS are very big. ↵Ronald S. Bultje2008-12-14
| | | | | | | | See ML discussion in "rtsp.c: increase SDP line buffer size" thread. Originally committed as revision 16136 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename rtp_payload_data_t to avoid clashes with the POSIX namespaceLuca Abeni2008-12-13
| | | | Originally committed as revision 16115 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename type to be consistentLuca Barbato2008-12-13
| | | | Originally committed as revision 16090 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change function prototype of the sdp_parse_a_line in DynamicProtocolHandler.Ronald S. Bultje2008-12-06
| | | | | | | | | | | | | This function is called in rtsp.c for each a= line in the SDP of the Describe response after m= RTSP stream descriptors. The function prototype used to take an AVStream argument. For RDT, however, every RTSPStream represents a set of streams of identical content, and can thus represent multiple AVStreams. Therefore, it should not take an AVStream as argument. This patch modifies it to accept a AVFormatContext (of the RTSP/SDP demuxer) instead. See discussion in "[PATCH/RFC] change function prototype of parse_sdp_a_line" thread on ML. Originally committed as revision 16024 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change function prototype from taking an AVStream to taking an index to theRonald S. Bultje2008-11-30
| | | | | | | | stream itself, plus a name change to signify that there may be multiple AVStreams per RDT set. See discussion in "[PATCH] RDT/Realmedia patches #2" thread on ML. Originally committed as revision 15962 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add is_keyframe param to ff_rdt_parse_header(). See ML discussion inRonald S. Bultje2008-11-15
| | | | | | "[PATCH] RDT/Realmedia patches #2" thread. Originally committed as revision 15833 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Call check_back_and_send_rr() function only in case of RTP as a transport.Ronald S. Bultje2008-11-15
| | | | | | | | Don't call it for RDT, since it is unneeded and it doesn't provide a RTPDemuxContext, leading to some memory errors. See "[PATCH] fix small memory error in rtsp.c" thread on ML. Originally committed as revision 15828 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reindent after r15544.Ronald S. Bultje2008-10-04
| | | | Originally committed as revision 15545 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Implement RDTDemuxContext, which contains RDT-specific data (similar toRonald S. Bultje2008-10-04
| | | | | | | RTPDemuxContext for RTP) for these streams where the transport protocol is RDT (as served by Realmedia servers). Originally committed as revision 15544 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make RTPDemuxContext opaque in rtsp.c, renaming it to tx_ctx (tx=transport)Ronald S. Bultje2008-10-04
| | | | | | | and making its type a void pointer. See discussion in "RDT/Realmedia patches #2" thread on ML. Originally committed as revision 15543 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove access into RTPDemuxContext in rtsp.c, which allows making it opaqueRonald S. Bultje2008-10-04
| | | | | | | (and thus preparing for the introduction of RDTDemuxContext) in a next patch. See discussion in "RDT/Realmedia patches #2" thread on ML. Originally committed as revision 15542 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename RTP payload contexts to PayloadContext, suggested by Luca inRonald S. Bultje2008-10-04
| | | | | | "RDT/Realmedia patches #2" thread on ML. Originally committed as revision 15540 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use enum typers instead of int.Diego Pettenò2008-10-02
| | | | | | Patch by Diego 'Flameeyes' Pettenò: flameeyes gmail Originally committed as revision 15517 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add (additional) const to many global tables.Reimar Döffinger2008-10-02
| | | | Originally committed as revision 15515 to svn://svn.ffmpeg.org/ffmpeg/trunk
* This patch refactors RDT packet header parsing so that it can be used inRonald S. Bultje2008-10-01
| | | | | | | | rtsp.c to detect the ID of the packet source also in case of TCP streams. This allows proper playback of RDT streams with multiple stream types, e.g. audio + video. Accepted by LucaB in "RDT/Realmedia patches #2" thread on ML. Originally committed as revision 15496 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reindent after previous patches.Ronald S. Bultje2008-09-30
| | | | Originally committed as revision 15485 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Implement a RTSPTransport field, which allows proper separation of serverRonald S. Bultje2008-09-30
| | | | | | | | types and their non-standard extensions, and the data they serve. Practically, this patch allows Real servers to serve normal non-RDT (standard RTP) data. See discussion on ML in "Realmedia patch" thread. Originally committed as revision 15484 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove access to rdt_data struct in functions called outside of theRonald S. Bultje2008-09-30
| | | | | | | | | DynamicProtocol* context. Doing so could lead to problems if we're accessing Real servers serving non-RDT data (or the other way around). Temporarily, this patch adds a _subscribe2() function which will soon be removed in one of the subsequent commits. OK'ed by Luca in "Realmedia patch" thread on ML. Originally committed as revision 15483 to svn://svn.ffmpeg.org/ffmpeg/trunk