summaryrefslogtreecommitdiff
path: root/libavformat/udp.c
Commit message (Collapse)AuthorAge
...
* | udp: fix occasional crash on shutdownEric Petit2012-06-27
| | | | | | | | | | | | Wait until the thread is down before destroying the fifo Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-06-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: avconv: add an assert to silence an uninitialized variable warning. avconv: shut up an uninitialized variable warning. avfiltergraph: shut up uninitialized variable warning. af_join: initialize a variable to shut up gcc warning. amix: fix format specifier for AVFilterLink.sample_rate. lavfi: make filters less verbose. mpc8: read APE tags. lavr: x86: fix ff_conv_fltp_to_flt_6ch function prototypes libm: provide fallback definition for cbrtf() using powf() network: Don't redefine error codes if they already exist in errno.h configure: Check for sys/time.h network: Include unistd.h from network.h avconv: don't include vsrc_buffer.h, which doesn't exist anymore lavfi: reorder AVFilterLink fields. lavfi: reorder AVFilterContext fields. lavfi: reorder AVFilter fields. lavfi: reorder AVFilterBufferRef fields. lavfi: reorder AVFilterBuffer fields. Conflicts: configure libavcodec/v210dec.h libavfilter/asrc_anullsrc.c libavfilter/avfilter.h libavfilter/buffersrc.c libavfilter/src_movie.c libavfilter/vf_aspect.c libavfilter/vf_crop.c libavfilter/vf_drawbox.c libavfilter/vf_fade.c libavfilter/vf_overlay.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavfilter/vsrc_color.c libavformat/network.h libavutil/libm.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * network: Include unistd.h from network.hMartin Storsjö2012-06-26
| | | | | | | | | | | | | | | | | | | | | | This heaader is required for close() for sockets in network code. For winsock, the equivalent function is defined in the winsock2.h header. This avoids having the HAVE_UNISTD_H in all files dealing with raw sockets. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-06-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: MS Screen 1 decoder aacdec: Fix popping channel layouts. av_gettime: support Win32 without gettimeofday() Use av_gettime() in various places Move av_gettime() to libavutil dct-test: use emms_c() from libavutil instead of duplicating it mov: fix operator precedence bug mathematics.h: remove a couple of math defines Remove unnecessary inclusions of [sys/]time.h lavf: remove unnecessary inclusions of unistd.h bfin: libswscale: add const where appropriate to fix warnings bfin: libswscale: remove unnecessary #includes udp: Properly check for invalid sockets tcp: Check the return value from getsockopt network: Use av_strerror for getting error messages udp: Properly print error from getnameinfo mmst: Use AVUNERROR() to convert error codes to the right range for strerror network: Pass pointers of the right type to get/setsockopt/ioctlsocket on windows rtmp: Reduce the number of idle posts sent by sleeping 50ms Conflicts: Changelog configure libavcodec/aacdec.c libavcodec/allcodecs.c libavcodec/avcodec.h libavcodec/dct-test.c libavcodec/version.h libavformat/riff.c libavformat/udp.c libavutil/Makefile libswscale/bfin/yuv2rgb_bfin.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove unnecessary inclusions of [sys/]time.hMans Rullgard2012-06-20
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * udp: Properly check for invalid socketsMartin Storsjö2012-06-19
| | | | | | | | | | | | If stdin has been closed, 0 is a valid socket descriptor. Signed-off-by: Martin Storsjö <martin@martin.st>
| * network: Use av_strerror for getting error messagesMartin Storsjö2012-06-19
| | | | | | | | | | | | | | Also use ff_neterrno() instead of errno directly (which doesn't work on windows), for getting the error code. Signed-off-by: Martin Storsjö <martin@martin.st>
| * udp: Properly print error from getnameinfoMartin Storsjö2012-06-19
| | | | | | | | | | | | | | | | getnameinfo doesn't set errno on failure, it returns an error code, which should be handled by gai_strerror instead of the normal strerror. Signed-off-by: Martin Storsjö <martin@martin.st>
* | udp: check for HAVE_PTHREAD_CANCEL instead of HAVE_PTHREADS.Nicolas George2012-05-14
| | | | | | | | | | Some environments, for example Android, pretend to have pthreads but actually have only a partial implementation.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-29
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: asf: only set index_read if the index contained entries. cabac: add overread protection to BRANCHLESS_GET_CABAC(). cabac: increment jump locations by one in callers of BRANCHLESS_GET_CABAC(). cabac: remove unused argument from BRANCHLESS_GET_CABAC_UPDATE(). cabac: use struct+offset instead of memory operand in BRANCHLESS_GET_CABAC(). h264: add overread protection to get_cabac_bypass_sign_x86(). h264: reindent get_cabac_bypass_sign_x86(). h264: use struct offsets in get_cabac_bypass_sign_x86(). h264: fix overreads in cabac reader. wmall: fix seeking. lagarith: fix buffer overreads. dvdec: drop unnecessary dv_tablegen.h #include build: fix doc generation errors in parallel builds Replace memset(0) by zero initializations. faandct: Remove FAAN_POSTSCALE define and related code. dvenc: print allowed profiles if the video doesn't conform to any of them. avcodec_encode_{audio,video}: only reallocate output packet when it has non-zero size. FATE: add a test for vp8 with changing frame size. fate: add kgv1 fate test. oggdec: calculate correct timestamps in Ogg/FLAC Conflicts: libavcodec/4xm.c libavcodec/cook.c libavcodec/dvdata.c libavcodec/dvdsubdec.c libavcodec/lagarith.c libavcodec/lagarithrac.c libavcodec/utils.c tests/fate/video.mak Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace memset(0) by zero initializations.Diego Biurrun2012-03-28
| | | | | | | | Also remove one pointless zero initialization in rangecoder.c.
* | udp: lock all operations on shared variables.Nicolas George2012-03-22
| |
* | udp: return the error code instead of generic EIO.Nicolas George2012-03-22
| |
* | udp: call av_fifo_space directly as needed.Nicolas George2012-03-22
| | | | | | | | | | The comment seemed to indicate that left was used to limit the size of the recv, but it was not so.
* | udp: use non-blocking read instead of select.Nicolas George2012-03-22
| |
* | udp: use pthread_cancel instead of a shared flag.Nicolas George2012-03-22
| | | | | | | | | | It allows to exit the thread immediately instead of waiting for select to timeout (one second in the current code).
* | udp: fix non-blocking and interrupt handling.Nicolas George2012-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | In non-blocking mode, lowest-level read protocols are supposed block only for a short amount of time to let retry_transfer_wrapper() check for interrupts. Also, checking the interrupt_callback in the receiving thread is wrong, as interrupt_callback is not guaranteed to be thread-safe and the job is already done by retry_transfer_wrapper(). The error code was also incorrect. Bug reported by Andrey Utkin.
* | udp: Add option overrun_nonfatalAndrey Utkin2012-03-12
| | | | | | | | | | | | Optionize fail/survive on circular buffer overrun Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: remove dead code line (unused result)Andrey Utkin2012-03-12
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Revert "udp: add multicast input interface selection"Michael Niedermayer2012-03-12
| | | | | | | | | | | | This reverts commit 9abd47fe90a592822b326345726626a018641d04. Broke compilation on openbsd and others
* | udp: add multicast input interface selectionTudor.Suciu2012-03-12
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Fix a bunch of common typos. build: Skip compiling xvmc.h under the correct condition. configure: darwin: Change dylib install names to include major version. mpegts: Always honor a registration descriptor if present and there is no other codec information. aacdec: Fix SCE parity check. aacdec: Fix out of array writes (stack). rtsp: Only set the ttl parameter if the server actually gave a value udp: Set ttl for read-write streams, too, not only for write-only ones udp: Only bind to the multicast address if in read-only mode udp: Clarify the comment about binding the multicast address udp: Reorder comments Conflicts: libavcodec/aacdec.c tools/patcheck Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * udp: Set ttl for read-write streams, too, not only for write-only onesMartin Storsjö2012-03-09
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
| * udp: Only bind to the multicast address if in read-only modeMartin Storsjö2012-03-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes sending back RTCP RR packets if receiving RTP over multicast. If the multicast stream is sent on demand (set up and signalled via RTSP), the sender might depend on getting RTCP RR packets knowing that there are listeners, otherwise the stream can be closed after a certain timeout. This fixes receiving RTSP streams over multicast on unix, from certain Axis cameras. Signed-off-by: Martin Storsjö <martin@martin.st>
| * udp: Clarify the comment about binding the multicast addressMartin Storsjö2012-03-09
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
| * udp: Reorder commentsMartin Storsjö2012-03-09
| | | | | | | | | | | | | | | | | | When this code was added in 36b532815cb83, the new code was added between the existing comment and the existing line of code, making the old comment seem to refer to the new code. This makes it read correctly. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) sbrdsp.asm: convert all instructions to float/SSE ones. dv: cosmetics. dv: check buffer size before reading profile. Revert "AAC SBR: group some writes." udp: Print an error message if bind fails cook: extend channel uncoupling tables so the full bit range is covered. roqvideo: cosmetics. roqvideo: convert to bytestream2 API. dca: don't use av_clip_uintp2(). wmall: fix build with -DDEBUG enabled. smc: port to bytestream2 API. AAC SBR: group some writes. dsputil: remove shift parameter from scalarproduct_int16 SBR DSP: unroll sum_square rv34: remove dead code in intra availability check rv34: clean a bit availability checks. v4l2: update documentation tgq: convert to bytestream2 API. parser: remove forward declaration of MpegEncContext dca: prevent accessing static arrays with invalid indexes. ... Conflicts: doc/indevs.texi libavcodec/Makefile libavcodec/dca.c libavcodec/dvdata.c libavcodec/eatgq.c libavcodec/mmvideo.c libavcodec/roqvideodec.c libavcodec/smc.c libswscale/output.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * udp: Print an error message if bind failsMartin Storsjö2012-03-07
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | udp: Fix sign of error codes.Michael Niedermayer2012-02-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: fix segfault on closingLaurent BRULET2012-01-14
| | | | | | | | Fixes ticket915
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-06
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (21 commits) ipmovie: do not read audio packets before the codec is known truemotion2: check size before GetBitContext initialisation avio: Only do implicit network initialization for network protocols avio: Add an URLProtocol flag for indicating that a protocol uses network adpcm: ADPCM Electronic Arts has always two channels matroskadec: Fix a bug where a pointer was cached to an array that might later move due to a realloc() fate: Add missing reference file from 9b4767e4. mov: Support MOV_CH_LAYOUT_USE_DESCRIPTIONS for labeled descriptions. 4xm: Prevent buffer overreads. mjpegdec: parse RSTn to prevent skipping other data in mjpeg_decode_scan vp3: add fate test for non-zero last coefficient vp3: fix streams with non-zero last coefficient swscale: remove unused U/V arguments from yuv2rgb_write(). timer: K&R formatting cosmetics lavf: cosmetics, reformat av_read_frame(). lavf: refactor av_read_frame() to make it easier to understand. Report an error if pitch_lag is zero in AMR-NB decoder. Revert "4xm: Prevent buffer overreads." 4xm: Prevent buffer overreads. 4xm: pass the correct remaining buffer size to decode_i2_frame(). ... Conflicts: libavcodec/4xm.c libavcodec/mjpegdec.c libavcodec/truemotion2.c libavformat/ipmovie.c libavformat/mov_chan.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avio: Add an URLProtocol flag for indicating that a protocol uses networkMartin Storsjö2012-01-05
| | | | | | | | | | | | | | This definition is in two files, since the definitions will move to the private header at the next bump. Signed-off-by: Martin Storsjö <martin@martin.st>
* | udp: support non blocking reads with fifoMichael Niedermayer2011-12-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: Replace double select() by select+mutex+cond.Michael Niedermayer2011-12-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When no data was available both the buffer thread as well as the main thread would block in select(), when data becomes available both should move forward and as data is read in the buffer thread the main thread would block in select() later the read data was put in the fifo but the main thread still would be blocked in select() until either the timeout or another packet would come in. This is solved in this commit by using a mutex and a condition variable Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: return circular buffer error if such error happened.Michael Niedermayer2011-12-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-12-12
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: x86: cabac: replace explicit memory references with "m" operands avplay: don't request a stereo downmix wmapro: use av_float2int() lavc: avoid invalid memcpy() in avcodec_default_release_buffer() lavu: replace int/float punning functions lavfi: install libavfilter/vsrc_buffer.h Remove extraneous semicolons sdp: Restore the original mp4 format h264 extradata if converted rtpenc: Add support for mp4 format h264 rtpenc: Simplify code by introducing a separate end pointer movenc: Use the actual converted sample for RTP hinting Fix a bunch of common typos. Conflicts: doc/developer.texi doc/eval.texi doc/filters.texi doc/protocols.texi ffmpeg.c ffplay.c libavcodec/mpegvideo.h libavcodec/x86/cabac.h libavfilter/Makefile libavformat/avformat.h libavformat/cafdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/gxfenc.c libavformat/img2.c libavformat/movenc.c libavformat/mpegts.c libavformat/rtpenc_h264.c libavformat/utils.c libavformat/wtv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Fix a bunch of common typos.Diego Biurrun2011-12-11
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-12-02
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (25 commits) rtpenc: Add support for G726 audio rtpdec: Interpret the different G726 names as bits_per_coded_sample rtpenc: Change rtp_send_samples to handle sample sizes other than even bytes rtpenc: Cast a rescaling parameter to int64_t h264: cap max has_b_frames at MAX_DELAYED_PIC_COUNT - 1. ARM: fix indentation in ff_dsputil_init_neon() ARM: NEON put/avg_pixels8/16 cosmetics ARM: add remaining NEON avg_pixels8/16 functions ARM: clean up NEON put/avg_pixels macros fate: split acodec-pcm into individual tests swscale: #include "libavutil/mathematics.h" pmpdec: don't use deprecated av_set_pts_info. rv34: align temporary block of "dct" coefs Add PlayStation Portable PMP format demuxer proto: Realign struct initializers proto: Use .priv_data_size to allocate the private context mmsh: Properly clean up if the second ffurl_alloc failed rtmp: Clean up properly if the handshake failed md5proto: Remove the get_file_handle function applehttpproto: Use the close function if the open function fails ... Conflicts: libavcodec/vble.c libavformat/mmsh.c libavformat/pmpdec.c libavformat/udp.c tests/ref/acodec/pcm Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * proto: Use .priv_data_size to allocate the private contextMartin Storsjö2011-12-01
| | | | | | | | | | | | | | | | This simplifies the open functions by avoiding one function call that needs error checking, reducing the amount of extra bulk code. Signed-off-by: Martin Storsjö <martin@martin.st>
* | udp: update to new interrupt callback APIMichael Niedermayer2011-11-19
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-11-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: avcodec: add support for planar signed 8-bit PCM. ra144enc: add sample_fmts list to ff_ra_144_encoder smackaud: use uint8_t* for 8-bit output buffer type smackaud: clip output samples smackaud: use sign_extend() for difference value instead of casting sipr: use a function pointer to select the decode_frame function sipr: set mode based on block_align instead of bit_rate sipr: do not needlessly set *data_size to 0 when returning an error ra288: fix formatting of LOCAL_ALIGNED_16 udp: Allow specifying the local IP address VC1: Add bottom field offset to block_index[] to avoid rewriting (+10L) vc1dec: move an if() block. vc1dec: use correct hybrid prediction threshold. vc1dec: Partial rewrite of vc1_pred_mv() vc1dec: take ME precision into account while scaling MV predictors. lavf: don't leak corrupted packets Conflicts: libavcodec/8svx.c libavcodec/ra288.c libavcodec/version.h libavformat/iff.c libavformat/udp.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * udp: Allow specifying the local IP addressMartin Storsjö2011-11-09
| | | | | | | | | | | | | | This is useful if sending multicast data on a host with multiple interfaces. Signed-off-by: Martin Storsjö <martin@martin.st>
* | udp: simplify 7a032cb97f743a651138d2da6214c79e0ce089ddMichael Niedermayer2011-11-09
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Fix segfault on UDP readingAndrey Utkin2011-11-09
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: fix circular buffer error handlingMichael Niedermayer2011-08-25
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: buffer datagrams in circular buffer instead of a bytestreamMichael Niedermayer2011-08-25
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | udp: allow fifo size to be tuned seperatelyMichael Niedermayer2011-07-25
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-07-01
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: cosmetics: fix some then/than typos doxygen: Include libavcodec and libavformat examples into the documentation avutil: elaborate documentation for av_get_random_seed Add support for aac streams in mp4/mov without extradata. aes: whitespace cosmetics adler32: whitespace cosmetics swscale: fix another yuv range conversion overflow in 16bit scaling. Fix cpu flags test program opt-test: Add missing braces to silence compiler warnings. build: Eliminate obsolete test targets. udp: Fix a compilation warning swscale: Unbreak build with --enable-small base64: add fate test aes: improve test program and add fate test adler32: make test program more useful and add fate test swscale: fix yuv range correction when using 16-bit scaling. aacenc: Make chan_map const correct Conflicts: Makefile doc/examples/muxing-example.c libavformat/udp.c libavutil/random_seed.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * udp: Fix a compilation warningMartin Storsjö2011-06-30
| | | | | | | | | | | | | | | | | | This fixes this compilation warning, by making endptr a non-const pointer, as required by strtol: In function ‘udp_open’: warning: passing argument 2 of ‘strtol’ from incompatible pointer type Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-06-25
|\| | | | | | | | | | | | | | | * qatar/master: configure: Add -Wno-format-zero-length to CFLAGS. udp: Receive on the remote port number, if no local port is set Merged-by: Michael Niedermayer <michaelni@gmx.at>