1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-18 03:19:31 +02:00
Commit Graph

1138 Commits

Author SHA1 Message Date
Stefano Sabatini
5045786b7e lavf: fix style for avformat_alloc_output_context2()
More consistent/readable.
2011-05-22 20:04:11 +02:00
Stefano Sabatini
5ecdfd008b lavf: deprecate avformat_alloc_output_context() in favor of avformat_alloc_output_context2()
The new function accepts a slightly more intuitive order of paramters,
and returns an error code, thus allowing applications to report a
meaningful error message.
2011-05-22 20:01:31 +02:00
Michael Niedermayer
5c08c7b215 Add a flag to disable side data merging.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-21 02:31:27 +02:00
Michael Niedermayer
94eadee7ef Merge/split side data.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-21 02:31:27 +02:00
Michael Niedermayer
8529f9b36b av_find_stream_info: Print more details about max anaylize duration failures.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-19 03:45:00 +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
Vladimir Pantelic
69fa23961e asfdec: do not fall back to binary/generic search
asf_read_seek() inside the asf demuxer already does the
right thing, it tries the index and if that fails it uses
binary search. If binary search is called from outside of asfdec.c
it will fail because the asf code cannot clean up after itself.
Therefore introduce AVFMT_NOBINSEARCH that prevents the seek
code to fallback to binary search and AVFMT_NOGENSEARCH that
prevents the seek code to fallback to generic search.
2011-05-17 22:06:00 +02:00
Stefano Sabatini
4ad0693edc lavf: fix function name in compute_pkt_fields2 av_dlog message
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-12 18:02:28 +02:00
Marton Balint
2c71581698 lavf: fix av_find_best_stream when providing a wanted stream.
In the main loop, stream_number is incremented after checking the stream type,
so the search usually will not find the wanted stream.

This patch eliminates the useless stream_number variable and introduces a new
one, called real_stream_index to store the real stream index of the current
stream, no matter if we are looping through all the streams or only the streams
of a program.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-12 18:02:27 +02:00
Marton Balint
6b35a795f8 lavf: fix av_find_best_stream when decoder_ret is given and using a related stream.
Yet another fix for the code originally designed for use without related_stream.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-12 18:02:27 +02:00
Michael Niedermayer
4ea216e761 libavformat/utils: Only consider dvb teletext timestamps for start time when they are consistent with the rest.
This fixes Ticket51.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-12 03:40:21 +02:00
Michael Niedermayer
59eb12faff Merge remote branch 'qatar/master'
* qatar/master: (30 commits)
  AVOptions: make default_val a union, as proposed in AVOption2.
  arm/h264pred: add missing argument type.
  h264dsp_mmx: place bracket outside #if/#endif block.
  lavf/utils: fix ff_interleave_compare_dts corner case.
  fate: add 10-bit H264 tests.
  h264: do not print "too many references" warning for intra-only.
  Enable decoding of high bit depth h264.
  Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 decoder.
  Add support for higher QP values in h264.
  Add the notion of pixel size in h264 related functions.
  Make the h264 loop filter bit depth aware.
  Template dsputil_template.c with respect to pixel size, etc.
  Template h264idct_template.c with respect to pixel size, etc.
  Preparatory patch for high bit depth h264 decoding support.
  Move some functions in dsputil.c into a new file dsputil_template.c.
  Move the functions in h264idct into a new file h264idct_template.c.
  Move the functions in h264pred.c into a new file h264pred_template.c.
  Preparatory patch for high bit depth h264 decoding support.
  Add pixel formats for 9- and 10-bit yuv420p.
  Choose h264 chroma dc dequant function dynamically.
  ...

Conflicts:
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavcodec/alpha/dsputil_alpha.c
	libavcodec/arm/dsputil_init_arm.c
	libavcodec/arm/dsputil_init_armv6.c
	libavcodec/arm/dsputil_init_neon.c
	libavcodec/arm/dsputil_iwmmxt.c
	libavcodec/arm/h264pred_init_arm.c
	libavcodec/bfin/dsputil_bfin.c
	libavcodec/dsputil.c
	libavcodec/h264.c
	libavcodec/h264.h
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_loopfilter.c
	libavcodec/h264_ps.c
	libavcodec/h264_refs.c
	libavcodec/h264dsp.c
	libavcodec/h264idct.c
	libavcodec/h264pred.c
	libavcodec/mlib/dsputil_mlib.c
	libavcodec/options.c
	libavcodec/ppc/dsputil_altivec.c
	libavcodec/ppc/dsputil_ppc.c
	libavcodec/ppc/h264_altivec.c
	libavcodec/ps2/dsputil_mmi.c
	libavcodec/sh4/dsputil_align.c
	libavcodec/sh4/dsputil_sh4.c
	libavcodec/sparc/dsputil_vis.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/dsputil_mmx.c
	libavformat/options.c
	libavformat/utils.c
	libavutil/pixfmt.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/swscale_template.c
	tests/ref/seek/lavf_avi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 05:47:02 +02:00
Vitor Sessak
ecc297308f lavf/utils: fix ff_interleave_compare_dts corner case.
This should fix behavior introduced by commit
96573c0d76. Av_rescale_rnd() is not
lossless so if two timestamps are equal after being rescaled they are
not always actually identical. This patch use av_compare_ts() to get
always a correct result.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:53:19 -04:00
Michael Niedermayer
67d441499a seeking: Favor pkt->pos for generic index building where possible.
See [FFmpeg-devel] [PATCH] Only using st->parser->pos when doing?repacking in the parser.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 03:28:42 +02:00
Reimar Döffinger
d3445a911c Remove unused variable. 2011-05-07 20:14:48 +02: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
Michael Niedermayer
492026209b LAVFAPI: demuxer specific options.
(someone please add doxy)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer
7d727f1338 LAVFAPI: avformat_alloc_output_context() / simplify usage of muxers.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Michael Niedermayer
a2eef3e9f5 LAVF API: remove AVOutputFormat.set_parameters() the field is unused.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 22:09:15 +02:00
Anssi Hannula
7c152a458d lavf: inspect more frames for fps when container time base is coarse
As per issue2629, most 23.976fps matroska H.264 files are incorrectly
detected as 24fps, as the matroska timestamps usually have only
millisecond precision.

Fix that by doubling the amount of timestamps inspected for frame rate
for streams that have coarse time base. This also fixes 29.970 detection
in matroska.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 78431098f9)

Tested with mplayer based on this report
http://thread.gmane.org/gmane.comp.video.mplayer.user/66043/focus=66063

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-29 22:46:13 +02:00
Diego Biurrun
045dd4b928 Replace some commented-out debug printf() / av_log() messages with av_dlog(). 2011-04-29 17:27:01 +02:00
Michael Niedermayer
8772156be0 Merge remote branch 'qatar/master'
* qatar/master:
  APIChanges: document git revision for CODEC_CAP_SLICE_THREADS addition.
  Introduce slice threads flag.
  FATE: allow forcing thread-type when doing threaded fate runs.
  Use av_log_ask_for_sample() where appropriate.
  error: sort, pack, and align error code and string definitions
  The stabilization period after version bumps should be one month, not one week.
  applehttp: Expose the stream bitrate via metadata
  doc: Add some initial docs on the applehttp demuxer
  Provide a fallback version of the libm function trunc
  libavdevice: Define _XOPEN_SOURCE for usleep
  lavc: provide deprecated avcodec_thread_init until next major version
  lavc: provide the opt.h header until the next bump
  error: change AVERROR_EOF value
  error: remove AVERROR_NUMEXPECTED
  error: add error code AVERROR_OPTION_NOT_FOUND, and use it in opt.c

Conflicts:
	libavcodec/h264.c
	libavutil/error.c
	libavutil/error.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-22 03:54:30 +02:00
Stefano Sabatini
79157f400b error: remove AVERROR_NUMEXPECTED
AVERROR_NUMEXPECTED is used only in the image muxer and demuxer, and
has a too much specific meaning, which is better explained through a
log message. Thus it can be replaced by AVERROR(EINVAL).

This breaks API.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-21 07:10:16 +02:00
Michael Niedermayer
10d2ae8cf7 Merge remote branch 'qatar/master'
* qatar/master:
  Makefile: Include dependencies for test tools, too
  Remove a version check in av_log made unnecessary by the big bump.
  update last major version increase dates in APIchanges
  Reduce picture size for yadif.
  oggdec: use av_freep() instead of av_free()
  avio: Fix sanity checks in ffurl_read*
  libavformat: Free AVFormatContext->streams
  libavformat: Make protocols pass URLContext as log context where available
  asf: remove commented out code in asf_read_seek
not pulled:  libpostproc: Remove crufty code disabled by the big bump.
  Reflect 0.7_beta1 release in the Changelog
not pulled:  sws: remove disabled cruft.
  lavu: remove disabled ff_random_get_seed cruft.
  lavu: remove disabled sha1 cruft.

Conflicts:
	Changelog
	libavutil/sha1.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-21 03:37:05 +02:00
Martin Storsjö
7bbb67d580 libavformat: Free AVFormatContext->streams
After switching this from a statically allocated array to a
dynamically allocated one in the major bump, this needs explicit
freeing.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-20 15:42:55 +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
Stefano Sabatini
59d96941f0 avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbols
Make AVIO_FLAG_ access constants work as flags, and in particular fix
the behavior of functions (such as avio_check()) which expect them to
be flags rather than modes.

This breaks API.
2011-04-19 19:47:58 +02:00
Anton Khirnov
5763e63913 lavf: remove FF_API_SYMVER cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
b4c5acabb9 lavf: remove FF_API_FIRST_FORMAT cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
58d5ff0abf lavf: remove FF_API_PARSE_FRAME_PARAM cruft 2011-04-19 18:28:39 +02:00
Anton Khirnov
5048e36c99 lavf: remove FF_API_URL_SPLIT cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
61573bf1ba lavf: remove FF_API_GUESS_FORMAT cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
575c18da1b lavf: remove FF_API_OLD_METADATA cruft 2011-04-19 18:28:38 +02:00
Anton Khirnov
761ad42968 lavf: remove FF_API_MAX_STREAMS cruft 2011-04-19 18:28:38 +02:00
Nicolas George
e61b83d29e Ogg: add support for Xiph's CELT (Opus) codec.
This patch also introduces CODEC_ID_CELT.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
2011-04-19 15:49:32 +02:00
Carl Eugen Hoyos
133208ffb3 Be more verbose when printing the probe result. 2011-04-19 11:50:27 +02:00
Michael Niedermayer
c55780dcef Merge remote branch 'qatar/master'
* qatar/master: (32 commits)
  libopencore-amr, libvo-amrwbenc: Allow enabling DTX via private AVOptions
  libopencore-amr, libvo-amrwbenc: Only check the bitrate when changed
  libopencore-amr, libvo-amrwbenc: Find the closest matching bitrate
  libvo-*: Fix up the long codec names
  libavcodec: Mark AVCodec->priv_class const
  swscale: Factorize FAST_BGR2YV12 definition.
  libvo-aacenc: Only produce extradata if the global header flag is set
  lavf: postpone removal of public metadata conversion API
  lavc: postpone removal of request_channels
  lavc: postpone removal of audioconvert and sample_fmt wrappers
  lavf: postpone removal of deprecated avio functions
  libopencore-amr: Cosmetics: Rewrap and align
  libopencore-amr, libvo-amrbwenc: Rename variables and functions
  libopencore-amr: Convert commented out debug logging into av_dlog
  libopencore-amr: Remove an unused state variable
  libvo-amrwbenc: Don't explicitly store bitrate modes in the bitrate table
  libopencore-amr: Remove a useless local variable
  libopencore-amr, libvo-amrwbenc: Make the bitrate/mode mapping array static const
  libopencore-amr, libvo-amrwbenc: Return proper error codes in most places
  libopencore-amr: Don't print carriage returns in log messages
  ...

Conflicts:
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/libvo-aacenc.c
	libavcodec/libvo-amrwbenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-14 03:21:38 +02:00
Michael Niedermayer
9891004ba9 Merge remote branch 'qatar/master'
* qatar/master:
Partially merged:flvdec: Allow parsing keyframes metadata without seeking in most cases
  Error out if vaapi is not found
  avio: undeprecate av_url_read_fseek/fpause under nicer names
  libvo-*: Don't use deprecated sample format names and enum names
DUPLICATE  flvdec: Fix support for flvtool2 "keyframes based" generated index
DUPLICATE  libavcodec: Use "const enum AVSampleFormat[]" in AVCodec initialization
  Fix the conversion of AV_SAMPLE_FMT_FLT and _DBL to AV_SAMPLE_FMT_S32.
  Convert some undefined 1<<31 shifts into 1U<<31.

Conflicts:
	configure
	libavcodec/libvo-aacenc.c
	libavcodec/libvo-amrwbenc.c
	libavformat/flvdec.c

Marged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-13 02:49:22 +02:00
Vitor Sessak
96573c0d76 lavf/utils.c: Order packets with identical PTS by stream index.
This allows for more reproducible results when using multi-threading.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-12 19:06:26 -04:00
Anton Khirnov
ff1ec0c3f8 avio: undeprecate av_url_read_fseek/fpause under nicer names
It seems their replacements won't be ready anytime soon.
2011-04-12 19:17:05 +02:00
Michael Niedermayer
d4d09329ee Merge remote branch 'qatar/master'
* qatar/master:
  lavf: bump minor and add an APIChanges entry for avformat cleanup
  lavf: get rid of ffm-specific stuff in avformat.h
Not pulled:  avio: deprecate av_protocol_next().
  avio: add a function for iterating though protocol names.
  lavf: rename a parameter of av_sdp_create from buff->buf
  lavf: rename avf_sdp_create to av_sdp_create.
  lavf: make av_guess_image2_codec internal
  avio: make URLProtocol internal.
  avio: make URLContext internal.
  lavf: mark av_pkt_dump(_log) for remove on $next+1 bump.
  lavf: use designated initializers for all protocols
  applehttp: don't use deprecated url_ functions.
  avio: move two ff_udp_* functions from avio_internal to url.h
  asfdec: remove a forgotten declaration of nonexistent function
  avio: deprecate the typedef for URLInterruptCB

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-09 03:17:07 +02:00
Anton Khirnov
a9bf9d8e53 lavf: make av_guess_image2_codec internal
It doesn't look very useful as a public function.
2011-04-08 16:44:29 +02:00
Anton Khirnov
c5704b2b9a lavf: mark av_pkt_dump(_log) for remove on $next+1 bump. 2011-04-08 15:44:09 +02:00
Michael Niedermayer
c88caa522c Merge remote branch 'qatar/master'
* qatar/master:
  proto: include os_support.h in network.h
  matroskaenc: don't write an empty Cues element.
  lavc: add a FF_API_REQUEST_CHANNELS deprecation macro
  avio: move extern url_interrupt_cb declaration from avio.h to url.h
  avio: make av_register_protocol2 internal.
  avio: avio_ prefix for url_set_interrupt_cb.
  avio: AVIO_ prefixes for URL_ open flags.
  proto: introduce listen option in tcp
  doc: clarify configure features
  proto: factor ff_network_wait_fd and use it on udp

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-08 02:50:13 +02:00
Anton Khirnov
5cec897105 avio: move extern url_interrupt_cb declaration from avio.h to url.h 2011-04-07 18:11:24 +02:00
Anton Khirnov
f87b1b373a avio: AVIO_ prefixes for URL_ open flags. 2011-04-07 18:07:16 +02:00
Michael Niedermayer
c0e51ec9c6 Merge remote branch 'qatar/master'
* qatar/master:
  Fix parser: mark av_parser_parse() for removal on next major bump
  swscale: postpone sws_getContext removal until next major bump.
  fate: add AAC LATM test
  mmst: get rid of deprecated AVERRORs
  lxfdec: use AVERROR(ENOMEM) instead of deprecated AVERROR_NOMEM.
  Reemove remaining uses of deprecated AVERROR_NOTSUPP.
REIMPLEMENTED in 2 lines of code:  lavf: if id3v2 tag is present and all else fails, guess by file extension

Conflicts:
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 03:32:26 +02:00
Anton Khirnov
56a1000917 lavf: if id3v2 tag is present and all else fails, guess by file extension 2011-04-06 14:10:08 +02:00
Michael Niedermayer
2cae9809e2 Merge remote branch 'qatar/master'
* qatar/master:
  fate: fix partial run when no samples path is specified
  ARM: NEON fixed-point forward MDCT
  ARM: NEON fixed-point FFT
  lavf: bump minor version and add an APIChanges entry for avio changes
  avio: simplify url_open_dyn_buf_internal by using avio_alloc_context()
  avio: make url_fdopen internal.
  avio: make url_open_dyn_packet_buf internal.
  avio: avio_ prefix for url_close_dyn_buf
  avio: avio_ prefix for url_open_dyn_buf
  avio: introduce an AVIOContext.seekable field
  ac3enc: use generic fixed-point mdct
  lavfi: add fade filter
  Change yadif to not use out of picture lines.
  lavc: deprecate AVCodecContext.antialias_algo
  lavc: mark mb_qmin/mb_qmax for removal on next major bump.

Conflicts:
	doc/filters.texi
	libavcodec/ac3enc_fixed.h
	libavcodec/ac3enc_float.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/vf_fade.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-04 02:15:12 +02:00
Anton Khirnov
8978fedaee avio: introduce an AVIOContext.seekable field
Use it instead of url_is_streamed and AVIOContext.is_streamed.
2011-04-03 22:46:40 +02:00
Michael Niedermayer
0b9dffc67a Improve codec_tag guessing code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 16:40:12 +02:00
Michael Niedermayer
512f973eac Fix issue2437 2011-04-03 16:40:11 +02:00
Michael Niedermayer
5b56ad03fa Reimplement stream probe try #2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 16:40:11 +02:00
Michael Niedermayer
15957b197a Partial rewrite stream probe code.
Fix issue2312.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 16:40:11 +02:00
Anssi Hannula
78431098f9 lavf: inspect more frames for fps when container time base is coarse
As per issue2629, most 23.976fps matroska H.264 files are incorrectly
detected as 24fps, as the matroska timestamps usually have only
millisecond precision.

Fix that by doubling the amount of timestamps inspected for frame rate
for streams that have coarse time base. This also fixes 29.970 detection
in matroska.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 03:18:06 +02:00
Michael Niedermayer
4defa68fe2 Merge remote branch 'qatar/master'
* qatar/master:
  ac3enc: ARM optimised ac3_compute_matissa_size
  ac3: armv6 optimised bit_alloc_calc_bap
  fate: simplify fft test rules
  avio: document avio_alloc_context.
  lavf: make compute_chapters_end less picky.
  sierravmd: fix Indeo3 videos
  FFT: simplify fft8()
  fate: add fixed-point fft/mdct tests
  Fixed-point support in fft-test
  ape: check that number of seektable entries is equal to number of frames

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-02 01:54:27 +02:00
Anton Khirnov
ab11317c1f lavf: make compute_chapters_end less picky.
In particular, now it assumes that
a) chapters are chronologically ordered
b) chapters have the same timebases
c) duration of the stream is known
and asserts if any of these is not met.

Make it properly deal with harsher conditions.

fixes issue2320
2011-04-01 19:53:55 +02:00
Stefano Sabatini
ca1a2a4711 lavf: make compute_pkt_fields2() return meaningful error values 2011-03-26 14:41:33 +01:00
Michael Niedermayer
27ef7b1bcd Merge remote-tracking branch 'newdev/master'
* newdev/master:
  mov: set audio service type for AC-3 from bitstream mode in the 'dac3' atom.
  Get audio_service_type for AC-3 based on bitstream mode in the AC-3 parser and decoder, and vice-versa for the AC-3 encoder.
  Use audio_service_type to set stream disposition.
  Add APIchanges entry for audio_service_type.
  Add audio_service_type field to AVCodecContext for encoding and reporting of the service type in the audio bitstream.
  configure: in check_ld, place new -l flags before existing ones
  support @heading, @subheading, @subsubheading, and @subsubsection in texi2pod.pl
  doc: update build system documentation
  aacenc: indentation
  aacenc: fix the side calculation in search_for_ms
  vp8.c: rename EDGE_* to VP8_EDGE_*.

Conflicts:
	doc/APIchanges
	libavcodec/avcodec.h
	libavcodec/version.h
	libavcodec/vp8.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-26 03:06:30 +01:00
Justin Ruggles
c70a6a41dd Use audio_service_type to set stream disposition. 2011-03-25 16:58:50 -04:00
Michael Niedermayer
4fa0e24736 Merge remote-tracking branch 'newdev/master'
* newdev/master: (33 commits)
  Fix an infinite loop when RoQ encoded generated a frame with a size greater than the maximum valid size.
  Add kbdwin.o to AC3 decoder
  Detect byte-swapped AC-3 and support decoding it directly.
  cosmetics: indentation
  Always copy input data for AC3 decoder.
  ac3enc: make sym_quant() branch-free
  cosmetics: indentation
  Add a CPU flag for the Atom processor.
  id3v2: skip broken tags with invalid size
  id3v2: don't explicitly skip padding
  Make sure kbhit() is in conio.h
  fate: update wmv8-drm reference
  vc1: make P-frame deblock filter bit-exact.
  configure: Add the -D parameter to the dlltool command
  amr: Set the AVFMT_GENERIC_INDEX flag
  amr: Set the pkt->pos field properly to the start of the packet
  amr: Set the codec->bit_rate field based on the last packet
  rtsp: Specify unicast for TCP interleaved streams, too
  Set the correct target for mingw64 dlltool
  applehttp: Change the variable for stream position in seconds into int64_t
  ...

Conflicts:
	ffmpeg.c
	ffplay.c
	libavcodec/ac3dec.c
	libavformat/avio.h
	libavformat/id3v2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-23 02:42:56 +01:00
Anton Khirnov
933e90a69a avio: make av_url_read_fseek/fpause internal.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-21 14:54:52 -04: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
Stefano Sabatini
12bcfe05b4 lavf: fix function name in compute_pkt_fields2 av_dlog message 2011-03-18 17:21:48 +01: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
Martin Storsjö
f1f60f5252 lavf: Make make_absolute_url a lavf internal function
This is shared by both applehttp demuxer and protocol.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-17 12:28:37 +01:00
Stefano Sabatini
68d875addc lavf: make av_interleave_packet() return meaningful error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c5dcb3d493)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-03-17 07:30:09 +01:00
Stefano Sabatini
70abc32314 lavf: enable av_dlog message in av_interleaved_write_frame()
Help debugging timestamp issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit d541c8b468)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-03-17 07:29:57 +01:00
Stefano Sabatini
79f43a8cb6 lavf: enable av_dlog() in compute_pkt_fields2()
Turns a comment into an av_dlog() instruction, also add a commented
issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 77f21ce464)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-03-17 07:29:47 +01:00
Anton Khirnov
59f65d9579 avio: make url_setbufsize internal.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:38 -04:00
Stefano Sabatini
c5dcb3d493 lavf: make av_interleave_packet() return meaningful error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 01:35:08 +01:00
Stefano Sabatini
77f21ce464 lavf: enable av_dlog() in compute_pkt_fields2()
Turns a comment into an av_dlog() instruction, also add a commented
issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 01:35:08 +01:00
Stefano Sabatini
d541c8b468 lavf: enable av_dlog message in av_interleaved_write_frame()
Help debugging timestamp issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 01:35:08 +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
Michael Niedermayer
6947b0c42e Merge remote-tracking branch 'newdev/master'
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-15 16:48:42 +01:00
Nicolas George
c76374c6db Use AVERROR_EXIT with url_interrupt_cb.
Functions interrupted by url_interrupt_cb should not be restarted.
Therefore using AVERROR(EINTR) was wrong, as it did not allow to distinguish
when the underlying system call was interrupted and actually needed to be
restarted.

This fixes roundup issues 2657 and 2659 (ffplay not exiting for streamed
content).

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-15 08:09:19 -04:00
Anton Khirnov
75b9ed04b9 lavf/utils: dont't explicitly check AVIOContext.error
The error should be caught in write_packet()/write_trailer()

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-15 08:04:10 -04:00
Marton Balint
5126a8ecbb Fix av_find_best_stream when providing a wanted stream
In the main loop, stream_number is incremented after checking the stream type,
so the search usually will not find the wanted stream.

This patch eliminates the useless stream_number variable and introduces a new
one, called real_stream_index to store the real stream index of the current
stream, no matter if we are looping through all the streams or only the streams
of a program.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-11 13:05:46 +01:00
Marton Balint
fa14610df5 Fix av_find_best_stream when decoder_ret is given and using a related stream
Yet another fix for the code originally designed for use without related_stream.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-11 13:03:43 +01:00
Anton Khirnov
f8bc86d47e avio: move ff_rewind_with_probe_data from avio.h to avio_internal.h
also change its prefix to ffio

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit f1ef2cd9ed)
2011-03-08 02:09:34 +01:00
Anton Khirnov
db44ea960d avio: avio_ prefix for url_fsize
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 76aa876e69)
2011-03-08 02:09:21 +01:00
Anton Khirnov
f1ef2cd9ed avio: move ff_rewind_with_probe_data from avio.h to avio_internal.h
also change its prefix to ffio

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 12:25:36 -05:00
Anton Khirnov
76aa876e69 avio: avio_ prefix for url_fsize
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-07 11:03:39 -05:00
Anton Khirnov
384c9c2fa7 avio: add avio_tell macro as a replacement for url_ftell
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit a2704c9712)
2011-03-05 02:29:31 +01:00
Anton Khirnov
a2704c9712 avio: add avio_tell macro as a replacement for url_ftell
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-04 11:26:57 -05:00
Martin Storsjö
08ad81cbff libavformat: Add av_pkt_dump{, _log}2, taking an AVStream parameter
This removes a fixme issue, by allowing the av_pkt_dump functions
to use the correct time base.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit 863c471638)
2011-03-03 14:15:10 +01:00
Anton Khirnov
f59d8ff8cd avio: avio_ prefix for url_fseek
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 6b4aa5dac8)
2011-03-03 14:15:03 +01:00
Martin Storsjö
863c471638 libavformat: Add av_pkt_dump{, _log}2, taking an AVStream parameter
This removes a fixme issue, by allowing the av_pkt_dump functions
to use the correct time base.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-03-02 11:29:38 +01:00
Anton Khirnov
6b4aa5dac8 avio: avio_ prefix for url_fseek
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 12:12:33 -05:00
Anton Khirnov
ebb92e0768 avio: rename url_fopen/fclose -> avio_open/close.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 22a3212e32)
2011-02-23 18:22:03 +01:00
Anton Khirnov
22a3212e32 avio: rename url_fopen/fclose -> avio_open/close.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-23 10:18:55 -05:00
Anton Khirnov
e63a362857 avio: avio_ prefixes for get_* functions
In the name of consistency:
get_byte           -> avio_r8
get_<type>         -> avio_r<type>
get_buffer         -> avio_read

get_partial_buffer will be made private later

get_strz is left out becase I want to change it later to return
something useful.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit b7effd4e83)
2011-02-22 02:44:37 +01:00
Anton Khirnov
b7effd4e83 avio: avio_ prefixes for get_* functions
In the name of consistency:
get_byte           -> avio_r8
get_<type>         -> avio_r<type>
get_buffer         -> avio_read

get_partial_buffer will be made private later

get_strz is left out becase I want to change it later to return
something useful.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-21 11:23:22 -05:00
Anton Khirnov
471fe57e1a avio: rename ByteIOContext to AVIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ae628ec1fd)
2011-02-20 19:05:47 +01:00
Anton Khirnov
ae628ec1fd avio: rename ByteIOContext to AVIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-20 08:37:15 -05:00
Anton Khirnov
1b98107c8d Move find_info_tag to lavu and add av_ prefix to it
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit ab0287fcbd)
2011-02-18 19:52:33 +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
Anton Khirnov
0ebf475494 lavf: add av_ prefix to dump_format()
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 610219a598)
2011-02-18 19:52:28 +01:00
Anton Khirnov
ab0287fcbd Move find_info_tag to lavu and add av_ prefix to it
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-17 15:35:18 +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
Anton Khirnov
610219a598 lavf: add av_ prefix to dump_format()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-16 23:39:56 +00:00
Balint Marton
33af787d8a Fix av_find_best_stream when using a program
The current implementation has a bug, it is returning the stream index
in the found program, and not the stream index in the list of all
streams. The attached patch fixes this issue.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 22ec6b738f)
2011-02-16 23:00:50 +01: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
Balint Marton
22ec6b738f Fix av_find_best_stream when using a program
The current implementation has a bug, it is returning the stream index
in the found program, and not the stream index in the list of all
streams. The attached patch fixes this issue.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-16 11:47:42 +00:00
Anssi Hannula
2ea7e1f011 lavf: add AV_DISPOSITION_CLEAN_EFFECTS flag
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 24a83bd10a)
2011-02-15 16:32:31 +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
Michael Niedermayer
e24c05cd53 Better threshold for the gcd based r_frame_rate calculation.
Fixes Gilmore Girls_Net 5_2011_01_08_16_10_53.wtv and RTL GP- WK Superbike - Qatar_RTL7_2009_03_14_15_49_23.wtv.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-15 04:19:31 +01:00
Anssi Hannula
24a83bd10a lavf: add AV_DISPOSITION_CLEAN_EFFECTS flag
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-14 23:16:32 +00:00
Anssi Hannula
709946b34c lavf: print stream disposition in dump_stream_format
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 3c33c0e263)
2011-02-14 23:58:19 +01:00
Anssi Hannula
3c33c0e263 lavf: print stream disposition in dump_stream_format
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-13 15:21:11 +01:00
Peter Ross
d43d2197c2 make av_find_best_stream() ignore streams marked with AV_DISPOSITION_*_IMPAIRED
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 5209149157)
2011-02-11 02:54:10 +01:00
Alexander Strange
b38f008ea6 Frame-based multithreading framework using pthreads
See doc/multithreading.txt for details on use in codecs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-11 02:53:58 +01:00
Peter Ross
5209149157 make av_find_best_stream() ignore streams marked with AV_DISPOSITION_*_IMPAIRED
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-02-10 22:55:17 +01:00
Alexander Strange
37b00b47cb Frame-based multithreading framework using pthreads
See doc/multithreading.txt for details on use in codecs.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-09 09:17:28 -05:00
Anssi Hannula
070e5ba560 lavf: rename ff_probe_input_buffer to make it public
It is useful for applications that hand input data directly to lavf via
a ByteIOContext.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 3940caad02)
2011-02-09 03:33:55 +01:00
Anssi Hannula
e74c01db7e lavf: simplify pb parameter of ff_probe_input_buffer
There is no need to pass the ByteIOContext via a pointer to a pointer
anymore.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit aad216fd7e)
2011-02-09 03:33:55 +01:00
Reimar Döffinger
2f35beae4d Make av_set_pts_info keep previous time base if new one is invalid.
Fixes issue 2475.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit b3190529df)
2011-02-09 03:31:17 +01:00
Anssi Hannula
3940caad02 lavf: rename ff_probe_input_buffer to make it public
It is useful for applications that hand input data directly to lavf via
a ByteIOContext.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-08 18:25:12 -05:00
Anssi Hannula
aad216fd7e lavf: simplify pb parameter of ff_probe_input_buffer
There is no need to pass the ByteIOContext via a pointer to a pointer
anymore.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-08 18:25:11 -05:00
Reimar Döffinger
b3190529df Make av_set_pts_info keep previous time base if new one is invalid.
Fixes issue 2475.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-06 16:12:15 -05:00
Martin Storsjö
4ed68fdfdc libavformat: Add a function for freeing an AVFormatContext
This function is useful for freeing data structures allocated by
muxers, which currently have to be freed manually by the caller.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit f124b087ee)
2011-02-06 20:31:44 +01:00
Peter Ross
2d9fd1810b add ff_index_search_timestamp and ff_add_index_entry
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e6fb5a4f78)
2011-02-06 20:31:42 +01:00
Martin Storsjö
f124b087ee libavformat: Add a function for freeing an AVFormatContext
This function is useful for freeing data structures allocated by
muxers, which currently have to be freed manually by the caller.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-04 11:29:41 -05:00
Peter Ross
e6fb5a4f78 add ff_index_search_timestamp and ff_add_index_entry
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-03 21:50:54 -05:00
Diego Elio Pettenò
d20d1449e0 Make ff_interleave_compare_dts static to utils.c.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit 101e1f6ff9)
2011-01-26 03:43:31 +01:00
Diego Elio Pettenò
101e1f6ff9 Make ff_interleave_compare_dts static to utils.c.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-25 21:48:03 +01:00
Stefano Sabatini
440d761e40 Clarify timestamps related error messages in compute_pkt_fields2().
Originally committed as revision 26308 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-11 12:17:27 +00:00
Daniel Kang
6cbce63650 Fix assertion fail on audio files with invalid sample rates,
fixes issue 2475.

Patch by Daniel Kang, daniel.d.kang at gmail

Originally committed as revision 26240 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-06 03:30:19 +00:00
Stefano Sabatini
6bbdba08c2 Revert previous commit, as it was not meant to be pushed.
Originally committed as revision 26239 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-06 01:11:57 +00:00
Stefano Sabatini
7820147e6f Issue more explicit error messages in compute_pkt_fields2().
Originally committed as revision 26238 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-06 01:01:21 +00:00
Stefano Sabatini
81bd411965 In av_close_input_stream(), flush the packet queue before to actually
close the stream.

This way the flushed packets can still reference the still unclosed
format context.

In particular this fixes a spurious error issued when closing the
video4linux2 buffer in mmap_release_buffer(), which tries to access
the file descriptor of an already closed file.

Originally committed as revision 26237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-06 01:01:14 +00:00
Anssi Hannula
cf99e4aa00 Add AVOption support for muxers.
Patch by Anssi Hannula, anssi d hannula a iki d fi

Originally committed as revision 26195 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-02 10:52:34 +00:00
Nicolas George
9128ae08b3 Implement av_find_best_stream.
Originally committed as revision 26104 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-27 09:08:20 +00:00
Anton Khirnov
bb62d5c1f0 Allow output formats without any streams.
Required for future metadata format.

Originally committed as revision 26100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-27 07:46:44 +00:00
Peter Ross
141de5a9c1 add ff_find_stream_index
Originally committed as revision 26092 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-26 01:24:51 +00:00
David Czech
9100d4d632 Fix crash if invalid bit-rate was read from file.
Fixes issue 2426.

Patch by David Czech, davidczech510 gmail

Originally committed as revision 26061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-20 09:58:27 +00:00
Aurelien Jacobs
118ccae030 add subtitle codec autodetection
Originally committed as revision 25884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-04 14:46:13 +00:00
Baptiste Coudurier
581ba2cee1 In av_find_stream_info, decode more h264 to get correct delay, issue #2020
Originally committed as revision 25824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-25 02:19:03 +00:00
Reimar Döffinger
6bfc268305 Add av_append_packet function, to be used in code that merges packets
to allow palette handling without using PaletteControl.

Originally committed as revision 25777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-21 10:24:48 +00:00
Aurelien Jacobs
b3c0fc7673 av_find_stream_info(): set subtitle codec time_base
Originally committed as revision 25758 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-16 23:50:18 +00:00
Aurelien Jacobs
cb2c971d91 allow passing subtitles header between decoder and encoder
Originally committed as revision 25745 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-13 13:57:49 +00:00
Anton Khirnov
273231466c lavf/utils: use av_{i/o}format_next() instead of first_{i/o}format
Originally committed as revision 25738 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-13 08:55:15 +00:00
Stefano Sabatini
5d6e4c160a Replace deprecated symbols SAMPLE_FMT_* with AV_SAMPLE_FMT_*, and enum
SampleFormat with AVSampleFormat.

Originally committed as revision 25730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 11:04:40 +00:00
Anton Khirnov
d60a9f52eb lavf: simplify setting the encoder ident tag.
patch by Anton Khirnov  anton _at_ khirnov _dot_ net

Originally committed as revision 25504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-16 13:07:20 +00:00
Aurelien Jacobs
13728334e8 add FF_API_SYMVER define to disable symver compatibility functions
Originally committed as revision 25491 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 18:25:01 +00:00
Aurelien Jacobs
114c9a5925 add FF_API_FIRST_FORMAT define to drop deprecated first_?format from public api
Originally committed as revision 25489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 14:25:36 +00:00
Aurelien Jacobs
d87a521cde add FF_API_PARSE_FRAME_PARAM define to disable the deprecated
parse_image_size() and parse_frame_rate() public functions

Originally committed as revision 25485 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 13:33:23 +00:00
Aurelien Jacobs
88e44314ea add FF_API_URL_SPLIT define to disable the deprecated ff_url_split() function
Originally committed as revision 25482 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 12:54:12 +00:00
Aurelien Jacobs
198ac67fe8 add FF_API_GUESS_FORMAT define to disable the deprecated guess_format()
and guess_stream_format() public functions

Originally committed as revision 25480 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 12:45:14 +00:00
Aurelien Jacobs
fd0368e7ca move av_find_stream_info() info struct to AVStream to avoid messy (re)allocation
Originally committed as revision 25418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-08 22:01:19 +00:00
Aurelien Jacobs
e99179de9b remove useless local variable
Originally committed as revision 25394 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-07 19:10:51 +00:00
Aurelien Jacobs
3e4318bf4a remove useless local allocated start_time array
Originally committed as revision 25393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-07 19:05:31 +00:00
Aurelien Jacobs
61138c43e0 properly check for FF_API_MAX_STREAMS instead of LIBAVFORMAT_VERSION_MAJOR
Originally committed as revision 25382 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-06 21:43:46 +00:00
Aurelien Jacobs
38aab35f47 add new streams API without MAX_STREAMS limit
(disabled until next major bump)

Originally committed as revision 25381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-06 20:56:14 +00:00
Aurelien Jacobs
feb2440c38 dynamically use nb_streams instead of static use of MAX_STREAMS
Originally committed as revision 25380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-06 20:52:26 +00:00
Reimar Döffinger
6612d8cf31 Move handling of ID3v2 to common utils.c code, reducing code duplication
and supporting it for more formats, fixing issue 2258.

Originally committed as revision 25378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-06 20:21:07 +00:00
Martin Storsjö
eb99f179fa find_info_tag: Make sure the output buffer is null terminated
Originally committed as revision 25353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-05 19:33:56 +00:00
Benjamin Larsson
62784e3733 Add the CODEC_CAP_CHANNEL_CONF capability code and add
that flag to the dca codec. This capability when set
will make sure the codec will initialize the channel
configuration instead of trusting the container. This
fixes issue 2137 and issue 850.

Originally committed as revision 25320 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-02 22:18:02 +00:00
Michael Chinen
59cb40b921 Fix index_entries pos:
It was being set wrong for files with data_offset > 0

Patch by Michael Chinen, mchinen gmail

Originally committed as revision 25239 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 22:17:58 +00:00
Michael Niedermayer
6ed040408b Move AVOptions from libavcodec to libavutil
Originally committed as revision 25210 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-26 14:25:22 +00:00
Christian d'Heureuse
b163078fe3 Fix formatting for negative start times (issue 2139).
Patch by Christian d'Heureuse, chdh inventec ch

Originally committed as revision 25063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-07 21:06:21 +00:00
Aurelien Jacobs
b004207df4 move stream info arrays into a struct to ease future dynamic allocation
Originally committed as revision 25045 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-05 22:25:45 +00:00
Måns Rullgård
668338c573 avformat: free decryption key in av_close_input_stream()
Originally committed as revision 24899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-24 15:08:53 +00:00
Martin Storsjö
f9c399c4fd Make parse_key_value from httpauth a common lavf internal function
Originally committed as revision 24832 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-19 14:49:53 +00:00
Aurelien Jacobs
54036be11a rename LAVF_API_* defines to FF_API_* to clarify that it is not public API
Originally committed as revision 24825 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-18 20:34:31 +00:00
Aurelien Jacobs
dd872bf49f add LAVF_API_OLD_METADATA define to disable the deprecated metadata API
Originally committed as revision 24818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-17 20:23:19 +00:00
Baptiste Coudurier
d2064fd42b Fix segv when stream copy and validate_tag fails, st->codec->codec is not set
Originally committed as revision 24782 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-12 00:35:19 +00:00
Przemysław Sobala
ec973f45a3 Fix mem leak when trying to open a non-existing image file (issue 2126).
Patch by Przemysław Sobala, psobala wp-sa pl

Originally committed as revision 24757 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-10 17:27:22 +00:00
Martin Storsjö
311baee795 Make hex_to_data a lavf internal function
This is useful for other future RTP depacketizers

Originally committed as revision 24747 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-09 10:05:33 +00:00
Stefano Sabatini
126b638ea0 Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
in favor of the newly added corresponding functions
av_parse_video_size() and av_parse_video_rate() defined in
libavcore/parseutils.h.

This change also adds a linking-time dependency of libavcodec and of
libavfilter on libavcore.

Originally committed as revision 24518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 23:12:28 +00:00
Baptiste Coudurier
9d3fdf2031 Move AVStream->codec_info_nb_frames increment after try_decode_frame
Originally committed as revision 24017 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 03:15:37 +00:00
Baptiste Coudurier
ae447836af In av_find_stream_info, decode at least 4 h.264 frames to be able to guess delay.
Originally committed as revision 24014 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 03:07:33 +00:00
XBMC
b0a18c2f0a Make "invalid dts/pts combination" a debug instead of a warning message.
Patch by XBMC

Originally committed as revision 23919 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:01:44 +00:00
Måns Rullgård
49bd8e4b84 Fix grammar errors in documentation
Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 15:38:06 +00:00
Eli Friedman
22d78b05b1 Fix an "assignment from incompatible pointer type" warning in av_read_frame_internal
Patch by Eli Friedman, eli dot friedman at gmail

Originally committed as revision 23842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-28 08:04:52 +00:00
Måns Rullgård
f3bfe388b5 Make ff_url_split() public
ff_url_split() is retained as an alias, as it was used by ffserver,
to avoid breaking ABI compatibility with it.

Originally committed as revision 23822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 14:16:46 +00:00
Stephen Dredge
5be5d28ced Fix failure in av_read_frame on timestamp rollover.
Patch by Stephen Dredge, sdredge A tpg com au

Originally committed as revision 23699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 08:48:28 +00:00
Martin Storsjö
a955fc5ee7 ff_url_join: Don't add any at-char if the auth is an empty string
Originally committed as revision 23650 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-19 21:56:50 +00:00
Måns Rullgård
b462d13262 Add compatibility wrappers for functions moved from lavf to lavc
When symbol versioning is enabled, moving symbols from one library to
another breaks binary compatibility.  This adds wrappers with the old
version tag for the av_*packet functions recently moved to lavc.

Originally committed as revision 23611 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-15 13:26:52 +00:00
Michael Niedermayer
7686ab07ac Fix muxing rgb rawvideo in avi regression.
Originally committed as revision 23500 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 23:13:52 +00:00
Stefano Sabatini
b603ab8dc1 Make the error message issued in case of invalid codec tag more
informative.

Originally committed as revision 23423 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-02 10:54:53 +00:00
Michael Niedermayer
b742a12ee2 Print an error when MAX_STREAMS is reached.
Originally committed as revision 23413 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-01 19:49:21 +00:00
Michael Niedermayer
a5266a4789 Make sure that when the parser is feeded with frame==packet that the
packets are passed through and wont be marked as static which would
require them to be copied by av_dup_packet().

Originally committed as revision 23352 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-27 17:11:37 +00:00
Alex Converse
74a6df59e3 Add an AVSTREAM_PARSE_FULL_ONCE parsing mode to parse headers and combine packets once and only once.
Originally committed as revision 23332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-26 04:20:32 +00:00
Jai Menon
9bbe9a0dc1 Display a more descriptive log message when probe buffer limit is
reached.

Originally committed as revision 23288 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-24 16:42:16 +00:00
Stefano Sabatini
e1745e2f6e Make av_write_header() return AVERROR(EINVAL) rather than -1 if the
input parameters are not valid.

Originally committed as revision 23253 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 21:52:06 +00:00
Stefano Sabatini
cf5b33d9fa Store in a dedicated array the format name - codec id - codec type
mapping. Simplify.

Originally committed as revision 23252 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 21:52:02 +00:00
Stefano Sabatini
83c2707908 Prefer enum CodecID over int in ff_codec_get_tag().
Originally committed as revision 23249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-22 15:56:49 +00:00
Martin Storsjö
9a76125069 Add a libavformat internal function ff_write_chained
Originally committed as revision 23207 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-21 07:07:57 +00:00
Francesco Lavra
698f4cc7f0 Validate AVCodecTag vs CodecID.
Patch by Francesco Lavra, francescolavra interfree it

Originally committed as revision 23159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-18 19:23:29 +00:00
Francesco Lavra
603a5f04b2 Factorize some code into the new function ff_toupper4().
Patch by Francesco Lavra, francescolavra interfree it

Originally committed as revision 23158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-18 19:16:40 +00:00
Baptiste Coudurier
58edb075f0 Change MAX_READ_SIZE message during av_find_stream_info to DEBUG level.
It is not harmful and it scares too many users.

Originally committed as revision 23139 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-14 22:04:39 +00:00
Reimar Döffinger
8e2ee182fa Export av_probe_input_format2.
Originally committed as revision 23002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-01 13:49:35 +00:00
Stefano Sabatini
2ef6c1242a Mark av_metadata_set() as deprecated, and use av_metadata_set2()
in its place.

av_metadata_set() is going to be dropped at the next major bump.

Originally committed as revision 22961 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-25 14:27:42 +00:00
Diego Biurrun
ba87f0801d Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
Jean-Daniel Dupas
2898526d6a Do not probe when the format is known.
Patch by Jean-Daniel Dupas devlists shadowlab org

Originally committed as revision 22870 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-13 07:25:50 +00:00
Michael Niedermayer
0f1f4816d5 Raise needed score for codec probing in CODEC_ID_PROBE before the last packet.
Fixes issue1871

Originally committed as revision 22831 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-11 00:43:36 +00:00
Michael Niedermayer
497431a5b6 Dont try to compute AVPacket duration for possibly interlaced video codecs
when no parser is available.
This partly fixes the frame rate misdetection in issue1756.

Originally committed as revision 22824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-09 22:39:39 +00:00
Tomas Härdin
01d91b9be9 Reusing the probe buffer to rewind the ByteIOContext in ff_probe_input_buffer() instead of seeking back to the start of the file. Once exhausted, the size of the buffer is reduced.
Originally committed as revision 22821 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-08 09:02:27 +00:00
Michael Niedermayer
0e1f78f90b Fix rounding direction for calculation of AVPacket.duration.
Fixes issue1579

Originally committed as revision 22802 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-04 22:19:42 +00:00
Michael Niedermayer
ccf8c2944c Limit probing to probesize.
Originally committed as revision 22758 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-01 12:09:33 +00:00
Michael Niedermayer
fe8344a276 Add AVFMT_FLAG_NOFILLIN and AVFMT_FLAG_NOPARSE.
Originally committed as revision 22745 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-31 12:55:16 +00:00
Jean-Daniel Dupas
cc947f04cc Replace all occurences of PKT_FLAG_KEY with AV_PKT_FLAG_KEY.
Patch by Jean-Daniel Dupas, devlists shadowlab org

Originally committed as revision 22744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-31 12:29:58 +00:00
Joakim Plate
46da7fa133 Probe aac codecs for CODEC_ID_PROBE.
Patch by Joakim Plate, elupus ecce se

Originally committed as revision 22742 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-31 10:45:15 +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
Micah F. Galizia
532aa889eb Fix updating condition for the probe_size variable in the internal
loop of ff_probe_input_buffer(), making sure that probe_size is always
set to probe_max_size in the last iteration.

Also make the function return an error if we get to the max probe
length and still cannot figure out what the format is.

Patch by Micah Galizia micahgalizia A gmail D com.

Originally committed as revision 22688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-26 01:12:14 +00:00
Martin Storsjö
d8f9295753 Reindent
Originally committed as revision 22666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 07:14:41 +00:00
Martin Storsjö
ddbeb95447 Add a lowercase parameter to ff_data_to_hex
Originally committed as revision 22665 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-25 07:13:20 +00:00
Stefano Sabatini
2928b83c75 Make av_open_input_file() return AVERROR_INVALIDDATA rather than
AVERROR_NOFMT if the format is unknown / cannot be recognized.

It is returned AVERROR_INVALIDDATA, in the sense that the data is
invalid within what the specific libav* binary supports.

That was the last remaining use of AVERROR_NOFMT, which is going to be
dropped at the next libavutil major bump.

Originally committed as revision 22625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-21 16:34:04 +00:00
Måns Rullgård
c7f625eecf Fix erroneous behaviour when format probe hits end of file
If the format probe hits end of file, do not add the error code
to the buffer position.  This is obviously wrong, and with a
small input file would cause a negative buffer overflow.

Fixes issue 1818.

Originally committed as revision 22571 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-16 21:45:30 +00:00
Aurelien Jacobs
972ffe6220 rename av_read_frame_flush to ff_read_frame_flush
it is an internal function, not part of public API

Originally committed as revision 22562 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 23:15:24 +00:00
Aurelien Jacobs
588af13fee rename av_program_add_stream_index to ff_program_add_stream_index
it is an internal function, not part of public API

Originally committed as revision 22561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 23:14:07 +00:00
Martin Storsjö
2dad0dcec6 Move the NTP offset definitions to internal.h
Originally committed as revision 22542 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 10:36:30 +00:00
Micah F. Galizia
eadd495d06 Move the probe loop from av_open_input_file() into its own method
av_probe_input_buffer() so that it can be reused. Here are a few
differences to the original way things were probed:

- maximum probe buffer size can be specified as a parameter.

- offset within the stream to probe from can be specified as a parameter.

- instead of seeking back to the start each time a probe fails, stream
  data is appended to the reallocated buffer. This lowers the amount
  of data read from the stream (there is no repetition) and results in
  fewer closed and reopened streams (when seeking fails).

New attempt after r22296, which was revert in r22315 due to a FATE
failure.

See the thread:
Subject: [FFmpeg-devel] [PATCH] Move av_open_input_file probe loop to its own method
Date: 2010-03-05 03:23:57 GMT

Patch by Micah F. Galizia printf("%s%s@%s.%s", "micah", "galizia", "gmail", "com").

Originally committed as revision 22532 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 22:40:16 +00:00
Martin Storsjö
594a9aebbe Make the ntp_time function available to other parts of libavformat, as ff_ntp_time
Originally committed as revision 22438 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-10 22:21:39 +00:00
Michael Niedermayer
67c10de7d2 Add special case to avoid binary search when appending index entries.
Originally committed as revision 22400 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 15:19:23 +00:00
Stefano Sabatini
f4495cdc00 Remove definition of match_ext(), which is declared under #ifdef
HAVE_AV_CONFIG_H and so not publicly declared, and currently unused.

Originally committed as revision 22353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 23:51:53 +00:00
Martin Storsjö
f984dcf6dd Reindent
Originally committed as revision 22322 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 09:05:03 +00:00
Martin Storsjö
c5c6e67c28 Rename url_split to ff_url_split
Since this function isn't in the public API, it should have an ff_ prefix.

Originally committed as revision 22321 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 09:03:25 +00:00
Måns Rullgård
f19341e17a Revert "Move the probe loop from av_open_input_file() into its own method"
This reverts r22296.  This change made some files to fail to open.
The patch submitter has promised to investigate next week.

Originally committed as revision 22315 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 03:46:37 +00:00
Alex Converse
e7e291e960 av_find_stream_info(): Add a workaround for backwards compatible HE-AAC signaling.
The sample rate, frame size, and channel count from the container are
not reliable when backwards compatible signaling is used.

Originally committed as revision 22301 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 00:00:50 +00:00
Daniel Kristjansson
663322c1b8 Fix pts->dts conversion init for non-zero initial value for pts.
Patch by Daniel Kristjansson, danielk cuymedia net

Originally committed as revision 22297 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-07 23:10:18 +00:00
Micah F. Galizia
4245c6ec4e Move the probe loop from av_open_input_file() into its own method
av_probe_input_buffer() so that it can be reused. Here are a few
differences to the original way things were probed:

- maximum probe buffer size can be specified as a parameter.

- offset within the stream to probe from can be specified as a parameter.

- instead of seeking back to the start each time a probe fails, stream
  data is appended to the reallocated buffer. This lowers the amount
  of data read from the stream (there is no repetition) and results in
  fewer closed and reopened streams (when seeking fails).

Patch by Micah F. Galizia printf("%s%s@%s.%s", "micah", "galizia", "gmail", "com").

Originally committed as revision 22296 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-07 22:42:11 +00:00
Måns Rullgård
c26e58e32c Add some missing #includes
Originally committed as revision 22258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:36 +00:00
Martin Storsjö
780d7897a9 Add a function ff_url_join for assembling URLs
Originally committed as revision 22225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-05 22:31:45 +00:00
Vitor Sessak
5301a05d3e Fix memory leak in NUT muxer
Originally committed as revision 22222 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-05 17:26:34 +00:00
Anton Khirnov
82f50f820e Print chapter info in dump_format().
Patch by Anton Khirnov, wyskas gmail

Originally committed as revision 22113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-28 18:37:09 +00:00
Michael Niedermayer
ab392695d5 Count all frames with codec_info_nb_frames not just ones with non zero
duration. I hope this breaks nothing. Its needed for my fix of issue1156

Originally committed as revision 22001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 16:29:57 +00:00
Michael Niedermayer
6c6e6ef5e2 Put codec_info_nb_frames back in AVStream and print its value.
This way streams with no or very few frames can be avoided during
auto selection

Originally committed as revision 21998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-23 15:07:18 +00:00
Michael Niedermayer
b7884740fa Make sure mp1/mp2 get their frame_size set.
Fixes issue1696

Originally committed as revision 21972 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 22:05:20 +00:00
Michael Niedermayer
0e5f33f242 Make sure a set r_frame_rate is not overriden by a guess.
Also make sure we dont waste time in this case with collecting timestamps.

Originally committed as revision 21957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-22 10:19:46 +00:00
Anton Khirnov
ed7694d8cf Set lavf identification string globally in av_write_header(), rather
than inside the muxers. Remove special handling of "encoder" tags from
AVI and MP3 muxers.

Patch by Anton Khirnov <wyskas gmail com>.

Originally committed as revision 21850 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-16 16:32:25 +00:00
Michael Niedermayer
ab5a0175f5 Add flag so muxers not needing width/height can signal this.
Add this flag to img2 (fixes -vcodec copy to image2 in some cases)

Originally committed as revision 21773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-12 20:35:29 +00:00
Michael Niedermayer
e6406939a8 Directly use av_rescale_rnd() instead of av_convert_ts() as this cuts the
number of calls to it down by 2.

Originally committed as revision 21676 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 19:10:04 +00:00
Michael Niedermayer
e5026c36d4 Use av_compare_ts() for interleaving per dts.
Originally committed as revision 21672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-07 16:27:17 +00:00
Michael Niedermayer
8c3b161e9e Dont try generic seek if seek request before first index entry and backward.
Fixes issue1275

Originally committed as revision 21633 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-03 23:59:48 +00:00
Michael Niedermayer
43e4d57f66 Try to open decoders in av_find_stream_info() even if no packets for the
stream are found.
Fixes issue1385

Originally committed as revision 21630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-03 23:05:58 +00:00
Michael Niedermayer
411ff3225f Increase search range if no end timestamp could be found for the duration
calculation.

Originally committed as revision 21577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-31 17:43:18 +00:00
Michael Niedermayer
c55806e3a2 Flag to ignore dts on frames that contain pts.
This works around common issues with mpeg-ps files with broken timestamps.
Also allows playing the broken sample from issue1024.

Originally committed as revision 21562 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-30 22:55:12 +00:00
Michael Niedermayer
d30a8beb99 Fix duration calculation in the presence of a single wraping of the timeline.
Fixes issue1714.

Originally committed as revision 21485 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 19:37:52 +00:00
Baptiste Coudurier
c3aeaa540d set average frame rate in mov demuxer
Originally committed as revision 21310 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:56:04 +00:00
Tomas Härdin
094a63f1f6 Check there is a stream before writing header.
Patch by Tomas Härdin: $(name) punto hardin chez codemill dot se

Originally committed as revision 21186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 14:32:48 +00:00
Stefano Sabatini
4160069067 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for XXX_configuration() and
XXX_license() functions, consistent with the rest of FFmpeg.

Originally committed as revision 21005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-03 14:31:25 +00:00
Stefano Sabatini
aa13b573b4 Use av_match_ext() in place of the deprecated match_ext() function.
Originally committed as revision 21000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 23:56:09 +00:00
Stefano Sabatini
8eb631fa50 Deprecate match_ext() in favor of av_match_ext(), and mark it for
deletion at the next major bump.

Originally committed as revision 20998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 23:50:10 +00:00
Stefano Sabatini
0f52ef1a00 Use av_guess_format() in place of the deprecated guess_format().
Originally committed as revision 20994 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 12:58:03 +00:00
Stefano Sabatini
a1f547b94a Deprecate guess_format() in favor of av_guess_format().
Originally committed as revision 20991 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 12:46:24 +00:00
Stefano Sabatini
1642ee4337 Deprecate and mark for deletion the function guess_stream_format(),
and clone its code to ffserver_guess_format() in ffserver.c.

guess_stream_format() is hackish since it relies on some undocumented
properties of the name of the muxers (wich is currently only relevant
for the ASF muxer), and has no use outside ffserver.c.

Originally committed as revision 20987 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-31 14:12:58 +00:00
Michael Niedermayer
02483df478 Make sure the Metadata: header is not printed if the only metadata will not
be displayed. (idea from ffmbc)

Originally committed as revision 20850 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 23:39:20 +00:00
Michael Niedermayer
b298daea1a Move dump_metadata() to where it is in ffmbc, looks better.
Originally committed as revision 20849 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 23:34:46 +00:00
Michael Niedermayer
229303d16c indent
Originally committed as revision 20848 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 23:31:01 +00:00
Michael Niedermayer
4d9b678448 Skip dumping language twice.
This looks too ugly. Idea also from ffmbc.

Originally committed as revision 20847 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 23:30:41 +00:00
Michael Niedermayer
2e720e11bc dump metadata for AVStreams & AVPrograms too.
Originally committed as revision 20846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 23:27:43 +00:00
Michael Niedermayer
8b5e5ec5d7 Factorize dump_metadata() out.
Idea from ffmbc, code not, mine is a fraction of the size due to simpler
metadata API.

Originally committed as revision 20845 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 23:19:24 +00:00
Michael Niedermayer
cc20679a41 Try to simplify av_estimate_timings_from_pts() like in ffmbc.
Note if this breaks for some file, report it please!

Originally committed as revision 20844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 22:56:59 +00:00
Michael Niedermayer
0e500e0db2 Debug av_log() about stream probing from ffmbc.
Originally committed as revision 20842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 22:15:51 +00:00
Michael Niedermayer
02b398ef49 Add avg_frame_rate.
Originally committed as revision 20826 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 15:52:11 +00:00
Michael Niedermayer
51ce8c2f87 Remove commented out code.
Originally committed as revision 20823 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-13 15:01:09 +00:00
John Stebbins
106fa129f4 Reset pts_buffers in av_read_frame_flush().
Patch by John Stebbins, jstebbins jetheaddev com

Originally committed as revision 20806 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-12 15:26:33 +00:00
Sean Soria
b593f7fdef Calls to url_fseek should have their return value checked in
av_seek_frame_binary, just as they do in av_seek_frame_generic.
Otherwise, function may return success even though url_fseek reported
failure.

Patch by Sean Soria, first.last at gmail

Originally committed as revision 20744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-06 00:03:53 +00:00
Sean Soria
6659b32ab2 Change ret type to int64_t because url_fseek returns int64_t.
This fixes seeking in files > 2gb.
Patch by Sean Soria, sean dot soria at gmail dot com.

Originally committed as revision 20693 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-01 22:56:44 +00:00
Baptiste Coudurier
66765b5933 use AVFormatContext in av_log, better than AVCodecContext when multiple streams are present
Originally committed as revision 20689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-01 20:15:05 +00:00
Michael Niedermayer
77ac76a30f Print a warning if the duration is estimated from the bitrate, as this is
likely not accurate.

Originally committed as revision 20675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-30 22:08:22 +00:00
Diego Biurrun
c173693698 Add functions to return library license and library configuration.
Originally committed as revision 20547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-18 17:15:17 +00:00
Diego Biurrun
ca02d8ec97 Add '#undef fprintf' before PRINT macro that uses fprintf.
Otherwise there may be trouble when fprintf is disabled in favor of av_log.

Originally committed as revision 20515 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-11 21:57:50 +00:00
Baptiste Coudurier
050ba6f45e print packet duration when debugging timestamps
Originally committed as revision 20420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-30 18:17:16 +00:00
Baptiste Coudurier
72017ea1dc check stream index validity in av_program_add_stream_index
Originally committed as revision 20319 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-19 18:55:27 +00:00
Baptiste Coudurier
8425cecacc request mp3 frame_size to be set in has_codec_parameters, fix issue #1314
Originally committed as revision 20318 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-19 18:53:32 +00:00
Baptiste Coudurier
f2c061ec0f reindent after commit
Originally committed as revision 20307 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-19 02:20:08 +00:00
Baptiste Coudurier
7edbcfb79e In dump_format, print streams not associated with any program.
Fixes issue #1366.

Originally committed as revision 20306 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-19 02:12:10 +00:00
Baptiste Coudurier
7857d3ccf6 fix indentation and add braces
Originally committed as revision 20289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 20:25:48 +00:00
Vitor Sessak
a4cb675124 Avoid segfault for empty input files
Originally committed as revision 20265 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-17 20:37:58 +00:00
Carl Eugen Hoyos
b8c0db9981 Allow autodetection of E-AC3.
Originally committed as revision 20206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-11 11:56:53 +00:00
Carl Eugen Hoyos
e18027ac40 Add FIXME about low_delay vs has_b_frames.
Originally committed as revision 20161 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-03 19:40:52 +00:00
Wallak
f4a4be3f4e H264 allows B frames without requiring a >=1 sized buffer.
Patch by wallak, wallak free fr

Originally committed as revision 20160 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-03 19:30:09 +00:00
Michael Niedermayer
e9b0681610 Only use *ic_ptr when it has been initialized.
Originally committed as revision 19911 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-18 13:19:13 +00:00
Baptiste Coudurier
db46c4e14d print at debug level the score at which codec probing succedeed
Originally committed as revision 19899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-17 18:46:50 +00:00
Michael Niedermayer
1bc8c36125 Print a warning if a format has been detected with a low score.
Originally committed as revision 19890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 20:44:26 +00:00
Michael Niedermayer
c36823fd3d Print at debug level the score with which probing succeeded.
Originally committed as revision 19889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 20:23:04 +00:00
Michael Niedermayer
8a6c7a5286 Fix indention after last commit.
Originally committed as revision 19888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 20:06:48 +00:00
Michael Niedermayer
e07b882b4d Improve amortized worst case speed of the muxers packet interleaving code
from O(packets_in_the_file) to O(num_of_streams).

Originally committed as revision 19887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 20:04:04 +00:00
Michael Niedermayer
657eca1f8b Upgrade a few important messages to AV_LOG_WARNING.
Originally committed as revision 19872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 01:47:54 +00:00
Michael Niedermayer
0355537605 Fix indention after previous commit.
Originally committed as revision 19871 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 01:17:39 +00:00
Michael Niedermayer
ddce56efc5 Make packet interleaving in the muxer not scan through the whole
buffer when simply appending at the end works.
Much faster if one stream ends prematurely.
Fixes issue1379.

Originally committed as revision 19870 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 00:59:15 +00:00
Michael Niedermayer
42831b46ef Also reset *_end in flush_packet_queue().
Originally committed as revision 19869 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 00:56:31 +00:00
Justin Ruggles
1d07029fea Add frame_size as a codec parameter requirement for Speex in
av_find_stream_info().  It forces decoding of a packet when there is no
Speex header in order to determine the correct frame size.

Originally committed as revision 19760 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-04 21:38:45 +00:00
Ivan Schreter
101036adb9 Support for generic multi-stream key frame finding for new seek API.
Originally committed as revision 19680 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-22 16:05:43 +00:00
Peter Ross
c0b88f1920 Moves the display of metadata to dump_format()
Originally committed as revision 19632 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-12 13:17:39 +00:00
Art Clarke
ebb82604b0 Only free '*ic_ptr' when a caller has pre-allocated a context and passed it in
(wherein av_open_input_file assumes memory ownership).
Patch by Art Clarke a<surname> xuggle com

Originally committed as revision 19436 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-15 10:00:16 +00:00
Art Clarke
56c6cf287b Fix mem leak when user preallocates an AVFormatContext, passes it to
av_open_input_file(), but the file does not exist.
Patch by Art Clarke a$(surname) xuggle com

Originally committed as revision 19370 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-08 08:26:57 +00:00
Michael Niedermayer
e7e5d1e990 If either of num or den is 0 make both 0 in av_set_pts_info().
Originally committed as revision 19326 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-02 12:47:58 +00:00
Michael Niedermayer
d218a86a0d Make sure av_set_pts_info() does not set the fields of a timebase to
negative values.

Originally committed as revision 19325 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 20:52:48 +00:00
Michael Niedermayer
dec14949a6 Make arguments of av_set_pts_info() unsigned.
Fixes issue1240/mpeg1/smclockmpeg1.avi.3.1

Originally committed as revision 19319 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 18:50:31 +00:00
Baptiste Coudurier
57011a13d6 use AVFormatContext->probesize in av_find_stream_info and raise default to 5M
Originally committed as revision 19274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-25 19:10:27 +00:00
Baptiste Coudurier
af122d6a80 limit raw packet buffer size used for codec probing
Originally committed as revision 19272 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-25 18:48:57 +00:00
Daniel Verkamp
1a40491ef2 Add ff_ prefixes to exported symbols in libavformat/riff.h.
patch by Daniel Verkamp, aniel drv nu

Originally committed as revision 19254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-22 23:09:34 +00:00
Michael Niedermayer
71ee651559 Print why av_find_stream_info() failed, this is a rather common question
during debugging ...

Originally committed as revision 19217 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-18 00:22:08 +00:00
Baptiste Coudurier
818062f2f3 if b frames are parsed, set codec->has_b_frames
Originally committed as revision 19147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-11 04:30:05 +00:00
Baptiste Coudurier
e695906ec7 use dts codec probing
Originally committed as revision 19014 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-31 04:13:25 +00:00
Baptiste Coudurier
86cb7e33cc fix codec probing, stop after MAX_PROBE_PACKETS and return all packets
Originally committed as revision 19000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-31 00:24:06 +00:00
Baptiste Coudurier
db5dc02bd7 cast size to int64_t to avoid overflow
Originally committed as revision 18991 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-30 04:08:43 +00:00
Baptiste Coudurier
1bd280f730 Set frame defaults in try_decode_frame.
Fix:
==22211== Conditional jump or move depends on uninitialised value(s)
==22211==    at 0x811E692: ff_print_debug_info (mpegvideo.c:1137)
==22211==    by 0x82E6A7B: decode_frame (h264.c:7897)
==22211==    by 0x80F2823: avcodec_decode_video2 (utils.c:564)
[...]
==22211==  Uninitialised value was created by a stack allocation
==22211==    at 0x8064AA3: try_decode_frame (utils.c:1845)

Originally committed as revision 18483 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 03:38:55 +00:00
Baptiste Coudurier
e472ea34c4 reindent
Originally committed as revision 18480 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 03:32:02 +00:00
Reimar Döffinger
d2e63e8b05 Simplify packet duplication code in ff_interleave_add_packet.
Behaviour only changes if pkt->destuct neither av_destruct_packet,
av_destruct_packet_nofree nor NULL, in which case the new code avoids a double free.

Originally committed as revision 18452 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-11 22:38:00 +00:00
Reimar Döffinger
80d403fc19 Get rid of av_destruct_packet_nofree and use NULL instead.
It is still used in comparisons to keep ABI compatibility.

Originally committed as revision 18431 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-11 12:42:29 +00:00
Thilo Borgmann
655d47c2cb Make try_decode_frame() use the new avcodec_decode_* API.
Patch by Thilo Borgmann thilo.borgmann AT g00glemail dot com.

Originally committed as revision 18408 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-10 11:03:06 +00:00
Reimar Döffinger
feb993e579 Add av_shrink_packet function for use in av_get_packet that reduces pkt->size
and ensures the following padding is correctly initialized to 0.

Originally committed as revision 18378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-08 20:19:12 +00:00
Thilo Borgmann
cdd8930e6a Move av_packet_*() functions from libavformat/ to libavcodec/, where the
AVPacket structure now resides also.

Patch by Thilo Borgmann thilo.borgmann googlemail com, see the mailinglist
thread "Google Summer of Code participation" for additional discussion.

Originally committed as revision 18353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 18:31:14 +00:00
Baptiste Coudurier
3a5601885b move max analyze duration check before considering new packet
Originally committed as revision 18051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-19 21:54:34 +00:00
Reimar Döffinger
74f5ae847d Add AVFMT_GENERIC_INDEX support also for formats that do not use a parser.
Originally committed as revision 17965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-14 21:46:00 +00:00
Michael Niedermayer
85b4230f68 Do not lose user flags when passing calls from the new to the old seeking API.
Originally committed as revision 17959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-14 16:30:51 +00:00
Michael Niedermayer
32d885926d add avformat_seek_file()
Originally committed as revision 17956 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-14 15:51:46 +00:00
Reimar Döffinger
3a4f91f5ed 100l, to start reading from the first frame we must seek to data_offset,
not 0 in av_seek_frame_generic.

Originally committed as revision 17905 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-09 12:06:31 +00:00
Diego Biurrun
e658657528 Mark pos_min and pos_max variables as av_uninit to work around false
positive uninitialized variable warnings.

Originally committed as revision 17826 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-05 19:15:14 +00:00
Ivan Schreter
61c23c155c Pass packet position to the parser, so frame's AVPacket.pos is computed correctly.
Originally committed as revision 17824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-05 07:36:16 +00:00
Diego Biurrun
c04920978e cosmetics: Fix indentation.
Originally committed as revision 17756 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-03 12:57:07 +00:00
Aurelien Jacobs
827f7e285b deprecate old metadata API
Originally committed as revision 17690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-01 16:35:25 +00:00
Aurelien Jacobs
012867f05b use new metadata API in libavformat/utils.c
Originally committed as revision 17687 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-01 15:38:06 +00:00
Michael Niedermayer
9e6c124a87 Disable MPEG-1/2 style timestamp calculation for H264. It still randomizes
the timestamps because delay is not known for the first few frames.

Originally committed as revision 17674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-01 03:17:24 +00:00
Måns Rullgård
f166f2f435 Revert "Improve frame rate guessing for streams with two fields per frame."
This reverts r17656, which broke many tests.  Further investigation
is necessary.

Originally committed as revision 17658 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-28 15:15:54 +00:00
Ivan Schreter
5fa61b26f7 Improve frame rate guessing for streams with two fields per frame.
Patch by Ivan Schreter, schreter gmx net

Originally committed as revision 17656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-28 13:14:46 +00:00
Reimar Döffinger
fe02d9e719 Do not allow standard-frame-rate detection to increase the value of
r_frame_rate by more than 1% over a previously set/detected value.

Originally committed as revision 17641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-27 14:13:15 +00:00
Reimar Döffinger
8514272472 Detect the case when the time base is exact but far finer than necessary to
represent the time stamps, as e.g. for ipmovie.c and set a better r_frame_rate.

Originally committed as revision 17631 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-27 07:56:24 +00:00
Michael Niedermayer
3797c74ba5 Add ticks_per_frame, this should hopefully fix the regressions caused
by the time_base change.

Originally committed as revision 17630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 23:47:32 +00:00
Ivan Schreter
27ca0a79c9 Add timestamp computation if values are exported by decoder.
Patch by Ivan Schreter, schreter gmx net

Originally committed as revision 17574 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 22:19:09 +00:00
Ivan Schreter
810c451b02 Change duration computation to use time_base instead of TB/2.
Patch by Ivan Schreter, schreter gmx net

Originally committed as revision 17570 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 20:17:02 +00:00
Michael Niedermayer
7f123e7f8a Add CODEC_ID_H264 to tb_unreliable(), it belongs there for the same
reason as mpeg2. (telecine amongth others)

Originally committed as revision 17551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 13:35:54 +00:00
Michael Niedermayer
1d14361dec Allow av_find_stream_info() to be aborted.
Based on a patch by netgem.

Originally committed as revision 17538 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-23 02:38:45 +00:00
Michael Niedermayer
c132938d52 Waste less space for printing timebases.
Originally committed as revision 17505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-21 23:00:07 +00:00
Michael Niedermayer
fa0e036d7f Print all timebases (idea from netgem)
Originally committed as revision 17502 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-21 21:30:44 +00:00
Ivan Schreter
346db3ef7f Use context variable repeat_pict for frame duration computation and
document this new use.

Patch by Ivan Schreter, schreter gmx net

Originally committed as revision 17492 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-21 20:11:47 +00:00
Michael Niedermayer
73d65a96ae Be less noisy with invalid pts/dts.
Originally committed as revision 17482 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-21 17:29:25 +00:00
Ivan Schreter
b1fa494205 Add convergence_duration to AVCodecParserContext.
Patch by Ivan Schreter, schreter gmx net

Originally committed as revision 17468 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 23:35:59 +00:00
Ivan Schreter
6363af44da Add key_frame to AVCodecParserContext, used in libavformat.
Initialized to -1 in parser.c for backward compatibility.

Patch by Ivan Schreter, schreter gmx net

Originally committed as revision 17442 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-18 23:46:05 +00:00
Art Clarke
d5cce0a434 Add a warning log when trying to encode into a container requiring global
headers in extradata and the codec is not set correctly.
Patch by Art Clarke aclarke xuggle com

Originally committed as revision 17177 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-12 08:10:43 +00:00
Aurelien Jacobs
949cd9783b remove now useless av_set_program_name() function
Originally committed as revision 17113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 00:27:42 +00:00
Francesco Cosoleto
ced06bd8fe Add the ability to set the timestamp to the current time by specifying 'now'
as the time

Patch by Francesco Cosoleto ( cosoleto gmail com )

Originally committed as revision 17076 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 22:03:54 +00:00
Stefano Sabatini
8e2fd8e1d4 Replace the calls to the deprecated av_alloc_format_context() with
corresponding calls to avformat_alloc_context().

Originally committed as revision 17048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 08:27:26 +00:00
Baptiste Coudurier
4f0f9bddac let packet pass through when no timestamps
Originally committed as revision 16982 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-03 23:18:12 +00:00
Baptiste Coudurier
ccf0071dee split av_interleave_per_dts, to avoid code duplication
Originally committed as revision 16884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-31 06:01:58 +00:00
Michael Niedermayer
3a41c2f769 Move av_read_frame/parser related buffer variables from AVFormatContext
to AVStream, this is required if we want to allow the user to pull frames
from specific streams at some point in the future.

Originally committed as revision 16724 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-22 23:35:31 +00:00
Baptiste Coudurier
082491c473 print stream sar if present and different than codec sar
Originally committed as revision 16720 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-22 19:45:53 +00:00
Michael Niedermayer
cda6902d36 Handle av_read_frame() EAGAIN return.
Originally committed as revision 16718 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-22 12:06:02 +00:00
Baptiste Coudurier
aa91562501 jpeg2k is intra only codec
Originally committed as revision 16663 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 00:47:46 +00:00
Baptiste Coudurier
2323ac0154 match format in names list separated by commas
Originally committed as revision 16659 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 21:40:27 +00:00
Aurelien Jacobs
2bb6eba21d remove ff_get_fourcc() and use AV_RL32() instead
Originally committed as revision 16654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 12:21:01 +00:00
Aurelien Jacobs
9ce6c13879 export gcd function as av_gcd()
Originally committed as revision 16653 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 11:13:33 +00:00
Aurelien Jacobs
b250f9c66d Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +00:00
Stefano Sabatini
708ec8fb31 Move the AVFormatContext options definition to a dedicated file,
reduce the utils.c clutter.

Originally committed as revision 16516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-10 09:56:07 +00:00
Luca Abeni
65007a4fa0 Do not assume that if pkt->destruct != av_destruct_packet then it is not
necessary to call the destruct method

Originally committed as revision 16506 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-09 20:10:13 +00:00
Aurelien Jacobs
5ce0043367 rename ff_metadata_sync_compat to ff_metadata_mux_compat
Originally committed as revision 16501 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-09 00:01:42 +00:00
Aurelien Jacobs
e99f76ab79 Add a second metadata compatibility layer, so that metadata that gets
demuxed with new API is automatically converted to the old API,
allowing old applications to stay functional.

Originally committed as revision 16499 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-08 23:24:51 +00:00
Michael Niedermayer
9f06bd9e96 Do not try to duplicate packets that have data==NULL.
Originally committed as revision 16483 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 20:44:23 +00:00
Aurelien Jacobs
094d9df72e free all allocated metadata structures
Originally committed as revision 16457 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-06 22:11:04 +00:00
Aurelien Jacobs
176aee8282 Add a metadata compatibility layer, so that when a user application set
metadata using old API, it is automatically converted to new API before
muxing.

Originally committed as revision 16447 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-06 00:09:23 +00:00
Aurelien Jacobs
bc1d2afb37 rename AVMetaData to AVMetadata and meta_data to metadata
Originally committed as revision 16430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-04 23:31:31 +00:00
Michael Niedermayer
06a7bd9a2e 10l format include path for metadata.h
Originally committed as revision 16426 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-04 19:00:35 +00:00
Michael Niedermayer
47146dfbf6 Generic metadata API.
avi is updated as example.
No version bump, the API still might change slightly ...
No update to ffmpeg.c as requested by aurel.

Originally committed as revision 16424 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-04 18:48:37 +00:00
Stefano Sabatini
1ca9133fb4 Drop the deprecated parse_image_size() and parse_frame_rate() functions
at the next libavformat major version bump.

Originally committed as revision 16420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-04 11:04:02 +00:00
Stefano Sabatini
15545a095a Fix argument constness for the av_codec_get_id() and
av_codec_get_tag() functions, making them take in input a constant
array, since they're not supposed to change it. Fix some warnings.

Originally committed as revision 15795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-08 18:37:03 +00:00
Baptiste Coudurier
b774fdd7a4 dnxhd codec is intra only
Originally committed as revision 15672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-23 17:30:36 +00:00
Aurelien Jacobs
37d3e0667a uses FF_ARRAY_ELEMS() where appropriate
Originally committed as revision 15662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-21 21:40:24 +00:00
Michael Niedermayer
9806f846c0 Check for pts==dts on I/P frames in the presence of non low delay decoding and
discard these invalid timestamps.
fixes issue171.

Originally committed as revision 15641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-19 01:02:48 +00:00
Michael Niedermayer
f781f748b9 Move code setting delay and presentation_delayed a little up so
that the variables are available sooner.

Originally committed as revision 15640 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-18 22:41:21 +00:00
Diego Biurrun
bc5c918ea8 Remove offset_t typedef and use int64_t directly instead.
The name offset_t is easily confused with the standard off_t type and
*_t is POSIX reserved namespace if any POSIX header is included.

Originally committed as revision 15533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-03 10:16:29 +00:00
Diego Biurrun
fff5e687a1 Move doxygen comments for av_gettime from utils.c to avformat.h.
Originally committed as revision 15439 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-27 17:37:22 +00:00
Michael Niedermayer
0354ddb71c Ensure that muxer and encoder aspect ratios match. So no
invalid files are generated.

Originally committed as revision 15367 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-19 12:37:38 +00:00
Baptiste Coudurier
bf912a482b set block align in av_write_header if not set, fix issue #489
Originally committed as revision 15277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-08 19:37:22 +00:00
Luca Abeni
dd1c8f3e6e Bump Major version, this commit is almost just renaming bits_per_sample to
bits_per_coded_sample but that cannot be done seperately.
Patch by Luca Abeni
Also reset the minor version and fix the forgotton change to libfaad.
Note: The API/ABI should not be considered stable yet, there still may
be a change done here or there if some developer has some cleanup ideas and
patches!

Originally committed as revision 15262 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-08 14:24:59 +00:00
Michael Niedermayer
a2636c0fd5 Add AVPacket.convergence_duration.
Originally committed as revision 15179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-03 14:44:54 +00:00
Michael Niedermayer
74aa41bae4 Fix detection of MPEG4 in MPEG-PS.
Fixes issue568.

Originally committed as revision 15152 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-02 15:33:57 +00:00
Baptiste Coudurier
ca9c5a4d37 make has_codec_parameters not returning true when sample_fmt is not set
Originally committed as revision 15043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 22:13:22 +00:00
Michael Niedermayer
f0aaa16fdf Do not truncate timestamps before the muxer as it makes simple
things like last_pts - pts rather tricky and is not good for anything.
Timestamps should be truncated just before storing when needed.

Originally committed as revision 15015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 01:43:27 +00:00
Ronald S. Bultje
452d3edb37 Change implementation for ff_data_to_hex(), this is faster. See discussion on
mailinglist in "Realmedia patch" thread.

Originally committed as revision 15006 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-28 12:00:58 +00:00
Ronald S. Bultje
f1c80e3578 Export data_to_hex() as private API in lavf, rename to ff_data_to_hex() and
move it from sdp.c into utils.c. Also add new header internal.h specifically
for lavf-specific internal API. See discussion in "Realmedia patch" thread
on mailinglist.

Originally committed as revision 15002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 23:43:28 +00:00
Aurelien Jacobs
d63f529df7 remove useless assignment (st is never read after this line)
Originally committed as revision 14985 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-26 20:38:04 +00:00
Andreas Öman
f1588ed525 When setting codec_id during codec probe we must also set codec_type.
Originally committed as revision 14966 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-25 15:39:43 +00:00
Reimar Döffinger
aecf157ed0 Mark several libavformat arrays const
Originally committed as revision 14950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 17:24:34 +00:00
Aurelien Jacobs
c30a4489b4 export sample_aspect_ratio read by the demuxer in a separate field
that the one read by the decoder.

Originally committed as revision 14932 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-23 23:13:58 +00:00
Michael Niedermayer
3c9769a008 Do not fill the pts reordering buffer with guessed dts.
These values should not matter at all in principle because they
do not correspond to the time of display of any frame but it seems
ffmpeg becomes confused by them if they are far off and its not
strictly correct to set them to guessed values.
Fixes video_stalls_at_start.wmv

Originally committed as revision 14746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-14 03:24:58 +00:00
Aurelien Jacobs
ea452b54f0 strcasecmp() requires #include <strings.h>
Originally committed as revision 14728 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 17:22:53 +00:00
Baptiste Coudurier
cb5b96cde0 Prevent dts generation code to be executed when delay is > MAX_REORDER_DELAY,
this fixes overflow in AVStream->pts_buffer.

Originally committed as revision 14714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 17:26:36 +00:00
Stefano Sabatini
8163c870b0 Cosmetics: move at the beginning of the file the av_frac_* functions, avoid
the forward declarations.

Originally committed as revision 14677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-10 00:28:56 +00:00
Stefano Sabatini
c97429e22b Implement avformat_version().
Originally committed as revision 14667 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-08 18:40:50 +00:00
Måns Rullgård
5c5b1731b7 Maintain pointer to end of AVFormatContext.packet_buffer list
This changes add_to_pktbuf() to maintain a pointer to the last entry
in the list, avoiding a linear walk-through on each call.  Before this
change, add_to_pktbuf() could take a significant amount of time (10%
of total decoding time), even with input files of several minutes.
After the change, the time spent in this function is barely measurable
with oprofile.

Originally committed as revision 14654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-06 22:17:38 +00:00
Baptiste Coudurier
aaec4e03e9 check url_fseek return value, update seek reg tests
Originally committed as revision 14489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-31 18:02:55 +00:00
Erik Hovland
be390a4e2e Fix a mem leak in av_find_stream_info().
Patch by Erik Hovland erik hovland org

Originally committed as revision 14276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-18 07:13:56 +00:00
Michael Niedermayer
744b4c02c2 Move the codec_id overriding at a slightly better place.
Originally committed as revision 14234 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-14 20:31:17 +00:00
Michael Niedermayer
283c061936 Remove common factors from timebase in av_set_pts_info().
Should fix issue313

Originally committed as revision 14232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-14 19:11:09 +00:00
Michael Niedermayer
dd57251cb0 Remove old hackish codec probe system.
Originally committed as revision 14193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 20:40:47 +00:00
Michael Niedermayer
2a72e494c3 Use strcmp() instead of strncmp() in set_codec_from_probe_data().
Originally committed as revision 14190 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 20:01:23 +00:00
Michael Niedermayer
25d3fb7374 indent
Originally committed as revision 14189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 19:57:57 +00:00
Michael Niedermayer
942de2f4fa Only try to probe the codec when the available data has roughly doubled
relative to the last attempt.

Originally committed as revision 14188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 19:57:30 +00:00
Michael Niedermayer
312d24d5e9 Add mpegvideo and H.264 to the codec probe.
Originally committed as revision 14187 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 19:56:25 +00:00
Michael Niedermayer
55823964dc indent
Originally committed as revision 14185 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 18:43:02 +00:00
Michael Niedermayer
0bef08e516 New codec probing system try #1.
Originally committed as revision 14184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 18:42:00 +00:00