1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-07 11:13:41 +02:00
Commit Graph

180 Commits

Author SHA1 Message Date
Martin Storsjö
dd22cfb101 rtsp: Parse and use the Content-Base reply header, if present
This fixes playing RTSP urls with query parameters.

Originally committed as revision 25755 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-15 15:08:53 +00:00
Martin Storsjö
0526c6f7c7 rtsp: Split out the RTSP demuxer functions to a separate, new file
Originally committed as revision 25601 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-29 08:43:57 +00:00
Martin Storsjö
c2688f3ac8 rtsp: Move rtsp_setup_output_streams into rtspenc.c
Originally committed as revision 25600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-29 08:41:49 +00:00
Aurelien Jacobs
a5cea13202 drop rtsp_default_protocols which is not part of public API and not used anymore
Originally committed as revision 25557 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-23 16:22:36 +00:00
Martin Storsjö
9e6acc7884 rtsp: Remove the start_time field from RTSPState, use AVFormatContext->start_time_realtime instead
Originally committed as revision 25408 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-08 08:50:29 +00:00
Martin Storsjö
96a7c9753e rtsp: Use a dynamically allocated receive buffer
Originally committed as revision 25288 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-01 17:41:31 +00:00
John Wimer
619298a84d Send NAT punching messages to the address specified in the Transport:
message, if available (RFC 2326, section 12.39), fixes issue 2212.

Patch by John Wimer <john at god vtic net>.

Originally committed as revision 25032 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-03 19:25:59 +00:00
Josh Allmann
b20359f51a rtsp: Return AVERROR_EOF when all streams have received an RTCP BYE packet
Patch by Josh Allmann, joshua dot allmann at gmail

Originally committed as revision 24965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-29 10:25:16 +00:00
Martin Storsjö
7934b15d5a Handle IPv6 in the RTSP code
Originally committed as revision 24925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-25 15:32:29 +00:00
Martin Storsjö
3fbd12d109 Handle IPv6 in the SDP demuxer
Originally committed as revision 24924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-25 15:32:00 +00:00
Aurelien Jacobs
be73ba2fa4 get rid of MAX_STREAMS limit in RTSP
Originally committed as revision 24752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-09 23:00:13 +00:00
Luca Barbato
d93fdcbf5c Preserve status reason
It is used to provide meaningful error messages.

Originally committed as revision 24714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 10:26:30 +00:00
Josh Allmann
ca937a5508 RTSP, rtpdec: Move RTPPayloadData into rtpdec_mpeg4 and remove all references to rtp_payload_data in rtpdec and rtsp
Patch by Josh Allmann, joshua dot allmann at gmail

Originally committed as revision 23772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-25 08:02:50 +00:00
Martin Storsjö
48e77473e9 Cosmetics: Change connexion to connection in code comments
Originally committed as revision 23601 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-14 09:09:59 +00:00
Josh Allmann
f5d33f5241 Add RTSP tunneling over HTTP
Patch by Josh Allmann, joshua dot allmann at gmail dot com

Originally committed as revision 23536 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-08 12:40:34 +00:00
Martin Storsjö
fc490fcf71 Cosmetics: Reindent/align/wrap
Originally committed as revision 23498 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 19:49:55 +00:00
Josh Allmann
d0382374b7 RTSP: Propagate errors up from ff_rtsp_send_cmd*
Patch by Josh Allmann, joshua dot allmann at gmail

Originally committed as revision 23497 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 19:45:46 +00:00
Josh Allmann
b8c2c41d66 RTSP: Add a second URLContext for outgoing messages
Done in preparation for RTSP over HTTP.
Patch by Josh Allmann, joshua dot allmann at gmail

Originally committed as revision 23494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 19:41:43 +00:00
Ronald S. Bultje
03a3fcee99 Change default number of channels (used if unspecified in the format desc)
from 2 to 1, which is the actual value used in the spec. Fixes issue1978.

Path by John Wimer <john at god dot vtic dot net>.

Originally committed as revision 23414 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-01 20:00:26 +00:00
Benoit Fouet
32e543f866 Replace @returns by @return.
Originally committed as revision 22729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 15:50:57 +00:00
Martin Storsjö
2626308abb Actually parse the auth headers in RTSP
Originally committed as revision 22677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 21:48:58 +00:00
Martin Storsjö
aa8bf2fb80 Make RTSP use the generic http authentication code
Still hardcoded to use Basic auth, without parsing the reply headers

Originally committed as revision 22676 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 21:47:33 +00:00
Martin Storsjö
b17d11c632 Add separate method/url parameters to the rtsp_send_cmd functions
Originally committed as revision 22675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 21:46:14 +00:00
Martin Storsjö
ec55edba31 Make rtsp_skip_packet non-static, add ff prefix
Originally committed as revision 22547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 16:31:15 +00:00
Martin Storsjö
c07c6f8183 RTSP: Synchronize the start time of the chained RTP muxers
This makes sure that the streams get correctly synchronized when viewed,
previously the streams were out of sync by as much time as it took
between the initialization of the individual muxers.

Originally committed as revision 22545 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 14:20:07 +00:00
Martin Storsjö
9399393333 Cosmetics: reindent
Originally committed as revision 21995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 11:05:36 +00:00
Ronald S. Bultje
3307e6ea86 Prefix non-static RTSP functions with ff_.
Originally committed as revision 21974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 00:35:50 +00:00
Martin Storsjö
15ba23150e Add declarations and doxygen documentation of generic rtsp support functions
to rtsp.h, and make the functions non-static

Originally committed as revision 21968 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 19:44:08 +00:00
Martin Storsjö
fd450a5177 Create AVFormatContext objects as private transport for output RTSP sessions
Originally committed as revision 21964 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 15:46:56 +00:00
Martin Storsjö
251f050481 Remove stale function declaration.
Patch by Martin Storsjö <$firstname $firstname st>.

Originally committed as revision 21899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 17:26:33 +00:00
Martin Storsjö
c02fd3d2e8 Rename RTSP_STATE_PLAYING to _STREAMING, since that better covers the
future use of the rtsp* codebase for RTSP muxing.

Patch by Martin Storsjö <$firstname $firstname st>.

Originally committed as revision 21896 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-19 16:26:21 +00:00
Alan Steremberg
00eb13e05f Use the control URI from the SDP (if present) rather than the input filename,
if present. This fixes playback of a number of MS-RTSP streams, mostly these
for which playback contains a session key in the URI. Fixes issue 1697.
Patch by Alan Steremberg <$firstname dot $lastname () gmail com>.

Originally committed as revision 21381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 16:04:15 +00:00
Luca Barbato
d243ba30b8 Support 3xx redirection in rtsp
All the error codes 3xx got managed the same way.
After setup/early play redirection will not be managed
REDIRECT method is yet to be supported (if somebody knows a server implementing
it please contact me)

Originally committed as revision 20369 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-25 00:06:31 +00:00
Ronald S. Bultje
f933789789 RTSP basic authentication, patch originally by Philip Coombes
(philip coombes zoneminder com), see "[PATCH]RTSP Basic Authentication"
thread on mailinglist.

Originally committed as revision 19905 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-17 21:47:11 +00:00
Ronald S. Bultje
fccb1770e6 Implement support for EOS as used by WMS and other RTSP servers that do not
implement RTCP/bye. See "[PATCH] rtsp.c: EOS support" thread from a few
months back.

Originally committed as revision 19517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-27 14:03:53 +00:00
Ronald S. Bultje
c2f3eec445 Implement RTSP-MS/ASF packet parsing - this completes RTSP-MS support. See
discussion in "[PATCH] RTSP-MS 14/15: ASF packet parsing" thread on mailinglist.

Originally committed as revision 19516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-27 14:00:10 +00:00
Stefano Sabatini
58ad770f92 Use globally consistent include guard names.
Originally committed as revision 19462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-19 09:38:58 +00:00
Luca Barbato
ec606b36b4 Support seeking as defined by the rfc
a PLAY with Range alone while in PLAY status should be interpreted
as an enqueue
a PAUSE followed by a PLAY with Range is the proper way to ask to
seek to a point.

See rfc2326

Originally committed as revision 19143 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-10 15:08:02 +00:00
Stefano Sabatini
bf7e799c9e Remove '\p', '\c' and '\e' doxygen markup from doxy, as it should
improve plain text doxy readability.

See the thread: "[RFC] Should we use doxygen markup?".

Originally committed as revision 19122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-06 09:35:15 +00:00
Ronald S. Bultje
30e79845b4 Send dummy requests over the TCP connection (WMS wants GET_PARAMETER,
Real wants OPTIONS) while the connection is idle, otherwise it will
be aborted after a short period (usually a minute). See the thread
"[PATCH] rtsp.c: keep-alive" on the mailinglist.

Originally committed as revision 18525 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 13:04:34 +00:00
Ronald S. Bultje
9c610b7667 Add a @todo item to use ByteIOContext instead of URLContext at some point in
the future, requested by Luca in "[PATCH] rtsp.c: read TCP server
notifications/messages" thread.

Originally committed as revision 18120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-21 20:44:46 +00:00
Ronald S. Bultje
1a30d5415f Add RTP/ASF header parsing, which is part of the SDP of these streams. See
patch discussion in "[PATCH] RTSP-MS 10/15: ASF header parsing" thread.

Originally committed as revision 18023 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-17 12:34:57 +00:00
Ronald S. Bultje
26d6b3e230 Document rtsp.h, see "[PATCH] document rtsp.h" thread.
Originally committed as revision 17614 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 14:15:41 +00:00
Ronald S. Bultje
a9e534d561 Rename RTSPHeader to RTSPMessageHeader to reflect more clearly what the
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
2009-02-21 22:26:44 +00:00
Ronald S. Bultje
2a1d51c573 Rename RTSP_*_LAST to RTSP_*_NB in line with PIX_FMT_* in lavc. See "[PATCH]
document rtsp.h" mailinglist thread.

Originally committed as revision 17381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-16 16:27:35 +00:00
Ronald S. Bultje
3b0fc60592 Don't install rtsp.h. It is intended to be private, it depends on rtp code
which isn't installed anyway (so it doesn't work).

In the process, also remove public/private API comments from rtsp headers
because they are unnecessary.

Originally committed as revision 17379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-16 16:24:01 +00:00
Luca Abeni
302879cb36 Split rtp.h in rtp.h, rtpdec.h, and rtpenc.h
Originally committed as revision 17016 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-06 10:35:52 +00:00
Ronald S. Bultje
0a861b6f8b Rename "tx_ctx" and "cur_tx" variables to "transport_priv" and
"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
2009-02-05 22:34:55 +00:00
Ronald S. Bultje
b516ecdd12 Delete an enum and a function typedef that aren't used anywhere, and
move move a struct/typedef in rtsp.h that is only used in ffserver.c into
ffserver.c. See "[PATCH] rtsp.h: move/remove unused thingies" thread on ML.

Originally committed as revision 17005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-05 17:00:10 +00:00
Ronald S. Bultje
1262d638da Move enum RTSPTransport up a bit, so that all fields that are assigned a value
of this type can be properly attributed as such (in this case, transport in
the RTSPTransportField struct). See "[PATCH] RTSP-MS 10/15: ASF header parsing"
thread on mailinglist.

Originally committed as revision 16989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-04 17:17:20 +00:00
Diego Biurrun
406792e7b0 cosmetics: Remove pointless period after copyright statement non-sentences.
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Ronald S. Bultje
6e5f27ca80 Fix typo ("Standard-compliant" -> "Standards-compliant"), as noticed by
Diego.

Originally committed as revision 16475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 16:01:15 +00:00
Ronald S. Bultje
70d4b8ce50 Fix doxy comments missing one '*'.
Originally committed as revision 16473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 15:13:27 +00:00
Ronald S. Bultje
7a86bafa20 Use the "server" RTSP field to detect whether the server that we're talking
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
2009-01-07 14:55:47 +00:00
Ronald S. Bultje
74272b1c0c Export RTSPState and RTSPStream from rtsp.c into rtsp.h. This allows future
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
2009-01-07 14:53:04 +00:00
Ronald S. Bultje
119b466811 Implement a RTSPTransport field, which allows proper separation of server
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
2008-09-30 13:26:20 +00:00
Ronald S. Bultje
90abbdba1e Rename RTSPProtocol to RTSPLowerTransport, so that its name properly tells us
that it only describes the lower-level transport (TCP vs. UDP) and not the
actual data layout (e.g. RDT vs. RTP). See discussion in "Realmedia patch"
thread on ML.

Originally committed as revision 15481 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-30 13:18:41 +00:00
Ronald S. Bultje
30aa6aed4a Read RealChallenge1 field from the server.
Originally committed as revision 15124 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 17:32:02 +00:00
Ronald S. Bultje
75128a2273 Revert back to old version (r15103).
Originally committed as revision 15122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 17:23:01 +00:00
Stefano Sabatini
987903826b Globally rename the header inclusion guard names.
Consistently apply this rule: the guard name is obtained from the
filename by stripping the leading "lib", converting '/' and '.'  to
'_' and uppercasing the resulting name. Guard names in the root
directory have to be prefixed by "FFMPEG_".

Originally committed as revision 15120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 07:39:47 +00:00
Ronald S. Bultje
158efd74fe Implement RTSP/Realmedia-compatible OPTIONS command. See "Realmedia patch"
thread on mailinglist for discussion. This patch also implements a
RTSPServerType enum, which allows the RTSP to keep track of what kind of a
stream we're handling: standard-compliant RTP or a proprietary derivative.
This will be used in subsequent patches to implement more Realmedia-specific
extensions required to receive and parse data coming from a Realmedia server.

Originally committed as revision 15104 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 03:12:13 +00:00
Ronald S. Bultje
8a8754d80f Allow cycling between different protocols (TCP, UDP or multicast) so that if
one doesn't work, we can try the next one (i.e. trial-error protocol auto-
probing).

Discussed and approved in "[PATCH] RTSP alternate protocol 2-3/3".

Originally committed as revision 12504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-19 14:05:08 +00:00
Ronald S. Bultje
c482500fa3 Drop RTSP default protocol.
patch by Ronald S. Bultje, rsbultje gmail com

Originally committed as revision 11377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-02 19:40:43 +00:00
Diego Biurrun
5b21bdabe4 Add FFMPEG_ prefix to all multiple inclusion guards.
Originally committed as revision 10765 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-17 09:37:46 +00:00
Aurelien Jacobs
b156b88c13 rtp and rtsp demuxer declarations are not part of public API
Originally committed as revision 10474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-10 22:48:42 +00:00
Måns Rullgård
99545457bf include all prerequisites in header files
Originally committed as revision 9344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-16 22:59:13 +00:00
Alex Beregszaszi
0913873e5b remove unused rtsp_callback
Originally committed as revision 8832 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-26 17:38:30 +00:00
Panagiotis Issaris
50c5f1598d Make rtsp_set_callback() comments available to Doxygen
Originally committed as revision 8257 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-05 13:54:15 +00:00
Panagiotis Issaris
0af4407d35 Move unaltered rtsp.c comments to the header file.
Originally committed as revision 8256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-05 13:53:42 +00:00
Panagiotis Issaris
37d2210ae9 Doxygenize comments in rtsp.h
Originally committed as revision 8255 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-05 13:53:00 +00:00
Panagiotis Issaris
391fbb656c Convert macro+enum into a simple enum: Currently the enum was filled using a
macro that also contained a description for every field, but, that description
was not being used anywhere. This changes it, to make the description available
as a Doxygen comment. Furthermore, it is now easily parsable by Doxygen, while
before it messed up the documentation.

Originally committed as revision 8254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-05 13:52:14 +00:00
Diego Biurrun
b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Måns Rullgård
d2a067d1d9 give AVInput/OutputFormat structs consistent names
Originally committed as revision 5697 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-09 23:40:53 +00:00
Diego Biurrun
5509bffa88 Update licensing information: The FSF changed postal address.
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Diego Biurrun
115329f160 COSMETICS: Remove all trailing whitespace.
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Romain Degez
d1ccf0e0a6 RTP/RTSP and MPEG4-AAC audio
- preliminary support for mpeg4-aac rtp payload (no interleaving support)
  - use udp transport as default (makes more sense with rtp, doesn't it ?)
  - some code factorization, so adding support for new rtp payload will be easier
  (I hope ;-)
patch by (Romain DEGEZ: romain degez, smartjog com)

Originally committed as revision 4306 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-26 07:47:51 +00:00
Fabrice Bellard
ff762d6ed2 initial seek support - more generic play/pause support
Originally committed as revision 2495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-10 18:39:26 +00:00
Fabrice Bellard
b7b8fc3406 suppressed RTSP abort hack - added PLAY/PAUSE
Originally committed as revision 2060 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-07-17 10:27:47 +00:00
Zdenek Kabelac
0c1a9edad4 * UINTX -> uintx_t INTX -> intx_t
Originally committed as revision 1578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-11 16:35:48 +00:00
Fabrice Bellard
abac617591 renamed libav to libavformat
Originally committed as revision 1276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-25 19:07:40 +00:00