Commit Graph

1303 Commits

Author SHA1 Message Date
Michael Niedermayer
b5875b9111 Add libswresample.
Similar to libswscale this does resampling and format convertion, just for audio
instead of video.
changing sampling rate, sample formats, channel layouts and sample packing all
in one with a very simple public interface.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-19 07:04:17 +02:00
Michael Niedermayer
9a9ceb8776 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavfi: add select filter
  oggdec: fix out of bound write in the ogg demuxer
  movenc: create an alternate group for each media type
  lavd: add libcdio-paranoia input device for audio CD grabbing
  rawdec: refactor private option for raw video demuxers
  pcmdec: use unique classes for all pcm demuxers.
  rawdec: g722 is always 1 channel/16kHz

Conflicts:
	Changelog
	configure
	doc/filters.texi
	libavdevice/avdevice.h
	libavfilter/avfilter.h
	libavfilter/vf_select.c
	tests/ref/lavf/mov

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-17 22:36:43 +02:00
Anton Khirnov
7574cacbd5 movenc: create an alternate group for each media type
Partially fixes bug 44.
2011-09-17 08:42:30 +02:00
Anton Khirnov
d906f49aa8 rawdec: g722 is always 1 channel/16kHz 2011-09-17 06:42:17 +02:00
Michael Niedermayer
5c5306df96 lavf/utils: rewrite real fps calculation code.
The new code is free of biasing to the first timestamps
Fixes fraps.fps.test.zip

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-16 21:29:58 +02:00
Michael Niedermayer
5166376f24 smacker: fix a few off by 1 errors
stereo & 16bit is untested due to lack of samples

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-14 11:13:54 +03:00
Michael Niedermayer
8f5bb35f40 ffmpeg: fix video synchronization code to be exact on constant fps videos. Fixes Ticket137
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-13 17:29:23 +02:00
Michael Niedermayer
d67e74929c smacker: fix a few off by 1 errors
stereo & 16bit is untested due to lack of samples

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-13 01:27:35 +02:00
Michael Niedermayer
411cc5c46a Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  audioconvert: add explanatory comments to channel_names array
  audioconvert: K&R whitespace cosmetics
  avconv: use correct index when selecting metadata to write to.
  avconv: fix inverted variable
  doc/avconv: document option types (input/output/per-stream/...)
  doc/avtools-common-opts: write a section about stream specifiers.
  doc/avconv: remove two pointless paragraphs.
  doc/avconv: document that global options should be specified first.
  doc/avconv: remove entries for nonexistent options
  doc/avconv: remove documentation for removed 'timestamp' option
  doc: cosmetics, rename fftools-common-opts to avtools-....
  avconv: move streamid_map to options context.
  avconv: extend -vf syntax
  avconv: move top_field_first to options context.
  avconv: move inter/intra matrix to options context.
  avconv: remove -psnr option.
  avconv: remove me_threshold option.
  avconv: move video_rc_override_string to options context.
  avconv: move frame pixel format to the options context.
  avconv: move frame aspect ratio to the options context.
  ...

Conflicts:
	avconv.c
	cmdutils_common_opts.h
	doc/avconv.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 00:32:54 +02:00
Joakim Plate
e42a3dd123 Allow reading of growing avi files (ie currently being written)
This uses the RIFF header stored size to figure out the expected AVI file size, instead
of the actual file. To work fully it requires handling failed avio_seek() instead
of assuming they always succeed.

Some fate file has been cut off and contains half a frame at the end which previously
was not output during demuxing. This frame is now output to encoder, thus fate
diff update.
2011-09-11 17:44:20 +02:00
Anton Khirnov
77d9c4542c avconv: rewrite -qscale and -aq handling.
Merge video_qscale (set by -qscale) and audio_qscale (set by -aq) into
one 'qscale' field in the options context. Add a shortcut -q for -qscale
and make -aq an alias for -q:a.
2011-09-11 17:30:03 +02:00
Michael Niedermayer
0b99e858d1 ffmdec: fix seeking for non indexed files
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-08 20:53:37 +02:00
Michael Niedermayer
f1b5693027 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add LATM muxer
  v210enc: clip values according to specifications
  v210enc: switch to PIX_FMT_422P10
  v210dec: switch to PIX_FMT_422P10
  AVOptions: remove AVOption.offset <= 0 checks
  AVOptions: deprecate av_opt_set_defaults2
  AVOptions: move doxy for av_opt_set_defaults() from opt.c to opt.h
  libx264: fix setting some more parameters
  libx264: fix setting the H.264 level
  libx264: add 'direct-pred' private option
  libx264: add 'partitions' private option

Conflicts:
	Changelog
	libavcodec/Makefile
	libavcodec/libx264.c
	libavcodec/v210enc.c
	libavfilter/src_movie.c
	libavformat/version.h
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 22:58:39 +02:00
Baptiste Coudurier
08fa23d6c2 v210dec: switch to PIX_FMT_422P10
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-07 12:16:15 +02:00
Anton Khirnov
9c684feadc libx264: add 'direct-pred' private option
Deprecate AVCodecContext.directpred
2011-09-07 07:27:55 +02:00
Anton Khirnov
0635a8aa21 libx264: add 'partitions' private option
Deprecate AVCodecContext.partitions.
2011-09-07 07:27:18 +02:00
Michael Niedermayer
3c54e7ed4f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ac3enc: Add channel coupling support for the fixed-point AC-3 encoder.
  ac3enc: scale floating-point coupling channel coefficients in scale_coefficients() rather than in apply_channel_coupling()
  ac3enc: fix encoding of stereo ac3 files when rematrixing is disabled.
  wavpack: fix wrong return value in wavpack_decode_block()
  avconv: fix parsing metadata specifiers.
  fate: use +frame+slice named constants instead of '3'
  mpeg12: propagate more real return values through chunk decode error return and fix some indentation
  wavpack: use context reset in appropriate places
  avconv: move mux_preload and mux_max_delay to options context
  avconv: move bitstream filters to options context.
  avconv: move rate_emu to options context.
  avconv: move max_frames to options context.
  avconv: move metadata to options context.
  avconv: move ts scale to options context.
  avconv: move chapter maps to options context.
  avconv: move metadata maps to options context.
  avconv: move codec_names to options context.

Conflicts:
	avconv.c
	tests/fate-run.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-05 22:29:16 +02:00
Justin Ruggles
ae264bb29b ac3enc: Add channel coupling support for the fixed-point AC-3 encoder.
Update FATE references accordingly.
2011-09-05 10:09:44 -04:00
Anton Khirnov
bc5acfa7af fate: use +frame+slice named constants instead of '3' 2011-09-05 12:11:08 +02:00
Anton Khirnov
96139b5e32 avconv: move max_frames to options context.
Add a -frames option that uses generic stream specifiers, change
-[vad]frames into aliases to it.
2011-09-05 11:16:46 +02:00
Michael Niedermayer
d2084402e6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: fix type for thread_type option
  avconv: move format to options context
  avconv: move limit_filesize to options context
  avconv: move start_time, recording_time and input_ts_offset to options context
  avconv: add a context for options.
  cmdutils: allow storing per-stream/chapter/.... options in a generic way
  cmdutils: split per-option code out of parse_options().
  cmdutils: add support for caller-provided option context.
  cmdutils: declare only one pointer type in OptionDef
  cmdutils: move grow_array() from avconv to cmdutils.
  cmdutils: move exit_program() declaration to cmdutils from avconv
  http: Consider the stream as seekable if the reply contains Accept-Ranges: bytes
  nutenc: add namespace to the api facing functions

Conflicts:
	avconv.c
	cmdutils.c
	cmdutils.h
	ffmpeg.c
	ffplay.c
	ffprobe.c
	ffserver.c
	libavformat/http.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-05 03:10:45 +02:00
Anton Khirnov
13ccba50d4 avconv: move limit_filesize to options context 2011-09-04 13:12:00 +02:00
Anton Khirnov
6b779cccaa avconv: move start_time, recording_time and input_ts_offset to options context 2011-09-04 13:12:00 +02:00
Alex Converse
757b86cd9e codec-regression: force vsync 0 on the me_threshold test to make sure frames match. 2011-09-01 16:35:38 -07:00
Michael Niedermayer
e01770ba01 fate: Switch default tool to test from avconv to ffmpeg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-30 18:16:03 +02:00
Michael Niedermayer
094a496818 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fifo: add FIFO API test program, and fate test
  fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
  postprocess.c: filter name needs to be double 0 terminated
  doxygen: fix wrong comment syntax, //< vs. ///<
  doxygen: drop pointless star from pointer variable names
  Replace deprecated av_find_stream_info() by avformat_find_stream_info().
  xmv: eliminate superfluous zeroing of zero data
  configure: fix typo in avconv dependency list

Conflicts:
	configure
	doc/APIchanges
	libavutil/Makefile
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 23:18:54 +02:00
Stefano Sabatini
1717ba0cdd fifo: add FIFO API test program, and fate test
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-26 20:54:36 +02:00
Michael Niedermayer
2e97d1267e regtests: use bitrate syntax understood by both tools
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 14:15:17 +02:00
Michael Niedermayer
abe0b8e9f3 sws: use shift for chroma sample up convertion
sws: use shifts for non full range luma sample upconvertion

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-25 14:49:29 +02:00
Michael Niedermayer
d4f30c7daf h264-422: fix fate to handle 10 bit formats on big endian correctly.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 18:38:46 +02:00
Baptiste Coudurier
2c6348ea67 fate: add h264 intra 4:2:2 tests
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-23 14:29:36 +02:00
Michael Niedermayer
124deea1a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libx264: only use ABR mode when the user explicitly set bitrate.
  libx264: use medium preset by default.
  mp2 encoder: make 128k the default bitrate.
  movenc: use libx264 by default when possible for mov, mp4 and psp
  avienc: saner default audio codec.
  matroskaenc: saner default codecs.
  avplay: add examples of how to specify size/pixel format through private options
  lavc: add A|E|D flags to "ac" and "ar" options

Conflicts:
	doc/ffplay.texi
	libavcodec/libx264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-22 15:00:53 +02:00
Anton Khirnov
fb42d156ed movenc: use libx264 by default when possible for mov, mp4 and psp 2011-08-22 07:17:35 +02:00
Anton Khirnov
b71389cbae avienc: saner default audio codec.
libmp3lame if available, ac3 otherwise.
2011-08-22 07:17:19 +02:00
Anton Khirnov
3436c4a368 matroskaenc: saner default codecs.
libvorbis/libx264 for video if available, otherwise ac3/mpeg4.
2011-08-22 07:16:55 +02:00
Michael Niedermayer
ba57ef2972 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: Fix spelling errors.
  aac: Only set sample rate and object type from ADTS if output hasn't been configured.
  aac: Set SBR and PS to unsignalled during headerless and ADTS initialization.
  aac: Only output configure if audio was found.
  avconv: save two levels of indentation in flush_encoders()
  avconv: factor flushing encoders out of output_packet().
  avconv: factor out initializing input streams.
  avconv: remove -intra option.
  avconv: reset streamid_map between output files.
  avconv: make timer_start a local var in transcode().
  avconv: cosmetics, move OutputStream.
  avconv: remove two unused macros.

Conflicts:
	avconv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-19 00:53:42 +02:00
Anton Khirnov
ddf5ef0263 avconv: remove -intra option.
It's equivalent to -g 0.
2011-08-18 11:22:05 +02:00
Michael Niedermayer
edae3dbf1d Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  h264: hide reference frame errors unless requested
  swscale: split hScale() function pointer into h[cy]Scale().
  Move clipd macros to x86util.asm.
  avconv: reindent.
  avconv: rescue poor abused start_time global.
  avconv: rescue poor abused recording_time global.
  avconv: merge two loops in output_packet().
  avconv: fix broken indentation.
  avconv: get rid of the arbitrary MAX_FILES limit.
  avconv: get rid of the output_streams_for_file vs. ost_table schizophrenia
  avconv: add a wrapper for output AVFormatContexts and merge output_opts into it
  avconv: make itsscale syntax consistent with other options.
  avconv: factor out adding input streams.
  avconv: Factorize combining auto vsync with format.
  avconv: Factorize video resampling.
  avconv: Don't unnecessarily convert ipts to a double.
  ffmpeg: remove unsed variable nopts
  RV3/4 parser: remove unused variable 'off'
  add XMV demuxer
  rmdec: parse FPS in RealMedia properly
  ...

Conflicts:
	avconv.c
	libavformat/version.h
	libswscale/swscale.c
	tests/ref/fate/lmlm4-demux

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 10:56:08 +02:00
Anton Khirnov
ef44a60710 avconv: rescue poor abused recording_time global.
Keep a per-OutputFile instance of it, thus making -t work with multiple
output files.
2011-08-17 20:00:06 +02:00
Kostya Shishkov
a43b1e74e2 rmdec: parse FPS in RealMedia properly
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Kostya Shishkov
48ce8b8da7 Use parsers for RealVideo 3/4 to determine correct PTS
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Kostya Shishkov
7c1f6df4b5 rmdec: correct DTS calculation in RealMedia container.
First, container stores only DTS and not PTS as it was believed.
Second, multiple frames in a packet store timestamp instead of position
after the frame length.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Michael Niedermayer
41bf67d8d4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  movenc: change AV_LOG_INFO to AV_LOG_WARNING for some warnings
  avconv: remove a write-only variable
  avconv: remove pointless parameter from new_*_stream().
  avconv: cosmetics, move code
  avconv: cosmetics -- move copy_chapters().
  avconv: cosmetics -- move parse_forced_key_frames().
  lavc: add audio flag to the 'b' option, deprecate 'ab'.
  avconv: rename sameq to same_quant
  doc/avconv: add forgotten end of chapter.
  Changelog: document avconv incompatibilities with ffmpeg.
  avconv: replace -vcodec/-acodec/-scodec with a better system.
  avconv: remove presets.
  svq3: propagate codec memory allocation failure in context init

Conflicts:
	Changelog
	avconv.c
	libavcodec/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-16 23:47:35 +02:00
Anton Khirnov
6cd9d0f77d Revert "avconv: use stream copy by default when possible."
This reverts commit 4f4f33844a.

This commit has some ugly corner cases and needs to be discussed
further.
2011-08-16 20:59:14 +02:00
Anton Khirnov
4f4f33844a avconv: use stream copy by default when possible. 2011-08-16 20:24:20 +02:00
Anton Khirnov
64db1a82d6 lavc: add audio flag to the 'b' option, deprecate 'ab'.
Its only reason for its existence was ffmpeg's inability to properly assign
AVOptions to streams. Now this is not a problem anymore, so 'ab' should
go.
2011-08-16 06:20:43 +02:00
Anton Khirnov
f4ad238c6c avconv: rename sameq to same_quant
It's often mistakenly used as 'same quality', emphasize that it's not
true in the manual.
2011-08-16 06:19:08 +02:00
Michael Niedermayer
091a24b75f fate: more cases of avconv that should be conditional
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-16 03:38:00 +02:00
Michael Niedermayer
6322bc0b90 fate: some shells parse $11 as ${1}1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-16 00:29:09 +02:00
Michael Niedermayer
6ae356c9a0 fate: allow specifying the tool to use for fate (avconv / ffmpeg)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-15 23:11:46 +02:00
Michael Niedermayer
ee5234dd67 fate-rsync: switch to our server in preparation of h264 4:2:2 tests
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-15 00:41:23 +02:00
Michael Niedermayer
ca1dfea127 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  swscale: add dithering to yuv2yuvX_altivec_real
  rv34: free+allocate buffer instead of reallocating it to preserve alignment
  h264: add missing brackets.
  swscale: use 15-bit intermediates for 9/10-bit scaling.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-13 22:24:47 +02:00
Clément Bœsch
75af0e6a16 dv: honor timecode in DV muxer.
This is based on the original work by Baptiste Coudurier.
2011-08-13 19:13:03 +02:00
Clément Bœsch
b33ca05b46 mxf: add cli option in mxfenc to replace GOP timecode parsing.
This is based on the original work by Baptiste Coudurier.
2011-08-13 19:13:02 +02:00
Michael Niedermayer
0cb233cf46 Merge commit 'b2c087871dafc7d030b2d48457ddff597dfd4925'
* commit 'b2c087871dafc7d030b2d48457ddff597dfd4925':
  Move x86util.asm from libavcodec/ to libavutil/.
  Move x86inc.asm to libavutil/.
  APIchanges: note error_recognition in lavf
  lavf: add support for error_recognition, use it in avidec, and bump minor API version
  avconv: change semantics of -map
  avconv: get rid of new* options.
  cmdutils: allow precisely specifying a stream for AVOptions.
  configure: add missing CFLAGS to fix building on the HURD
  libx264: Include hint for possible values for configuring libx264
  cmdutils: allow ':'-separated modifiers in option names.
  avconv: make -map_metadata work consistently with the other options
  avconv: remove deprecated options.
  avconv: make -map_chapters accept only the input file index.
  Make a copy of ffmpeg under a new name -- avconv.
  ffmpeg: add a warning stating that the program is deprecated.
  Add weighted motion compensation for RV40 B-frames
  RV3/4: calculate B-frame motion weights once per frame
  Move RV3/4-specific DSP functions into their own context
  mjpeg: propagate decode errors from ff_mjpeg_decode_sos and ff_mjpeg_decode_dqt
  h264: notice memory allocation failure

Conflicts:
	.gitignore
	Makefile
	cmdutils.c
	configure
	doc/ffplay.texi
	doc/ffprobe.texi
	doc/ffserver.texi
	libavcodec/libx264.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/version.h
	tests/lavf-regression.sh
	tests/lavfi-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-13 02:56:08 +02:00
Ronald S. Bultje
28c1115a91 swscale: use 15-bit intermediates for 9/10-bit scaling. 2011-08-12 11:54:25 -07:00
Anton Khirnov
6291d7e416 Make a copy of ffmpeg under a new name -- avconv.
It will be further developed with a few incompatible changes.

ffmpeg.c will stay as is for some time, so any scripts using it won't be
broken.
2011-08-12 13:27:30 +02:00
Kostya Shishkov
b86ab38137 Add weighted motion compensation for RV40 B-frames
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-11 16:07:58 -07:00
Michael Niedermayer
1d186e9e12 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "swscale: use 15-bit intermediates for 9/10-bit scaling."
  swscale: use 15-bit intermediates for 9/10-bit scaling.
  dct32: Add SSE2 ASM optimizations
  Correct chroma vector calculation for RealVideo 3.
  lavf: Add an option to discard corrupted frames
  mpegts: Mark wrongly-sized packets as corrupted
  mpegts: Move scan test to handle_packets
  mpegts: Mark corrupted packets
  mpegts: Reset continuity counter on seek
  mpegts: Fix for continuity counter
  mpegts: Silence "can't seek" warning on unseekable
  apichange: add an entry for AV_PKT_FLAG_CORRUPT
  avpacket: signal possibly corrupted packets
  mpeg4videodec: remove dead code that would have detected erroneous encoding
  aac: Remove some suspicious illegal memcpy()s from LTP.
  bink: Eliminate unnecessary shadow declaration.

Conflicts:
	doc/APIchanges
	libavcodec/version.h
	libavformat/avformat.h
	libavformat/options.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-02 22:12:18 +02:00
Ronald S. Bultje
62ee0e6a97 Revert "swscale: use 15-bit intermediates for 9/10-bit scaling."
This reverts commit ac0fb59348. It
causes valgrind errors which I'll want to investigate before
resubmitting this.
2011-08-02 12:27:43 -07:00
Ronald S. Bultje
ac0fb59348 swscale: use 15-bit intermediates for 9/10-bit scaling. 2011-08-02 10:34:02 -07:00
Kostya Shishkov
6f7fe4723b Correct chroma vector calculation for RealVideo 3.
Old version divided it wrong, which resulted in chroma drift (visible on FATE
sample too as dirty trails left by clouds).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-02 08:23:47 -07:00
Anton Khirnov
b4ea1c5a77 Remove the ffserver test.
It doesn't work and is therefore useless.
2011-08-01 11:36:16 +02:00
Carl Eugen Hoyos
b36bd27fbe Rm lavfi-showfiltfmts on make testclean. 2011-08-01 00:58:49 +02:00
Stefano Sabatini
9c484d2944 lavfi-showfiltfmts: extend output format for specifying audio data
This is required for extending lavfi tests to audio filtering.
2011-07-28 10:04:09 +02:00
Michael Niedermayer
4095fa9038 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dnxhddec: optimise dnxhd_decode_dct_block()
  rtp: remove disabled code
  eac3enc: use different numbers of blocks per frame to allow higher bitrates
  dnxhd: add regression test for 10-bit
  dnxhd: 10-bit support
  dsputil: update per-arch init funcs for non-h264 high bit depth
  dsputil: template get_pixels() for different bit depths
  dsputil: create 16/32-bit dctcoef versions of some functions
  jfdctint: add 10-bit version
  mov: add clcp type track as Subtitle stream.
  mpeg4: add Mpeg4 Profiles names.
  mpeg4: decode Level Profile for MPEG4 Part 2.
  ffprobe: display bitstream level.
  imgconvert: remove unused glue and xglue macros

Conflicts:
	libavcodec/dsputil_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-22 12:08:52 +02:00
Mans Rullgard
4555874af1 dnxhd: add regression test for 10-bit
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:44:46 +01:00
Joseph Artsimovich
eedb1f2034 swscale: mark YUV422P10(LE,BE) as supported for output
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 02:10:31 +01:00
Michael Niedermayer
d303e0affd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  simple_idct: simplify some ifdeffery
  simple_idct: remove code for DCTELEM != int16
  Remove VLAs in ff_amrwb_lsp2lpc()
  fate: make vsynth tests depend on only the relevant vref
  rtsp: remove disabled code
  dsputil: restore mistakenly removed hunk of disabled code

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-19 18:46:04 +02:00
Mans Rullgard
b13c6e336c fate: make vsynth tests depend on only the relevant vref
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 18:46:57 +01:00
Michael Niedermayer
78accb876c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffmpeg: fix some indentation
  ffmpeg: fix operation with --disable-avfilter
  simple_idct: remove disabled code
  motion_est: remove disabled code
  vc1: remove disabled code
  fate: separate lavf-mxf_d10 test from lavf-mxf
  cabac: Move code only used in the cabac test program to cabac.c.
  ffplay: warn that -pix_fmt is no longer working, suggest alternative
  ffplay: warn that -s is no longer working, suggest alternative
  lavf: rename enc variable in utils.c:has_codec_parameters()
  lavf: use designated initialisers for all (de)muxers.
  wav: remove a use of deprecated AV_METADATA_ macro
  rmdec: remove useless ap parameter from rm_read_header_old()
  dct-test: remove write-only variable
  des: fix #if conditional around P_shuffle
  Use LOCAL_ALIGNED in ff_check_alignment()

Conflicts:
	ffmpeg.c
	libavformat/avidec.c
	libavformat/matroskaenc.c
	libavformat/mp3enc.c
	libavformat/oggenc.c
	libavformat/utils.c
	tests/ref/lavf/mxf

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-17 20:12:02 +02:00
Mans Rullgard
0218808d49 fate: separate lavf-mxf_d10 test from lavf-mxf
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-17 16:30:49 +01:00
Anton Khirnov
f790d0092e ffmpeg: use new avformat_open_* API.
8035f42968
2011-07-14 18:22:36 +02:00
Michael Niedermayer
80e4fe4063 Merge commit 'b5849f77095439e994b11c25e6063d443b36c228'
* commit 'b5849f77095439e994b11c25e6063d443b36c228': (21 commits)
  ac3enc: merge AC3MDCTContext with AC3EncodeContext.
  ac3enc: prefer passing AC3EncodeContext rather than AVCodecContext
  ac3enc: fix memleak
  mpeg1video: add CODEC_CAP_SLICE_THREADS.
  lavf: fix segfault in av_open_input_stream()
  mpegtsenc: set Random Access indicator on keyframe start packets
  lavf: Cleanup try_decode_frame() logic.
  Replace some gotos that lead to single return statements by direct return.
  build: move tests/seek_test.c to libavformat and reuse generic build rules
  mxfenc: include needed header for ff_iso8601_to_unix_time() prototype
  Add a check for strptime().
  lavf: factor out conversion of ISO8601 string to unix time
  wav: parse 'bext' metadata
  wav: keep parsing until EOF if the input is seekable and we know the size of the data tag
  wav: Refactor the tag checking into a switch statement
  wav: make sure neither data_size nor sample_count is negative.
  wav: refactor the 'fmt ' tag search and parsing.
  wav: add an option for writing BEXT chunk
  ffmpeg: get rid of a pointless limit on number of streams.
  ffmpeg: remove an unused define.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-14 02:24:10 +02:00
Jindrich Makovicka
575c38d76c mpegtsenc: set Random Access indicator on keyframe start packets
Signed-off-by: Jindrich Makovicka <jindrich.makovicka@nangu.tv>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-13 20:49:26 +02:00
Diego Biurrun
191c5f8ff3 build: move tests/seek_test.c to libavformat and reuse generic build rules 2011-07-13 13:27:15 +02:00
Michael Niedermayer
e10979ff56 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  changelog: misc typo and wording fixes
  H.264: add filter_mb_fast support for >8-bit decoding
  doc: Remove outdated comments about gcc 2.95 and gcc 3.3 support.
  lls: use av_lfg instead of rand() in test program
  build: remove unnecessary dependency on libs from 'all' target
  H.264: avoid redundant alpha/beta calculations in loopfilter
  H.264: optimize intra/inter loopfilter decision
  mpegts: fix Continuity Counter error detection
  build: remove unnecessary FFLDFLAGS variable
  vp8/mt: flush worker thread, not application thread context, on seek.
  mt: proper locking around release_buffer calls.
  DxVA2: unbreak build after [657ccb5ac7]
  hwaccel: unbreak build
  Eliminate FF_COMMON_FRAME macro.

Conflicts:
	Changelog
	Makefile
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/h264.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-12 01:42:32 +02:00
Mans Rullgard
ca9036155d build: remove unnecessary FFLDFLAGS variable
This variable is set to the same value for all directories.
Adding the -L flags directly to LDFLAGS is simpler and achieves
the same thing.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-11 11:39:04 +01:00
Michael Niedermayer
a8c2ff2c3c Revert "lavc: remove a half-working attempt at different defaults for audio/video codecs."
This reverts commit 18c007ba37.
2011-07-11 05:46:51 +02:00
Michael Niedermayer
3602ad7ee6 Merge commit '142e76f1055de5dde44696e71a5f63f2cb11dedf'
* commit '142e76f1055de5dde44696e71a5f63f2cb11dedf':
  swscale: fix crash with dithering due incorrect offset calculation.
  matroskadec: fix stupid typo (!= -> ==)
  build: remove duplicates from order-only directory prerequisite list
  build: rework rules for things in the tools dir
  configure: fix --cpu=host with gcc 4.6
  ARM: use const macro to define constant data in asm
  bitdepth: simplify FUNC/FUNCC macros
  dsputil: remove ff_emulated_edge_mc macro used in one place
  9/10-bit: simplify clipping macros
  matroskadec: reindent
  matroskadec: defer parsing of cues element until we seek.
  lavc: add support for codec-specific defaults.
  lavc: make avcodec_alloc_context3 officially public.
  lavc: remove a half-working attempt at different defaults for audio/video codecs.
  ac3dec: add a drc_scale private option
  lavf: add avformat_find_stream_info()
  lavc: introduce avcodec_open2() as a replacement for avcodec_open().

Conflicts:
	Makefile
	libavcodec/utils.c
	libavformat/avformat.h
	libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11 04:23:25 +02:00
Michael Niedermayer
3b2d285afb Merge branch 'sws_32bit_integration'
* sws_32bit_integration:
  regtests/sws: update checksums for recent changes
  sws: dont mess with XInc when the code needing it isnt used
  sws: Fix chroma init for 32bit buffers.
  swscale: error dithering for 16/9/10-bit to 8-bit.
  swscale: fix overflow in 16-bit vertical scaling.
  swscale: fix crash in 8-bpc bilinear output without alpha.
  swscale: fix 16-bit scaling when output is 8-bits.
  sws: fix non native endian 9-15 bit input with 16bit out
  sws: disable scale16 when int32 is used
  sws: fix rgb -> 16bit
  sws: fix uv overwrite in 32bt
  sws: fix gray16_1
  sws:ix yuv2rgb48_1_c_template()
  sws: fix 16/32 bug from merge
  swscale: for >8bit scaling, read in native bit-depth.
  swscale: fix another yuv range conversion overflow in 16bit scaling. (cherry picked from commit 81cc7d0bd1)
  swscale: fix yuv range correction when using 16-bit scaling. (cherry picked from commit e0b8fff6c7)
  swscale: implement >8bit scaling support.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11 04:01:01 +02:00
Michael Niedermayer
46b32b5197 regtests/sws: update checksums for recent changes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11 03:54:30 +02:00
Mans Rullgard
28e1c97916 build: rework rules for things in the tools dir
Declaring tools associated with each library in their respective
makefiles allows these tools to easily depend on the correct
prerequisites and link against the libs they need.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-10 21:13:38 +01:00
Anton Khirnov
18c007ba37 lavc: remove a half-working attempt at different defaults for audio/video codecs.
It should be replaced with proper per-codec defaults.
2011-07-10 17:08:58 +02:00
Michael Niedermayer
58257ea29e Merge remote-tracking branch 'qatar/master'
* qatar/master: (28 commits)
  mp3enc: write a xing frame containing number of frames in the file
  lavf: update AVStream.nb_frames when muxing.
  ffmpeg: remove unused variables from InputStream.
  doc: update ffmpeg -ar and -ac documentation to reflect reality.
  ffmpeg: remove pointless if (nb_input_files)
  ffmpeg: merge input_files_ts_offset into input_files.
  ffmpeg: merge input_codecs into input_streams.
  ffmpeg: drop AV prefixes from struct names.
  ffmpeg: deprecate loop_input and loop_output options
  gif: add loop private option.
  img2: add loop private option.
  AVOptions: in av_opt_find() don't return named constants unless unit is specified.
  x11grab: replace undocumented nomouse hackery with a private option.
  dict: extend documentation.
  lls: whitespace cosmetics
  docs: Use proper markup for a literal command line option
  docs: Remove a remark that isn't relevant any longer
  docs: Explain how to regenerate import libraries with MSVC tools
  docs: Mention that libraries for MSVC can be built with a cross compiler
  docs: Remove old docs that mention setting up a build environment with lib.exe
  ...

Conflicts:
	doc/ffmpeg.texi
	doc/general.texi
	ffmpeg.c
	libavcodec/Makefile
	libavcodec/dnxhddata.c
	libavformat/mp3enc.c
	libavformat/utils.c
	libavutil/Makefile
	tests/copycooker.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-09 02:06:40 +02:00
Ronald S. Bultje
7d7bacf0f1 swscale: fix overflow in 16-bit vertical scaling.
We operated on 31-bits, but with e.g. lanczos scaling, values can
add up to beyond 0x80000000, thus leading to output of zeroes. Drop
one bit of precision fixes this.
2011-07-08 15:15:30 -07:00
Ronald S. Bultje
f44d50a94c swscale: fix 16-bit horizontal scaling underflow.
When using e.g. lanczos scaling, values can drop below 0, so they
should never be unsigned.
2011-07-08 15:15:30 -07:00
Ronald S. Bultje
42d622fab3 swscale: fix 16-bit scaling when output is 8-bits.
We would use the second half of the U plane buffer, rather than the
V plane buffer, to output the V plane pixels.
2011-07-08 15:15:30 -07:00
Anton Khirnov
f5302e5dcf ffmpeg: deprecate loop_input and loop_output options
They were replaced by (de)muxer private options.
2011-07-08 19:58:19 +02:00
Diego Biurrun
bb83478d2c build: remove unused copy regression test script
The copy regression test script is unused, bash-specific and did
not even work properly when it was originally committed.
2011-07-07 22:47:24 +02:00
Michael Niedermayer
c3b6cc61e5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffserver: remove unused variable.
  Remove unused and outdated TODO file.
  gitignore: Drop individual .d ignore; it is already covered by a wildcard.
  lavf: deprecate AVStream.quality.
  bink: pass Bink version to audio decoder through extradata instead of codec_tag.
  libpostproc: Remove disabled code.
  flashsv: improve some comments and fix some wrong ones
  flashsv: Eliminate redundant variable indirection.
  flashsv: set reference frame type to full frame
  flashsv: replace bitstream description by a link to the specification
  flashsv: convert a debug av_log into av_dlog
  flashsv: simplify condition
  flashsv: return more meaningful error values
  flashsv: cosmetics: break some overly long lines
  flashsv: cosmetics: drop some unnecessary parentheses
  swscale: amend documentation to mention use of native depth for scaling.
  eval: add missing comma to tests.
  eval: fix memleak.
  H.264: make loopfilter bS const where applicable

Conflicts:
	libavcodec/binkaudio.c
	libavformat/bink.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-06 23:57:11 +02:00
Anton Khirnov
5e8d2e337e lavf: deprecate AVStream.quality.
AVStream is no place for it and it's unused outside of ffmpeg anyway.
2011-07-06 20:10:41 +02:00
Ronald S. Bultje
dfd8116986 eval: add missing comma to tests. 2011-07-05 18:18:11 -07:00
Michael Niedermayer
16a565d0cb eval/fate: try to fix nan printing format failures.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-05 10:46:11 +02:00
Michael Niedermayer
5d4fd1d1ad Merge remote-tracking branch 'qatar/master'
* qatar/master: (36 commits)
  ARM: allow unaligned buffer in fixed-point NEON FFT4
  fate: test more FFT etc sizes
  dca: set AVCodecContext frame_size for DTS audio
  YASM: Shut up unused variable compiler warning with --disable-yasm.
  x86_32: Fix build on x86_32 with --disable-yasm.
  iirfilter: add fate test
  doxygen: Add qmul docs.
  ogg: propagate return values and return more meaningful error values
  H.264: fix overreads of qscale_table
  Remove unused static tables and static inline functions.
  eval: clear Parser instances before using
  dct-test: remove 'ref' function pointer from tables
  build: Remove deleted 'check' target from .PHONY list.
  oggdec: Abort Ogg header parsing when encountering a data packet.
  Add LGPL license boilerplate to files lacking it.
  mxfenc: small typo fix
  doxygen: Fix documentation for some VP8 functions.
  sha: use AV_RB32() instead of assuming buffer can be cast to uint32_t*
  des: allow unaligned input and output buffers
  aes: allow unaligned input and output buffers
  ...

Conflicts:
	libavcodec/dct-test.c
	libavcodec/libvpxenc.c
	libavcodec/x86/dsputil_mmx.c
	libavcodec/x86/h264_qpel_mmx.c
	libavfilter/x86/gradfun.c
	libavformat/oggdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-05 02:26:17 +02:00
Mans Rullgard
240c5d6f3b fate: test more FFT etc sizes
This tests sizes from 16 to 4096, not only the default 512.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 18:33:04 +01:00
Mans Rullgard
75a24bef4a iirfilter: add fate test
Change the test program to output text instead of binary files so
it can be compared easily in FATE.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 16:26:26 +01:00
Mans Rullgard
94350ab986 eval: clear Parser instances before using
This prevents random values from the stack being used as
"variables" in expressions.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 12:31:47 +01:00
Mans Rullgard
27e7144350 fate: add idct8x8 test
This tests the IDCT implementations available in the build.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 10:38:17 +01:00
Mans Rullgard
883fd9e393 eval: add fate test
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 10:26:24 +01:00