| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
|
| | |
| | |
| | |
| | | |
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
incoming samples.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
This should be moved to tablegen at some point.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
to float.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
it more clear what is being calculated.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Also fix a typo.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Macroify sanity checks and check return values of allocs and other functions.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This matches the spec as well as the reference decoder, and fixes a bug
with interlaced frame decoding.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
|
| | | |
|
| | |
| | |
| | |
| | | |
They have no code in common.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit b3452771c4550b46ea54d15be6cfe8cc10585199.
A better solution was implemented by Nathan Caldwell.
Conflicts:
libavcodec/aacenc.c
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reduces the delay when opening the video with quicktime.
Idea-by: Maksym Veremeyenko <verem@m1stereo.tv>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | | |
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The previous implementation assumed that a new picture would always
supersede the previous picture. Similarly, presentation segments
were assumed to pertain to the most-recently-read picture.
However, each presentation segment may refer to 0 or more pictures
by their ID. Picture IDs may repeat, and a repeated picture ID
indicates that the old picture for that ID is no longer needed
and may be discarded.
The new implementation allocates a buffer with one slot for each
possible picture ID (the picture ID is a 16-bit field) and
properly decodes presentation segments so that all relevant
pictures are output upon encountering a display segment.
Given that most PGS streams are unlikely to use more than a small
fraction of the available picture IDs, it would probably be better
to use a more memory-efficient data structure. I'm lazy though, so
I leave this to a more motivated individual.
I've tested the code with MKV files in VLC (a recent revision from
their git repo) and with HandBrake (a version that I hacked up to
use ffmpeg's PGS subtitle decoder).
Review-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes bug118, bug120 and bug125 at least
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes memory corruption when seeking in broken streams.
a random mpeg4 in nut file was used to debug.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* qatar/master: (25 commits)
riff: fix invalid av_freep() calls on EOF in ff_read_riff_info
pam: Fix a typo that broke writing and reading PAM files.
mxfdec: fix memleak on av_realloc failures
mxfdec: Do not parse slices or DeltaEntryArrays.
mxfdec: hybrid demuxing/seeking solution
mxfdec: Add Avid's essence element key.
mfxdec: Separate mxf_essence_container_uls for audio and video.
mxfdec: Compute packet offsets properly.
mxfdec: Use MaterialPackage - Track - TrackID instead of the system_item hack.
mxfdec: use av_dlog() for 'no corresponding source package found'
mxfdec: Make mxf->partitions sorted by offset.
mxfdec: parse ThisPartition
mxfdec: Speed up metadata and index parsing.
mxfdec: Make sure DataDefinition is consistent between material track and source track.
mxfdec: add EssenceContainer UL found in 0001GL00.MXF.A1.mxf_opatom.mxf
mxfdec: Add hack that adjusts the n_delta calculation when system items are present.
mxfdec: Parse IndexTableSegments and convert them into AVIndexEntry arrays.
mxfdec: Move FooterPartition to MXFContext and make sure it is never zero.
mxfdec: check return value of avio_seek
mxfdec: skip to end of structural sets
...
Conflicts:
configure
libavcodec/pnm.c
libavformat/mxfdec.c
libavformat/riff.c
libavformat/rtsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Reported and reviewed by Derek Buitenhuis.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | | |
|
| | |
| | |
| | |
| | | |
The most recent demuxing/seeking code does not need them.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This uses the old demuxing code for OP1a and separate demuxing code for OPAtom.
Timestamp output is added to the old demuxing code.
The seeking code is made to seek to the start of the desired EditUnit only,
from which the normal demuxing code takes over (if OP1a). This means we
do not use delta entries or slices, only StreamOffsets. OPAtom seeking
basically works like before.
This also makes D-10 seeking behave the same way as OP1a and OPAtom. In other
words, we allow seeking before the start or past the end for D-10 too.
Based on several patches by Tomas Härdin <tomas.hardin@codemill.se> and
Reimar Döffinger <Reimar.Doeffinger@gmx.de>.
Changed av_calloc to av_mallocz, added overflow checks.
|
| | |
| | |
| | |
| | | |
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It is a really bad idea to assign a video codec id
when we have set codec_type to audio and vice versa.
Prevents detection of mp2 in mxf as mpeg2video.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | | |
This replaces the old essence_offset code.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | | |
This is not an error and expected behavior for OPAtom files.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | | |
This also zeroes new entries for good measure (used by future patches).
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Specifically, this means parsing as before until we run into essence.
At that point we seek to the footer and parse until EOF. After that we start
seeking backward to the previous partition and parse that until we run into
essence or the next partition. This procedure is repeated until we encounter
the last partition we parsed in the forward direction.
The end result of all this is that large essence containers are not needlessly
parsed. This speeds up parsing large files a lot.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
source track.
This fixes 0001GL.MXF.V1.mxf_opatom.mxf and 0001GL00.MXF.A1.mxf_opatom.mxf
getting two streams each due to both using the same SourcePackageID.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | | |
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | | |
present.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Based on patch from Tomas Härdin <tomas.hardin@codemill.se>
and work by Georg Lippitsch <georg.lippitsch@gmx.at>
Changed av_calloc to av_mallocz and added overflow checks.
|
| | |
| | |
| | |
| | | |
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Avoid modifying state if avio_seek fails.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes reading of partition packs. The code stops reading after the
operational pattern and should skip the array of essence container
labels that follow.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Now that 0.8 is out we can reapply this commit. It breaks shared
avserver builds due to avserver using internal libavformat symbols,
which are now hidden, so this commit also disables avserver with
--enable-shared.
|