summaryrefslogtreecommitdiff
path: root/libavformat/udp.c
Commit message (Collapse)AuthorAge
* cleaned up the udp.c, removed some variables and an av_logJULIAN GARDNER2011-05-18
|
* udp: remove resource.h inclusion, it breaks mingw compilation.Michael Niedermayer2011-05-15
| | | | | The header seems unneeded, if its needed we will put it back with appropriate #if Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* UDP: dont use thread_t as truth value.Michael Niedermayer2011-05-14
| | | | | Unbreak compile on mingw. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* udp: switch custom fifo to libavutil fifo.Michael Niedermayer2011-05-13
| | | | | This also allows us to drop the semaphore as our fifo is lock free. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* udp: use FFMAX&FFMIN.Michael Niedermayer2011-05-13
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* udp: add a thread into udp.c for receiving data into a circular buffer, this ↵JULIAN GARDNER2011-05-13
| | | | | | stops the problem of live decoding/encoding giving errors. Also added a buf_size which is the number of TS packets that to be allocated for the circular buffer.
* Merge remote branch 'qatar/master'Michael Niedermayer2011-05-13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (33 commits) rtpdec_qdm2: Don't try to parse data packet if no configuration is received ac3enc: put the counting of stereo rematrixing bits in the same place to make the code easier to understand. ac3enc: clean up count_frame_bits() and count_frame_bits_fixed() mpegvideo: make FF_DEBUG_DCT_COEFF output coeffs via av_log() instead of just via AVFrame. srtdec: make sure we don't write past the end of buffer wmaenc: improve channel count and bitrate error handling in encode_init() matroskaenc: make sure we don't produce invalid file with no codec ID matroskadec: check that pointers were initialized before accessing them lavf: fix function name in compute_pkt_fields2 av_dlog message lavf: fix av_find_best_stream when providing a wanted stream. lavf: fix av_find_best_stream when decoder_ret is given and using a related stream. ffmpeg: factorize quality calculation tiff: add support for SamplesPerPixel tag in tiff_decode_tag() tiff: Prefer enum TiffCompr over int for TiffContext.compr. mov: Support edit list atom version 1. configure: Enable libpostproc automatically if GPL code is enabled. Cosmetics: fix prototypes in oggdec oggdec: fix memleak with continuous streams. matroskaenc: add missing new line in av_log() call dnxhdenc: add AVClass in private context. ... swscale changes largely rewritten by me or replaced by baptsites due to lots of bugs in ronalds code. Above code is also just in case its not obvios to a large extended duplicates that where cherry picked from ffmpeg. Conflicts: configure ffmpeg.c libavformat/matroskaenc.c libavutil/pixfmt.h libswscale/ppc/swscale_template.c libswscale/swscale.c libswscale/swscale_template.c libswscale/utils.c libswscale/x86/swscale_template.c tests/fate/h264.mak tests/ref/lavfi/pixdesc_le tests/ref/lavfi/pixfmts_copy_le tests/ref/lavfi/pixfmts_null_le tests/ref/lavfi/pixfmts_scale_le tests/ref/lavfi/pixfmts_vflip_le Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * configure: Do not unconditionally add -D_POSIX_C_SOURCE to CPPFLAGS.Diego Biurrun2011-05-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems since it causes certain system functions to be hidden on some (BSD) systems. The solution is to only add the flag on systems that really require it, i.e. glibc-based ones. This change makes BSD systems compile out-of-the-box without the need for adding specific flags manually. It also allows dropping a number of flags set manually on a file-per-file basis, but were only present to work around breakage introduced by the presence of _POSIX_C_SOURCE. Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems. We use XSI extensions in several places already, so it is preferable to define it globally instead of littering source files with individual #defines only needed for glibc.
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-05-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mpegaudiodec: group #includes more sanely mpegaudio: remove #if 0 blocks ffmpeg.c: reset avoptions after each input/output file. ffmpeg.c: store per-output stream sws flags. mpegaudio: remove CONFIG_MPEGAUDIO_HP option mpegtsenc: Clear st->priv_data when freeing it udp: Fix receiving RTP data over multicast rtpproto: Remove an unused variable regtest: fix wma tests NOT pulled: mpegaudio: remove CONFIG_AUDIO_NONSHORT regtest: separate flags for encoding and decoding Conflicts: ffmpeg.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * udp: Fix receiving RTP data over multicastMartin Storsjö2011-05-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Earlier, AVIO_RDWR was handled as READ, and all the checks for the AVIO_WRONLY flag explicitly meant the write-only case. When changed from old AVIO/URL contants to AVIO_FLAG in 59d96941f0285a5, these comparisons were updated incorrectly, by mapping checks for AVIO_WRONLY to checks for AVIO_FLAG_WRITE. When receiving RTP over UDP, the urlcontext is opened with READ_WRITE flags. This patch updates the flag comparisons to check for the same conditions as the code did prior to 59d96941f0285a5. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-21
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Makefile: Include dependencies for test tools, too Remove a version check in av_log made unnecessary by the big bump. update last major version increase dates in APIchanges Reduce picture size for yadif. oggdec: use av_freep() instead of av_free() avio: Fix sanity checks in ffurl_read* libavformat: Free AVFormatContext->streams libavformat: Make protocols pass URLContext as log context where available asf: remove commented out code in asf_read_seek not pulled: libpostproc: Remove crufty code disabled by the big bump. Reflect 0.7_beta1 release in the Changelog not pulled: sws: remove disabled cruft. lavu: remove disabled ff_random_get_seed cruft. lavu: remove disabled sha1 cruft. Conflicts: Changelog libavutil/sha1.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * libavformat: Make protocols pass URLContext as log context where availableMartin Storsjö2011-04-20
| | | | | | | | | | | | | | Since the libavformat major bump, URLContext contains an AVClass, making it a usable log context. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (37 commits) In avcodec_open(), set return code to an error value only when an error occurs instead of unconditionally at the start of the function. lavc: remove reference to opt.h from Makefile. prefer avio_check() over url_exist() avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbols lavu: remove misc disabled cruft lavu: remove FF_API_OLD_IMAGE_NAMES cruft NOT PULLED lavu: remove FF_API_OLD_EVAL_NAMES cruft lavc: remove misc disabled cruft. lavc: remove the FF_API_INOFFICIAL cruft. lavc: remove the FF_API_SET_STRING_OLD cruft. lavc: remove the FF_API_USE_LPC cruft. lavc: remove the FF_API_SUBTITLE_OLD cruft. lavc: remove the FF_API_VIDEO_OLD cruft. lavc: remove the FF_API_AUDIO_OLD cruft. lavc: remove the FF_API_OPT_SHOW cruft. lavc: remove the FF_API_MM_FLAGS cruft. lavf: remove misc disabled cruft. lavf: remove FF_API_INDEX_BUILT cruft lavf: remove FF_API_URL_CLASS cruft. lavf: remove FF_API_SYMVER cruft ... Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * 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.
| * lavf: remove FF_API_UDP_GET_FILE cruftAnton Khirnov2011-04-19
| |
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-09
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: lavf: bump minor and add an APIChanges entry for avformat cleanup lavf: get rid of ffm-specific stuff in avformat.h Not pulled: avio: deprecate av_protocol_next(). avio: add a function for iterating though protocol names. lavf: rename a parameter of av_sdp_create from buff->buf lavf: rename avf_sdp_create to av_sdp_create. lavf: make av_guess_image2_codec internal avio: make URLProtocol internal. avio: make URLContext internal. lavf: mark av_pkt_dump(_log) for remove on $next+1 bump. lavf: use designated initializers for all protocols applehttp: don't use deprecated url_ functions. avio: move two ff_udp_* functions from avio_internal to url.h asfdec: remove a forgotten declaration of nonexistent function avio: deprecate the typedef for URLInterruptCB Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavf: use designated initializers for all protocolsAnton Khirnov2011-04-08
| | | | | | | | | | This is more readable and makes it easier to reorder URLProtocol members.
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: proto: include os_support.h in network.h matroskaenc: don't write an empty Cues element. lavc: add a FF_API_REQUEST_CHANNELS deprecation macro avio: move extern url_interrupt_cb declaration from avio.h to url.h avio: make av_register_protocol2 internal. avio: avio_ prefix for url_set_interrupt_cb. avio: AVIO_ prefixes for URL_ open flags. proto: introduce listen option in tcp doc: clarify configure features proto: factor ff_network_wait_fd and use it on udp Conflicts: ffmpeg.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avio: move extern url_interrupt_cb declaration from avio.h to url.hAnton Khirnov2011-04-07
| |
| * avio: AVIO_ prefixes for URL_ open flags.Anton Khirnov2011-04-07
| |
| * proto: factor ff_network_wait_fd and use it on udpLuca Barbato2011-04-07
| | | | | | | | | | | | | | | | Support the URL_FLAG_NONBLOCK semantic and uniform the protocol. The quick retry loop is already part of retry_transfer_wrapper. The polling routine is common to the network protocols: udp, tcp and, once merged, sctp.
* | Merge remote-tracking branch 'newdev/master'Michael Niedermayer2011-03-24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * newdev/master: avio: make udp_set_remote_url/get_local_port internal. asfdec: also subtract preroll when reading simple index object matroskaenc: remove a variable that's unused after bc17bd9. avio: cosmetics - nicer vertical alignment. Remove unnecessary icc version checks Disable 'attribute "foo" ignored' warnings from icc rtsp: Don't use a locale dependent format string Add xd55 codec tag for XDCAM HD422 720p25 CBR files. configure: get libavcodec version from new version.h header lavc: move the version macros to a new installed header. matroskaenc: simplify get_aac_sample_rates by using ff_mpeg4audio_get_config Do not use format string "%0.3f" for RTSP Range field. Add apply_window_int16() to DSPContext with x86-optimized versions and use it in the ac3_fixed encoder. Document usage of import libraries created by dlltool configure: Set the correct lib target for arm/wince dlltool fate: simplify regression-funcs.sh fate: add support for multithread testing Conflicts: libavformat/rtspdec.c libavutil/attributes.h libavutil/internal.h libavutil/mem.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avio: make udp_set_remote_url/get_local_port internal.Anton Khirnov2011-03-23
| |
| * 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>
* 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>
* Move find_info_tag to lavu and add av_ prefix to itAnton Khirnov2011-02-17
| | | | Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
* udp: Enable address reuse by default for multicastDavid Fries2011-02-09
| | | | | | | | Keep the original corner case behaviour, where reuse is enabled for the case where no argument is given to the reuse url option. Signed-off-by: Martin Storsjö <martin@martin.st> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* os: replace select with pollLuca Barbato2011-01-28
| | | | | Select has limitations on the fd values it could accept and silently breaks when it is reached.
* Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.Diego Elio Pettenò2011-01-26
| | | | | This also lists the objects from those two libraries as internal (by adding the ff_ prefix) so that they can then be hidden via linker scripts.
* udp: Allow specifying the connect option in udp_set_remote_url, tooMartin Storsjö2011-01-06
| | | | | | | If the remote address is updated later with this function, the caller shouldn't set the connect option until in this call. Originally committed as revision 26245 to svn://svn.ffmpeg.org/ffmpeg/trunk
* add FF_API_UDP_GET_FILE define to disable the deprecated udp_get_file_handle()Aurelien Jacobs2010-10-15
| | | | | | public function Originally committed as revision 25481 to svn://svn.ffmpeg.org/ffmpeg/trunk
* ReindentMartin Storsjö2010-10-08
| | | | Originally committed as revision 25406 to svn://svn.ffmpeg.org/ffmpeg/trunk
* udp: Add an option for connecting the udp socketMartin Storsjö2010-10-08
| | | | | | | | | | This allows us to find out the local sending address via getsockname, otherwise we just get INADDR_ANY (or similar for v6). This also makes writes return ECONNREFUSED if nobody is listening on the receiving port. Originally committed as revision 25405 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Convert ff_is_multicast_address to take a struct sockaddr parameterMartin Storsjö2010-10-07
| | | | | | | | Not all users of this function will have a full struct sockaddr_storage available, and casting other sockaddrs to sockaddr_storage is wrong, while any sockaddr can be cast to a base sockaddr. Originally committed as revision 25388 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Share the is_multicast_address functionMartin Storsjö2010-10-07
| | | | | | | | The header probably isn't the right permanent place for this function, but it is quite small, and consensus seems to be that it can stay in the header for now, instead of creating a new file network.c just for this one. Originally committed as revision 25387 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move multicast address identification fallback macros to network.h from udp.cMartin Storsjö2010-10-07
| | | | Originally committed as revision 25386 to svn://svn.ffmpeg.org/ffmpeg/trunk
* udp: Define _DARWIN_C_SOURCEMartin Storsjö2010-10-05
| | | | | | This is required in order to get the IP_MULTICAST_TTL define. Originally committed as revision 25351 to svn://svn.ffmpeg.org/ffmpeg/trunk
* udp: Return the actual error code on errors, instead of AVERROR(EIO)Martin Storsjö2010-10-05
| | | | Originally committed as revision 25350 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Check for the IPPROTO_IPV6 define before using itMartin Storsjö2010-09-20
| | | | | | | This fixes building on FreeBSD in some configurations, if the IPv6 multicast structs are available, but IPPROTO_IPV6 isn't defined. Originally committed as revision 25147 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Check for udp_set_remote_url error.Reimar Döffinger2010-07-28
| | | | | | Fixes issue 1784 (hang with nonsense URL/no network available). Originally committed as revision 24575 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix misspelled parameter names in Doxygen documentation.Diego Biurrun2010-07-02
| | | | | | This fixes one Doxygen warning each. Originally committed as revision 23970 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make ff_url_split() publicMåns Rullgård2010-06-27
| | | | | | | ff_url_split() is retained as an alias, as it was used by ffserver, to avoid breaking ABI compatibility with it. Originally committed as revision 23822 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cosmetics: Change connexion to connection in code commentsMartin Storsjö2010-06-14
| | | | Originally committed as revision 23601 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Declare the url_write buffer parameter as constMartin Storsjö2010-06-01
| | | | Originally committed as revision 23401 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove explicit filename from Doxygen @file commands.Diego Biurrun2010-04-20
| | | | | | | | Passing an explicit filename to this command is only necessary if the documentation in the @file block refers to a file different from the one the block resides in. Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Don't report EINTR from select as an error, retry select insteadMartin Storsjö2010-03-26
| | | | Originally committed as revision 22694 to svn://svn.ffmpeg.org/ffmpeg/trunk
* move ff_url_split() and ff_url_join() declarations to internal.hAurelien Jacobs2010-03-14
| | | | | | those functions are not part of the public API Originally committed as revision 22534 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename url_split to ff_url_splitMartin Storsjö2010-03-08
| | | | | | Since this function isn't in the public API, it should have an ff_ prefix. Originally committed as revision 22321 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Don't explicitly initialize networking in the tcp and udp protocolsMartin Storsjö2010-03-05
| | | | | | Networking is always initialized when opening protocols. Originally committed as revision 22227 to svn://svn.ffmpeg.org/ffmpeg/trunk