Andreas Rheinhardt
fd6cb26583
avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak
...
Up until now, ff_avc_decode_sps would parse a SPS and return some
properties from it in a freshly allocated structure. Yet said structure
is very small and completely internal to libavformat, so there is no
reason to use the heap for it. This commit therefore changes the
function to return an int and to modify a caller-provided structure.
This will also allow ff_avc_decode_sps to return better error codes in
the future.
It also fixes a memleak in mxfenc: If a packet contained multiple SPS,
only the SPS structure belonging to the last SPS would be freed, the
other ones would leak when the pointer is overwritten to point to the
new SPS structure. Of course, without allocations there are no leaks.
This is Coverity issue #1445194 .
Furthermore, the SPS structure has been renamed from
H264SequenceParameterSet to H264SPS in order to avoid overlong lines.
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
(cherry picked from commit a0b6df0a3953e2586e63f513485c4d2d42507d7f)
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-07-01 21:39:54 +02:00
Baptiste Coudurier
c60e1d6be5
avformat/mxfenc: fix index byte count in partition header
...
(cherry picked from commit 9e24b98b15cbec1e0212d909ad29c746e1d1738b)
2019-07-22 23:27:11 +02:00
Baptiste Coudurier
b401a4ab8a
avformat/mxfenc: support XAVC long gop
2019-05-20 11:58:12 -07:00
Mark Reid
283ce69a10
avformat/mxfenc: allow user comments for opatom muxer
...
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-03-13 12:39:51 +01:00
Marton Balint
70c86deb8e
avformat/mxfenc: support writing subsecond precision timestamps
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-12-25 20:16:29 +01:00
Paul B Mahol
7b2a9aaa0b
avformat/mxfenc: fix typo
2018-12-17 21:06:36 +01:00
Paul B Mahol
14156e607d
avformat/mxfenc: calculate and store DAR from user SAR
2018-12-10 17:35:38 +01:00
Paul B Mahol
5e0d54a031
avformat/mxfenc: allow muxing prores
2018-12-10 17:25:49 +01:00
Baptiste Coudurier
8c733013af
avformat/mxfenc: simplify dnxhd handling and add more flavors
2018-10-24 09:07:19 -07:00
Carl Eugen Hoyos
b9136c1b90
lavf/mxfenc: Remove a write-only variable.
...
Fixes the following warning:
libavformat/mxfenc.c:2125:22: warning: variable 'frame_size' set but not used
2018-10-17 20:47:14 +02:00
Carl Eugen Hoyos
b4e29e6225
lavf/mxfenc: Remove two unused variables.
...
Fixes the following warnings:
libavformat/mxfenc.c:2036:9: warning: unused variable 'i'
libavformat/mxfenc.c:2125:9: warning: unused variable 'i'
2018-10-13 13:08:32 +02:00
Baptiste Coudurier
9b7ab57953
lavf/mxfenc: support creating s436m data tracks
2018-10-12 12:28:22 -07:00
Baptiste Coudurier
bb89109a0a
avformat/mxfenc: correctly set content package rate in system element
2018-10-12 12:27:58 -07:00
Baptiste Coudurier
84e8a87ca0
avformat/mxfenc: update body partition with footer offset
2018-10-12 12:27:43 -07:00
Baptiste Coudurier
ea55a11ced
avformat/mxfenc: add mpeg-2 specific metadata, fix compatibility with sony content browser
2018-10-12 12:26:01 -07:00
Baptiste Coudurier
3d38e45eb8
avformat/mxfenc: write index delta entry array needed by sony vegas pro 11
2018-10-12 12:15:38 -07:00
Jason Stevens
384dcd66a2
libavformat/mxfenc: fix dnxhr ul typo
...
byte 8 of dnxhr codec ul should be 0x0D
Signed-off-by: Jason Stevens <jay@wizardofthenet.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-09-15 20:00:45 +02:00
Jason Stevens
5632044939
libavformat/mxfenc: add missing dnxhr mxfcontainer essence ULs
...
Add missing dnxhr mxf container essence ULs to the mxf encoder.
This fixes dnxhr mxf files being quarantined by Avid Media Composer.
Signed-off-by: Jason Stevens <jay@wizardofthenet.com>
Reviewed-by: Baptiste Coudurier
2018-09-10 23:17:54 +02:00
Baptiste Coudurier
130de9142e
avformat/mxfenc: automatically update descriptors klv size
2018-08-22 08:07:35 -07:00
Baptiste Coudurier
955a989341
avformat/mxfenc: fix muxing when audio tracks are longer than video track
2018-08-21 12:10:41 -07:00
Michael Niedermayer
df3d962d2e
libavformat/mxfenc: Add some () to attempt to workaround build issue on osx
...
fixes ticket7209
Tested-by: Jim DeLaHunt <from.ffmpeg-dev@jdlh.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-27 21:38:33 +02:00
Michael Niedermayer
10ca419dd8
avformat/mxfenc: Set color siting to 0 for D10-MXF
...
SMPTE 386M (D-10) lists 4 as value to be used
SMPTE 377-1-2009 says
"The definitions of 00h (coSiting) and 04h (Rec 601) are equivalent. The value of 04h is deprecated. New
MXF encoders shall use the value of 00h instead."
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-12 01:08:01 +02:00
Michael Niedermayer
d628caf54f
avformat/mxfenc: Add Sample width/height/x offset/y offset, Display x offset and F2 offset
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-12 01:08:01 +02:00
Thomas Mundt
a3a6d4da62
avformat/mxfenc: add h264 profiles
...
Signed-off-by: Thomas Mundt <tmundt75@gmail.com>
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-10 02:10:12 +02:00
Michael Niedermayer
293a6e8332
avformat/mxfenc: Write transfer characteristic
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
c35ca7e01c
avformat/mxfenc: Add Stored F2 Offset / Image Start/End Offset for D10
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
530ac1e50b
avformat/mxfenc: Write Audio Ref Level for D10
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
1246754c80
avformat/mxfenc: Add Padding Bits
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
6d0339096e
avformat/mxfenc: add white/black ref /color range
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
2bee43b67d
avformat/mxfenc: Add vertical subsampling support
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
77cbe698cd
avformat/mxfenc: Fix stored width
...
This fixes the width to have computations matching the height
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
1b6c89ca8d
avformat/mxfenc: Add object model version
...
Other tools (XFConvert at least) write this as well.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
86c9250923
avformat/mxfenc: Add Product Version, Toolkit version and Platform
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
3ba1bbb4f9
avformat/mxfenc: Bump minor versions for S377-1-2009
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Michael Niedermayer
5c70513418
avformat/mxfenc: Correct KAG alignment of preface
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-08 23:02:58 +02:00
Mark Reid
901d87aa83
avformat/mxfenc: write reel_name if metadata key is present
...
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-08 20:02:16 +01:00
Mark Reid
ad2641c36b
avformat/mxfenc: use track count to generate component instance uuid
...
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-12-08 20:02:16 +01:00
Mark Reid
62f7f40caa
avformat/mxfenc: pass MXFPackage around instead of type
...
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-28 21:42:48 +01:00
Michael Niedermayer
ef973bd98d
avformat/mxfenc: Fix labels for IEC PAL DV 420
2017-10-03 18:34:37 +02:00
Michael Niedermayer
a56ec48d42
avformat/mxfenc: Add IEC DV25
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-03 18:34:37 +02:00
Tobias Rapp
3ffd3b7f5f
avformat/mxfenc: cosmetic changes
...
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-09-18 08:57:09 +02:00
Tobias Rapp
35d6be199a
avformat/mxfenc: fix aspect ratio when writing 16:9 DV frames
...
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2017-09-18 08:56:28 +02:00
Michael Niedermayer
de03eb622d
avformat/mxfenc: Correct the Sample rate for PCM outside D10
...
Based on mail from IRT
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-09-12 19:24:25 +02:00
Michael Niedermayer
4c33ec004f
avformat/mxfenc: Comment edit rate write code like the surrounding code
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-09-12 19:24:25 +02:00
Michael Niedermayer
4c88087f93
avformat/mxfenc: Replace more literal magic numbers by enum values.
...
This also moves the enum table up as it is needed earlier
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-09-12 19:24:25 +02:00
Michael Niedermayer
f762555a90
avformat/mxfenc: Replace literal numbers by named enum values.
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-08-30 02:15:36 +02:00
Michael Niedermayer
429f3266c1
avformat/mxfenc: Check that the video codec in D-10 is MPEG-2
...
Others do not work, but nothing rejects them prior to this patch if the
parameters otherwise match
Reviewed-by: Matthieu Bouron <matthieu.bouron@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-08-29 21:16:32 +02:00
James Almer
4de591e6fb
Merge commit '83548fe894cdb455cc127f754d09905b6d23c173'
...
* commit '83548fe894cdb455cc127f754d09905b6d23c173':
lavf: fix usage of AVIOContext.seekable
Merged-by: James Almer <jamrial@gmail.com>
2017-03-21 17:02:30 -03:00
Carl Eugen Hoyos
d0c1b9821a
lavf/mxfenc: Do not print a useless error message.
...
The option d10_channelcount only exists for mxf_d10.
2016-10-11 09:45:37 +02:00
Anton Khirnov
83548fe894
lavf: fix usage of AVIOContext.seekable
...
It is supposed to be a flag. The only currently defined value is
AVIO_SEEKABLE_NORMAL, but other ones may be added in the future.
However all the current lavf code treats this field as a bool (mainly
for historical reasons).
Change all those cases to properly check for AVIO_SEEKABLE_NORMAL.
2016-09-30 16:54:33 +02:00