Commit Graph

646 Commits

Author SHA1 Message Date
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