Commit Graph

1462 Commits

Author SHA1 Message Date
Michael Niedermayer
13b7781ec8 Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  x86inc: use sse versions of common macros instead of sse2 when applicable
  doc/APIchanges: add missing dates and hashes
  lavf: don't return from void av_update_cur_dts()
  Changelog: add more entries.
  Changelog: update ffmpeg/avconv incompatibility list.
  avconv: remove some redundant temporary variables.
  avconv: fix broken indentation
  avconv: move copy_initial_nonkeyframes to the options context.
  avconv: use file:stream instead of file.stream in log messages.
  doc/avconv: elaborate on basic functionality.
  doc/avconv: -sample_fmts, not -help sample_fmts prints the sample formats
  openssl: Only use CRYPTO_set_id_callback on OpenSSL < 1.0.0
  Call avformat_network_init/deinit in the programs
  Remove leftover includes of strings.h
  avutil: Don't allow using strcasecmp/strncasecmp
  Replace all usage of strcasecmp/strncasecmp
  avstring: Add locale independent implementations of strcasecmp/strncasecmp
  avstring: Add locale independent implementations of toupper/tolower
  cosmetics: insert some spaces in explicit enum value assignments
  move 8SVX audio codecs to the audio codec list part on the next bump
  ...

Conflicts:
	avprobe.c
	doc/APIchanges
	ffplay.c
	ffserver.c
	libavcodec/avcodec.h
	libavdevice/bktr.c
	libavdevice/v4l.c
	libavdevice/v4l2.c
	libavformat/matroskaenc.c
	libavformat/wtv.c
	libavutil/avstring.c
	libavutil/avstring.h
	libavutil/avutil.h
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-07 03:01:43 +01:00
Martin Storsjö
776f2bb91a Call avformat_network_init/deinit in the programs
Calling the init function will become mandatory at some later
point. By calling it, more heavy network init (such as SSL/TLS
library init) can be done once at startup, instead of implicitly
when used (which could lead to it being done a number of times).

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-06 18:31:39 +02:00
Michael Niedermayer
0e55902324 ffmpeg: preserve avg_frame_rate on stream copy.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-06 00:09:40 +01:00
Reimar Döffinger
addc64f7f9 Fix typo in warning message.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-11-05 11:30:46 +01:00
Clément Bœsch
f5cd136f2b ffmpeg: add -map_channel option.
Based on an initial work by Baptiste Coudurier.
2011-11-04 19:40:32 +01:00
Michael Niedermayer
259a960f1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vp6: Fix illegal read.
  avfilter: Don't copy garbage from the stack when setting up video pictures.
  avcodec: Make sure codec_type is set by avcodec_get_context_defaults2
  avcodec: Remove a misplaced and useless attribute_deprecated
  avconv: add -dump_attachment option.
  avconv: add -attach option.
  avconv: make negative mappings disable only streams from the specified file
  fmtconvert: fix int32_to_float_fmul_scalar() for windows x86_64

Conflicts:
	libavcodec/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-04 01:44:06 +01:00
Michael Niedermayer
f955fdc7c6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  cmdutils: Rename read_file to cmdutils_read_file

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-01 02:02:20 +01:00
Martin Storsjö
02170990fd cmdutils: Rename read_file to cmdutils_read_file
This symbol name clashes with a symbol in gnutls, if linking
statically to that library.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-10-31 16:29:29 +02:00
Michael Niedermayer
4dbce51b9e ffmpeg: allow pass 3
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-30 02:44:36 +01:00
Clément Bœsch
41f00e4adb ffmpeg: silence two compiler warnings. 2011-10-30 02:35:34 +02:00
Michael Niedermayer
e71aaad283 ffmpeg: Fix regression where various fields where not initialized leading to segfaults
Bug introduced by:
commit f12f40b31a
Author: Anton Khirnov <anton@khirnov.net>
Date:   Tue Aug 30 04:05:20 2011 +0200

    ffmpeg: get rid of new* options.

    They are confusing, irregular and redundant -- -map already contains all
    the information.  Stream maps can now be parsed in opt_output_file().

    Add a more user-friendly default behavior in case no maps are present.

    Breaks -programid for now, but it never worked properly anyway. A better
    solution will be written soon.
2011-10-29 20:25:39 +02:00
Michael Niedermayer
a18ecfeb36 ffmpeg: Fix memory corruption with ffserver
Bug has been introduced by:
commit 1cede1d011
Author: Anton Khirnov <anton@khirnov.net>
Date:   Sat Jun 25 07:43:49 2011 +0200

    ffmpeg: factor common code from new_a/v/s/d_stream to new_output_stream()
2011-10-29 20:21:59 +02:00
Michael Niedermayer
51bfaa21c8 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  g722dec: check output buffer size before decoding
  g722dec: cosmetics: reindent/linewrap
  g722dec: remove the use of lowres for half-rate decoding.
  tta: check for extradata allocation failure in tta demuxer
  tta: check for allocation failure of decode_buffer
  tta: use correct frame_length calculation.
  tta: add support for decoding 24-bit sample format
  cosmetics: indentation
  tta: remove pointless braces
  tta: check output buffer size after adjusting frame length for last frame
  tta: fix reading of format in TTA header.
  tta: remove useless commented-out lines
  tta: check remaining bitstream size while reading unary value
  lavf: deprecate AVStream.stream_copy
  avconc: split choose_codec() to choose_decoder/choose_encoder.
  lavf: simplify by using FFMAX/FFMIN.
  mpegenc: add preload private option.
  cosmetics: simplify latm_decode_init
  latm: avoid unnecessary reinit of the aac decoder
  aacdec: initialize sbr context only in new channel elements
  ...

Conflicts:
	avconv.c
	libavcodec/resample.c
	libavcodec/tta.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-26 02:36:07 +02:00
Michael Niedermayer
4e15960c78 ffmpeg: add rmvol command line option to set swr rematrix volume.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-26 01:00:37 +02: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
Michael Niedermayer
fae714a9fb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: add presets
  rtsp: Expose the flag options via private AVOptions for sdp and rtp, too
  rtsp: Make the rtsp flags avoptions set via a define
  rtpenc: Set a default video codec
  avoptions: Fix av_opt_flag_is_set
  rtp: Fix ff_rtp_get_payload_type
  doc: Update the documentation on setting options for RTSP
  rtsp: Remove the separate filter_source variable
  rtsp: Accept options via private avoptions instead of URL options
  rtsp: Simplify AVOption definitions
  rtsp: Merge the AVOption lists
  lavfi: port libmpcodecs delogo filter
  lavfi: port boxblur filter from libmpcodecs
  lavfi: add negate filter
  lavfi: add LUT (LookUp Table) generic filters
  AVOptions: don't segfault on NULL parameter in av_set_options_string()
  avio: Check for invalid buffer length.
  mpegenc/mpegtsenc: add muxrate private options.
  lavf: deprecate AVFormatContext.file_size
  mov: add support for TV metadata atoms tves, tvsn and stik

Conflicts:
	Changelog
	doc/filters.texi
	doc/protocols.texi
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/avfilter.h
	libavfilter/formats.c
	libavfilter/internal.h
	libavfilter/vf_boxblur.c
	libavfilter/vf_delogo.c
	libavfilter/vf_lut.c
	libavformat/mpegtsenc.c
	libavformat/utils.c
	libavformat/version.h
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 01:54:40 +02:00
Carl Eugen Hoyos
6bca574a98 Allow to overwrite input stream tags. 2011-10-16 19:05:11 +02:00
Michael Niedermayer
f884ef00de Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  tiffenc: initialize forgotten avctx.
  avplay: free the active audio packet at exit.
  avplay: free rdft data used for spectrogram analysis.
  log.h: make AVClass a named struct
  fix ac3 encoder documentation
  vc1: more prettyprinting cosmetics
  vc1: prettyprint some tables
  vc1: K&R formatting cosmetics
  AVOptions: bump minor and add APIchanges entry.
  cmdutils/avtools: simplify show_help() by using av_opt_child_class_next()
  AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_*
  Remove all uses of deprecated AVOptions API.
  AVOptions: add av_opt_next, deprecate av_next_option.
  AVOptions: add functions for evaluating option strings.
  AVOptions: split get_number().
  AVOptions: add av_opt_get*, deprecate av_get*.
  AVOptions: add av_opt_set*().
  AVOptions: add new API for enumerating children.
  rv34: move inverse transform functions to DSP context
  flvenc: Write the right metadata entry count
  ...

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	ffplay.c
	ffprobe.c
	libavcodec/ac3dec.c
	libavcodec/h264.c
	libavcodec/libvpxenc.c
	libavcodec/libx264.c
	libavcodec/mpeg12enc.c
	libavcodec/options.c
	libavdevice/libdc1394.c
	libavdevice/v4l2.c
	libavfilter/vf_drawtext.c
	libavformat/flvdec.c
	libavformat/mpegtsenc.c
	libavformat/options.c
	libavutil/avutil.h
	libavutil/opt.c
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 06:00:03 +02:00
Clément Bœsch
3473639952 ffmpeg: fix two stream related comments. 2011-10-11 14:24:20 +02:00
Michael Niedermayer
0a23067ab4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpeg4dec: use unsigned type for startcode in ff_mpeg4_decode_picture_header
  mpeg124: use sign_extend() function
  ac3dec: use get_sbits() instead of manually sign-extending
  4xm: fix signed overflow
  wmavoice: fix a signed overflow
  mpegvideo_enc: fix a signed overflow
  crc: fix signed overflow
  fate: run avconv with -nostats flag
  avtools: add -v as alias for -loglevel
  avconv: always print stats with AV_LOG_INFO
  doc/avconv: add forgotten output/per-stream info to -filter
  avconv: add -stats option to enable/disable printing encoding progress
  avconv: in output_packet() don't set decoded_data_size for video.
  avconv: remove pointless always true condition
  avconv: factorize common code in transcode_init()
  zmbv: remove memcpy() of decoded frame
  mpeg12enc: use sign_extend() function
  h264pred: use unsigned types for pixel values, fix signed overflows
  h264: fix signed overflows in x*0x01010101 expressions
  h264pred: remove unused variables

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

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-10 03:50:58 +02:00
Michael Niedermayer
e084cad45f ffmpeg: fix y/N regression so that \n is always needed
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 02:04:54 +02:00
Michael Niedermayer
96fad826ff ffmpeg: put space back that was lost during someone reformating it.
Found-by: Ramiro
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 23:18:48 +02:00
Michael Niedermayer
f3bacced24 ffmpeg: fix read_yn() if HAVE_TERMIOS_H || HAVE_KBHIT == 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 19:43:10 +02:00
Michael Niedermayer
dc46692ded ffmpeg: fix setting codecs for demuxers.
Bug introduced by:
commit e3bf4e292c
Author: Anton Khirnov <anton@khirnov.net>
Date:   Tue Aug 30 04:10:54 2011 +0200

    ffmpeg: replace -vcodec/-acodec/-scodec with a better system.

    The new option doesn't depend on its placement wrt -new* options (which
    don't exist anymore) and works in a similar way as per-stream AVOptions.

    -[vas]codec remain as aliases to -codec:[vas]

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 19:21:22 +02:00
Michael Niedermayer
92ec66f983 ffmpeg: limit read_key() calls to get a tiny speed boost.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 18:37:47 +02:00
Michael Niedermayer
c09abba1d9 ffmpeg: avoid multiple redundant av_gettime() calls, rather reuse the value in a iteration of the main loop.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 18:37:47 +02:00
Michael Niedermayer
f3afc9d772 ffmpeg: fix run_as_daemon when HAVE_TERMIOS_H is false
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 18:37:47 +02:00
Michael Niedermayer
d6c231bac1 ffmpeg: cosmetic renamings to reduce difference to qatar.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 18:37:47 +02:00
Michael Niedermayer
0732dceef1 ffmpeg: call term_init() earlier
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 18:37:47 +02:00
Michael Niedermayer
570fb660d6 ffmpeg: make q_pressed volatile, it can be changed from signal handlers.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 17:26:43 +02:00
Michael Niedermayer
fb79558516 ffmpeg: dont call read_key() in decode_interrupt_cb() this can cause keys to be lost
also its slow when read_key() is slow and there are a very large number of calls

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 17:26:43 +02:00
Michael Niedermayer
481747c6f7 ffmpeg: make -a/v/sn work with -map
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 21:59:50 +02:00
Nicolas George
2c1c0c5024 ffmpeg: fix forced key frames.
Now that the option was moved in the per-stream context,
the parsing is done before the time_base for the stream is decided.
This patch does the parsing in AV_TIME_BASE units and rescales the
timestamps later when the correct time base is known.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 03:39:15 +02:00
Michael Niedermayer
f9a2d0c3fe Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  avconv: Reformat s16 volume adjustment.
  ARM: NEON optimised vector_fmac_scalar()
  dca: use vector_fmac_scalar from dsputil
  dsputil: add vector_fmac_scalar()
  latmenc: Fix private options
  vf_unsharp: store hsub/vsub in the filter context
  vf_unsharp: adopt a more natural order of params in apply_unsharp()
  vf_unsharp: rename method "unsharpen" to "apply_unsharp"
  vf_scale: apply the same transform to the aspect during init that is applied per frame
  vf_pad: fix "vsub" variable value computation
  vf_scale: add a "sar" variable
  lavfi: fix realloc size computation in avfilter_add_format()
  vsrc_color: use internal timebase
  lavfi: fix signature for avfilter_graph_parse() and avfilter_graph_config()
  graphparser: prefer void * over AVClass * for log contexts
  avfiltergraph: use meaningful error codes
  avconv: Initialize return value for codec copy path.
  fate: use 'run' helper for seek-test
  fate: remove seek-mpeg2reuse test
  Fix memory (re)allocation in matroskadec.c, related to MSVR-11-0080.
  ...

Conflicts:
	doc/filters.texi
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/avfiltergraph.h
	libavfilter/graphparser.c
	libavfilter/vf_scale.c
	libavfilter/vsrc_color.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 01:11:01 +02:00
Nicolas George
1d3b280e71 ffmpeg: Replace av_realloc by av_realloc_f when relevant.
Also mark with a visible comment "FIXME realloc failure" places where
av_realloc seems to lack a proper test for failure.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Michael Niedermayer
2f3dd904f4 ffmpeg: fix wrong indention that leaked in from merge
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 03:19:22 +02:00
Michael Niedermayer
23c1db9b83 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: use different variables for decoded and filtered frame.
  avconv: add support for copying attachments.
  matroskaenc: write attachments.
  matroskadec: export mimetype of attachments as metadata.
  avconv: factorize common code from new_*_stream()
  doc/avconv: expand documentation for some options.
  doc/avconv: document -timelimit.

Conflicts:
	avconv.c
	cmdutils.c
	tests/codec-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 02:07:44 +02:00
Lars Täuber
6c0a902d12 ffmpeg: fix typo in warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 14:41:09 +02:00
Michael Niedermayer
7c1aba4f01 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  fate: allow testing with libavfilter disabled
  x86: XOP/FMA4 CPU detection support
  ws_snd: misc cosmetic clean-ups
  ws_snd: remove the 2-bit ADPCM table and just subtract 2 instead.
  ws_snd: use memcpy() and memset() instead of loops
  ws_snd: use samples pointer for loop termination instead of a separate iterator variable.
  ws_snd: make sure number of channels is 1
  ws_snd: add some checks to prevent buffer overread or overwrite.
  ws_snd: decode to AV_SAMPLE_FMT_U8 instead of S16.
  flacdec: fix buffer size checking in get_metadata_size()
  rtp: Simplify ff_rtp_get_payload_type
  rtpenc: Add a payload type private option
  rtp: Correct ff_rtp_get_payload_type documentation
  avconv: replace all fprintf() by av_log().
  avconv: change av_log verbosity from ERROR to FATAL for fatal errors.
  cmdutils: replace fprintf() by av_log()
  avtools: parse loglevel before all the other options.
  oggdec: add support for Xiph's CELT codec
  sol: return error if av_get_packet() fails.
  cosmetics: reindent and pretty-print
  ...

Conflicts:
	avconv.c
	cmdutils.c
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/oggparsecelt.c
	libavformat/utils.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 02:14:37 +02:00
Michael Niedermayer
eb11cca530 ffmpeg: document alternative to the lossless libx264 presets
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-26 22:06:39 +02:00
Michael Niedermayer
1edf33f7f2 ffmpeg: fix -b -ab mixes with -b overriding the audio bitrate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-26 21:04:23 +02:00
Anton Khirnov
182cbe433a avtools: parse loglevel before all the other options.
This way it can be applied to cmdutils too -- e.g. showing the banner
and printing startup messages.
2011-09-26 20:33:50 +02:00
Michael Niedermayer
537a9e5cc2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ppc: fix some pointer to integer casts
  ppc: fix 32-bit PIC build
  vmdaudio: fix decoding of 16-bit audio format.
  lavf: do not set codec_tag for rawvideo
  h264: check for out of bounds reads in ff_h264_decode_extradata().
  flvdec: Check for overflow before allocating arrays
  avconv: use correct output stream index when checking max_frames
  avconv: remove fake coded_frame on streamcopy hack

Conflicts:
	avconv.c
	libavcodec/h264.c
	libavcodec/ppc/asm.S
	libavcodec/vmdav.c
	libavformat/flvdec.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:30:25 +02:00
Stefano Sabatini
01fbcc6fd6 ffmpeg: improve feedback when processing filtergraph events 2011-09-25 22:47:51 +02:00
Stefano Sabatini
68b897ef15 ffmpeg: apply misc cosmetics fixes in the filtergraph event processing code
In particular provides more consistent and expressive names,
supposedly improves readability and user feedback.
2011-09-25 22:47:51 +02:00
Michael Niedermayer
d8289ff9a9 ffmpeg: increase bit_buffer_size, the header size is clearly too small for rgb48 raw based formats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 16:43:30 +02:00
Anton Khirnov
9aa1f87dfd Revert "ffmpeg: get rid of useless AVInputStream.nb_streams."
This reverts commit 2cf8355f98.
AVInputStream.nb_streams tracks number of streams found at the
beginning, new streams may appear that ffmpeg doesn't know about. Fixes
crash in this case.
2011-09-21 14:12:00 +02:00
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
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
Clément Bœsch
677a831ec6 ffmpeg: remove unused data_codec_name. 2011-09-12 12:09:09 +02:00