Michael Niedermayer
6bcbe768bb
lavf: dont add apic streams for demuxers that dont support it.
...
Fixes crash
Fixes ticket1730
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Stefano Sabatini
bbe9fe469a
lavf/utils: remove loop on AVERROR(EAGAIN) in av_read_frame()
...
The loop was introduced in 64d340c62a
, and
was likely breaking non blocking reads as it busy loops.
12 years ago
Anton Khirnov
9eb296572e
lavf: use a malloced AVFrame in try_decode_frame().
...
This allows using avcodec_free_frame() to free it properly.
12 years ago
Stefano Sabatini
64d340c62a
lavf/utils: add error check in av_read_frame()
...
In particular, fix crash when the input file contains no packets (e.g. an
ffmeta input).
12 years ago
Michael Niedermayer
21c4393f1c
lavf/find_stream_info: make sure we decode at least one frame for DTS
...
The channel layout at the demuxer layer is commonly wrong and would
otherwise be used.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
61a84755a9
lavf: dont open a decoder at the top of find_stream_info before probing has finished
...
It could open the wrong decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
a380f82c53
lavf: allow using request_probe as a score threshold to accept a codec
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Anton Khirnov
1cc569ddda
lavf: zero data/size of the packet passed to read_packet().
12 years ago
Janne Grunau
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.
12 years ago
Reimar Döffinger
07d2d06395
Remove code that duplicates existing code a few lines down.
...
This also fixes a potential crash since s->pb can be NULL.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years ago
Luca Barbato
3f7fd59d15
avformat: fix typo in avformat_close_input
...
The condition should not be &&.
12 years ago
Anton Khirnov
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.
12 years ago
Anton Khirnov
0c270239c2
lavf: cosmetics, reformat av_write_trailer().
12 years ago
Michael Niedermayer
e2d643efcd
lavf/compute_pkt_fields: only run pts by duration correction if reference ts is available
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Luca Barbato
44272c1ccc
avformat: refactor avformat_close_input
...
Do not crash if the input format is not allocated yet.
12 years ago
Luca Barbato
4d1f443c3d
avformat: simplify avformat_close_input
...
avio_close checks by itself for NULL condition.
12 years ago
Michael Niedermayer
062091f87f
compute_pkt_fields2: dont interpret max_b_frames of <0 as there being b frames.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
8470e6c96f
lavf/avformat_seek_file: fix harmless integer overflow
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
41dba453f9
utils/update_stream_timings: fix division by zero
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
b422e2c58a
compute_pkt_fields: fix harmless integer overflow
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
8a0118b4b4
ffio_read: dont spam the user at EOF with a truncation error
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Stefano Sabatini
25f139e72f
lavf/utils: fix typo in has_codec_parameters
...
Replace "unspecified sample size" with "unspecified frame size". +10l.
12 years ago
Michael Niedermayer
a7fbc7d7b7
lavf: factor codec id forcing out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Stefano Sabatini
29e972f67c
lavu/parseutils: add av_small_strptime()
...
Make internal small_strptime() function public, and use it in place of
strptime().
This allows to avoid a dependency on strptime() on systems which do not
support it.
In particular, fix trac ticket #992 .
12 years ago
Clément Bœsch
5620088494
lavf: fix a few typo in some comments.
12 years ago
Clément Bœsch
9d9f34a3c1
lavf: remove a few useless AV_NOWARN_DEPRECATED().
...
read_seek was undeprecated in e5c708151
.
12 years ago
Michael Niedermayer
19d8954966
find_stream_info: update last_dts more often
...
This improves dts validity checks and consequently fps detection of files with invalid dts
Fixes Ticket1681
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
12b1512e85
lavf/utils: Try to unwrap pts/dts so as to minimize wraps
...
Based on code by: Andrey Utkin <andrey.krieger.utkin@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
254917f078
lavf/utils: run update_initial_timestamps() outside some if()
...
This way it gets executed earlier and updated timestamps become available earlier.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Clément Bœsch
26ec392a0e
lavf: remove unused AVStream pointer.
13 years ago
Clément Bœsch
3dba9e19c8
lavf: add const qualifier to AVCodecDescriptor pointer in is_intra_only().
...
Fix "assignment discards ‘const’ qualifier from pointer target type" warnings.
13 years ago
Michael Niedermayer
85a576775e
lavf: factor ff_free_stream() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
28ff17fa97
lavf: add use_wallclock_as_timestamps
...
This may fix Ticket730
Reviewed-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
edb5238ccb
libavformat: add const to AVCodec pointers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Michael Niedermayer
11f8f2c0f3
avformat: export queue_attached_pictures
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Andrey Utkin
aec9390a9d
Check for avio fail in avformat_write_header, av_write_frame
...
With minor changes by michael
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Nicolas George
b1511e00f6
lavf: probe PGS subtitles definition.
...
The resolution is in the packets, so decoding must happen.
Since most other formats do not set the dimension, make it
a special case for PGS. If other codecs were to have the
same requirement, using a CODEC_CAP would be preferred.
13 years ago
Michael Niedermayer
d5c90ff23b
lavf: reimplement is_intra_only() by using the AVCodecContext codec descriptor
...
This also changes behavior as the descriptor table is more complete than
the switch/case it replaces. As well as considering all non video as
intra only
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Martin Storsjö
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>
13 years ago
Martin Storsjö
30c26c2442
lavf: Initialize the stream info timestamps in avformat_new_stream
...
These are normally initialized to AV_NOPTS_VALUE at the start
of avformat_find_stream_info, but if a new stream is found while
this function is running (e.g. like in mpegts), the newly added
AVStreams didn't have these values properly initalized, leading
to avformat_find_stream_info terminating too soon (when the
first timestamps are far from 0).
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Michael Niedermayer
a036ac5782
lavf: do not discard correct dts in favor of wrong pts for vc1-wmapro.ism
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Anton Khirnov
885da7b082
lavf: simplify is_intra_only() by using codec descriptors.
13 years ago
Mans Rullgard
987170cb9d
dict: add av_dict_count()
...
This adds a function to retrieve the number of entries in a
dictionary and updates the places directly accessing what should
be an opaque struct to use this new function instead.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Michael Niedermayer
b615dbb319
lavf: block special characters in dump metadata
...
This is limited to the chars that arent filtered by av_log() already
we might filter more aggressively if theres some case where this becomes
needed.
Fixes Ticket1181
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
13 years ago
Clément Bœsch
16dc5f2050
Replace various inlined inverse AVRational with av_inv_q().
13 years ago
Martin Storsjö
6c071a2b38
lavf: Declare an AVRational struct without a struct literal
...
At this place, the normal way of initializing a struct works
fine, there's no need for a struct literal.
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Michael Niedermayer
3e1cf49676
compute_pkt_fields: do not attempt to calculate dts when the delay hasnt been estimated.
...
Fixes ticket1242
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
2107009e7d
lavf: move nb_decoded_frames out of info.
...
This way the variable is available outside find_stream_info
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
b288b4c63f
has_decode_delay_been_guessed: adjust value for has_b_frames=0
...
needed for a mkv file
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago