Commit Graph

427 Commits

Author SHA1 Message Date
Thilo Borgmann
2f08dad028 lavf/avidec: Read metadata EXIF tags from AVIF tag. Based on patch by Gregory Wolfe (Kodak Alaris) <gregory.wolfe@kodakalaris.com>.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-05 03:32:06 +02:00
Michael Niedermayer
cc8b45c0ce avformat/avidec: remove unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 19:04:58 +02:00
Michael Niedermayer
91a0d3af65 Merge commit '9d599e3f6e61438772d8cddd6c9b7c495251f51e'
* commit '9d599e3f6e61438772d8cddd6c9b7c495251f51e':
  avi: Improve non-interleaved detection

Conflicts:
	libavformat/avidec.c

See: 8df774be88 and others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 18:03:02 +02:00
Michael Niedermayer
9d599e3f6e avi: Improve non-interleaved detection
Additional fixes by Nigel Touati-Evans <nigel.touatievans@gmail.com>.

Check the index for streams with a time drift of 2s or a buffer drift
of 64MB.

Bug-Id: 666
CC: libav-stable@libav.org
Sample-Id: yet-another-broken-interleaved-avi.avi

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-04-02 12:11:31 +02:00
Michael Niedermayer
61b3b3315c Merge commit 'f1c4a54f6ecbf77a29aaaee09ca70c5468d0c509'
* commit 'f1c4a54f6ecbf77a29aaaee09ca70c5468d0c509':
  lavf: add supported extension to avi and mov demuxers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 03:15:19 +02:00
Marc-Antoine Arnaud
f1c4a54f6e lavf: add supported extension to avi and mov demuxers 2014-04-02 00:27:53 +02:00
Michael Niedermayer
28ee7757f5 Merge commit 'd92024f18fa3d69937cb2575f3a8bf973df02430'
* commit 'd92024f18fa3d69937cb2575f3a8bf973df02430':
  lavf: more correct printf format specifiers

Conflicts:
	libavformat/asfdec.c
	libavformat/cafdec.c
	libavformat/dxa.c
	libavformat/framecrcenc.c
	libavformat/hnm.c
	libavformat/iff.c
	libavformat/mov.c
	libavformat/mxfdec.c
	libavformat/rmdec.c
	libavformat/rpl.c
	libavformat/smacker.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-11 21:05:34 +01:00
Michael Niedermayer
5d75730c58 avformat/avidec: Check required demuxing buffer sizes in guess_ni_flag()
Fixes Ticket3421

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-11 19:20:47 +01:00
Michael Niedermayer
01000064c9 avidec: calculate missing bitrates from index
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-11 19:20:47 +01:00
Diego Biurrun
d92024f18f lavf: more correct printf format specifiers 2014-03-11 13:13:41 +01:00
Michael Niedermayer
52a2138656 avformat/avidec: Use a buffer with sufficient padding in read_gab2_sub()
Fixes out of array read
Fixes: 0ff9841c2a102f06e0d582bfc3376cbd-asan_heap-oob_495589_6836_cov_1763916974_mewmew_ssa.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-02 04:38:30 +01:00
Carl Eugen Hoyos
b7702fafb3 Avoid a possible overflow when reading Nikon avi files.
Suggested-by: Reimar
2014-01-20 11:40:35 +01:00
Carl Eugen Hoyos
f9c2d4d17e Allow decoding of slightly broken Nikon avi files.
Fixes ticket #3330.
2014-01-20 01:44:07 +01:00
Carl Eugen Hoyos
94cf4f8bac Use the h264 parser when decoding VSSH in avi.
Fixes ticket #3261 visually.

Analyzed-by: Michael Doilnitsyn
2014-01-07 22:49:05 +01:00
Michael Niedermayer
e93bc3efbf avformat/avidec: use ff_get_extradata()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-25 17:23:13 +01:00
Michael Niedermayer
ccdfa3e271 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add missing #includes for *INT64_MAX and *INT64_C

Conflicts:
	ffmpeg.c
	ffmpeg_filter.c
	ffplay.c
	libavformat/assdec.c
	libavformat/avidec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-24 05:21:19 +01:00
Diego Biurrun
8f8bc92365 Add missing #includes for *INT64_MAX and *INT64_C 2013-11-23 21:55:52 +01:00
Michael Niedermayer
7865759409 avformat/avidec: Dont assert the existence of an index for video streams.
Its possible in various rare cases that an index cannot be created or allocated.
Fixes assertion failure
Fixes: signal_sigabrt_7ffff7126425_7712_pokem.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-22 17:02:00 +01:00
Michael Niedermayer
9cbe834dfd avformat/avidec: Skip duplicate strf chunks
Fixes Ticket3119

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-22 02:06:03 +01:00
Michael Niedermayer
7c98c834e0 avformat/avidec: also print position in print_tag()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-22 01:29:02 +01:00
Anton Khirnov
ce9bba5340 avidec: fix a memleak in the dv init code.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:57:58 +01:00
Paul B Mahol
a807c68253 avformat: use ff_alloc_extradata()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-10-13 20:13:38 +00:00
Michael Niedermayer
5fcd0a80a2 Merge commit 'ceec6e792e4b5baaa23b220f4fd33417631f5288'
* commit 'ceec6e792e4b5baaa23b220f4fd33417631f5288':
  avi: directly resync on DV in AVI read failure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-10 11:31:40 +02:00
Michael Niedermayer
dd0429e1de Merge commit '756547ce7f4d67a18663503e2157aebed3531703'
* commit '756547ce7f4d67a18663503e2157aebed3531703':
  avi: DV in AVI must be considered single stream

Conflicts:
	libavformat/avidec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-10 11:22:28 +02:00
Michael Niedermayer
c589c4c52d Merge commit '1cac9accbd1f9b8596122d0735e37b97a844c514'
* commit '1cac9accbd1f9b8596122d0735e37b97a844c514':
  avi: properly fail if the dv demuxer is missing

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-10 10:40:33 +02:00
Luca Barbato
ceec6e792e avi: directly resync on DV in AVI read failure
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-10-10 07:28:17 +02:00
Luca Barbato
756547ce7f avi: DV in AVI must be considered single stream
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-10-10 07:28:03 +02:00
Luca Barbato
1cac9accbd avi: properly fail if the dv demuxer is missing
CC: libav-stable@libav.org
2013-10-10 07:27:50 +02:00
Michael Niedermayer
3a3ebc7c7d Merge commit '8d07258bb6063d0780ce2d39443d6dc6d8eedc5a'
* commit '8d07258bb6063d0780ce2d39443d6dc6d8eedc5a':
  avidec: Make sure a packet is large enough before reading its data

Conflicts:
	libavformat/avidec.c

See: 028cc42a16
Note: data!=NULL implies that the allocated array is at least FF_INPUT_BUFFER_PADDING_SIZE large
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-29 22:56:15 +02:00
Martin Storsjö
8d07258bb6 avidec: Make sure a packet is large enough before reading its data
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-29 19:56:22 +03:00
Michael Niedermayer
72eddc10fa Merge commit 'd872fb0f7ff2ff0ba87f5ccf6a1a55ca2be472c9'
* commit 'd872fb0f7ff2ff0ba87f5ccf6a1a55ca2be472c9':
  lavf: Reset the entry count and allocation size variables on av_reallocp failures

Conflicts:
	libavformat/avienc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-27 12:13:41 +02:00
Martin Storsjö
d872fb0f7f lavf: Reset the entry count and allocation size variables on av_reallocp failures
When av_reallocp fails, the associated variables that keep track of
the number of elements in the array (and in some cases, the
separate number of allocated elements) need to be reset.

Not all of these might technically be needed, but it's better to
reset them if in doubt, to make sure variables don't end up
conflicting.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-26 23:14:03 +03:00
Michael Niedermayer
20dfab33f5 Merge commit '5626f994f273af80fb100d4743b963304de9e05c'
* commit '5626f994f273af80fb100d4743b963304de9e05c':
  avformat: Use av_reallocp() where suitable

Conflicts:
	libavformat/avidec.c
	libavformat/avienc.c
	libavformat/aviobuf.c
	libavformat/oggparsevorbis.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-19 11:01:26 +02:00
Alexandra Khirnova
5626f994f2 avformat: Use av_reallocp() where suitable
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-09-18 18:28:38 +02:00
Paul B Mahol
c051d668b5 avformat/avidec: use av_calloc() and check for allocation error
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-16 18:53:28 +00:00
Michael Niedermayer
8586d8dda2 avformat/avidec: fix signedness of pointer type in get_stream_idx()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-08 19:02:19 +02:00
Michael Niedermayer
227a0eb5a9 avformat/avidec: match first index and first packet size=0 handling
Fixes Ticket2861

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-31 03:08:25 +02:00
Michael Niedermayer
20be5e0a0e Merge commit '7950e519bb094897f957b9a9531cc60ba46cbc91'
* commit '7950e519bb094897f957b9a9531cc60ba46cbc91':
  Disable deprecation warnings for cases where a replacement is available

Conflicts:
	libavcodec/avpacket.c
	libavcodec/pthread.c
	libavcodec/utils.c
	libavdevice/v4l2.c
	libavfilter/avfiltergraph.c
	libavfilter/buffersrc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-03 10:08:30 +02:00
Diego Biurrun
7950e519bb Disable deprecation warnings for cases where a replacement is available 2013-08-02 19:19:02 +02:00
Michael Niedermayer
3afcddcff2 Merge commit 'c8f0b20b4a6bb6691928789d83e4b02896969848'
* commit 'c8f0b20b4a6bb6691928789d83e4b02896969848':
  avidec: Let the inner dv demuxer take care of discarding

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-28 13:15:21 +02:00
Michael Niedermayer
d781220991 Merge commit '10aa44aa675e05067845e3e55fac37642cbbdae4'
* commit '10aa44aa675e05067845e3e55fac37642cbbdae4':
  avidec: K&R formatting cosmetics

Conflicts:
	libavformat/avidec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-28 13:06:38 +02:00
Luca Barbato
c8f0b20b4a avidec: Let the inner dv demuxer take care of discarding
CC: libav-stable@libav.org
2013-07-27 16:00:11 +02:00
Luca Barbato
10aa44aa67 avidec: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-27 16:00:11 +02:00
Nigel Touati-Evans
ef8cc06d6e avformat/avidec: Fix incorrect detection of badly interleaved avi
The method guess_ni_flag needs to divide timestamps in the index
by sample_size if it is set in order to compare different streams correctly.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 22:07:48 +02:00
Michael Niedermayer
6c593f1b67 avidec: dont randomly skip packets for offseting the index
Fixes Ticket2490

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-17 22:16:10 +02:00
Carl Eugen Hoyos
231b331718 Do not read strd chunk in avi files as H264 extradata.
Fixes ticket #2561.
2013-05-13 12:39:44 +02:00
Michael Niedermayer
a079ed63d3 avidec: Enable full parsing for potencoder mpeg1/2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-10 16:55:06 +02:00
Michael Niedermayer
f083b4c338 Merge commit 'e0f8be6413b6a8d334d6052e610af32935c310af'
* commit 'e0f8be6413b6a8d334d6052e610af32935c310af':
  avformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate

Conflicts:
	libavformat/ac3dec.c
	libavformat/avformat.h
	libavformat/avs.c
	libavformat/m4vdec.c
	libavformat/mov.c
	libavformat/mp3dec.c
	libavformat/mpeg.c
	libavformat/mpegvideodec.c
	libavformat/psxstr.c
	libavformat/pva.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 12:31:03 +02:00
Diego Biurrun
e0f8be6413 avformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate 2013-05-04 21:43:06 +02:00
Michael Niedermayer
27b7bfc7b5 avidec: Fix demuxing of non seekable avis with multiple RIFFs
This solution uses the size of the first RIFF if its valid
to check frame size validity when the filesize could not be determined.
Feedback is welcome, other ideas and improvments as well!

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 17:30:42 +01:00