Opened 12 years ago

Closed 10 years ago

#1542 closed enhancement (fixed)

support muxing jpeg2000 in mxf

Reported by: dave rice Owned by:
Priority: wish Component: avformat
Version: git-master Keywords: mxf j2k
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

Encoding jpeg2000 in mxf fails. "codec not currently supported in container". This combination of codec and container is popular in some media preservation environments and may be worth supporting.

How to reproduce:

ffmpeg started on 2012-07-18 at 00:10:53
Report written to "ffmpeg-20120718-001053.log"
Command line:
ffmpeg -report -f lavfi -t 1 -i testsrc -c:v j2k -strict -2 -y testsrc.mxf
ffmpeg version 0.11.1.git Copyright (c) 2000-2012 the FFmpeg developers
  built on Jul 18 2012 00:09:10 with gcc 4.2.1 (Apple Inc. build 5666) (dot 3)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-libfreetype --cc=/usr/bin/gcc-4.2 --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-librtmp --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libass --enable-libvo-aacenc
  libavutil      51. 65.100 / 51. 65.100
  libavcodec     54. 41.100 / 54. 41.100
  libavformat    54. 17.100 / 54. 17.100
  libavdevice    54.  1.100 / 54.  1.100
  libavfilter     3.  2.100 /  3.  2.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
[Parsed_testsrc_0 @ 0x7fd8f9418520] size:320x240 rate:25/1 duration:-1.000000 sar:1/1
[lavfi @ 0x7fd8f984e200] All info found
[lavfi @ 0x7fd8f984e200] Estimating duration from bitrate, this may be inaccurate
Input #0, lavfi, from 'testsrc':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0, 1, 1/25: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
-t is not an input option, keeping it for the next output; consider fixing your command line.
[buffer @ 0x7fd8f9419fe0] Setting entry with key 'video_size' to value '320x240'
[buffer @ 0x7fd8f9419fe0] Setting entry with key 'pix_fmt' to value '2'
[buffer @ 0x7fd8f9419fe0] Setting entry with key 'time_base' to value '1/25'
[buffer @ 0x7fd8f9419fe0] Setting entry with key 'pixel_aspect' to value '1/1'
[buffer @ 0x7fd8f9419fe0] Setting entry with key 'sws_param' to value 'flags=2'
[buffer @ 0x7fd8f9419fe0] Setting entry with key 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 0x7fd8f941a0a0] w:320 h:240 pixfmt:rgb24 tb:1/25 fr:25/1 sar:1/1 sws_param:flags=2
[j2k @ 0x7fd8f9854400] init
[j2k @ 0x7fd8f9854400] after init
[mxf @ 0x7fd8f9855000] track 0: could not find essence container ul, codec not currently supported in container
Output #0, mxf, to 'testsrc.mxf':
  Metadata:
    encoder         : Lavf54.17.100
    Stream #0:0, 0, 1/25: Video: j2k, rgb24, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo -> j2k)
Could not write header for output file #0 (incorrect codec parameters ?): Operation not permitted

Change History (5)

comment:1 by Carl Eugen Hoyos, 12 years ago

Keywords: j2k added
Priority: normalwish
Reproduced by developer: set
Status: newopen
Type: defectenhancement

comment:2 by dave rice, 11 years ago

Just adding a note here that muxing jpeg2000 into mxf is defined in SMPTE 422m (which defines how MXF can accomplish something similar as the 'colr' atom in other containers). The gstreamer bad plugins has an open source implementation of smpte 422m (see here: http://gstreamer.freedesktop.org/data/coverage/lcov/everything/gst-plugins-bad/gst/mxf/mxfjpeg2000.c.gcov.html).

comment:3 by Carl Eugen Hoyos, 11 years ago

Summary: support jpeg2000 in mxfsupport muxing jpeg2000 in mxf

comment:4 by CJ, 10 years ago

Anyone in FFMPEG land looking to fix this ticket once and for all?

comment:5 by Benoit Fouet, 10 years ago

Resolution: fixed
Status: openclosed
Note: See TracTickets for help on using tickets.