Pierre-Anthony Lemieux
0e402ebf48
format/imfdec: improve error handling when selecting tracks for playback
...
Reviewed-by: Zane van Iperen <zane@zanevaniperen.com>
2 years ago
Pierre-Anthony Lemieux
6e91d405be
avformat/imfdec: check if Asset/Id exists before trying to read it
...
Fixes Coverity issue #1512406
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2 years ago
Pierre-Anthony Lemieux
d5b46fa07d
avformat/imfdec: preserve stream information
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2 years ago
Pierre-Anthony Lemieux
751549af9b
avformat/imf: refactor to use avutil/uuid
2 years ago
Andreas Rheinhardt
35ec5c819b
avformat/demux: Add new demux.h header
...
And move those stuff already in demuxer-only files to it.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
3 years ago
Pierre-Anthony Lemieux
f409c78517
avformat/imf: refactor to use ff_rescale_interval()
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Pierre-Anthony Lemieux
22e1175e39
avformat/imf: clean-up and reduce logging
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Pierre-Anthony Lemieux
32b9f5ac2f
avformat/imf: add support for input seeking
...
The IMF demuxer did not implement AVInputFormat::read_seek2(), resulting in
inefficient input seeking.
Addresses https://trac.ffmpeg.org/ticket/9648
Byte- and frame-seeking are not supported.
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Pierre-Anthony Lemieux
9ca4d80d6b
avformat/imf: relocate static function imf_time_to_ts()
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Andreas Rheinhardt
814f806e06
avformat/imfdec: Convert to the new channel layout API
...
Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
3 years ago
Pierre-Anthony Lemieux
12139d1103
avformat/imf: document IMFVirtualTrackResourcePlaybackCtx
3 years ago
Pierre-Anthony Lemieux
b0193e26ca
avformat/imf: fix packet pts, dts and muxing
...
The IMF demuxer does not set the DTS and PTS of packets accurately in all
scenarios. Moreover, audio packets are not trimmed when they exceed the
duration of the underlying resource.
imf-cpl-with-repeat FATE ref file is regenerated.
Addresses https://trac.ffmpeg.org/ticket/9611
3 years ago
Pierre-Anthony Lemieux
ef0d5245d6
avformat/imf: open resources only when first needed
...
IMF CPLs can reference thousands of files, which can result in system limits
for the number of open files to be exceeded. The following patch opens and
closes files as needed.
Addresses https://trac.ffmpeg.org/ticket/9623
3 years ago
Zane van Iperen
40766ae1da
avformat/imf: cosmetics
...
s/++i/i++/g
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Andreas Rheinhardt
b7a543707f
avformat/imfdec: Use proper logcontext
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
3 years ago
Marton Balint
ae690d5cf5
avformat/imfdec: do not use filesize when reading XML file
...
Signed-off-by: Marton Balint <cus@passwd.hu>
3 years ago
Pierre-Anthony Lemieux
59f1a46048
avformat/imf: fix bad free() when directory name of the input url is empty
...
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Pierre-Anthony Lemieux
4c03928f4d
avformat/imf: Fix error handling in set_context_streams_from_tracks()
...
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago
Anton Khirnov
70f318e6b6
lavf/imfdec: mark as experimental
...
People have expressed concerns about its safety, so prevent it from
being auto-selected without explicit user indication.
3 years ago
Pierre-Anthony Lemieux
73f6cce936
avformat/imf: Demuxer
...
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
3 years ago