2ba68dd044
lavf: remove unreliable timestamp guessing heuristic
2013-10-28 09:28:19 +01:00
ce67f442be
lavf: Avoid setting avg_frame_rate if delta_dts is negative
...
This avoids setting avg_frame_rate to invalid (negative)
values.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-09-22 21:02:52 +03:00
5626f994f2
avformat: Use av_reallocp() where suitable
...
Signed-off-by: Diego Biurrun <diego@biurrun.de >
2013-09-18 18:28:38 +02:00
68b4677420
lavf: Make probe_codec return an error code
...
This allows handling errors from av_realloc properly.
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-09-16 22:28:23 +03:00
f369b9356c
avformat: Use av_reallocp_array() where suitable
...
Signed-off-by: Diego Biurrun <diego@biurrun.de >
2013-09-10 12:38:32 +02:00
26f027fba1
lavf: fix the comparison in an overflow check
...
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-09-07 11:52:40 +02:00
df33a58e53
lavf: avoid integer overflow when estimating bitrate
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-09-02 19:28:29 +02:00
fab694dd39
lavf: move a variable declaration to the block where it's used
2013-09-02 19:28:19 +02:00
7950e519bb
Disable deprecation warnings for cases where a replacement is available
2013-08-02 19:19:02 +02:00
c5b46a064d
lavf: Don't interpret just slightly broken timestamps as wraparound
...
This avoids breaking some slightly incorrect (dts > pts) timestamps
in sample HLS streams from Apple.
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-07-29 09:49:58 +03:00
e740929a07
lavf: Make sure avg_frame_rate can be calculated without integer overflow
...
If either of the deltas is too large for the multiplications to
succeed, don't use this for setting the avg frame rate.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-07-15 21:39:24 +03:00
df9f22d42b
avf: move url utility functions in a separate file
2013-06-16 15:01:39 +02:00
12db891dcd
avf: move ff_write_chained to mux.c
2013-06-16 14:41:07 +02:00
508998f7d5
avf: move riff tags accessors where they belong
2013-06-16 14:41:07 +02:00
ec7c51c786
avf: move ff_http_match_no_proxy to network
...
It is only used by network protocols.
2013-06-16 14:41:00 +02:00
afc8685395
avf: split off format register and lookup function
2013-06-16 14:00:40 +02:00
c330eba84c
lavf: preserve side data when parsing packets.
2013-05-28 08:00:07 +02:00
2832ea26f3
Remove commented-out debug #define cruft
2013-05-16 00:23:30 +02:00
e0f8be6413
avformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate
2013-05-04 21:43:06 +02:00
a5f8873620
silly typo fixes
2013-05-03 18:26:12 +02:00
dbb1425811
lavf: make sure stream probe data gets freed.
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-04-04 07:54:00 +02:00
aa3c779984
lavf: sanity check size in av_get/append_packet().
...
To avoid allocating ridiculous amounts of memory for corrupted files,
read the input in chunks limited to filesize or an arbitrary large
amount when that is not known (chosen to be 50M).
2013-03-15 20:05:04 +01:00
85a5bc054c
lavf: remove disabled FF_API_R_FRAME_RATE cruft
2013-03-11 18:23:50 +01:00
7b486ab13b
lavf: remove disabled FF_API_AV_GETTIME cruft
2013-03-11 18:23:18 +01:00
435c2a31ad
lavf: remove disabled FF_API_READ_PACKET cruft
2013-03-11 18:23:02 +01:00
0a7c4daf46
lavf: remove disabled FF_API_CLOSE_INPUT_FILE cruft
2013-03-11 18:22:45 +01:00
1afddbe59e
avpacket: use AVBuffer to allow refcounting the packets.
...
This will allow us to avoid copying the packets in many cases.
This breaks ABI.
2013-03-08 07:33:45 +01:00
efa7f42020
Use the avstring.h locale-independent character type functions
...
Make sure the behavior does not change with the locale.
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-03-07 15:16:36 +02:00
de9cd1b173
lavf: Handle the environment variable no_proxy more properly
...
The handling of the environment variable no_proxy, present since
one of the initial commits (de6d9b6404
), is inconsistent with
how many other applications and libraries interpret this
variable. Its bare presence does not indicate that the use of
proxies should be skipped, but it is some sort of pattern for
hosts that does not need using a proxy (e.g. for a local network).
As investigated by Rudolf Polzer, different libraries handle this
in different ways, some supporting IP address masks, some supporting
arbitrary globbing using *, some just checking that the pattern matches
the end of the hostname without regard for whether it actually is
the right domain or a domain that ends in the same string.
This simple logic should be pretty similar to the logic used by
lynx and curl.
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-02-27 21:32:13 +02:00
91ac403b13
lavf: fix arithmetic overflows in avformat_seek_file()
...
The values compared here can be more than INT64_MAX apart. Since the
difference is always positive, converting to uint64_t before subtracting
gives the correct result without overflows.
Signed-off-by: Mans Rullgard <mans@mansr.com >
2012-12-08 19:35:16 +00:00
cb45553f57
Remove pointless #undefs of previously forbidden functions.
2012-12-04 21:40:22 +01:00
261e9348ef
lavf: add a common function for selecting a pcm codec from parameters
2012-11-28 11:18:50 -05:00
7709ce029a
lavf: avoid integer overflow in ff_compute_frame_duration()
...
Scaling the denominator instead of the numerator if it is too large
loses precision. Fixes an assert caused by a negative frame duration in
the fuzzed sample nasa-8s2.ts_s202310.
CC: libav-stable@libav.org
2012-11-26 10:26:08 +01:00
33893e6abc
url: Handle relative urls starting with two slashes
...
This is defined by RFC 3986 section 5.4.1 to be handled this way.
Signed-off-by: Martin Storsjö <martin@martin.st >
2012-10-09 14:16:33 +03:00
eea003814c
url: Handle relative urls being just a new query string
...
Signed-off-by: Martin Storsjö <martin@martin.st >
2012-10-09 14:16:32 +03:00
a6363e3d89
url: Don't treat slashes in query parameters as directory separators
...
Strip off query parameters from the original url before
applying the new relative path.
Signed-off-by: Martin Storsjö <martin@martin.st >
2012-10-09 14:16:31 +03:00
716d413c13
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
2012-10-08 07:13:26 +02:00
55f9037f38
avformat: split muxing functions from util.c
2012-10-01 19:57:57 +02:00
d3c40a7d1d
avformat: const correctness for av_hex_dump / av_hex_dump_log
2012-10-01 13:18:28 +02:00
72eaba5e4f
avformat: Convert some commented-out printf/av_log instances to av_dlog
2012-10-01 10:24:28 +02:00
9eb296572e
lavf: use a malloced AVFrame in try_decode_frame().
...
This allows using avcodec_free_frame() to free it properly.
2012-09-24 12:31:24 +02:00
1cc569ddda
lavf: zero data/size of the packet passed to read_packet().
2012-09-21 09:14:37 +02:00
6746cd7f61
lavf probe: prevent codec probe with no data at all seen
...
This occurs with fuzzed mpeg-ts files. set_codec_from_probe_data() is
called with a zeroed AVProbeData since no packet made through for
specific stream.
2012-09-20 14:50:06 +02:00
3f7fd59d15
avformat: fix typo in avformat_close_input
...
The condition should not be &&.
2012-09-15 20:23:39 +02:00
3b4bb19e63
lavf: flush the output AVIOContext in av_write_trailer().
...
This is consistent with stdio and is what we want to do in all cases.
Fixes a bug in the voc muxer which didn't flush in write_trailer()
previously. This is the cause of the change in the test results.
2012-09-15 18:25:07 +02:00
0c270239c2
lavf: cosmetics, reformat av_write_trailer().
2012-09-15 18:24:59 +02:00
44272c1ccc
avformat: refactor avformat_close_input
...
Do not crash if the input format is not allocated yet.
2012-09-14 14:26:27 +02:00
4d1f443c3d
avformat: simplify avformat_close_input
...
avio_close checks by itself for NULL condition.
2012-09-14 14:26:27 +02:00
edb5238ccb
libavformat: add const to AVCodec pointers
...
Signed-off-by: Mans Rullgard <mans@mansr.com >
2012-08-18 14:20:57 +01:00
bdefe22b8e
lavf: Detect discontinuities in timestamps for framerate/analyzeduration calculation
...
If the dts difference is more than 1000 times the average dts
difference, restart the analysis.
Signed-off-by: Martin Storsjö <martin@martin.st >
2012-08-12 12:39:49 +03:00