Commit Graph

7623 Commits

Author SHA1 Message Date
Michael Niedermayer
e16665bf72 Merge remote branch 'qatar/master'
* qatar/master:
  Use av_log_ask_for_sample() to request samples from users.
  Make av_log_ask_for_sample() accept a variable number of arguments.
  vqavideo: We no longer need to ask for version 1 samples.
  aacdec: indentation cosmetics

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-23 01:09:43 +02:00
Martin Storsjö
84465f2180 applehttp: Handle AES-128 encrypted streams
This should hopefully fix roundup issue 2586.

This commit only implements it in the demuxer, not in the
protocol handler. If desired, some of the code could be
refactored to be shared by both implementations.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-23 00:27:21 +03:00
Martin Storsjö
6e4f70a8de Add a protocol handler for AES CBC decryption with PKCS7 padding
This can later be extended to support other AES bit sizes,
encryption, other crypto algorithms, reading the key from a URL, etc.

In order to use it, the key and initialization vector has to be
passed via AVOptions. Since such options can't be passed to
protocols from the command line, the protocol is currently
only for libavformat internal use.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-23 00:27:10 +03:00
Diego Biurrun
d9dee728b8 Use av_log_ask_for_sample() to request samples from users. 2011-04-22 20:12:39 +02:00
Carl Eugen Hoyos
07f45bc988 Support Canopus SD50 with fourcc "CDV5".
Fixes ticket #93.
2011-04-22 18:45:47 +02:00
Stefano Sabatini
50f43fb0e2 matroskaenc: replace AVERROR_NOTSUPP with AVERROR(EINVAL)
AVERROR_NOTSUPP has been dropped with the major bump. Since the
signalled error denotes a configuration problem, AVERROR(EINVAL) looks
an adequate replacement.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-22 10:21:21 +02:00
Michael Niedermayer
8772156be0 Merge remote branch 'qatar/master'
* qatar/master:
  APIChanges: document git revision for CODEC_CAP_SLICE_THREADS addition.
  Introduce slice threads flag.
  FATE: allow forcing thread-type when doing threaded fate runs.
  Use av_log_ask_for_sample() where appropriate.
  error: sort, pack, and align error code and string definitions
  The stabilization period after version bumps should be one month, not one week.
  applehttp: Expose the stream bitrate via metadata
  doc: Add some initial docs on the applehttp demuxer
  Provide a fallback version of the libm function trunc
  libavdevice: Define _XOPEN_SOURCE for usleep
  lavc: provide deprecated avcodec_thread_init until next major version
  lavc: provide the opt.h header until the next bump
  error: change AVERROR_EOF value
  error: remove AVERROR_NUMEXPECTED
  error: add error code AVERROR_OPTION_NOT_FOUND, and use it in opt.c

Conflicts:
	libavcodec/h264.c
	libavutil/error.c
	libavutil/error.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-22 03:54:30 +02:00
Martin Storsjö
fe8e039460 applehttp: Expose the stream bitrate via metadata
This helps callers to intelligently switch between bitrate
variants.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-21 14:13:09 +03:00
Stefano Sabatini
9bf81b49cf img2: return AVERROR(EINVAL) in case of invalid filename pattern
In write_packet(), return AVERROR(EINVAL) rather than AVERROR(EIO) if
the provided output filename pattern is not valid. Indeed this has to
be considered a configuration error rather than an I/O error.

Allow a less confusing error report.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-21 12:09:15 +02:00
Stefano Sabatini
79157f400b error: remove AVERROR_NUMEXPECTED
AVERROR_NUMEXPECTED is used only in the image muxer and demuxer, and
has a too much specific meaning, which is better explained through a
log message. Thus it can be replaced by AVERROR(EINVAL).

This breaks API.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-21 07:10:16 +02:00
Michael Niedermayer
10d2ae8cf7 Merge remote branch 'qatar/master'
* 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>
2011-04-21 03:37:05 +02:00
Nicolas George
b9553cf4b8 avio: fix AVIO_FLAG_READ/WRITE test in ffurl_*.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-04-20 18:13:54 +02:00
Michael Niedermayer
52512d0a43 oggdec: use av_freep() instead of av_free()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-20 17:37:16 +02:00
Martin Storsjö
26f6b8c571 avio: Fix sanity checks in ffurl_read*
This fixes e.g. reading data over HTTP, where the underlying
socket is set to read/write.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-20 17:00:11 +02:00
Martin Storsjö
7bbb67d580 libavformat: Free AVFormatContext->streams
After switching this from a statically allocated array to a
dynamically allocated one in the major bump, this needs explicit
freeing.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-20 15:42:55 +03:00
Martin Storsjö
c60112f268 libavformat: Make protocols pass URLContext as log context where available
Since the libavformat major bump, URLContext contains an AVClass,
making it a usable log context.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-20 14:59:45 +03:00
Vladimir Pantelic
8408e1d7d6 asf: remove commented out code in asf_read_seek
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-04-20 12:47:13 +01:00
Michael Niedermayer
efb5fa79f5 Merge remote branch 'qatar/master'
* 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>
2011-04-20 04:48:23 +02:00
Nicolas George
90a2929416 oggparsecelt: cosmetic: order lines more logically.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-04-19 23:36:29 +02:00
Nicolas George
51c1e255e5 oggparsecelt: call av_set_pts_info unconditionally.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-04-19 23:03:51 +02:00
Stefano Sabatini
55815edca0 prefer avio_check() over url_exist()
The problem with url_exist() is that it tries to open a resource in
RDONLY mode. If the file is a FIFO and there is already a reading
client, the open() call will hang.

By using avio_check() with access mode of 0, the second reading
process will check if the file exists without attempting to open it,
thus avoiding the lock.

Fix issue #1663.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-19 19:48:07 +02:00
Stefano Sabatini
59d96941f0 avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbols
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.
2011-04-19 19:47:58 +02:00
Anton Khirnov
32b80696e0 lavf: remove misc disabled cruft. 2011-04-19 18:31:55 +02:00
Anton Khirnov
df56d58339 lavf: remove FF_API_INDEX_BUILT cruft 2011-04-19 18:31:36 +02:00
Anton Khirnov
7f804085f1 lavf: remove FF_API_URL_CLASS cruft. 2011-04-19 18:31:12 +02:00
Anton Khirnov
5763e63913 lavf: remove FF_API_SYMVER cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
b4c5acabb9 lavf: remove FF_API_FIRST_FORMAT cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
583f6c67b6 lavf: remove FF_API_PARAMETERS_CODEC_ID cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
fc2d3a19c5 lavf: remove FF_API_LAVF_UNUSED cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
58d5ff0abf lavf: remove FF_API_PARSE_FRAME_PARAM cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
4df001d77f lavf: remove FF_API_ALLOC_FORMAT_CONTEXT cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
5048e36c99 lavf: remove FF_API_URL_SPLIT cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
c4efa7c229 lavf: remove FF_API_UDP_GET_FILE cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
61573bf1ba lavf: remove FF_API_GUESS_FORMAT cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
dcd4a7b62f lavf: remove FF_API_REGISTER_PROTOCOL cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
468644f6c1 lavf: remove FF_API_URL_RESETBUF cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
575c18da1b lavf: remove FF_API_OLD_METADATA cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
761ad42968 lavf: remove FF_API_MAX_STREAMS cruft 2011-04-19 18:28:38 +02:00
Nicolas George
e61b83d29e Ogg: add support for Xiph's CELT (Opus) codec.
This patch also introduces CODEC_ID_CELT.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-04-19 15:49:32 +02:00
Carl Eugen Hoyos
133208ffb3 Be more verbose when printing the probe result. 2011-04-19 11:50:27 +02:00
Michael Niedermayer
a3040715e1 Merge commit 'f0a41afd8a37ebe972436fabfa3d289178bbd83b'
* commit 'f0a41afd8a37ebe972436fabfa3d289178bbd83b':
Not pulled:  Replace mplayerhq.hu URLs by libav.org.
  asfdec: Remove dead code from asf_read_close().
  ptx: Use av_log_ask_for_sample() where appropriate.

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-19 02:08:35 +02:00
Baptiste Coudurier
c22f2527ed In mov and flv muxer, check aac bitstream validity. 2011-04-18 14:30:14 -07:00
Anton Khirnov
139f3ac42d Bump major versions of all libraries.
They've accumulated enough new APIs and corresponding deprecated cruft.

This breaks API and ABI.
2011-04-18 20:19:47 +02:00
Diego Biurrun
f0a41afd8a Replace mplayerhq.hu URLs by libav.org. 2011-04-18 18:23:16 +02:00
Diego Biurrun
0b5ae1fdd3 asfdec: Remove dead code from asf_read_close(). 2011-04-18 15:35:45 +02:00
Michael Niedermayer
2d2b5a1421 10l, commit that should have been stashed into the merge.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-17 23:59:00 +02:00
Michael Niedermayer
c40798441f Merge remote branch 'qatar/master'
* qatar/master:
  ac3dec: fix processing of delta bit allocation information.
  vc1: fix fate-vc1 after previous commit.
  wmv3dec: fix playback of complex WMV3 files using simple_idct.
  make av_dup_packet() more cautious on allocation failures
  make containers pass palette change in AVPacket
  introduce side information for AVPacket

Politic commits that have not been pulled:
  Update regtest checksums after revision 6001dad.
  Replace more FFmpeg references by Libav.
  Replace references to ffmpeg-devel with libav-devel; fix roundup URL.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-17 23:43:54 +02:00
Diego Biurrun
6001dad6e2 Replace more FFmpeg references by Libav. 2011-04-17 19:31:49 +02:00
Baptiste Coudurier
0ba8485666 In mov muxer, compute avg bitrate in esds 2011-04-16 16:19:10 -07:00
Reimar Döffinger
3c10843f15 Use av_set_pts_info to set time_base.
Also remove useless assignments of 0, the priv
context is initialized to 0.
2011-04-16 17:51:00 +02:00
Reimar Döffinger
f0a68a20a7 Enable header parsing for MPEG2VIDEO to get time-stamps.
FFmpeg can generate pts and dts on its own, but only
if we enable parsing, so do that.
This fixes ticket #46.
2011-04-16 17:44:42 +02:00
Michael Niedermayer
d3b379b95b Merge commit '4d012eb541ed7f35e00c87035a470d9f0a24a6e8'
* commit '4d012eb541ed7f35e00c87035a470d9f0a24a6e8':
  xwma: Fix wrong printf format expression.
  xwma demuxer: typos
  oggdec: simplify audio chained ogg streams support

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-16 03:55:48 +02:00
Kostya Shishkov
2d8591c27e make containers pass palette change in AVPacket
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-15 18:02:05 +02:00
Diego Biurrun
4d012eb541 xwma: Fix wrong printf format expression.
Also add inttypes.h #include for PRId64 macros.

This fixes the following warnings:
libavformat/xwma.c:147: warning: too many arguments for format
libavformat/xwma.c:151: warning: too many arguments for format
2011-04-15 13:28:04 +02:00
Max Horn
ef8b54fc88 xwma demuxer: typos
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-15 12:19:58 +02:00
Clément Bœsch
8f3eebd663 oggdec: simplify audio chained ogg streams support
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-15 11:45:03 +02:00
Michael Niedermayer
85b2114759 Merge commit 'a3a0af4fb1237bed0af75868073f9a63db8b1864'
* commit 'a3a0af4fb1237bed0af75868073f9a63db8b1864':
  avutil: make aes and sha api public
  handle malloc failures in ff_get_wav_header
  add xWMA demuxer
  mpegts: force the default timebase
  libavcodec: Bump micro after adding the dtx AVOptions

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-15 04:50:06 +02:00
Max Horn
ca402f32e3 handle malloc failures in ff_get_wav_header
ff_get_wav_header is reading data from a WAVE file and then uses it
(without validation) to malloc a buffer. It then proceeded to read
data into the buffer, without verifying that the allocation succeeded.

To address this, change ff_get_wav_header to return an error if
allocation failed, and adapted all calling code to handle that error.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-14 13:56:09 +02:00
Max Horn
ad4c50347a add xWMA demuxer
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-14 13:55:30 +02:00
Rudolf Polzer
0a962e61e9 mpegts: force the default timebase
The mpegts muxer does not set the stream time base using
av_set_pts_info, but expects it to have the default value of 1/90000.
If the calling code changes stream pts before writing the header,
other muxers override the time base at that point (like mpegenc.c).
2011-04-14 13:51:26 +02:00
Michael Niedermayer
c55780dcef Merge remote branch 'qatar/master'
* qatar/master: (32 commits)
  libopencore-amr, libvo-amrwbenc: Allow enabling DTX via private AVOptions
  libopencore-amr, libvo-amrwbenc: Only check the bitrate when changed
  libopencore-amr, libvo-amrwbenc: Find the closest matching bitrate
  libvo-*: Fix up the long codec names
  libavcodec: Mark AVCodec->priv_class const
  swscale: Factorize FAST_BGR2YV12 definition.
  libvo-aacenc: Only produce extradata if the global header flag is set
  lavf: postpone removal of public metadata conversion API
  lavc: postpone removal of request_channels
  lavc: postpone removal of audioconvert and sample_fmt wrappers
  lavf: postpone removal of deprecated avio functions
  libopencore-amr: Cosmetics: Rewrap and align
  libopencore-amr, libvo-amrbwenc: Rename variables and functions
  libopencore-amr: Convert commented out debug logging into av_dlog
  libopencore-amr: Remove an unused state variable
  libvo-amrwbenc: Don't explicitly store bitrate modes in the bitrate table
  libopencore-amr: Remove a useless local variable
  libopencore-amr, libvo-amrwbenc: Make the bitrate/mode mapping array static const
  libopencore-amr, libvo-amrwbenc: Return proper error codes in most places
  libopencore-amr: Don't print carriage returns in log messages
  ...

Conflicts:
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/libvo-aacenc.c
	libavcodec/libvo-amrwbenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-14 03:21:38 +02:00
Anton Khirnov
451d566f4b lavf: postpone removal of public metadata conversion API
It's been deprecated only a few months ago, long after 0.6.
2011-04-13 13:50:17 +02:00
Anton Khirnov
548e62c5ae lavf: postpone removal of deprecated avio functions
They've been deprecated very recently.
2011-04-13 13:50:17 +02:00
Martin Storsjö
a92a7ddc25 applehttp: Only check the discard flags if v->ctx actually is initialized
This code could be executed if the demuxer reads more than one
segment before returning from av_open_input_stream.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:37 +03:00
Anton Khirnov
86a89ae3f2 lavf: bump minor and add an APIChanges entry for the last avio changes 2011-04-13 07:41:57 +02:00
Anton Khirnov
4bde56d1af avio: deprecate url_exist in favor of avio_check. 2011-04-13 07:38:18 +02:00
Stefano Sabatini
313176565c file: implement url_check() callback in the file and pipe protocols
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-13 07:38:18 +02:00
Stefano Sabatini
175389c854 avio: add avio_check()
The new function is more flexible than url_exist(), as it allows to
specify which access flags to check, and does not require an explicit
open of the checked resource.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-13 07:38:15 +02:00
Anton Khirnov
cbea3ac820 avio: left-shift AVIO_ flags on next bump
Now AVIO_RDONLY is defined as 0, so it's not usable as a flag.
2011-04-13 07:36:32 +02:00
Michael Niedermayer
d6f79edb6e flv demuxer: dont error out due to index problems, but inform the user about it.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-13 02:57:49 +02:00
Michael Niedermayer
9891004ba9 Merge remote branch 'qatar/master'
* qatar/master:
Partially merged:flvdec: Allow parsing keyframes metadata without seeking in most cases
  Error out if vaapi is not found
  avio: undeprecate av_url_read_fseek/fpause under nicer names
  libvo-*: Don't use deprecated sample format names and enum names
DUPLICATE  flvdec: Fix support for flvtool2 "keyframes based" generated index
DUPLICATE  libavcodec: Use "const enum AVSampleFormat[]" in AVCodec initialization
  Fix the conversion of AV_SAMPLE_FMT_FLT and _DBL to AV_SAMPLE_FMT_S32.
  Convert some undefined 1<<31 shifts into 1U<<31.

Conflicts:
	configure
	libavcodec/libvo-aacenc.c
	libavcodec/libvo-amrwbenc.c
	libavformat/flvdec.c

Marged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-13 02:49:22 +02:00
Vitor Sessak
96573c0d76 lavf/utils.c: Order packets with identical PTS by stream index.
This allows for more reproducible results when using multi-threading.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-12 19:06:26 -04:00
Martin Storsjö
578d6861a7 flvdec: Allow parsing keyframes metadata without seeking in most cases
Stop the avio input at a point where amf_parse_object can
continue parsing the end of the object seamlessly, when all
data is available.

If unsupported data is encountered within the keyframes object,
try seeking to the start of the keyframes object - if the seek
back was successful, the caller can continue parsing the rest
of the AMF data.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-12 23:08:55 +03:00
Anton Khirnov
ff1ec0c3f8 avio: undeprecate av_url_read_fseek/fpause under nicer names
It seems their replacements won't be ready anytime soon.
2011-04-12 19:17:05 +02:00
Kharkov Alexander
b5304f7b2e flvdec: Fix support for flvtool2 "keyframes based" generated index
Current keyframes data parser unconditionally rewind metadata to
the end at the end of function. As result ALL metadata located
after keyframes index not parsed, and as metadata object can have
ANY placement inside metadata it can lead to unpredictable result
(bitrate can not be found, etc.). As result FLV movie will not
play at all in such situation.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-12 12:38:45 +03:00
Michael Niedermayer
4727ec3c0e Merge remote branch 'qatar/master'
* qatar/master:
Not pulled due to wrong author, according to carl:  Add unconditional return statement to yuva420_rgb32_MMX() / yuva420_bgr32_MMX().
  Fix compilation of timefilter test program.
  Add support for AMR-WB encoding via libvo-amrwbenc
  Add an AAC encoder by using the libvo-aacenc library
  g722: Return 8 bits per sample for g722 in av_get_bits_per_sample

Conflicts:
	Changelog

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-12 03:48:21 +02:00
Diego Biurrun
70ad9842a5 Fix compilation of timefilter test program.
The printf function is forbidden in library code, but not in test programs,
so #undefine the printf macro that disables the system printf function.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-11 14:18:48 +02:00
Michael Niedermayer
c104a6e902 oggdec: use av_freep() instead of av_free()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-11 11:49:36 +02:00
Michael Niedermayer
ab8cfd45f8 Merge remote branch 'qatar/master'
* qatar/master:
  avio: add more documentation for AVIOContext.
  Parse sprite data for WMVP and WVP2, and decode sprites for the latter
  Replace outdated info on the FAQ
  Redefine sameq
  pad: fix example explanation
  gradfun: add notice from the MPlayer manual
  eval: add support for trunc, ceil, and floor functions
  documentation: add setdar and setsar description to filters.texi
  avio: document some members of AVIOContext.
  avio: document avio_close().
  avio: cosmetics, vertically align comments.
  avio: cosmetics, group the reading functions.
  avio: cosmetics, merge all the FF_API_OLD_AVIO blocks.
  avio: cosmetics, move AVIOContext to start of the file.
  avio: update file header.
  os: fix OpenBSD/PowerPC compilation
  pixfmt: add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
  oggdec: fix demuxing chained audio streams
  fix typo

Conflicts:
	doc/filters.texi
	libavformat/avio.h
	libavutil/pixfmt.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-11 04:08:08 +02:00
Anton Khirnov
d1c5fdf892 avio: add more documentation for AVIOContext. 2011-04-10 14:31:49 +02:00
Alberto Delmás
768c525114 Parse sprite data for WMVP and WVP2, and decode sprites for the latter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-10 10:07:49 +02:00
Anton Khirnov
c1a9012d62 avio: document some members of AVIOContext. 2011-04-10 07:41:56 +02:00
Anton Khirnov
e782a0c6da avio: document avio_close(). 2011-04-10 07:41:56 +02:00
Anton Khirnov
893816ba1e avio: cosmetics, vertically align comments. 2011-04-10 07:41:56 +02:00
Anton Khirnov
72d4405b66 avio: cosmetics, group the reading functions. 2011-04-10 07:41:56 +02:00
Anton Khirnov
37744e3282 avio: cosmetics, merge all the FF_API_OLD_AVIO blocks. 2011-04-10 07:41:56 +02:00
Anton Khirnov
fafa7290f1 avio: cosmetics, move AVIOContext to start of the file. 2011-04-10 07:41:56 +02:00
Anton Khirnov
6084ee5dc5 avio: update file header. 2011-04-10 07:41:55 +02:00
Clément Bœsch
47dec30edb oggdec: fix demuxing chained audio streams
Chained ogg served by icecast and mpd should demux
properly now.

Fixes issue2337

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-10 04:33:15 +02:00
Michael Niedermayer
a2beabc231 Merge remote branch 'qatar/master'
* qatar/master:
  daud: Don't write packets that are too large to have their size expressed in the bytestream.
DUPLICATE  pthread: validate_thread_parameters() ignored slice-threading being intentionally off
DUPLICATE  Use consistent condition for whether to run slice-threading execute function.
  avformat.h: fix a misplaced #endif
DUPLCIATE  vaapi: cope with VA-API 0.32, i.e. fix VC-1 decoding on Sandy Bridge.
DUPLICATE  vaapi: filter out DELAYED_PIC_REF flag to determine field.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-10 03:32:29 +02:00
Alex Converse
347b375a80 daud: Don't write packets that are too large to have their size expressed in the bytestream. 2011-04-09 17:32:09 -07:00
Reimar Döffinger
d459d8e28d Abort Ogg header parsing when we encounter a data packet.
Fixes ticket #15.
2011-04-10 01:35:48 +02:00
Anton Khirnov
17ca374c7d avformat.h: fix a misplaced #endif 2011-04-09 13:35:10 +02:00
Michael Niedermayer
c0577ceb55 flv: Only parse keyframe index when the underlaying protocol allows seeking as we need to seek to read the index
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-09 03:23:49 +02:00
Kharkov Alexander
ba667e600f Fix support for flvtool2 "keyframes based" generated index in FLV format decoder
Current keyframes data parser unconditionally rewind metadata to the end
at the end of function. As result ALL metadata located after keyframes
index not parsed,
and as metadata object can have ANY placement inside metadata it can
lead to unpredictable result
(bitrate can not be found, etc.). As result FLV movie will not play at
all in such situation.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-09 03:23:49 +02:00
Michael Niedermayer
d4d09329ee Merge remote branch 'qatar/master'
* 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>
2011-04-09 03:17:07 +02:00
Anton Khirnov
0c68c80419 lavf: bump minor and add an APIChanges entry for avformat cleanup 2011-04-08 21:00:41 +02:00
Anton Khirnov
3ee53dabcf lavf: get rid of ffm-specific stuff in avformat.h 2011-04-08 20:58:19 +02:00
Anton Khirnov
cdc6a87f19 avio: deprecate av_protocol_next(). 2011-04-08 17:48:53 +02:00
Anton Khirnov
f8270bbf8c avio: add a function for iterating though protocol names. 2011-04-08 17:48:44 +02:00
Anton Khirnov
c234d40bd9 lavf: rename a parameter of av_sdp_create from buff->buf
This is more consistent with the rest of the API.
2011-04-08 16:45:41 +02:00
Anton Khirnov
c3675dfe1e lavf: rename avf_sdp_create to av_sdp_create.
The new name is more consistent with the rest of the API.
2011-04-08 16:45:40 +02:00
Anton Khirnov
a9bf9d8e53 lavf: make av_guess_image2_codec internal
It doesn't look very useful as a public function.
2011-04-08 16:44:29 +02:00
Anton Khirnov
5593f03148 avio: make URLProtocol internal. 2011-04-08 15:59:26 +02:00
Anton Khirnov
c486dade95 avio: make URLContext internal. 2011-04-08 15:59:19 +02:00
Anton Khirnov
c5704b2b9a lavf: mark av_pkt_dump(_log) for remove on $next+1 bump. 2011-04-08 15:44:09 +02:00
Anton Khirnov
f35ff97f2e lavf: use designated initializers for all protocols
This is more readable and makes it easier to reorder URLProtocol
members.
2011-04-08 11:08:26 +02:00
Anton Khirnov
a6aa7a1a14 applehttp: don't use deprecated url_ functions. 2011-04-08 09:18:48 +02:00
Anton Khirnov
d6bbe76124 avio: move two ff_udp_* functions from avio_internal to url.h 2011-04-08 07:08:22 +02:00
Anton Khirnov
acaceca2f1 asfdec: remove a forgotten declaration of nonexistent function 2011-04-08 07:08:12 +02:00
Anton Khirnov
026e175775 avio: deprecate the typedef for URLInterruptCB
There's no particular reason to pollute the namespace with a typedef for
it.
2011-04-08 07:07:58 +02:00
Michael Niedermayer
c88caa522c Merge remote branch 'qatar/master'
* 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>
2011-04-08 02:50:13 +02:00
Luca Barbato
a2031251c7 proto: include os_support.h in network.h
Fix compilation on systems without poll()
2011-04-07 21:03:12 +02:00
Anton Khirnov
9181976348 matroskaenc: don't write an empty Cues element. 2011-04-07 18:11:24 +02:00
Anton Khirnov
5cec897105 avio: move extern url_interrupt_cb declaration from avio.h to url.h 2011-04-07 18:11:24 +02:00
Anton Khirnov
8e76a19b63 avio: make av_register_protocol2 internal. 2011-04-07 18:11:24 +02:00
Anton Khirnov
80c6e238b0 avio: avio_ prefix for url_set_interrupt_cb. 2011-04-07 18:11:24 +02:00
Anton Khirnov
f87b1b373a avio: AVIO_ prefixes for URL_ open flags. 2011-04-07 18:07:16 +02:00
Peter Ross
de174d0d25 riff: add ATRAC3+ guid
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 17:54:52 +02:00
Peter Ross
aa9380c89c ff_get_wav_header: perform full lookup on WAVEFORMATEXTENSIBLE subformat guid
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 17:54:52 +02:00
Peter Ross
36ffabc4ee move PRI_GUID, ARG_GUID, AVCodecGuid, ff_codec_guid_get_id, MEDIASUBTYPE_BASE_GUID and audio_guids[] to riff.c/h (add FF_ prefix to PRI_GUID, ARG_GUID, and MEDIASUBTYPE_BASE_GUID; rename audio_guids to ff_codec_wav_guids)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 17:54:52 +02:00
Peter Ross
c1309b27d2 move ff_asf_guid, ff_guidcmp and ff_get_guid into riff.h
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 17:54:52 +02:00
Michael Niedermayer
c0e51ec9c6 Merge remote branch 'qatar/master'
* qatar/master:
  Fix parser: mark av_parser_parse() for removal on next major bump
  swscale: postpone sws_getContext removal until next major bump.
  fate: add AAC LATM test
  mmst: get rid of deprecated AVERRORs
  lxfdec: use AVERROR(ENOMEM) instead of deprecated AVERROR_NOMEM.
  Reemove remaining uses of deprecated AVERROR_NOTSUPP.
REIMPLEMENTED in 2 lines of code:  lavf: if id3v2 tag is present and all else fails, guess by file extension

Conflicts:
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 03:32:26 +02:00
Luca Barbato
3d42d4937b proto: introduce listen option in tcp
This way is possible to have simple micro-server act like

ffmpeg -i file.nut -vcodec copy -acodec copy -f nut tcp://foo:1234?listen
2011-04-07 02:54:30 +02:00
Luca Barbato
ebba2b3e2a proto: factor ff_network_wait_fd and use it on udp
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.
2011-04-07 02:53:55 +02:00
Reimar Döffinger
1265395b5b Add PlayStation Portable PMP format demuxer
Not yet complete, for demuxing AAC the AAC header must be generated
manually.
Possibly the decoder could accept the header as extradata to simplify
this.
2011-04-06 19:30:42 +02:00
Anton Khirnov
6e37b45888 mmst: get rid of deprecated AVERRORs 2011-04-06 14:10:08 +02:00
Anton Khirnov
a2018b5167 lxfdec: use AVERROR(ENOMEM) instead of deprecated AVERROR_NOMEM. 2011-04-06 14:10:08 +02:00
Anton Khirnov
f5b386afab Reemove remaining uses of deprecated AVERROR_NOTSUPP. 2011-04-06 14:10:08 +02:00
Anton Khirnov
56a1000917 lavf: if id3v2 tag is present and all else fails, guess by file extension 2011-04-06 14:10:08 +02:00
Michael Niedermayer
11d78415ca Merge remote branch 'qatar/master'
* qatar/master:
  psymodel: extend API to include PE and bit allocation.
  avio: always compile dyn_buf functions
  Remove unnecessary parameter from ff_thread_init() and fix behavior
  Revert "aac_latm_dec: use aac context and aac m4ac"
  configure: tell user if libva is enabled like the rest of external libs.
  Add silence support for AV_SAMPLE_FMT_U8.
  avio: make URL_PROTOCOL_FLAG_NESTED_SCHEME internal
  avio: deprecate av_url_read_seek
  avio: deprecate av_url_read_pause
  ac3enc: NEON optimised extract_exponents

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-06 02:59:49 +02:00
Michael Niedermayer
1f3a1fa921 Fix gazeta-20090408-1456-aa.ts
regression introduced by 15957b197a
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-06 01:09:04 +02:00
Anton Khirnov
668438a31e avio: always compile dyn_buf functions
Fixes build with --disable-muxers --disable-network.

Thanks to Hendrik Leppkes for noticing.
2011-04-05 19:32:14 +02:00
Anton Khirnov
b840484798 avio: make URL_PROTOCOL_FLAG_NESTED_SCHEME internal 2011-04-05 08:40:57 +02:00
Anton Khirnov
1305d93c42 avio: deprecate av_url_read_seek
It's not used anywhere internally.

Salvage its documentation for ffio_read_seek.
2011-04-05 08:40:27 +02:00
Anton Khirnov
fa104e14ab avio: deprecate av_url_read_pause
It's not used anywhere internally.

Salvage its documentation for ffio_read_pause.
2011-04-05 08:39:40 +02:00
Michael Niedermayer
434f248723 Merge remote branch 'qatar/master'
* qatar/master: (22 commits)
  ac3enc: move extract_exponents inner loop to ac3dsp
  avio: deprecate url_get_filename().
  avio: deprecate url_max_packet_size().
  avio: make url_get_file_handle() internal.
  avio: make url_filesize() internal.
  avio: make url_close() internal.
  avio: make url_seek() internal.
  avio: cosmetics, move AVSEEK_SIZE/FORCE declarations together
  avio: make url_write() internal.
  avio: make url_read_complete() internal.
  avio: make url_read() internal.
  avio: make url_open() internal.
  avio: make url_connect internal.
  avio: make url_alloc internal.
  applehttp: Merge two for loops
  applehttp: Restructure the demuxer to use a custom AVIOContext
  applehttp: Move finished and target_duration to the variant struct
  aacenc: reduce the number of loop index variables
  avio: deprecate url_open_protocol
  avio: deprecate url_poll and URLPollEntry
  ...

Conflicts:
	libavformat/applehttp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-05 02:31:56 +02:00
Michael Niedermayer
6114bffa91 retry_transfer_wrapper: only call interrupt callback when less than requested is r/w.
Its a waste of cpu cycles otherwise
2011-04-05 01:58:03 +02:00
Michael Niedermayer
3e3ea93b3c mpegts: Put CODEC_ID_NONE check back that was removed by mistake in 5b56ad03
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-05 00:48:52 +02:00
Anton Khirnov
727c7aa026 avio: deprecate url_get_filename().
URLContext.filename should be used directly.
2011-04-04 17:45:20 +02:00
Anton Khirnov
5958df341d avio: deprecate url_max_packet_size().
URLContext.max_packet_size should be used directly.
2011-04-04 17:45:20 +02:00
Anton Khirnov
1869ea03b7 avio: make url_get_file_handle() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
32a97d4630 avio: make url_filesize() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
e52a9145c8 avio: make url_close() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
58a48c6511 avio: make url_seek() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
230a468679 avio: cosmetics, move AVSEEK_SIZE/FORCE declarations together 2011-04-04 17:45:20 +02:00
Anton Khirnov
925e908bc7 avio: make url_write() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
dce3756459 avio: make url_read_complete() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
bc371aca46 avio: make url_read() internal. 2011-04-04 17:45:20 +02:00
Anton Khirnov
0589da0aa5 avio: make url_open() internal. 2011-04-04 17:45:20 +02:00