summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cinepak: simplify, use FFMIN()Michael Niedermayer2011-11-181-2/+1
| | | | | Signed-off-by: Michael Niedermayer <[email protected]> Signed-off-by: Martin Storsjö <[email protected]>
* cinepak: Fix division by zero, ask for sample if encoded_buf_size is 0Michael Niedermayer2011-11-181-0/+4
| | | | | Signed-off-by: Michael Niedermayer <[email protected]> Signed-off-by: Martin Storsjö <[email protected]>
* applehttp: Fix seeking in streams not starting at DTS=0Panagiotis H.M. Issaris2011-11-181-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | The Apple HTTP Live Streaming demuxer's implementation of seeking searches for the MPEG TS segment which contains the requested timestamp. In its current implementation it assumes that the first segment will start from 0. But, MPEG TS streams do not necessarily start with timestamp (near) 0, causing seeking to fail for those streams. This also occurs when using live streaming of HTTP Live Streams. In this case sliding playlists may be used, which means that in that case only the last x encoded segments are stored, the earlier segments get deleted from disk and removed from the playlist. Because of this, when starting playback of a stream in the middle of such a broadcast, the initial segment fetched after parsing the m3u8 playlist will not start from timestamp (near) 0, causing (the admittedly limited live) seeking to fail. This patch changes this demuxers seeking implementation to use the initial DTS as an offset for searching the segments containing the requested timestamp. Signed-off-by: Martin Storsjö <[email protected]>
* http: Don't use the normal http proxy mechanism for httpsMartin Storsjö2011-11-181-0/+1
| | | | | | | | | | The tls protocol handles connections via proxies internally. With TLS/SSL, the peer verification requires that the client speaks directly with the server, since the proxy doesn't have the remote server's private key. Signed-off-by: Martin Storsjö <[email protected]>
* tls: Handle connection via a http proxyMartin Storsjö2011-11-181-0/+17
| | | | Signed-off-by: Martin Storsjö <[email protected]>
* http: Reorder two code blocksMartin Storsjö2011-11-181-7/+8
| | | | | | This is in preparation for a later commit. Signed-off-by: Martin Storsjö <[email protected]>
* http: Add a new protocol for opening connections via http proxiesMartin Storsjö2011-11-183-1/+117
| | | | | | | | | | This opens a plain TCP connection through the proxy via the CONNECT HTTP method. Normally, this is allowed for connections on port 443, but can in general be used to allow connections to any port (depending on proxy configuration), and could thus be used to tunnel any TCP connection via a HTTP proxy. Signed-off-by: Martin Storsjö <[email protected]>
* http: Split out the non-chunked buffer reading part from http_readMartin Storsjö2011-11-181-19/+25
| | | | | | | This is in preparation for a later commit, where this function is reused. Signed-off-by: Martin Storsjö <[email protected]>
* segafilm: add support for raw videosMatthew Hoops2011-11-181-1/+14
| | | | Signed-off-by: Martin Storsjö <[email protected]>
* rtpdec: only use RTCP for PTS when synchronizing multiple streamsJohn Brooks2011-11-181-1/+1
| | | | | | | | | RTCP timestamps are only necessary to synchronize time between multiple streams. For a single stream, the RTP packet timestamp provides more reliable timing. As a result, single-stream RTP sessions should now have accurate and monotonic PTS. Signed-off-by: Martin Storsjö <[email protected]>
* rtpdec: unwrap RTP timestamps for PTS calculationJohn Brooks2011-11-183-1/+10
| | | | | | The timestamp field in RTPDemuxContext was unused before this. Signed-off-by: Martin Storsjö <[email protected]>
* vp5: Fix illegal read.Alex Converse2011-11-171-2/+6
| | | | Found with Address Sanitizer
* vp6: Fix illegal read.Thierry Foucu2011-11-171-3/+6
| | | | | | Found with Address Sanitizer Signed-off-by: Alex Converse <[email protected]>
* tls: Use TLSv1_client_method for OpenSSLMartin Storsjö2011-11-171-1/+1
| | | | | | | | | | | | | TLSv1 is compatible with SSLv3, so this doesn't change much in terms of compatibility. By explicitly using TLSv1, OpenSSL sends the server name indication (SNI) header, which we already set using SSL_set_tlsext_host_name (earlier, this didn't have any effect). SNI allows servers to serve SSL content for different host names with separate certificates on one single port (vhosts). Signed-off-by: Martin Storsjö <[email protected]>
* mpegaudiodec: Don't use a nonexistent log context for av_dlogMartin Storsjö2011-11-161-2/+2
| | | | | | | This fixes builds with DEBUG defined, broken since 1158745a2d12966c58e83b66243a42f20190812e. Signed-off-by: Martin Storsjö <[email protected]>
* avformat: Accept the ISO8601 separate format as input, tooMartin Storsjö2011-11-161-3/+8
| | | | | | | | This makes the function accept the format of creation_time as output by demuxers (e.g. the mov demuxer), making the creation timestamp stay intact if transcoding. Signed-off-by: Martin Storsjö <[email protected]>
* avformat: Interpret times in ff_iso8601_to_unix_time as UTCMartin Storsjö2011-11-161-1/+2
| | | | | | | | | | This function is used in muxers for parsing the 'creation_time' metadata key, for converting it to a time value. This makes it match the behaviour of the exported 'creation_time' metadata from demuxers, where it is in UTC, too. Signed-off-by: Martin Storsjö <[email protected]>
* avutil: Add av_timegm as a public functionMartin Storsjö2011-11-164-3/+13
| | | | | | | | | | This is useful, since the normal timegm function isn't a standard function (requiring _BSD_SOURCE or _SVID_SOURCE on glibc to be visible, and not available on e.g. windows). The widely available function mktime uses the local time zone, which requires ugly workarounds to handle UTC time. Signed-off-by: Martin Storsjö <[email protected]>
* cinepak: Add another special case so that it can handle the following file:Mike Melanson2011-11-161-2/+3
| | | | | | | | | | | http://samples.mplayerhq.hu/V-codecs/CVID/bad_cinepak_frame_size.mov This fix works around another work around which handles a different type of odd Cinepak data. Thanks to Matthew Hoops (clone2727 - gmail.com) for the sample and fix. Signed-off-by: Martin Storsjö <[email protected]>
* lagarith: add some RGBA decoding supportKostya Shishkov2011-11-161-0/+67
| | | | Signed-off-by: Martin Storsjö <[email protected]>
* lagarith: Add correct line prediction for RGBNathan Caldwell2011-11-161-5/+5
| | | | Signed-off-by: Martin Storsjö <[email protected]>
* lavf: fix multiplication overflow in avformat_find_stream_info()Mans Rullgard2011-11-151-1/+1
| | | | | | | Converting to double before the multiplication rather than after avoids an integer overflow in some cases. Signed-off-by: Mans Rullgard <[email protected]>
* cosmetics: indentationJustin Ruggles2011-11-151-157/+157
|
* mpegaudiodec: init static tables in AVCodec.init_static_data()Justin Ruggles2011-11-152-18/+22
|
* binkvideo: simplify and remove invalid shiftsMans Rullgard2011-11-141-5/+4
| | | | Signed-off-by: Mans Rullgard <[email protected]>
* pulse: compute frame_duration once and fix itLuca Barbato2011-11-141-3/+4
| | | | | | | | The frame duration was calculated without taking in account the bytes per sample. Thanks to Lorenzo Pistone <[email protected]> for pointing the issue and providing an initial fix.
* lavf: simplify format_child_class_next()Luca Barbato2011-11-141-14/+17
| | | | | And fix the error introduced when adding private option to avio. See 32caa7b13cecca59213c73fa94dd683c2b003bfd
* hwaccel: OS X Video Decoder Acceleration (VDA) support.Sebastien Zwickert2011-11-1414-3/+581
| | | | Signed-off-by: Luca Barbato <[email protected]>
* doc: add support for an optional navigation bar in texi2html pagesJanne Grunau2011-11-141-2/+6
| | | | | | The navigation header for the web pages lives in a different repository. Read it during documentation regeneration to use the same navigation bar on all pages.
* lavf: pass options from AVFormatContext to avio.Anton Khirnov2011-11-132-6/+17
|
* avformat: Use avio_open2, pass the AVFormatContext interrupt_callback onwardsMartin Storsjö2011-11-135-8/+14
| | | | Signed-off-by: Anton Khirnov <[email protected]>
* avio: add avio_open2, taking an interrupt callback and optionsMartin Storsjö2011-11-135-3/+83
| | | | | | | | | | | The interrupt callback has to be passed in during opening (setting it after opening isn't enough), since a blocking open couldn't be interrupted otherwise. Options are passed down to procotols and also need to be available during open() in most cases. Signed-off-by: Anton Khirnov <[email protected]>
* avio: add support for passing options to protocols.Anton Khirnov2011-11-1318-38/+98
| | | | | Not used anywhere yet, support for passing options from avio_open() will follow.
* avio: add and use ffurl_protocol_next().Anton Khirnov2011-11-132-8/+18
|
* avformat: Pass the interrupt callback on to chained muxers/demuxersMartin Storsjö2011-11-132-0/+3
| | | | | | There are a few more cases of chained demuxers, but they only use custom IO which don't do any blocking IO and thus don't need the callback.
* avio: Add an AVIOInterruptCB parameter to ffurl_open/ffurl_allocMartin Storsjö2011-11-1318-40/+67
| | | | | Change all uses of these function to pass the relevant callback on.
* avformat: Use ff_check_interruptMartin Storsjö2011-11-138-10/+13
|
* avio: Add an internal utility function for checking the new interrupt callbackMartin Storsjö2011-11-132-0/+14
| | | | Signed-off-by: Anton Khirnov <[email protected]>
* avio: Add AVIOInterruptCBMartin Storsjö2011-11-133-0/+29
| | | | | | | | | | | | | This is a better io interrupt callback function, which has an opaque parameter, which is given to the interrupt callback. This allows callers to precisely cancel IO for one single AVFormatContext, without interrupt other ones in the same process. Note, it's not needed in AVIOContext, at the moment. Signed-off-by: Anton Khirnov <[email protected]>
* texi2html: remove stray \nLuca Barbato2011-11-131-6/+8
| | | | Single-quoted strings are printed verbatim in perl.
* doc: prettyfy the texi2html documentationLuca Barbato2011-11-131-5/+59
| | | | make it use the website css and start structuring it so it is consistent
* swscale: handle unaligned buffers in yuv2plane1Ronald S. Bultje2011-11-131-0/+2
| | | | | | | The issue had been introduced in c435653627529e22d74214c2266f571255e404d6 Signed-off-by: Luca Barbato <[email protected]>
* vble: remove vble_error_closeJanne Grunau2011-11-111-14/+14
| | | | | | It does not make much sense to factor the error handling to its own av_always_inline function. Fixes "format not a string literal and no format arguments" warning in the av_log.
* VBLE DecoderDerek Buitenhuis2011-11-118-1/+255
| | | | | | | | | Add a decoder for the VBLE Lossless Codec, which still has a cult following. Used to be popular several years ago on doom9. Signed-off-by: Derek Buitenhuis <[email protected]> Signed-off-by: Martin Storsjö <[email protected]>
* tta: use an integer instead of a pointer to iterate output samplesJustin Ruggles2011-11-111-1/+1
|
* shorten: do not modify samples pointer when interleavingJustin Ruggles2011-11-111-3/+4
|
* mpc7: only support stereo input.Justin Ruggles2011-11-111-1/+8
| | | | The Musepack SV7 reference encoder converts mono to stereo when encoding.
* dpcm: do not try to decode empty packetsJustin Ruggles2011-11-111-1/+1
|
* dpcm: remove unneeded buf_size==0 check.Justin Ruggles2011-11-111-3/+0
| | | | It is already checked in avcodec_decode_audio3()
* twinvq: add SSE/AVX optimized sum/difference stereo interleavingJustin Ruggles2011-11-115-18/+101
|