6f69f7a8bf
Merge commit '9200514ad8717c63f82101dc394f4378854325bf'
...
* commit '9200514ad8717c63f82101dc394f4378854325bf':
lavf: replace AVStream.codec with AVStream.codecpar
This has been a HUGE effort from:
- Derek Buitenhuis <derek.buitenhuis@gmail.com >
- Hendrik Leppkes <h.leppkes@gmail.com >
- wm4 <nfxjfg@googlemail.com >
- Clément Bœsch <clement@stupeflix.com >
- James Almer <jamrial@gmail.com >
- Michael Niedermayer <michael@niedermayer.cc >
- Rostislav Pehlivanov <atomnuker@gmail.com >
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com >
2016-04-10 20:59:55 +01:00
9200514ad8
lavf: replace AVStream.codec with AVStream.codecpar
...
Currently, AVStream contains an embedded AVCodecContext instance, which
is used by demuxers to export stream parameters to the caller and by
muxers to receive stream parameters from the caller. It is also used
internally as the codec context that is passed to parsers.
In addition, it is also widely used by the callers as the decoding (when
demuxer) or encoding (when muxing) context, though this has been
officially discouraged since Libav 11.
There are multiple important problems with this approach:
- the fields in AVCodecContext are in general one of
* stream parameters
* codec options
* codec state
However, it's not clear which ones are which. It is consequently
unclear which fields are a demuxer allowed to set or a muxer allowed to
read. This leads to erratic behaviour depending on whether decoding or
encoding is being performed or not (and whether it uses the AVStream
embedded codec context).
- various synchronization issues arising from the fact that the same
context is used by several different APIs (muxers/demuxers,
parsers, bitstream filters and encoders/decoders) simultaneously, with
there being no clear rules for who can modify what and the different
processes being typically delayed with respect to each other.
- avformat_find_stream_info() making it necessary to support opening
and closing a single codec context multiple times, thus
complicating the semantics of freeing various allocated objects in the
codec context.
Those problems are resolved by replacing the AVStream embedded codec
context with a newly added AVCodecParameters instance, which stores only
the stream parameters exported by the demuxers or read by the muxers.
2016-02-23 17:01:58 +01:00
f53583ea6e
omadec: Fix position of opening parenthesis
2015-10-30 12:46:56 +01:00
8deb1fdac8
avformat/omadec: Fix { typo
...
Fixes CID1324299
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2015-10-05 22:31:38 +02:00
182550e42c
Merge commit '10de408738d28ab17aa5c1fdccd809b0637c12d5'
...
* commit '10de408738d28ab17aa5c1fdccd809b0637c12d5':
lavf: Update to the new crypto API
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com >
2015-09-16 11:06:55 +02:00
10de408738
lavf: Update to the new crypto API
2015-09-13 17:34:45 +02:00
059a934806
lavc: Consistently prefix input buffer defines
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com >
2015-07-27 15:24:59 +01:00
0f55bc29d4
avformat/omadec: Use 64bit for ret to avoid overflow
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-20 21:01:54 +01:00
29fd3032cc
avformat/omadec: Subtract headersize in timestamp calculation
...
Fixes pts/dts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-07 21:16:20 +01:00
7c2fa13df9
avformat/omadec: only compute timestamps based on bitrate if its set
...
Fixes division by zero
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-07 21:12:56 +01:00
7474ea7495
Merge commit 'e352520e3ed7f08f19e63cd60e95da6bb6f037c1'
...
* commit 'e352520e3ed7f08f19e63cd60e95da6bb6f037c1':
oma: Report a timestamp
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-07 21:01:52 +01:00
e352520e3e
oma: Report a timestamp
...
Reported-By: jb@videolan.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2015-02-07 15:36:15 +01:00
f1f7f5903a
avformat/omadec: fix number suffix
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-01 20:00:10 +01:00
5331773cc3
ff_id3v2_read: add option to limit ID3 magic number search
...
Several chunked formats (AIFF, IFF,DSF) store ID3 metadata within an 'ID3 '
chunk tag. If such chunks are stored sequentially, it is possible for the
ID3v2 parser to confuse the chunk tag for the ID3 magic number. e.g.
[1st chunk tag ('ID3 ') | chunk size] [ID3 magic number | metadata ...]
[2nd chunk tag ('ID3 ') | chunk size] [ID3 magic number | metadata ...]
Fixes ticket #3530 .
Signed-off-by: Peter Ross <pross@xvid.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-04-19 04:25:01 +02:00
a84f9c75bc
avformat/omadec: fix probetest failure
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-04-05 22:07:43 +02:00
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
d92024f18f
lavf: more correct printf format specifiers
2014-03-11 13:13:41 +01:00
e6f0bb6527
ATRAC3+ decoder
...
Cleanup by Diego Biurrun.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com >
2014-01-09 19:33:07 +01:00
54bb30bae2
omadec: Disable "Unsupported codec ATRAC3+" warning
...
Also add a list of supported decoders.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-12-29 01:11:21 +01:00
bd75651378
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
omadec: loosen format probing constraints
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-11-04 22:46:22 +01:00
aeaca3816c
Merge commit '1c736bedd9891501960ebac0f7c05eb60225e947'
...
* commit '1c736bedd9891501960ebac0f7c05eb60225e947':
omadec: check GEOB sizes against buffer size
Conflicts:
libavformat/omadec.c
See: e74fa25cb9
See: 91e72e3514
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-11-04 22:08:59 +01:00
0a7fef39fc
omadec: loosen format probing constraints
...
Imporoves detection of some files in the wild:
- ID3v2 a.k.a. "ea3" header is optional.
- Version and flags in ID3v2 header are unspecified.
Signed-off-by: David Goldwich <david.goldwich@gmail.com >
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-11-04 18:43:18 +01:00
1c736bedd9
omadec: check GEOB sizes against buffer size
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: David Goldwich <david.goldwich@gmail.com >
CC:libav-stable@libav.org
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-11-04 18:43:03 +01:00
97f50e92b5
omadec: Fix wrong number of array elements
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: David Goldwich <david.goldwich@gmail.com >
CC:libav-stable@libav.org
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-11-04 18:38:01 +01:00
a807c68253
avformat: use ff_alloc_extradata()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com >
2013-10-13 20:13:38 +00:00
5c7d86cbde
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
omadec: fix bitrate for ATRAC3+ streams
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-09-30 02:21:41 +02:00
7a28a9f68e
Merge commit '23d0fdcf6f30843fc3f14084d80581f1ca10f1f3'
...
* commit '23d0fdcf6f30843fc3f14084d80581f1ca10f1f3':
Add support for multichannel ATRAC3+ streams.
Conflicts:
libavformat/oma.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-09-30 02:15:36 +02:00
487b54104a
omadec: fix bitrate for ATRAC3+ streams
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-09-29 21:54:51 +02:00
23d0fdcf6f
Add support for multichannel ATRAC3+ streams.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-09-29 21:52:57 +02:00
fb45de779c
avformat/omadec: simplify checks in nprobe()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-09-24 00:29:02 +02:00
a444ddff03
Merge commit '342c43d154e586bc022c86b168fe8d36f69da9d3'
...
* commit '342c43d154e586bc022c86b168fe8d36f69da9d3':
omadec: Properly check lengths before incrementing the position
See: f1d6f013b2
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-09-16 12:15:42 +02:00
342c43d154
omadec: Properly check lengths before incrementing the position
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-09-16 11:04:52 +03:00
4cfe3b7405
Merge commit '7df9e693a34c84c698da60426c78140c950f95ed'
...
* commit '7df9e693a34c84c698da60426c78140c950f95ed':
cosmetics: Fix ATRAC codec name spelling
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-09-03 15:05:18 +02:00
7df9e693a3
cosmetics: Fix ATRAC codec name spelling
2013-09-02 21:38:57 +02:00
5fb652dddb
Merge commit '2219e27b5b17d146e4ab71a3ed86dfc013fb7a93'
...
* commit '2219e27b5b17d146e4ab71a3ed86dfc013fb7a93':
oma: correctly mark and decrypt partial packets
Conflicts:
libavformat/omadec.c
See: dcd013a535
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-07-29 13:01:20 +02:00
9d8fb23747
Merge commit '9d0b45ade864f3d2ccd8610149fe1fff53c4e937'
...
* commit '9d0b45ade864f3d2ccd8610149fe1fff53c4e937':
oma: check geob tag boundary
Conflicts:
libavformat/omadec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-07-29 12:41:32 +02:00
bc672a016f
Merge commit '4f03a77e52596cbe9ec179666ddb3e0345a8133a'
...
* commit '4f03a77e52596cbe9ec179666ddb3e0345a8133a':
oma: refactor seek function
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-07-29 12:21:52 +02:00
2219e27b5b
oma: correctly mark and decrypt partial packets
...
Incomplete crypted files would lead to a read after buffer boundary
otherwise.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-28 22:54:55 +02:00
9d0b45ade8
oma: check geob tag boundary
...
Prevent read after buffer boundary on corrupted tag.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-28 22:54:55 +02:00
4f03a77e52
oma: refactor seek function
...
Properly propagate seek errors from avio and the generic pcm seek.
2013-07-28 22:54:55 +02:00
f302ba4dda
Merge commit 'db9aee6ccf183508835acc325f5ad87d595eacc4'
...
* commit 'db9aee6ccf183508835acc325f5ad87d595eacc4':
oma: properly forward errors in oma_read_packet
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-05-08 13:41:45 +02:00
d13bc208da
Merge commit '6f98508e2b86dcb79614d8c9b8e97c5e83a21cb0'
...
* commit '6f98508e2b86dcb79614d8c9b8e97c5e83a21cb0':
oma: return meaningful errors
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-05-08 13:37:26 +02:00
db9aee6ccf
oma: properly forward errors in oma_read_packet
...
Prevent spurios EIO on EOF.
CC:libav-stable@libav.org
2013-05-07 14:37:32 +02:00
6f98508e2b
oma: return meaningful errors
2013-05-07 14:37:32 +02:00
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
e0f8be6413
avformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate
2013-05-04 21:43:06 +02:00
2ac6d6b7cd
Merge commit 'c14010541035454b4d3ad08399d70423be4e0c87'
...
* commit 'c14010541035454b4d3ad08399d70423be4e0c87':
oma: K&R formatting cosmetics
Conflicts:
libavformat/omadec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-28 12:18:18 +02:00
c140105410
oma: K&R formatting cosmetics
2013-04-27 10:53:24 +02:00
24f822c3ab
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
oma: Validate sample rates
Conflicts:
libavformat/oma.c
See: a30165c4a8
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-01 12:48:04 +02:00
0933fd1533
oma: Validate sample rates
...
The sample rate index is 3 bits even if currently index 5, 6 and 7 are
not supported.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-03-31 16:10:52 +02:00