Commit Graph

329 Commits

Author SHA1 Message Date
Michael Niedermayer
674216991d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: Fix APE tag dependencies
  MS Expression Encoder Screen decoder
  libfdk-aac: Allow setting the encoder bandwidth/cutoff frequency

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-13 22:22:24 +02:00
Compn
c3a4c1bd5a add PLV1 fourcc to mpeg4
works on http://samples.ffmpeg.org/V-codecs/PLV1/york-water-meteor.avi
2012-07-13 15:10:53 -04:00
Kostya Shishkov
5b7e3a195d MS Expression Encoder Screen decoder 2012-07-13 06:59:48 +02:00
Michael Niedermayer
9ca27df52f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Check for the math function rint
  TechSmith Screen Codec 2 decoder
  rtsp: Add listen mode
  rtsp: Make rtsp_open_transport_ctx() non-static
  rtsp: Move rtsp_read_close
  rtsp: Parse the mode=receive/record parameter in transport lines

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-11 23:57:11 +02:00
Kostya Shishkov
781888da89 TechSmith Screen Codec 2 decoder 2012-07-11 07:29:05 +02:00
Piotr Bandurski
a54bc1ebb8 riff: add "YUV8" FourCC
sample:

http://samples.mplayerhq.hu/V-codecs/yuv8/MAILTEST.AVI

Reviewed-by: compn <tempn@twmi.rr.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-04 04:17:00 +02:00
Michael Niedermayer
b286383bd2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  asfdec: read attached pictures.
  apetag: reindent
  apetag: export attached covers as video streams.
  apetag: fix the amount of data read from binary tags.
  apetag: make sure avio_get_str() doesn't read more than it should.
  mov: read itunes cover art.
  snow: remove VLA in mc_block()
  intfloat: Don't use designated initializers in the public headers
  snow: remove a VLA.
  doc: Remind devs to check return values, especially for malloc() et al
  MS ATC Screen (aka MSS3) decoder
  vf_yadif: move x86 init code to x86/yadif.c
  vf_gradfun: move x86 init code to x86/gradfun.c
  roqvideo: Remove a totally unused dspcontext
  smacker: remove some unused code
  dsicin: remove dead assignment
  aacdec: remove dead assignment
  rl2: remove dead assignment
  proresenc: make a variable local to the loop where it is used
  alsdec: remove dead assignments

Conflicts:
	Changelog
	doc/developer.texi
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/version.h
	libavfilter/gradfun.h
	libavfilter/x86/gradfun.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-02 21:19:41 +02:00
Kostya Shishkov
edf35d8342 MS ATC Screen (aka MSS3) decoder 2012-07-02 07:14:44 +02:00
Hendrik Leppkes
24e7a22e1f riff: don't overwrite bps from WAVEFORMATEX if EXTENSIBLE doesn't contain that data.
According to the specification on the MSDN [1], 0 is valid for that particular field, and it should be ignored in that case.

[1]: http://msdn.microsoft.com/en-us/library/windows/desktop/dd757714(v=vs.85).aspx

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-21 13:25:50 +02:00
Michael Niedermayer
4da42ebe44 Merge remote-tracking branch 'qatar/master'
* 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>
2012-06-20 20:47:46 +02:00
Kostya Shishkov
005c80b645 MS Screen 1 decoder 2012-06-20 19:08:10 +02:00
Michael Niedermayer
01a14ce042 riff: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-14 23:52:56 +02:00
Clément Bœsch
9846a9c701 riff: add ISMP/timecode tag. 2012-06-11 07:28:26 +02:00
Michael Niedermayer
ad60b3b181 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vorbis: Validate that the floor 1 X values contain no duplicates.
  avprobe: Identify codec probe failures rather than calling them unsupported codecs.
  avformat: Probe codecs at score 0 on buffer exhaustion conditions.
  avformat: Factorize codec probing.
  Indeo Audio decoder
  imc: make IMDCT support stereo output
  imc: move channel-specific data into separate context
  lavfi: remove request/poll and drawing functions from public API on next bump
  lavfi: make avfilter_insert_pad and pals private on next bump.
  lavfi: make formats API private on next bump.
  avplay: use buffersrc instead of custom input filter.
  avtools: move buffer management code from avconv to cmdutils.
  avconv: don't use InputStream in the buffer management code.
  avconv: fix exiting when max frames is reached.
  mpc8: fix maximum bands handling
  aacdec: Turn PS off when switching to stereo and turn it to implicit when switching to mono.

Conflicts:
	Changelog
	cmdutils.h
	ffmpeg.c
	ffplay.c
	ffprobe.c
	libavcodec/avcodec.h
	libavcodec/mpc8.c
	libavcodec/v210dec.h
	libavcodec/version.h
	libavcodec/vorbisdec.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersrc.c
	libavfilter/formats.c
	libavfilter/src_movie.c
	libavfilter/vf_aspect.c
	libavfilter/vf_blackframe.c
	libavfilter/vf_boxblur.c
	libavfilter/vf_crop.c
	libavfilter/vf_cropdetect.c
	libavfilter/vf_delogo.c
	libavfilter/vf_drawbox.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_fifo.c
	libavfilter/vf_format.c
	libavfilter/vf_frei0r.c
	libavfilter/vf_gradfun.c
	libavfilter/vf_hflip.c
	libavfilter/vf_hqdn3d.c
	libavfilter/vf_libopencv.c
	libavfilter/vf_lut.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vf_select.c
	libavfilter/vf_showinfo.c
	libavfilter/vf_transpose.c
	libavfilter/vf_unsharp.c
	libavfilter/vf_yadif.c
	libavfilter/vsrc_color.c
	libavfilter/vsrc_testsrc.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-06 01:08:33 +02:00
Kostya Shishkov
c6061443f7 Indeo Audio decoder 2012-06-05 18:30:54 +02:00
Michael Niedermayer
76853a3e0c libavformat: ff_get_bmp_header: return esize too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-31 00:46:02 +02:00
Carl Eugen Hoyos
ab7d6cb8f7 Support decoding fourcc YVYU.
Based on work by ami_stuff.

Fixes ticket #1352
2012-05-27 01:13:37 +02:00
Piotr Bandurski
4d37877632 aasc: support "Autodesk 24 bit RLE compressor" (FourCC: aas4)
fixes ticket #1310

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-16 22:15:59 +02:00
Piotr Bandurski
6439ad495e Add SLDV FourCC for dvvideo. 2012-05-15 20:22:49 +02:00
Carl Eugen Hoyos
86709ce3a9 Support NTSC forward dvcpro videos (PAL looks incorrect). 2012-05-15 08:09:48 +02:00
Justin Ruggles
8099fc763b riff: use bps instead of bits_per_coded_sample in the WAVEFORMATEXTENSIBLE header
This matches the value for the plain WAVEFORMATEX header.
Also fixes stream copy to WAVE for non-16-bit raw pcm.
2012-04-17 00:09:19 -04:00
Jimmy Christensen
b7ce3242f8 lavc: add a OpenEXR decoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-06 08:32:09 +02:00
Paul B Mahol
e4cc9f309e Support FLIC in AVI.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-28 02:34:06 +02:00
Derek Buitenhuis
0e714f889e ZeroCodec Decoder
An obscure Japanese lossless video codec, originally intended
for use with a remote desktop application.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-03-19 19:02:23 +01:00
Derek Buitenhuis
6cabb679d6 ZeroCodec Decoder
An obscure Japanese lossless video codec, originally intended
for use with a remote desktop application.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-19 00:19:13 +01:00
Michael Niedermayer
f095391a14 Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  cdxl demux: do not create packets with uninitialized data at EOF.
  Replace computations of remaining bits with calls to get_bits_left().
  amrnb/amrwb: Remove get_bits usage.
  cosmetics: reindent
  avformat: do not require a pixel/sample format if there is no decoder
  avformat: do not fill-in audio packet duration in compute_pkt_fields()
  lavf: Use av_get_audio_frame_duration() in get_audio_frame_size()
  dca_parser: parse the sample rate and frame durations
  libspeexdec: do not set AVCodecContext.frame_size
  libopencore-amr: do not set AVCodecContext.frame_size
  alsdec: do not set AVCodecContext.frame_size
  siff: do not set AVCodecContext.frame_size
  amr demuxer: do not set AVCodecContext.frame_size.
  aiffdec: do not set AVCodecContext.frame_size
  mov: do not set AVCodecContext.frame_size
  ape: do not set AVCodecContext.frame_size.
  rdt: remove workaround for infinite loop with aac
  avformat: do not require frame_size in avformat_find_stream_info() for CELT
  avformat: do not require frame_size in avformat_find_stream_info() for MP1/2/3
  avformat: do not require frame_size in avformat_find_stream_info() for AAC
  ...

Conflicts:
	doc/APIchanges
	libavcodec/Makefile
	libavcodec/avcodec.h
	libavcodec/h264.c
	libavcodec/h264_ps.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/dsputil_mmx.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-06 06:03:32 +01:00
Justin Ruggles
c019070fda riffenc: use av_get_audio_frame_duration()
For encoding, frame_size is not a reliable indicator of packet duration.
Also, we don't want to have to force the demuxer to find frame_size for
stream copy to work.
2012-03-05 13:08:15 -05:00
Compn
b18c27def8 riff: IPJ2 decodes with j2k decoder. samples can be made from mencoder and jp2avi.dll codec. 2012-02-22 23:34:45 -05:00
Carl Eugen Hoyos
bb9c8d9439 Add v408 / AYUV encoder and decoder.
Fixes last part of ticket #470.

Reviewed-by: Paul B Mahol
2012-02-05 20:43:33 +01:00
Janne Grunau
15cea3695d riff: fix invalid av_freep() calls on EOF in ff_read_riff_info 2012-01-22 19:32:44 +01:00
ami_stuff
ef9623f670 Add "S263" FourCC
fixes ticket #923

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-19 17:20:50 +01:00
Reimar Döffinger
ea3abcd58f Fix ff_get_guid for short reads or errors.
Current code would just return uninitialized data with no way
to detect this condition.
Instead, fill the whole GUID with 0 in that case.
Fixes valgrind uninitialized data errors in fate-seek-lavf_asf.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-15 20:37:54 +01:00
Michael Niedermayer
52889b543d mpeg12dec: BW10 support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 19:25:15 +01:00
Michael Niedermayer
b26f0ee39f avidec: XMPG support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 19:25:08 +01:00
Michael Niedermayer
645569e19f Revert "riff: remove references to sonic codec ids"
This reverts commit 0fd88d3988.

Theres no reason to drop support for this.
2012-01-13 15:57:34 +01:00
Michael Niedermayer
b18e17eabf Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  utils: Check for extradata size overflows.
  ARM: rv34: fix asm syntax in dc transform functions
  avio: Fix the value of the deprecated URL_FLAG_NONBLOCK
  rv34: fix and optimise frame dependency checking
  rv34: NEON optimised dc only inverse transform
  avprobe: use avio_size() instead of deprecated AVFormatContext.file_size.
  ffmenc: remove references to deprecated AVFormatContext.timestamp.
  lavf: undeprecate read_seek().
  avserver: remove code using deprecated CODEC_CAP_PARSE_ONLY.
  lavc: replace some remaining FF_I_TYPE with AV_PICTURE_TYPE_I
  lavc: ifdef out parse_only AVOption
  nellymoserdec: SAMPLE_FMT -> AV_SAMPLE_FMT
  mpegvideo_enc: ifdef out/replace references to deprecated codec flags.
  riff: remove references to sonic codec ids
  indeo4: add some missing static and const qualifiers
  rv34: DC-only inverse transform
  avconv: use AVFrame.width/height/format instead of corresponding AVCodecContext fields
  lavfi: move version macros to a new installed header version.h
  vsrc_buffer: release the buffer on uninit.
  rgb2rgb: rgb12tobgr12()
  ...

Conflicts:
	avconv.c
	doc/APIchanges
	ffprobe.c
	libavfilter/Makefile
	libavfilter/avfilter.h
	libswscale/rgb2rgb.c
	libswscale/rgb2rgb.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-13 01:29:48 +01:00
Anton Khirnov
0fd88d3988 riff: remove references to sonic codec ids
They are deprecated and will be purged on next major bump.
2012-01-12 18:18:22 +01:00
Carl Eugen Hoyos
17edc370b2 yuv4 libquicktime packed 4:2:0 encoder and decoder.
Reviewed-by: Derek Buitenhuis
Reviewed-by: Paul B Mahol
2012-01-04 15:37:59 +01:00
Carl Eugen Hoyos
2754514787 v308 Quicktim Uncompressed 4:4:4 encoder and decoder.
Reviewed-by: Derek Buitenhuis
Reviewed-by: Paul B Mahol
2012-01-04 15:37:59 +01:00
Paul B Mahol
dfa77dead2 y41p encoder and decoder
y41p is a packed 12-bit 4:1:1 YUV format used by Brooktree.

Fixes issue 1123 / ticket #102.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 03:35:23 +01:00
Carl Eugen Hoyos
835af79b05 Detect 'yuv2' as rawvideo also in avi.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-01 22:27:04 +01:00
Michael Niedermayer
53b6503184 avienc: Fix rawvideo 32bit
Bug found by: Rik Maes <rik.maes54@gmail.com>
Change based on suggestion by Rik Maes

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-17 03:25:46 +01:00
Michael Niedermayer
76b9a0961c riff: Fix freeing of random value.
Fixes Ticket752
Bug-found-by: Diana Elena Muscalu
2011-12-14 21:26:47 +01:00
Carl Eugen Hoyos
9c18a056b1 Detect 'yuv2' as rawvideo also in avi. 2011-12-14 15:08:59 +01:00
Derek Buitenhuis
309ffa4fe3 v410 encoder and decoder
v410 is a packed 10-bit 4:4:4 YCbCr format used in
QuickTime.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-14 03:38:57 +01:00
Derek Buitenhuis
80f6c0bb95 v410 encoder and decoder
v410 is a packed 10-bit 4:4:4 YCbCr format used in
QuickTime.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-12-13 23:34:24 +01:00
Michael Niedermayer
964912aba5 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  Warn about avserver being broken.
  avconv: drop code for special handling of avserver streams.
  rawdec: don't set codec timebase.
  lavf doxy: add muxing stuff to lavf_encoding group
  lavf doxy: add demuxing stuff to lavf_decoding group
  lavf doxy: expand/reword metadata API doxy.
  lavf doxy: add installed headers to groups.
  lavf doxy: add avio groups into the lavf_io group.
  lavf doxy: rename lavf I/O group to lavf_io.
  lavf doxy: add metadata docs to the main lavf group
  ttadec: check channel count as read from extradata.
  Add CLJR encoding and decoding regression tests
  cljr: remove unused code
  flacdec: Support for tracks in cuesheet metadata block
  ptx: fix inverted check for sufficient data
  flac muxer: fix writing of file header and STREAMINFO header from extradata
  ptx: emit a warning on insufficient picture data
  utvideo: add fate tests covering all codec variants
  doc: update to refer to avconv
  doc: remove some stale entries from the faq
  ...

Conflicts:
	Changelog
	avconv.c
	doc/avconv.texi
	doc/faq.texi
	doc/ffplay.texi
	doc/ffprobe.texi
	doc/ffserver.texi
	libavcodec/avcodec.h
	libavcodec/cljr.c
	libavformat/avformat.h
	libavformat/riff.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-11 01:05:33 +01:00
Kostya Shishkov
19341c58e0 Dxtory capture format decoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-12-10 11:58:03 +01:00
Michael Niedermayer
cd519b7e83 avi: add escape130 support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-10 06:54:05 +01:00
Michael Niedermayer
25b9eef410 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  cljr: K&R cosmetics
  cljr: return a more sensible value when encountering invalid headers
  cljr: drop unnecessary emms_c() calls without MMX code
  cljr: remove useless casts
  cljr: group encode/decode parts under single ifdefs
  cljr: remove stray semicolon
  cljr: add missing return statement in decode_end()
  doc: add pulseaudio to the input list
  avconv: remove unsubstantiated comment
  shorten: avoid abort() on unknown audio types
  cljr: add encoder
  build: merge lists of HTML documentation targets
  tests/examples: Mark some variables only used within their files as static.
  tests/tools/examples: Replace direct exit() calls by return.
  x86 cpuid: set vendor union members separately
  cljr: release picture at end of decoding
  rv40: NEON optimised rv40 qpel motion compensation

Conflicts:
	doc/examples/muxing.c
	libavcodec/cljr.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-09 00:05:51 +01:00
Paul B Mahol
e93947b7d8 cljr: add encoder
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-12-08 09:47:53 +01:00
Michael Niedermayer
1e19927f12 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vc1: use an enum for Frame Coding Mode
  doc: cleanup filter section
  indeo3: error out if no motion vector is set.
  x86inc: Flag shufps as an floating-point instruction for the AVX emulation code.
  mpegaudio: do not use init_static_data() for initializing tables.
  musepack: fix signed shift overflow in mpc_read_packet()
  mov: Make format string match variable type.
  wmavoice: Make format string match variable type.
  vc1: select interlaced scan table by FCM element
  Generalize RIFF INFO tag support; support reading INFO tag in wav
  pthread: track thread existence in a separate variable.

Conflicts:
	doc/filters.texi
	libavcodec/pthread.c
	libavformat/avi.c
	libavformat/riff.c
	libavformat/riff.h
	libavformat/wav.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-28 01:07:11 +01:00
Victor Vasiliev
12bc20502a Generalize RIFF INFO tag support; support reading INFO tag in wav
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-11-26 17:14:13 -08:00
Derek Buitenhuis
0c251257b5 VBLE Decoder
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 <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 01:21:01 +01:00
Derek Buitenhuis
c433a3f9a5 VBLE Decoder
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 <derek.buitenhuis@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-11 22:46:47 +02:00
Michael Niedermayer
988f585fcb Merge remote-tracking branch 'qatar/master'
* qatar/master: (44 commits)
  replacement Indeo 3 decoder
  gsm demuxer: do not allocate packet twice.
  flvenc: use first packet delay as global delay.
  ac3enc: doxygen update.
  imc: return error codes instead of 0 for error conditions.
  imc: return meaningful error codes instead of -1
  imc: do not set channel layout for stereo
  imc: validate channel count
  imc: check for ff_fft_init() failure
  imc: check output buffer size before decoding
  imc: use DSPContext.bswap16_buf() to byte-swap packet data
  rtsp: add allowed_media_types option
  libgsm: add flush function to reset the decoder state when seeking
  libgsm: simplify decoding by using a loop
  gsm: log error message when packet is too small
  libgsmdec: do not needlessly set *data_size to 0
  gsmdec: do not needlessly set *data_size to 0
  gsmdec: add flush function to reset the decoder state when seeking
  libgsmdec: check output buffer size before decoding
  gsmdec: log error message when output buffer is too small.
  ...

Conflicts:
	Changelog
	ffplay.c
	libavcodec/indeo3.c
	libavcodec/mjpeg_parser.c
	libavcodec/vp3.c
	libavformat/cutils.c
	libavformat/id3v2.c
	libavutil/parseutils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-03 02:16:26 +01:00
Justin Ruggles
6ac34eed54 g726: use bits_per_coded_sample instead of bitrate to determine mode
This requires some workarounds in the WAV muxer and demuxer. We need to write
the correct bits_per_coded_sample and block_align in the muxer. In the
demuxer, we cannot rely on the bits_per_coded_sample value, so we use the bit
rate and sample rate to determine the value.

This avoids having the decoder rely on AVCodecContext.bit_rate, which is not
required to be set by the user for decoding according to our API.
2011-11-01 21:23:03 -04:00
Michael Niedermayer
d0492578c8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  presets: rename presets directory
  lavc: make avcodec_get_context_defaults3 "officially" public
  lavf: replace av_new_stream->avformat_new_stream part II.
  lavf,lavd: replace av_new_stream->avformat_new_stream part I.
  lavf: add avformat_new_stream as a replacement for av_new_stream.
  Use correct scaling table for bwd-pred MVs in second B-field
  Ut Video decoder
  Makefile: change presets extension to .avpreset
  lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
  lavfi: add testsrc source
  AVOptions: add documentation.
  presets: update libx264 ffpresets

Conflicts:
	Changelog
	doc/APIchanges
	doc/ffmpeg.texi
	ffpresets/libx264-ipod320.ffpreset
	ffpresets/libx264-ipod640.ffpreset
	ffserver.c
	libavcodec/avcodec.h
	libavcodec/options.c
	libavcodec/version.h
	libavdevice/libdc1394.c
	libavfilter/avfilter.h
	libavfilter/vsrc_testsrc.c
	libavformat/flvdec.c
	libavformat/riff.c
	libavformat/version.h
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-20 02:34:51 +02:00
Kostya Shishkov
0d8506b8c5 Ut Video decoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-19 08:24:19 +02:00
Derek Buitenhuis
1de357d6da libutvideo: Add Ut Video Decoder Wrapper
Add a wrapper for libutvideo's decoder.

This supports decoding the following FOURCCs:
    ULY0 - 4:2:0 YCbCr
    ULY2 - 4:2:2 YCbCr
    ULRG - RGB
    ULRA - RGBA

Also, bump version.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-17 23:44:12 +02:00
Carl Eugen Hoyos
55d44578c6 Support decoding ASP variant from QNAP Systems.
Fixes part of ticket #560.
2011-10-16 10:30:24 +02:00
Carl Eugen Hoyos
5a563c6319 Support H264 from QNAP Systems. 2011-10-15 18:28:32 +02:00
Michael Niedermayer
bd4ebbbbed Merge remote-tracking branch 'qatar/master'
* qatar/master:
  proresdsp: fix function prototypes.
  prores-idct: fix overflow in c code.
  fate: update prores-alpha ref after changing pix_fmt to yuv444p10le
  prores: add missing feature warning for alpha
  mov: 10l: Terminate string with 0 not '0'
  mov: Prevent illegal writes when chapter titles are very short.
  prores: add appropriate -fix_fmt parameter to FATE command
  riff: always generate a proper WAVEFORMATEX structure in ff_put_wav_header
  lavc: add a flag-based error_recognition field to AVCodecContext and deprecate non-flag-based ER field
  lavc: rename deprecation symbol FF_API_VERY_AGGRESSIVE to FF_API_ER

Conflicts:
	libavcodec/avcodec.h
	libavformat/mov.c
	tests/fate/prores.mak
	tests/ref/acodec/g726
	tests/ref/fate/prores-alpha

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 22:24:00 +02:00
John Brooks
2c4e08d893 riff: always generate a proper WAVEFORMATEX structure in ff_put_wav_header
The cbSize field should be included in all cases, even with PCM where
its value is ignored.

Fixes encoding PCM audio in Matroska for some players which insist on
a full WAVEFORMATEX structure for A_MS/ACM audio.

Since fate uses wav files for the audio test a larger number of tests
has changed checksums or shifted positions due to the 2 byte longer
wave header.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-14 13:28:58 +02:00
Michael Niedermayer
ec1ffae0cd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  qcelpdec: cosmetics: do not add line break before opening bracket in 'for', 'while', 'if/else', and 'switch' statements.
  qcelp: check output buffer size before decoding
  qcelpdec: fix the return value of qcelp_decode_frame().
  sipr: fix the output data size check and only calculate it once.
  Synchronize various 4CCs and codec tags from FFmpeg.
  qdm2: check output buffer size before decoding
  Fix out of bound reads in the QDM2 decoder.
  Check for out of bound writes in the QDM2 decoder.
  ogg/celt: do not set sample_fmt in the demuxer

Conflicts:
	libavcodec/avcodec.h
	libavcodec/qdm2.c
	libavformat/oggparsecelt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 04:07:59 +02:00
Diego Biurrun
12bd8532cf Synchronize various 4CCs and codec tags from FFmpeg. 2011-10-04 11:58:53 +02:00
Compn
3ebab62fc6 riff: map 0x0038 to amrnb, works on http://video.mopoto.com/4/40/407/40709.avi 2011-10-02 17:41:16 -04:00
Compn
7afe23808a add LJ2K and LJ2C to jpeg2000 decoder
works on http://web.archive.org/web/20070128115405/http://www.leadcodecs.com/Download/MJ2K/WhatBox_MJ2k_720x480_PerfectQuality2.avi
2011-09-29 17:14:08 -04:00
Michael Niedermayer
f2f28861da AMV video encoder.
Authors are Vladimir Voroshilov and Dobrica Pavlinušić based on svn blame/log
For full details of authorship see http://code.google.com/p/amv-codec-tools/

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 04:33:16 +02:00
Carl Eugen Hoyos
a9424d27c4 Support speex in avi. 2011-08-30 23:45:39 +02:00
Michael Niedermayer
4ca6a151e0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: print the codecs names in the stream mapping.
  avconv: move the avcodec_find_decoder() call to add_input_streams().
  Windows Media Image decoder (WMVP/WVP2)
  ac3enc: remove outdated TODO comment for apply_channel_coupling()

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/vc1dec.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-23 18:26:37 +02:00
Alberto Delmás
45ecda8554 Windows Media Image decoder (WMVP/WVP2)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-23 11:18:35 +02:00
Thierry Foucu
63377695a6 AVCodecTag: Add MKTAG for Go2Meeting video codec
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-09 21:53:48 +02:00
Carl Eugen Hoyos
1c5480651e Support FourCC DreX as MPEG4 ASP. 2011-08-01 01:23:39 +02:00
Michael Niedermayer
5271b857eb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dnxhddec: avoid a branch in 10-bit decode_dct_block()
  H.264: Add optimizations to predict x86 assembly.
  riff: Add mpgv MPEG-2 fourcc
  add Flash Screen Video 2 decoder

Conflicts:
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-23 16:47:10 +02:00
Alex Converse
505345ed5d riff: Add mpgv MPEG-2 fourcc
Supported by mplayer and seen in the wild.
2011-07-22 10:39:13 -07:00
ami_stuff
3950376b8b Support fourcc YV24.
Fixes ticket #306.
2011-07-06 10:05:08 +02:00
Michael Niedermayer
976a8b2179 Merge remote-tracking branch 'qatar/master'
* qatar/master: (40 commits)
  H.264: template left MB handling
  H.264: faster fill_decode_caches
  H.264: faster write_back_*
  H.264: faster fill_filter_caches
  H.264: make filter_mb_fast support the case of unavailable top mb
  Do not include log.h in avutil.h
  Do not include pixfmt.h in avutil.h
  Do not include rational.h in avutil.h
  Do not include mathematics.h in avutil.h
  Do not include intfloat_readwrite.h in avutil.h
  Remove return statements following infinite loops without break
  RTSP: Doxygen comment cleanup
  doxygen: Escape '\' in Doxygen documentation.
  md5: cosmetics
  md5: use AV_WL32 to write result
  md5: add fate test
  md5: include correct headers
  md5: fix test program
  doxygen: Drop array size declarations from Doxygen parameter names.
  doxygen: Fix parameter names to match the function prototypes.
  ...

Conflicts:
	libavcodec/x86/dsputil_mmx.c
	libavformat/flvenc.c
	libavformat/oggenc.c
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-04 00:45:21 +02:00
Mans Rullgard
0ebcdf5cda Do not include mathematics.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
ami_stuff
9df1d329a5 Support fourcc Y8 (ticket 308). 2011-06-27 10:03:21 +02:00
ami_stuff
90d475a9e7 Support fourcc YV16 (ticket 307). 2011-06-27 09:40:53 +02:00
Kamil Nowosad
a304a83362 riff/img2: Add JPEG 2000 codec IDs. 2011-06-21 21:38:59 +02:00
ami_stuff
2ea1ca1714 riff: Add DAVC fourcc.
This fourcc is used by the "mpegable AVC" codec and files encoded with
this codec decode correctly with our H.264 decoder.
2011-06-21 21:38:58 +02:00
Carl Eugen Hoyos
682a20114e riff: Add M263, XVIX, MMJP, CDV5 fourccs. 2011-06-21 21:38:53 +02:00
ami_stuff
d352df0931 rawvideo: Support auv2 fourcc. 2011-06-21 21:33:58 +02:00
Michael Niedermayer
2ec77aae67 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: make compute_pkt_fields2() return meaningful error values
  matroskadec: set timestamps for RealAudio packets.
  intelh263dec: aspect ratio processing fix.
  intelh263dec: fix "Strict H.263 compliance"  file playback
  oss,sndio: simplify by using FFMIN.
  swscale: extract monowhite/black output from yuv2packed[12X]_c().
  swscale: de-macro'ify RGB15/16/32 input functions.
  swscale: rearrange code.
  movdec: Add support for the 'wfex' atom.
  ffmpeg.c: Add a necessary const qualifier
  riff: Fix potential memleak.
  swscale: change 48bit RGB input macros to inline functions.
  swscale: change 9/10bit YUV input macros to inline functions.
  swscale: extract gray16 output functions from yuv2packed[12X]().
  swscale: use standard clipping functions.
  swscale: merge macros that are used only once.
  swscale: fix function declarations in swscale.c.
  swscale: fix function declaration keywords in x86/swscale_template.c.

Conflicts:
	ffmpeg.c
	libavcodec/intelh263dec.c
	libswscale/swscale.c
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-10 04:47:23 +02:00
Alex Converse
ed8a50068c riff: Fix potential memleak.
Make ff_get_wav_header() free existing extradata before allocing a new
buffer.
2011-06-09 10:12:50 -07:00
Kamil Nowosad
83654c7b1b Add Kamil Nowosads j2k code.
This needs work but it should not rot in soc svn.
2011-05-24 01:31:53 +02:00
ami_stuff
4f038fdc23 Add "DAVC" FourCC
This FourCC is used by "mpegable AVC" codec and the file encoded with this codec decodes correctly with FFmpeg's H264 decoder.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 22:43:30 +02:00
Michael Niedermayer
7deaa2b8bd riffenc/ffmpeg: Fix stream copy
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-07 20:03:04 +02:00
Michael Niedermayer
707e8612e8 Merge remote branch 'qatar/master'
* qatar/master:
  Implement fate-rsync target
  Make ffmpeg support generic data stream

Conflicts:
	cmdutils.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-04 04:06:26 +02:00
Luca Barbato
e3b540b424 Make ffmpeg support generic data stream
The patch is the first step to support -dcodec copy
2011-05-03 11:51:55 +02:00
Carl Eugen Hoyos
03546a9ac8 Support fourcc MMJP.
Fixes ticket #107.
2011-04-25 00:44:48 +02:00
Carl Eugen Hoyos
69cf1824c6 Support fourcc XVIX.
Fixes ticket #106.
2011-04-25 00:44:48 +02:00
Carl Eugen Hoyos
a8117a62f4 Support fourcc M263.
Fixes ticket #103.
2011-04-25 00:44:48 +02:00
ami_stuff
3e1c59ebc6 Support fourcc auv2.
Fixes ticket #101.
2011-04-25 00:44:48 +02:00
Carl Eugen Hoyos
07f45bc988 Support Canopus SD50 with fourcc "CDV5".
Fixes ticket #93.
2011-04-22 18:45:47 +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
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