Commit Graph

183 Commits

Author SHA1 Message Date
Anton Khirnov
4ae30cac22 libx264: add 'crf_max' private option.
Deprecate corresponding global option.
2011-08-24 14:33:40 +02:00
Anton Khirnov
c5dd0bc4ca libx264: add 'weightp' private option.
Deprecate corresponding global option.
2011-08-24 14:32:24 +02:00
Anton Khirnov
d4b9671318 libx264: add 'rc_lookahead' private option.
Deprecate corresponding global option.
2011-08-24 14:31:55 +02:00
Anton Khirnov
2a44a8f609 libx264: add 'psy_trellis' private option.
Deprecate corresponding global option.
2011-08-24 14:31:07 +02:00
Anton Khirnov
93e623c642 libx264: add 'psy_rd' private option.
Deprecate corresponding global option.
2011-08-24 14:30:25 +02:00
Anton Khirnov
5c75b2a0b7 libx264: add 'aq_strength' private option.
Deprecate corresponding global option.
2011-08-24 14:30:00 +02:00
Anton Khirnov
85254fcb46 libx264: add 'aq_mode' private option.
Deprecate corresponding global option.
2011-08-24 14:28:40 +02:00
Anton Khirnov
9d508e4914 libx264: add 'cqp' private option.
Deprecate corresponding global option.
2011-08-24 14:28:07 +02:00
Anton Khirnov
d5dc8cc297 libx264: add 'crf' private option.
Deprecate corresponding global option.

Ideally all x264 private options should be generated automatically, but
x264 doesn't provide the API for this yet.
2011-08-24 14:26:12 +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
ae60927aef libx264: only use ABR mode when the user explicitly set bitrate. 2011-08-22 07:17:39 +02:00
Anton Khirnov
03eff2bf43 libx264: use medium preset by default. 2011-08-22 07:17:38 +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
Reinhard Tartler
69c4bee8fa libx264: Include hint for possible values for configuring libx264
The output of the x264 commandline tool contains the most uptodate
description of the possible values for the -preset, -tune and -profile
options.
2011-08-12 14:09:59 +02:00
Michael Niedermayer
9a5f61ac62 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libx264: do not set pic quality if no frame is output
  libx264: add preset, tune, profile and fastfirstpass private options

Conflicts:
	libavcodec/libx264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-09 00:01:48 +02:00
Baptiste Coudurier
5caa2de19e libx264: do not set pic quality if no frame is output
Avoids uninitialized reads.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-08 14:33:09 +02:00
Baptiste Coudurier
07a227b432 libx264: add preset, tune, profile and fastfirstpass private options
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-08 14:33:09 +02:00
Erik Slagter
045ef52ef5 libx264.c: distinguish between x264 parameter errors.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-20 02:20:08 +02:00
Michael Niedermayer
d39b33c63b libx264: fix open gop default.
Please use -x264opts to force open gop
This fixes Ticket268

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-21 04:45:29 +02:00
Etienne Buira
1e9b302690 libx264: fix double free 2011-06-08 02:07:36 +02:00
Etienne Buira
5e0dafe8ca Fix memleak
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 04:37:33 +02:00
Etienne Buira
28768579aa Fix typo
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 04:37:01 +02:00
Etienne Buira
5918d16742 Minor cleanup in libx264.c
Not needed as overwritten later on (look for "// update AVCodecContext
with x264 parameters"), and not accessed inbetween.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 04:36:13 +02:00
JULIAN GARDNER
5655469ee7 libx264: support aspect Ratio Switch 2011-05-26 21:38:10 +02:00
Stefano Sabatini
458f20bc75 libx264: specify field for default union values in options
Fix warnings.
2011-05-22 23:13:48 +02:00
Michael Niedermayer
d1f9621d39 libx264: support passing arbitrary parameters.
Idea taken from mencoder. This should fix conflicts with presets as long as
the new system is used.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-18 17:17:47 +02:00
Michael Niedermayer
b4bcd1e2f1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix compilation of iirfilter-test.
  libx264: handle closed GOP codec flag
  lavf: remove duplicate assignment in avformat_alloc_context.
  lavf: use designated initializers for AVClasses.
  flvdec: clenup debug code
  asfdec: fix possible overread on broken files.
  asfdec: do not fall back to binary/generic search
  asfdec: reindent after previous commit c7bd5ed
  asfdec: fallback to binary search internally
  mpegaudio: add _fixed suffix to some names
  Modify x86util.asm to ease transitioning to 10-bit H.264 assembly.
  dct: build dct32 as separate object files
  qdm2: include correct header for rdft

Conflicts:
	ffpresets/libx264-fast.ffpreset
	ffpresets/libx264-fast_firstpass.ffpreset
	ffpresets/libx264-faster.ffpreset
	ffpresets/libx264-faster_firstpass.ffpreset
	ffpresets/libx264-medium.ffpreset
	ffpresets/libx264-medium_firstpass.ffpreset
	ffpresets/libx264-placebo.ffpreset
	ffpresets/libx264-placebo_firstpass.ffpreset
	ffpresets/libx264-slow.ffpreset
	ffpresets/libx264-slow_firstpass.ffpreset
	ffpresets/libx264-slower.ffpreset
	ffpresets/libx264-slower_firstpass.ffpreset
	ffpresets/libx264-superfast.ffpreset
	ffpresets/libx264-superfast_firstpass.ffpreset
	ffpresets/libx264-ultrafast.ffpreset
	ffpresets/libx264-ultrafast_firstpass.ffpreset
	ffpresets/libx264-veryfast.ffpreset
	ffpresets/libx264-veryfast_firstpass.ffpreset
	ffpresets/libx264-veryslow.ffpreset
	ffpresets/libx264-veryslow_firstpass.ffpreset
	libavformat/flvdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-18 05:42:42 +02:00
Jindrich Makovicka
e25c67108a libx264: handle closed GOP codec flag
Also update libx264 presets to keep closed gop as default.

Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-17 23:01:42 +02:00
Baptiste Coudurier
580fa76c5c Allocate per codec options, now that options are freed between inputs and outputs. 2011-05-10 16:42:52 -07:00
Stefano Sabatini
ce5e49b0c2 replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_* 2011-05-02 16:41:41 +02:00
Stefano Sabatini
975a1447f7 Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 12:18:44 +02:00
Baptiste Coudurier
97dc86b793 In libx264 wrapper, change wpredp to a codec specific option. 2011-04-29 18:44:59 -07:00
Baptiste Coudurier
c225615bf2 In libx264 wrapper, fix side effect with has_b_frames, bframe_pyramid can be set
when bframe is not.
2011-04-23 12:41:17 -07:00
Robert Leatherwood
03ac799128 Rm duplicated define for OPT_STR. 2011-04-22 20:10:26 +02:00
Baptiste Coudurier
20a160484f In libx264 wrapper, detect default settings and use medium profile to avoid failure. 2011-04-21 09:01:35 -07:00
Baptiste Coudurier
2c18893a91 In libx264 wrapper, correctly support 2pass log filename option. 2011-04-20 15:46:40 -07:00
Baptiste Coudurier
f92b0084c0 In libx264 wrapper, add -level specific option. 2011-04-19 16:12:13 -07:00
Baptiste Coudurier
37c0a443f9 Fix libx264 fastfirstpass, move apply_fastfirstpass after user customized options. 2011-04-19 15:25:07 -07:00
Baptiste Coudurier
46f83e5b3c In libx264 wrapper, do not set pic quality if no frame is output, avoids
uninitialized reads.
2011-04-19 13:31:27 -07:00
Baptiste Coudurier
0140d3f092 In libx264 wrapper, add -preset and -tune options 2011-04-16 16:51:54 -07:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Jason Garrett-Glaser
2c855cea85 Fix broken vbv_buffer_init handling in libx264.c
Due to being pants-on-head retarded, libavcodec defaults this to zero, which
results in broken output.  This didn't affect ffmpeg.c, which sets it itself,
but caused problems for other calling apps using VBV.
(cherry picked from commit f7f8120fb9)
2011-02-09 03:33:55 +01:00
Jason Garrett-Glaser
f7f8120fb9 Fix broken vbv_buffer_init handling in libx264.c
Due to being pants-on-head retarded, libavcodec defaults this to zero, which
results in broken output.  This didn't affect ffmpeg.c, which sets it itself,
but caused problems for other calling apps using VBV.
2011-02-08 15:59:27 -08:00
Diego Elio Pettenò
e7e2df27f8 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit d36beb3f69)
2011-01-28 03:15:34 +01:00
Marco Gittler
5f58927baf Pass field order flag to libx264
Signed-off-by: Jason Garrett-Glaser <jason@x264.com>
(cherry picked from commit b09f548285)
2011-01-28 03:15:32 +01:00
Diego Elio Pettenò
d36beb3f69 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 16:08:45 +00:00
Marco Gittler
b09f548285 Pass field order flag to libx264
Signed-off-by: Jason Garrett-Glaser <jason@x264.com>
2011-01-25 18:07:34 -08:00
Jason Garrett-Glaser
3cf8db9447 Add fullrange support to libx264.c x264 interface
Originally committed as revision 25904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-07 09:51:27 +00:00
Jason Garrett-Glaser
2c5168afed Remove bitrate tolerance from libx264 interface
Nobody ever uses it correctly, and ffmpeg sets it incorrectly, so we'll just
leave it out.

Originally committed as revision 25720 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-11 14:34:27 +00:00
Nicolas George
3ab354d777 Make libx264 take the pict_type input parameter into account,
thus making forced key frames work.

Patch by Nicolas George, nicolas d george a normalesup d org

Originally committed as revision 25567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-25 14:40:00 +00:00
James Zern
2aa72ecccc Add new -slices option and use it for libvpx and libx264.
Patch by James Zern, jzern google

Originally committed as revision 25551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-22 18:09:14 +00:00
Jason Garrett-Glaser
652d9d24dc Properly initialize x264_picture_t in libx264.
Bump libx264 version requirement accordingly.

Originally committed as revision 23430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-02 20:05:27 +00:00
Baptiste Coudurier
d545fa56f1 fix x264 encoding when delay is > number of input frames
Originally committed as revision 23197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-19 20:48:29 +00:00
Jason Garrett-Glaser
e8c7fca90c Add intra refresh and crf-max support to the libavcodec libx264 wrapper.
Minor version bump.

Originally committed as revision 23038 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-06 22:38:18 +00:00
Jason Garrett-Glaser
dbb4f0515f vertical align in libx264.c
Originally committed as revision 22915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-19 21:20:20 +00:00
Takashi Mochizuki
d749da7e8b Fix typo: CODEC_FLAG2_SSIM is in flags2, not in flags.
Patch by Takashi Mochizuki mochi (A) da2 (.) so (dash) net (dot) ne (.) jp

Originally committed as revision 22759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-01 15:52:50 +00:00
Stefano Sabatini
72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
Baptiste Coudurier
f3b3b4895a Enable more libx264 options, aq, psy, rc lookahead and ssim
Originally committed as revision 22670 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 19:25:21 +00:00
Jason Garrett-Glaser
76d81909ae Update libx264.c to use new libx264 features
With b_keyframe instead of IDR for detecting keyframes, ffmpeg should now
support periodic encoding with periodic intra refresh (although there is no
interface option for it yet).
Set the new timebase values for full VFR input support.
Bump configure to check for API version 83.

Originally committed as revision 21317 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 04:00:08 +00:00
Loren Merritt
f543f636a5 revert r20775, because equivalent code has been committed to x264 instead
Originally committed as revision 20783 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-09 00:38:22 +00:00
Jason Garrett-Glaser
2d0cacded7 Boolify options passed to x264.
Originally committed as revision 20775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-08 20:35:01 +00:00
Erik Slagter
25a42948c6 Add MBtree support for libx264
Patch by Erik Slagter

Originally committed as revision 20774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-08 20:01:46 +00:00
Jason Garrett-Glaser
096c87f667 Add weightp support in API for libx264.
ffmpeg can encode baseline profile again.

Originally committed as revision 20600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-24 15:49:34 +00:00
Jason Garrett-Glaser
1953898162 Update libx264.c for x264 API change
Change behavior of b-pyramid option.

Originally committed as revision 20308 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-19 09:35:19 +00:00
Diego Biurrun
8a8720c1bb cosmetics: K&R coding style, prettyprinting
Originally committed as revision 20083 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-29 18:03:30 +00:00
Jason Garrett-Glaser
2d3beedee2 Add support for new x264 API.
Originally committed as revision 19977 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-23 09:03:26 +00:00
Reimar Döffinger
2ba8301769 Mark all pix_fmts and supported_framerates compound literals as const.
Makes no difference for gcc but at least icc can put them in .rodata then.

Originally committed as revision 19789 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-06 16:09:21 +00:00
Jason Garrett-Glaser
fe022ce2f8 Fix libx264.c to not drop SEI userdata from x264 encoder.
Most muxers in ffmpeg ignore the SEI if it is placed in extradata, so instead
it has to be catted to the front of the first video frame.

Originally committed as revision 19310 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-30 23:45:01 +00:00
Ralf Terdic
5c4e97282f Fix mem leak.
Patch by Ralf Terdic contact >AT< jswiff com

Originally committed as revision 15612 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-13 13:47:05 +00:00
Jason Garrett-Glaser
a5d2413345 x264 has removed the b-rdo and bime options, and instead integrated
them into the subme number to attempt to reduce the number of
unnecessary options.  subme now scales up to 9.
Patch by Jason Garett-Glaser %darkshikari A gmail P com%

Originally committed as revision 15523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-02 19:05:35 +00:00
Baptiste Coudurier
0bc4c436aa sync to latest x264 git, field was renamed
Originally committed as revision 15337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-16 01:13:55 +00:00
Stefano Sabatini
d4be08e0c9 Make X264_init() no longer assign avctx->rc_eq to libx264's context.
Fix a crash due to X264_init() setting the libx264 rc_eq field to NULL
when rc_eq was not defined. As a consequence rc_eq can no longer be
manually specified and passed to libx264, but this option is going to
be removed from the libx264 public API anyway.

See the thread: "Fix crash in libx264 when rc_eq is not set".

Originally committed as revision 15029 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 17:37:32 +00:00
Stefano Sabatini
fe4bf37455 Make AVCodec long_names definition conditional depending on CONFIG_SMALL.
Originally committed as revision 13759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-12 21:50:13 +00:00
Baptiste Coudurier
89223ef698 add esa/dia compat me options and new tesa for libx264
Originally committed as revision 13660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-05 01:57:35 +00:00
Baptiste Coudurier
d9e5c9b718 x264 interlaced encoding option
Originally committed as revision 13656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-04 00:56:36 +00:00
Baptiste Coudurier
682a48a107 cleanup, remove useless parentheses
Originally committed as revision 13655 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-04 00:44:43 +00:00
Carl Eugen Hoyos
eacced45c4 Replace some occurrences of -1 with PIX_FMT_NONE.
Fixes icc warning #188: enumerated type mixed with another type

Originally committed as revision 13130 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-11 22:28:43 +00:00
Stefano Sabatini
6140271f54 Add some long names to AVCodec declarations.
patch by Stefano Sabatini, stefano.sabatini-lala poste it

Originally committed as revision 13017 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-29 07:24:44 +00:00
Zuxy Meng
98a6fff98c Apply 'cold' attribute to init/uninit functions in libavcodec
Originally committed as revision 12525 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-21 03:11:20 +00:00
Benoit Fouet
3709f0d706 map warning levels between libx264 and libavutil
Originally committed as revision 9607 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-12 08:22:28 +00:00
Måns Rullgård
f225016296 update my email address
Originally committed as revision 9489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 20:08:51 +00:00
Diego Biurrun
1cc60c47c5 Consistent naming and lib prefixes for x264, xvid and mp3lame within the code.
Originally committed as revision 9230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-06 08:51:41 +00:00
Diego Biurrun
6f1af73557 Give all wrappers for external libraries names starting with lib.
Originally committed as revision 9226 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-06 00:14:18 +00:00