Commit Graph

169 Commits

Author SHA1 Message Date
Stefano Sabatini 35fe66abbc lavfi: rename AVFilterBufferRefVideoProps.pixel_aspect to sample_aspect_ratio
Improve consistency with libavcodec.

This breaks libavfilter API/ABI.

The non-sequential 2.1.0 -> 2.4.0 bump is due to the mess previously
done with the lavfi minor number.
2011-05-01 13:10:18 +02:00
Stefano Sabatini 77e9dee8ae lavc: add a sample_aspect_ratio field to AVFrame
The sample aspect ratio is a per-frame property, so it makes sense to
define it in AVFrame rather than in the codec/stream context.
Simplify application-level sample aspect ratio information extraction,
and allow further simplifications.
2011-05-01 13:10:06 +02:00
Stefano Sabatini 1ba5727242 lavc: add a pkt_pos field to AVFrame
This is similar to what was done with pkt_pts. This simplifies the
operation of extracting the pos information from the AVPacket, and
allows further simplifications.
2011-05-01 13:09:58 +02:00
Michael Niedermayer fa1195227f FFMPEG: support demuxer specific options.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer 3788a3c0c0 Merge remote branch 'qatar/master'
* qatar/master:
  graphparser: add a NULL check on the argument passed to strstr
  setdar: prefer "sar" over "par" in log info message
  fade: fix draw_slice() check on fade->factor value
  fade: make draw_slice() chroma check against planes 1 and 2
  win32: include the correct header in cmdutils.c
  ac3: fix memleak in fixed-point encoder
  flashsv: Return more meaningful error values.
  flashsv: Employ explicit AVCodec struct initializers.
  read AVI palette from the end of extradata
  cosmetics: K&R coding style and more whitespace for Flash Screen Video

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-26 04:21:15 +02:00
Luca Barbato ba9327ea65 win32: include the correct header in cmdutils.c
CommandLineToArgvW requires windows.h, include it directly
2011-04-25 21:57:30 +02:00
Michael Niedermayer 7b376b398a Merge remote branch 'qatar/master'
* qatar/master:
  Handle unicode file names on windows
  rtp: Rename the open/close functions to alloc/free
  Lowercase all ff* program names.
  Refer to ff* tools by their lowercase names.
NOT Pulled  Replace more FFmpeg instances by Libav or ffmpeg.
  Replace `` by $() syntax in shell scripts.
  patcheck: Allow overiding grep program(s) through environment variables.
NOT Pulled  Remove stray libavcore and _g binary references.
  vorbis: Rename decoder/encoder files to follow general file naming scheme.
  aacenc: Fix whitespace after last commit.
  cook: Fix small typo in av_log_ask_for_sample message.
  aacenc: Finish 3GPP psymodel analysis for non mid/side cases.
  Remove RDFT dependency from AAC decoder.
  Add some debug log messages to AAC extradata
  Fix mov debug (u)int64_t format strings.
  bswap: use native types for av_bwap16().
  doc: FLV muxing is supported.
  applehttp: Handle AES-128 encrypted streams
  Add a protocol handler for AES CBC decryption with PKCS7 padding
  doc: Mention that DragonFly BSD requires __BSD_VISIBLE set

Conflicts:
	ffplay.c
	ffprobe.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-24 03:41:22 +02:00
Kirill Gavrilov b1ac139d89 Handle unicode file names on windows
All file names should be in UTF-8 within libavformat.

This is handled by mapping the open() function to an internal one
in os_support.h for windows.

fopen() could be overridden in the same way, but if that would be
used from ffmpeg.c, it would add a dependency on an ff prefixed
internal lavf function.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-24 00:05:38 +03: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
Baptiste Coudurier d319064465 Prefer codec specific options over global ones, allowing codec
to override global options.
2011-04-19 13:12:24 -07:00
Anton Khirnov 41d0eb1c81 lavc: remove the FF_API_SET_STRING_OLD cruft. 2011-04-19 18:41:00 +02:00
Baptiste Coudurier 0140d3f092 In libx264 wrapper, add -preset and -tune options 2011-04-16 16:51:54 -07:00
Stefano Sabatini 584c2f1db8 cmdutils: add OPT_INT check in parse_number_or_die()
Check that the value passed for an OPT_INT option is an int, fail
otherwise.
2011-04-16 21:47:06 +02:00
Roger Pau Monné 09a1416db7 Add key_frame and pict_type to AVFilterBufferRefVideo. 2011-04-16 10:09:15 +02:00
Anton Khirnov cdc6a87f19 avio: deprecate av_protocol_next(). 2011-04-08 17:48:53 +02:00
Stefano Sabatini 0c55c6d30e cmdutils: remove list_fmts(), simplify
The function was only used in opt_sample_fmt() for listing the sample
formats. Move list_fmts() functionality directly into
opt_sample_fmt().

Als fix the warning:
ffmpeg.c: In function ‘opt_audio_sample_fmt’:
ffmpeg.c:2877: warning: passing argument 1 of ‘list_fmts’ from incompatible pointer type
cmdutils.h:163: note: expected ‘void (*)(char *, int,  int)’ but argument is of type ‘char * (*)(char *, int,  enum AVSampleFormat)’
2011-03-26 14:40:30 +01: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
Michael Niedermayer e528cdac8a Revert "replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION"
This reverts commit 29ba091136.
2011-03-17 17:26:45 +01:00
Michael Niedermayer 0cb88628fb Revert "use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_*"
This reverts commit a03be6e1ba.
2011-03-17 17:26:45 +01:00
Michael Niedermayer 0fecf2642b Merge remote-tracking branch 'newdev/master'
Conflicts:
	Changelog
	doc/APIchanges
	doc/optimization.txt
	libavformat/avio.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 17:22:52 +01:00
Janne Grunau a03be6e1ba use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_* 2011-03-16 21:54:39 +01:00
Janne Grunau 29ba091136 replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION
also update the multiple inclusion guards in config.h|mak
2011-03-16 21:54:39 +01:00
Benjamin Larsson 76d4c1676f Add a dummy option -i to ffplay so that it is easy to switch between ffmpeg -i "file" and ffplay -i "file".
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-08 17:34:02 +01:00
Stefano Sabatini 40c3fe2c08 Deprecate parse_date() in favor of av_parse_time().
The new av_parse_time() is created in libavutil/parseutils.h, all the
internal functions used by parse_date are moved to
libavutil/parseutils.c and made static.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit f6c7375a17)
2011-02-18 19:52:30 +01:00
Stefano Sabatini f6c7375a17 Deprecate parse_date() in favor of av_parse_time().
The new av_parse_time() is created in libavutil/parseutils.h, all the
internal functions used by parse_date are moved to
libavutil/parseutils.c and made static.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-16 23:39:56 +00:00
Reinhard Tartler 7ffe76e540 Merge libavcore into libavutil
Done to keep ABI compatible. Otherwise this is just silly
2011-02-16 23:00:30 +01:00
Reinhard Tartler 737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Nicolas George 76ad67cae7 Implement guessed_pts in avcodec_decode_video2
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-07 19:32:07 +01:00
James Zern 3f171f5aec cmdutils: fix codec-specific options from preset
Using a preset file caused the address of a stack variable to be stored
in opt_names/values. This change causes the strings to be dup'd then
freed in uninit_opts.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 60ff9de6ff)
2011-02-06 20:31:45 +01:00
James Zern ba3517aa6f cmdutils: fix opt_values leak
Add free to uninit_opts and relocate opt_names to same

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 3a6a9cdf5b)
2011-02-06 20:31:45 +01:00
James Zern 60ff9de6ff cmdutils: fix codec-specific options from preset
Using a preset file caused the address of a stack variable to be stored
in opt_names/values. This change causes the strings to be dup'd then
freed in uninit_opts.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-05 18:34:17 -05:00
James Zern 3a6a9cdf5b cmdutils: fix opt_values leak
Add free to uninit_opts and relocate opt_names to same

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-05 17:18:45 -05:00
Diego Elio Pettenò 7a0e1be839 Make this_year static to cmdutils.c
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 3568853f63)
2011-01-26 03:43:29 +01:00
Diego Elio Pettenò 3568853f63 Make this_year static to cmdutils.c
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-24 23:44:58 +00:00
Georgi Chorbadzhiyski 9256dc28ab libavcodec minor version is > 99 so fix the formating
libavcodec minor version is > 99 so when printing the library versions
the output is a little bit broken:

  libavutil    50. 36. 0 / 50.36. 0
  libavcore     0. 16. 1 /  0.16. 1
  libavcodec   52.108. 0 / 52.108. 0
  libavformat  52. 94. 0 / 52.94. 0
  libavdevice  52.  2. 3 / 52. 2. 3
  libavfilter   1. 74. 0 /  1.74. 0
  libswscale    0. 12. 0 /  0.12. 0

Change the formating to look like this:

  libavutil    50. 36. 0 / 50. 36. 0
  libavcore     0. 16. 1 /  0. 16. 1
  libavcodec   52.108. 0 / 52.108. 0
  libavformat  52. 94. 0 / 52. 94. 0
  libavdevice  52.  2. 3 / 52.  2. 3
  libavfilter   1. 74. 0 /  1. 74. 0
  libswscale    0. 12. 0 /  0. 12. 0

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit c0dd565304)
2011-01-21 20:36:00 +01:00
Georgi Chorbadzhiyski c0dd565304 libavcodec minor version is > 99 so fix the formating
libavcodec minor version is > 99 so when printing the library versions
the output is a little bit broken:

  libavutil    50. 36. 0 / 50.36. 0
  libavcore     0. 16. 1 /  0.16. 1
  libavcodec   52.108. 0 / 52.108. 0
  libavformat  52. 94. 0 / 52.94. 0
  libavdevice  52.  2. 3 / 52. 2. 3
  libavfilter   1. 74. 0 /  1.74. 0
  libswscale    0. 12. 0 /  0.12. 0

Change the formating to look like this:

  libavutil    50. 36. 0 / 50. 36. 0
  libavcore     0. 16. 1 /  0. 16. 1
  libavcodec   52.108. 0 / 52.108. 0
  libavformat  52. 94. 0 / 52. 94. 0
  libavdevice  52.  2. 3 / 52.  2. 3
  libavfilter   1. 74. 0 /  1. 74. 0
  libswscale    0. 12. 0 /  0. 12. 0

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-20 11:34:19 +00:00
Mans Rullgard 324e7ee260 Use INFINITY and NAN macros instead of 1/0 and 0/0 2011-01-18 20:48:23 +00:00
Stefano Sabatini be4876eae9 Disable initialization of the swscale sws_opts context in
cmdutils.c:init_opts(), in the case libswscale compilation is not
enabled.

Fix ffprobe and ffserver compilation with --disable-swscale.

Originally committed as revision 26212 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-04 14:00:06 +00:00
Martin Storsjö f03424a782 Reindent
Originally committed as revision 26205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-03 12:43:48 +00:00
Anssi Hannula ef2b2243dc Use AVOption for muxers in ffmpeg.
Patch by Anssi Hannula, anssi d hannula d iki d fi

Originally committed as revision 26199 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-02 16:00:47 +00:00
Justin Ruggles 391fa56ddb Update current year to 2011. Happy New Year!
Originally committed as revision 26184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-01 18:49:18 +00:00
Stefano Sabatini 819e2ab0d8 Add missing check on the existence of avcodec_opts[AVMEDIA_TYPE_X],
fix crash in ffprobe.

Originally committed as revision 25799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-22 22:03:21 +00:00
Stefano Sabatini 6e872935db Implement get_preset_file() in cmdutils.h and use it to factorize code
from ffmpeg.c and ffserver.c.

Originally committed as revision 25679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-04 23:07:04 +00:00
Stefano Sabatini ff0652e503 Implement a common get_filtered_video_frame(), shared between ffplay.c
and ffmpeg.c.

Originally committed as revision 25520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-18 13:57:11 +00:00
Stefano Sabatini f7ead94c69 Factorize definition of the output_filter defined in both ffplay.c and
ffmpeg.c.
Replace it with a more generic definition which can be shared.

Originally committed as revision 25453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-12 18:40:26 +00:00
Reimar Döffinger a5c33faacc Add init and uninit functions to cmdutils, reduces code duplication
between ffmpeg and ffplay and avoids a valgrind error by freeing
avformat_opts->key.

Originally committed as revision 25309 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-02 08:44:33 +00:00
Michael Niedermayer 0093ebc20a User application side of Codec specific parameters.
Originally committed as revision 25266 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-29 23:06:51 +00:00
Alexander Strange 01d461980e All else being equal, prefer PTS over DTS in timestamp correction
Because DTS values aren't passed through decoders, they tend to be
inaccurate if decoder delay doesn't match what was expected by the encoder.

In particular this improves timestamps for H.264 without num_reorder_frames
set and with -strict 1, which causes DTS to be up to 16 frames ahead of the
picture.

Note that this doesn't really improve any file with very broken PTS/DTS,
since PTS isn't much more accurate in these.

Originally committed as revision 25242 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-28 03:45:27 +00:00
Alexander Strange 7a8bfa5d67 Extract timestamp correction code from ffplay.c to cmdutils.c
Originally committed as revision 25241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-28 02:05:12 +00:00
Stefano Sabatini 20e021c711 Add more missing checks in opt_default(), prevent a crash if
avcodec_opts[0] or avformat_opts is not set.

Originally committed as revision 25186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-25 01:31:59 +00:00