Commit Graph

185 Commits

Author SHA1 Message Date
Stefano Sabatini
b4af3cf347 cmdutils: remove unnecessary OPT_DUMMY implementation
The -i INPUT option can be implemented more cleanly by using a
function option, which can easily be done now that the
parse_arg_function passed to parse_options has a standard signature.
2011-06-05 13:21:06 +02:00
Stefano Sabatini
96f931adf7 cmdutils: change the signature of the function argument in parse_options()
This is required for a pending simplification.
2011-06-05 13:21:02 +02:00
Stefano Sabatini
eb8bc57240 cmdutils: remove OPT_FUNC2
Make ff* tools only accept opt_* functions taking two arguments.

The distinction between functions with one and two arguments is quite
pointless. Simplify parse_options() code.
2011-05-28 18:23:05 +02:00
Michael Niedermayer
8381ab1437 Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  ARM: disable ff_vector_fmul_vfp on VFPv3 systems
  ARM: check for VFPv3
  swscale: Remove unused variables in x86 code.
  doc: Drop DJGPP section, Libav now compiles out-of-the-box on FreeDOS.
  x86: Add appropriate ifdefs around certain AVX functions.
  cmdutils: use sws_freeContext() instead of av_freep().
  swscale: delay allocation of formatConvBuffer().
  swscale: fix build with --disable-swscale-alpha.
  movenc: Deprecate the global RTP hinting flag, use a private AVOption instead
  movenc: Add an AVClass for setting muxer specific options
  swscale: fix non-bitexact yuv2yuv[X2]() MMX/MMX2 functions.
  configure: report yasm/nasm presence properly
  tcp: make connect() timeout properly
  rawdec: factor video demuxer definitions into a macro.
  rtspdec: add initial_pause private option.
  lavf: deprecate AVFormatParameters.width/height.
  tty: add video_size private option.
  rawdec: add video_size private option.
  x11grab: add video_size private option.
  x11grab: factorize returning error codes.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 23:48:22 +02:00
Ronald S. Bultje
faf8d3ddfa cmdutils: use sws_freeContext() instead of av_freep().
av_freep(swsContext) will leak all memory potentially
allocated within the swsContext.
2011-05-27 13:22:28 -04:00
Gianluigi Tiesi
1b30e4f586 preset dir for win32 2011-05-21 03:36:26 +02:00
Stefano Sabatini
950b358997 cmdutils: use const AVClass * when senseful
Fix warnings:
cmdutils.c: In function ‘opt_default’:
cmdutils.c:304: warning: initialization discards qualifiers from pointer target type
cmdutils.c: In function ‘set_context_opts’:
cmdutils.c:431: warning: passing argument 2 of ‘alloc_priv_context’ discards qualifiers from pointer target type
cmdutils.c:414: note: expected ‘struct AVClass *’ but argument is of type ‘const struct AVClass *’
2011-05-20 10:05:14 +02:00
Stefano Sabatini
0d65e0f8cb cmdutils: reset *picref_ptr to NULL in get_filtered_frame()
Avoid the presence of an invalid pointer, fix a crash in case of
get_filtered_frame() failure.
2011-05-20 09:34:57 +02:00
Michael Niedermayer
5319f48a57 cmdutils: Allocate private decoder context if its not allocated yet.
This fixes and simplifies setting decoder private options.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-16 21:26:18 +02:00
Benjamin Larsson
91199cfe55 ffplay: add a dummy option -i so that it is easy to switch between ffmpeg -i "file" and ffplay -i "file".
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-11 07:32:36 +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
3372ec327b 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.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-10 07:15:24 +02:00
Stefano Sabatini
5d2c6f42d7 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().

Also 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)’

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-10 07:14:13 +02:00
Michael Niedermayer
b97b4b58a6 Merge remote branch 'qatar/master'
* qatar/master:
  mpegaudiodec: group #includes more sanely
  mpegaudio: remove #if 0 blocks
  ffmpeg.c: reset avoptions after each input/output file.
  ffmpeg.c: store per-output stream sws flags.
  mpegaudio: remove CONFIG_MPEGAUDIO_HP option
  mpegtsenc: Clear st->priv_data when freeing it
  udp: Fix receiving RTP data over multicast
  rtpproto: Remove an unused variable
  regtest: fix wma tests
NOT pulled:  mpegaudio: remove CONFIG_AUDIO_NONSHORT
  regtest: separate flags for encoding and decoding

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 04:03:17 +02:00
Anton Khirnov
19615089a0 ffmpeg.c: reset avoptions after each input/output file.
This is consistent with how all the other options work.
2011-05-09 19:35:20 +02:00
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
Roger Pau Monné
10d39405fa lavfi: add key_frame and pict_type to AVFilterBufferRefVideo.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:42:13 +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