Pierre-Anthony Lemieux
74e4382442
avformat/mxfdec: fix frame wrapping detection for J2K essence container
...
For JPEG 2000 essence, the MXF input format module currently uses the value of
byte 14 of the essence container UL to determine whether the J2K essence is
clip- (byte 14 is 0x02) or frame-wrapped (byte 14 is 0x01). Otherwise it
assumes an unknown wrapping.
Additional wrappings are documented in SMPTE ST422:2019:
0x03: Interlaced Frame, 1 field/KLV
0x04: Interlaced Frame, 2 fields/KLV
0x05: Field-wrapped Picture Element
0x06: Frame-wrapped Picture Element
And these should also be handled as frame wrapped content.
Signed-off-by: Pierre-Anthony Lemieux <pal@sandflow.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2021-07-29 22:38:02 +02:00
Andreas Rheinhardt
25c8507818
Remove/replace some unnecessary avcodec.h inclusions
...
Also remove other unnecessary headers and include headers directly while
at it.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-07-22 15:29:46 +02:00
Tomas Härdin
ff0618b5c4
avformat/mxf: Establish register of local tags
...
Tags can be marked "not used" upfront, saving some space in the primer.
av_asserts0() is used to enforce that only tags that are in the primer can actually be written.
Sharing of MasteringDisplay ULs is now done via macros.
2021-02-01 23:52:55 +01:00
Andreas Rheinhardt
ac0e75b647
avformat/mxf: Deduplicate random_index_pack_key
...
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-08 05:05:13 +01:00
Harry Mallon
90e2a4d61b
avformat/mxfdec: Read Mastering Display Colour Volume from MXF
...
Described in Annex B SMPTE ST 2067-21:2020
Signed-off-by: Harry Mallon <harry.mallon@codex.online>
2020-09-17 21:40:25 +02:00
Harry Mallon
7031a7beae
avformat/mxfdec: Read color metadata from MXF
...
Reads color_primaries, color_trc and color_space from mxf
headers. ULs are from https://registry.smpte-ra.org/ site.
Signed-off-by: Harry Mallon <harry.mallon@codex.online>
2020-08-06 12:52:34 +02:00
Marton Balint
f69154b2c4
avformat/mxfenc: move content package rates and timebase combinations to a separate struct
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-03-14 22:25:25 +01:00
Marton Balint
27a8146990
avformat/mxf: get rid of samples per frame array usage
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-03-14 22:25:25 +01:00
Baptiste Coudurier
b401a4ab8a
avformat/mxfenc: support XAVC long gop
2019-05-20 11:58:12 -07:00
Baptiste Coudurier
bb89109a0a
avformat/mxfenc: correctly set content package rate in system element
2018-10-12 12:27:58 -07:00
Marton Balint
7ec90b168b
avformat/mxfdec: add support for determining essence wrapping scheme
...
Some code is based on bmxlib-libmxf/mxf/mxf_utils.c.
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-06-24 20:42:35 +02:00
Marton Balint
bfa0b50441
avformat/mxfdec: store next_klv in KLVPacket
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-06-24 20:42:35 +02:00
Marton Balint
183db8a80b
avformat/mxfdec: use MXFCodecUL struct to store essence description for data_essence_container_uls
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-06-08 23:20:27 +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
Carl Eugen Hoyos
35b33f1a19
lavf/mxfdec: Set codec_tag AVup for Avid 1:1 input.
2015-07-22 10:23:18 +02:00
Michael Niedermayer
3d65570f25
avformat/mxf: Always evaluate PRINT_KEY() arguments at compile time
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-10 14:39:27 +02:00
Michael Niedermayer
8b42b22222
avformat/mxf: Simplify PRINT_KEY()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-10 14:39:26 +02:00
Mark Reid
43cafb956e
libavformat/mxfdec: export user comments metadata
...
Previous-revision-reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-14 22:46:18 +01:00
Mark Reid
e5d217f048
libavformat/mxfdec.c: initial support for EssenceGroups
...
Previous version reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-30 23:14:06 +01:00
Mark Reid
90bf1e3046
libavformat/mxfdec: read source timecode from pulldown component
...
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-25 23:15:04 +02:00
Michael Niedermayer
ecb7f1dd52
Merge commit '304089aca7d238ae184e09993b5c737aa22e2c2c'
...
* commit '304089aca7d238ae184e09993b5c737aa22e2c2c':
mxf: Add UID print helpers
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-17 21:50:06 +02:00
Luca Barbato
304089aca7
mxf: Add UID print helpers
...
And use it to print non-parsed ULs.
2014-08-17 16:11:02 +02:00
Michael Niedermayer
3e59db606e
Merge commit '6920fb2b33f84b114ea4561ae1c623f4a26562e5'
...
* commit '6920fb2b33f84b114ea4561ae1c623f4a26562e5':
mxf: Verbose debug logging
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-19 20:54:35 +01:00
Luca Barbato
6920fb2b33
mxf: Verbose debug logging
...
Print the UL in code format and in the short format used by the
specification.
2014-03-19 12:04:06 +01:00
Matthieu Bouron
e118bb1a33
mxf: Introduce ff_mxf_get_samples_per_frame
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-03-06 19:28:20 +01:00
Michael Niedermayer
ac627b3d38
Merge commit '716d413c13981da15323c7a3821860536eefdbbb'
...
* commit '716d413c13981da15323c7a3821860536eefdbbb':
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
Conflicts:
doc/examples/muxing.c
ffmpeg.h
ffmpeg_filter.c
ffmpeg_opt.c
ffplay.c
ffprobe.c
libavcodec/8bps.c
libavcodec/aasc.c
libavcodec/aura.c
libavcodec/avcodec.h
libavcodec/avs.c
libavcodec/bfi.c
libavcodec/bmp.c
libavcodec/bmpenc.c
libavcodec/c93.c
libavcodec/cscd.c
libavcodec/cyuv.c
libavcodec/dpx.c
libavcodec/dpxenc.c
libavcodec/eatgv.c
libavcodec/escape124.c
libavcodec/ffv1.c
libavcodec/flashsv.c
libavcodec/fraps.c
libavcodec/h264.c
libavcodec/huffyuv.c
libavcodec/iff.c
libavcodec/imgconvert.c
libavcodec/indeo3.c
libavcodec/kmvc.c
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c
libavcodec/libx264.c
libavcodec/ljpegenc.c
libavcodec/mjpegdec.c
libavcodec/mjpegenc.c
libavcodec/motionpixels.c
libavcodec/mpeg12.c
libavcodec/mpeg12enc.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo_enc.c
libavcodec/pamenc.c
libavcodec/pcxenc.c
libavcodec/pgssubdec.c
libavcodec/pngdec.c
libavcodec/pngenc.c
libavcodec/pnm.c
libavcodec/pnmdec.c
libavcodec/pnmenc.c
libavcodec/ptx.c
libavcodec/qdrw.c
libavcodec/qpeg.c
libavcodec/qtrleenc.c
libavcodec/raw.c
libavcodec/rawdec.c
libavcodec/rl2.c
libavcodec/sgidec.c
libavcodec/sgienc.c
libavcodec/snowdec.c
libavcodec/snowenc.c
libavcodec/sunrast.c
libavcodec/targa.c
libavcodec/targaenc.c
libavcodec/tiff.c
libavcodec/tiffenc.c
libavcodec/tmv.c
libavcodec/truemotion2.c
libavcodec/utils.c
libavcodec/vb.c
libavcodec/vp3.c
libavcodec/wnv1.c
libavcodec/xl.c
libavcodec/xwddec.c
libavcodec/xwdenc.c
libavcodec/yop.c
libavdevice/v4l2.c
libavdevice/x11grab.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/buffersrc.c
libavfilter/drawutils.c
libavfilter/formats.c
libavfilter/src_movie.c
libavfilter/vf_ass.c
libavfilter/vf_drawtext.c
libavfilter/vf_fade.c
libavfilter/vf_format.c
libavfilter/vf_hflip.c
libavfilter/vf_lut.c
libavfilter/vf_overlay.c
libavfilter/vf_pad.c
libavfilter/vf_scale.c
libavfilter/vf_transpose.c
libavfilter/vf_yadif.c
libavfilter/video.c
libavfilter/vsrc_testsrc.c
libavformat/movenc.c
libavformat/mxf.h
libavformat/utils.c
libavformat/yuv4mpeg.c
libavutil/imgutils.c
libavutil/pixdesc.c
libswscale/input.c
libswscale/output.c
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c
libswscale/utils.c
libswscale/x86/swscale_template.c
libswscale/x86/yuv2rgb.c
libswscale/x86/yuv2rgb_template.c
libswscale/yuv2rgb.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-08 21:06:57 +02:00
Anton Khirnov
716d413c13
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
2012-10-08 07:13:26 +02:00
Michael Niedermayer
55c49afc42
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
yuv4mpeg: return proper error codes.
Give all anonymously typedeffed structs in headers a name
fate: Add parseutils test
parseutils-test: Drop random colors from parsing test
vf_pad/scale: use double precision for aspect ratios.
build: error on variable-length arrays
ppc: swscale: rework yuv2planeX_altivec()
ppc: fmtconvert: kill VLA in float_to_int16_interleave_altivec()
x86: dsputil: kill VLA in gmc_mmx()
libspeexenc: Updated commentary to reflect recent changes
libspeexenc: Add an option for enabling DTX
doc/APIchanges: fill in missing dates and hashes.
lavr: bump major to 1 and declare it stable.
lavr: change the type of the data buffers to uint8_t**.
lavc: deprecate the audio resampling API.
Conflicts:
cmdutils.h
configure
doc/APIchanges
ffplay.c
libavcodec/dwt.h
libavcodec/libspeexenc.c
libavfilter/vf_pad.c
libavfilter/vf_scale.c
libavformat/asf.h
tests/fate/libavutil.mak
tests/ref/fate/parseutils
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-06 13:45:08 +02:00
Diego Biurrun
e4cbf7529b
Give all anonymously typedeffed structs in headers a name
...
Anonymous structs cannot be forward declared and have no benefit.
2012-10-06 09:27:11 +02:00
Matthieu Bouron
41f7e0649f
mxf: export ff_mxf_get_samples_per_frame to lavf
...
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-21 16:20:38 +02:00
Joseph Artsimovich
634d670538
mxfdec: fix frame height vs field height confusion
...
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Reveiwed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-10 13:51:04 +02:00
Philip de Nier
fda891e108
mxfdec: set pixel format for cdci picture formats
...
The properties of the CDCI Descriptor are insufficient to specify
the pixel format for uncompressed picture data. SMPTE 377-1 and
RP224v10 have defined a set of picture coding labels to indicate what
formatting was used.
This patch uses 2 labels to detect UYVY422 or YUYV422 pixel formats.
It defaults to UYVY422 for 8-bit 4:2:2 pictures to support files
that were created before the coding labels were introduced ~2008
The codec pix_fmt default was changed from 0 (PIX_FMT_YUV420P) to
-1 (PIX_FMT_NONE)
Reviewed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-10 13:51:04 +02:00
Matthieu Bouron
70ca163bc5
mxf: Fix frame layout values
...
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-19 15:08:13 +02:00
Joseph Artsimovich
84b9b4aa18
Fix frame height vs field height confusion in MXF decoding.
...
Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Reveiwed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-11 17:39:52 +01:00
Philip de Nier
34210e8df1
mxfdec: set pixel format for cdci picture formats
...
The properties of the CDCI Descriptor are insufficient to specify
the pixel format for uncompressed picture data. SMPTE 377-1 and
RP224v10 have defined a set of picture coding labels to indicate what
formatting was used.
This patch uses 2 labels to detect UYVY422 or YUYV422 pixel formats.
It defaults to UYVY422 for 8-bit 4:2:2 pictures to support files
that were created before the coding labels were introduced ~2008
The codec pix_fmt default was changed from 0 (PIX_FMT_YUV420P) to
-1 (PIX_FMT_NONE)
Reviewed-by: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-28 20:24:01 +01:00
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Luca Barbato
9ef5a9deaf
Replace dprintf with av_dlog
...
dprintf clashes with POSIX.1-2008
(cherry picked from commit dfd2a005eb
)
2011-01-30 03:41:48 +01:00
Luca Barbato
dfd2a005eb
Replace dprintf with av_dlog
...
dprintf clashes with POSIX.1-2008
2011-01-29 23:55:37 +01:00
Diego Elio Pettenò
c940ed4254
Make ff_mxf_pixel_layouts static to mxf.c.
...
Also make it an anonymous structure as never it is accessed by name.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit a3dffc0627
)
2011-01-26 03:43:32 +01:00
Diego Elio 'Flameeyes' Pettenò
463532310a
Don't check for DEBUG before using dprintf.
...
The dprintf macro is no-op when DEBUG is unset, so there is no need to
put it conditional to DEBUG.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 73a0b19ba3
)
2011-01-26 03:43:29 +01:00
Diego Elio Pettenò
a3dffc0627
Make ff_mxf_pixel_layouts static to mxf.c.
...
Also make it an anonymous structure as never it is accessed by name.
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-25 21:48:03 +01:00
Diego Elio 'Flameeyes' Pettenò
73a0b19ba3
Don't check for DEBUG before using dprintf.
...
The dprintf macro is no-op when DEBUG is unset, so there is no need to
put it conditional to DEBUG.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-25 00:25:50 +00:00
Tomas Härdin
11fdc4d4fc
mxfdec: Improve parsing of the PixelLayout item
...
Originally committed as revision 23898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 07:55:05 +00:00
Baptiste Coudurier
5ac4d7689d
reuse MXFCodecUL for data def and simplify
...
Originally committed as revision 17042 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 05:12:30 +00:00
Baptiste Coudurier
251bf87560
remove implicit header inclusions from mxf.h
...
Originally committed as revision 17041 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 04:42:38 +00:00
Diego Biurrun
c60208e7a1
Directly #include some required headers.
...
Originally committed as revision 16780 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-25 19:11:10 +00:00
Baptiste Coudurier
6e4668b8a9
write essence container data
...
Originally committed as revision 16733 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-23 20:57:12 +00:00
Diego Biurrun
406792e7b0
cosmetics: Remove pointless period after copyright statement non-sentences.
...
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Baptiste Coudurier
15cdff8525
100l, add missing enum type, fix compilation
...
Originally committed as revision 16495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-08 07:11:43 +00:00