summaryrefslogtreecommitdiff
path: root/libavformat/rtsp.c
Commit message (Collapse)AuthorAge
* Replace all uses of av_close_input_file() with avformat_close_input().Anton Khirnov2011-12-12
|
* lavf: deprecate av_close_input_stream().Anton Khirnov2011-12-12
| | | | And remove all its uses.
* rtsp: Initialize the media_type_mask in the rtp guessing demuxerMartin Storsjö2011-12-02
| | | | | | | | | | | The media_type_mask is initialized via AVOptions for the rtsp and sdp demuxers, but it isn't available as an option for the rtp guessing demuxer (since it doesn't really make sense there). Therefore, it must be manually initialized instead, since a zero value means no media types at all are accepted. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: make av_set_pts_info private.Anton Khirnov2011-11-30
| | | | It's supposed to be called only from (de)muxers.
* rtpdec: Add an init function that can do custom codec context initializationMartin Storsjö2011-11-30
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avio: add support for passing options to protocols.Anton Khirnov2011-11-13
| | | | | Not used anywhere yet, support for passing options from avio_open() will follow.
* avio: Add an AVIOInterruptCB parameter to ffurl_open/ffurl_allocMartin Storsjö2011-11-13
| | | | | Change all uses of these function to pass the relevant callback on.
* avformat: Use ff_check_interruptMartin Storsjö2011-11-13
|
* http: Change the chunksize AVOption into chunked_postMartin Storsjö2011-11-10
| | | | | | | | | | | | | | | | | The chunksize internal variable has two different uses - for reading, it's the amount of data left of the current chunk (or -1 if the server doesn't send data in chunked mode), where it's only an internal state variable. For writing, it's used to decide whether to enable chunked encoding (by default), by using the value 0, or disable chunked encoding (value -1). This, while consistent, doesn't make much sense to expose as an AVOption. This splits the usage of the internal variable into two variables, chunksize which is used for reading (as before), and chunked_post which is the user-settable option, with the values 0 and 1, where 1 is default. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Set http custom headers via the AVOptionMartin Storsjö2011-11-10
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Discard the dynamic handler, if it has an alloc function which failedMartin Storsjö2011-11-07
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Replace all usage of strcasecmp/strncasecmpReimar Döffinger2011-11-06
| | | | | | | | | | | All current usages of it are incompatible with localization. For example strcasecmp("i", "I") != 0 is possible, but would break many of the places where it is used. Instead use our own implementations that always treat the data as ASCII. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Disable chunked http post through AVOptionsMartin Storsjö2011-11-05
| | | | | | This avoids having to use a private function. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: add allowed_media_types optionJohn Brooks2011-11-02
| | | | | | | | Streams from RTSP or SDP that do not match an allowed type will be skipped entirely, which allows video-only or audio-only streaming from servers that provide both. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: replace av_new_stream->avformat_new_stream part II.Anton Khirnov2011-10-19
| | | | | | | | Manual replacements are done in this commit. In many cases, the id is some constant made up number (e.g. 0 for video and 1 for audio), which is then not used in the demuxer for anything. Those ids are removed.
* rtsp: Expose the flag options via private AVOptions for sdp and rtp, tooMartin Storsjö2011-10-17
| | | | | | | | This allows setting the filter_src option for these demuxers, too, which wasn't possible at all before (where the option only was set via URL parameters for RTSP). Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Make the rtsp flags avoptions set via a defineMartin Storsjö2011-10-17
| | | | | | This helps sharing these options with the sdp and rtp demuxers. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Remove the separate filter_source variableMartin Storsjö2011-10-17
| | | | | | Read it as a flag from the flags field instead. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Accept options via private avoptions instead of URL optionsMartin Storsjö2011-10-17
| | | | | | | | | | | | Eventually, the old way of passing options by adding stuff to the URL can be dropped. This avoids having to tamper with the user-specified URL to pass options on the transport mode. This also works better with redirects, since the options don't need to be parsed out from the URL. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Simplify AVOption definitionsMartin Storsjö2011-10-17
| | | | | | | Use defines for shortening common parts, omit the .dbl named initializer (since it's the first element in the union). Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Merge the AVOption listsMartin Storsjö2011-10-17
| | | | | | | | This eases adding options that are common for both. The AV_OPT_FLAG_EN/DECODING_PARAM still indicates whether they belong to the muxer or demuxer. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Request that dynamic rate is disabledMartin Storsjö2011-10-12
| | | | | | | | | | | | | | | DSS enables this automatically if streaming VOD over TCP. If enabled, the server feeds packets faster than realtime, screwing up RTCP NTP based timestamps. Also, DSS doesn't indicate that this was indicated, if it was enabled automatically (although if it was requested to be enabled, a header saying that it was enabled is added, but this isn't added if it is enabled automatically), making it even harder to detect and work around properly without explicitly asking for it to be disabled(/enabled, if we were able to support it). Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Parse the x-Accept-Dynamic-Rate headerMartin Storsjö2011-10-12
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Add ff_ prefix to all nonstatic symbolsMartin Storsjö2011-10-12
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: remove disabled codeDiego Biurrun2011-07-18
|
* lavf: use designated initialisers for all (de)muxers.Anton Khirnov2011-07-17
| | | | It's more readable and less prone to breakage.
* Do not include mathematics.h in avutil.hMans Rullgard2011-07-03
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* RTSP: Doxygen comment cleanupDiego Biurrun2011-07-03
| | | | | Do not use Doxygen for comments that apply to specific implementation details; merge some duplicated Doxygen comment blocks.
* rtsp: Don't pass string pointer as format string to ff_url_joinMartin Storsjö2011-06-16
| | | | | | | | | In this case, the string that was passed couldn't contain user-defined data and thus there was no risk for injection bugs, but it's safer this way, if we later change the content of the options string. Signed-off-by: Martin Storsjö <martin@martin.st>
* Remove all uses of now deprecated metadata functions.Anton Khirnov2011-06-08
|
* Replace custom DEBUG preprocessor trickery by the standard one.Diego Biurrun2011-06-03
|
* rtsp: use strtoul to parse rtptime and seq values.Ilya2011-05-24
| | | | | | | strtol could return negative values, leading to various error messages, mainly "non-monotonically increasing dts". Signed-off-by: Anton Khirnov <anton@khirnov.net>
* rtsp: Only do keepalive using GET_PARAMETER if the server supports itMartin Storsjö2011-05-11
| | | | | | | | | | | | | | | | This is more like what VLC does. If the server doesn't mention supporting GET_PARAMETER in response to an OPTIONS request, VLC doesn't send any keepalive requests at all. After this patch, libavformat will still send OPTIONS keepalives if GET_PARAMETER isn't explicitly said to be supported. Some RTSP cameras don't support GET_PARAMETER, and will close the connection if this is sent as keepalive request (but support OPTIONS just fine, but probably don't need any keepalive at all). Some other cameras don't support using OPTIONS as keepalive, but require GET_PARAMETER instead. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtp: Rename the open/close functions to alloc/freeMartin Storsjö2011-04-24
| | | | | | | This avoids clashes if we internally want to override the global open function. Signed-off-by: Martin Storsjö <martin@martin.st>
* avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbolsStefano Sabatini2011-04-19
| | | | | | | | Make AVIO_FLAG_ access constants work as flags, and in particular fix the behavior of functions (such as avio_check()) which expect them to be flags rather than modes. This breaks API.
* avio: AVIO_ prefixes for URL_ open flags.Anton Khirnov2011-04-07
|
* avio: make url_get_file_handle() internal.Anton Khirnov2011-04-04
|
* avio: make url_close() internal.Anton Khirnov2011-04-04
|
* avio: make url_write() internal.Anton Khirnov2011-04-04
|
* avio: make url_read_complete() internal.Anton Khirnov2011-04-04
|
* avio: make url_read() internal.Anton Khirnov2011-04-04
|
* avio: make url_open() internal.Anton Khirnov2011-04-04
|
* avio: make url_connect internal.Anton Khirnov2011-04-04
|
* avio: make url_alloc internal.Anton Khirnov2011-04-04
|
* avio: avio_ prefix for url_close_dyn_bufAnton Khirnov2011-04-03
|
* rtsp: Specify unicast for TCP interleaved streams, tooMartin Storsjö2011-03-21
| | | | | | | | | | According to the RFC, the default is multicast if nothing is specified, which doesn't make sense for TCP. According to a bug report, some Axis camera models give a "400 Bad Request" error if this is omitted. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Use AVERROR_EXIT with url_interrupt_cb.Nicolas George2011-03-15
| | | | | | | | | | | | | Functions interrupted by url_interrupt_cb should not be restarted. Therefore using AVERROR(EINTR) was wrong, as it did not allow to distinguish when the underlying system call was interrupted and actually needed to be restarted. This fixes roundup issues 2657 and 2659 (ffplay not exiting for streamed content). Signed-off-by: Nicolas George <nicolas.george@normalesup.org> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* avio: rename url_fopen/fclose -> avio_open/close.Anton Khirnov2011-02-23
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* libavformat: Remove FF_NETERRNO()Martin Storsjö2011-02-23
| | | | | | | | | | | | | | Map EAGAIN and EINTR from ff_neterrno to the normal AVERROR() error codes. Provide fallback definitions of other errno.h network errors, mapping them to the corresponding winsock errors. This eases catching these error codes in common code, without having to distinguish between FF_NETERRNO(EAGAIN) and AVERROR(EAGAIN). This fixes roundup issue 2614, unbreaking blocking network IO on windows. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>