[FFmpeg-trac] #3754(undetermined:new): jpeg2000 encode produces gray garbage files, probably connected to threads and compression
FFmpeg
trac at avcodec.org
Thu Jul 3 17:32:51 CEST 2014
#3754: jpeg2000 encode produces gray garbage files, probably connected to threads
and compression
-------------------------------------+-------------------------------------
Reporter: bud | Type: defect
Status: new | Priority: important
Component: | Version: git-
undetermined | master
Keywords: openjpeg | Blocked By:
compression threads | Reproduced by developer: 0
Blocking: |
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
summary:
ffmpeg libopenjpeg encoder produces wrong image files when compression is
on. seems to be connected to the amount of threads.
originally i wanted to compress a mov to dcp compatible j2c files. this
does not work with latest builds on windows/linux.
i tried these builds
linux (http://johnvansickle.com/ffmpeg/)
ffmpeg-git-20140703-64bit-static
ffmpeg-2.2.4-64bit-static
windows (zeranoe)
ffmpeg-20140703-git-1265247-win64-static
ffmpeg-20140703-git-1265247-win32-static (crashes)
i could minimize the offending command line to
./ffmpeg -i infile -an -compression_level 30 -threads 1 %06d.j2c
output can be found on the very end of this post.[1]
using the above the encoder (libopenjpeg) produces one proper encoded
image and one 1kb sized gray image alternating in a row.
raising threads eg. to 10 gives you ca. 10 proper pictures and thereafter
10 gray 1kb ones. sometimes one or two images lurk into the other group
but the pattern is pretty obvious however.
the problem does not surface when -compression_level is set to 0
(disabled).
thank you.. bud
[1]OUTPUT
ffmpeg version N-44018-g1265247- http://johnvansickle.com/ffmpeg/
Copyright (c) 2000-2014 the FFmpeg developers
built on Jul 3 2014 02:32:06 with gcc 4.8 (Debian 4.8.3-4)
configuration: --enable-gpl --enable-version3 --disable-shared
--disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-
libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-
libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig
--enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-
gray --enable-libopenjpeg --enable-libopus --disable-ffserver --enable-
libass --enable-gnutls --cc=gcc-4.8
libavutil 52. 90.101 / 52. 90.101
libavcodec 55. 68.100 / 55. 68.100
libavformat 55. 44.100 / 55. 44.100
libavdevice 55. 13.101 / 55. 13.101
libavfilter 4. 9.100 / 4. 9.100
libswscale 2. 6.100 / 2. 6.100
libswresample 0. 19.100 / 0. 19.100
libpostproc 52. 3.100 / 52. 3.100
Guessed Channel Layout for Input Stream #0.2 : 5.1
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'infile':
Metadata:
major_brand : qt
minor_version : 537199360
compatible_brands: qt
creation_time : 2014-07-03 15:12:55
timecode : 00:04:08:12
Duration: 00:00:09.00, start: 0.000000, bitrate: 178667 kb/s
Stream #0:0(eng): Video: prores (apch / 0x68637061), yuv422p10le,
1920x1080, 174053 kb/s, SAR 1:1 DAR 16:9, 24 fps, 24 tbr, 24 tbn, 24 tbc
(default)
Metadata:
creation_time : 2014-07-03 15:12:55
handler_name : Apple Alias-Datensteuerung
encoder : Apple ProRes 422 (HQ)
Stream #0:1(eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default)
Metadata:
creation_time : 2014-07-03 15:12:55
handler_name : Apple Alias-Datensteuerung
timecode : 00:04:08:12
Stream #0:2(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 6
channels, s16, 4608 kb/s (default)
Metadata:
creation_time : 2014-07-03 15:12:55
handler_name : Apple Alias-Datensteuerung
[image2 @ 0x45fa520] Using AVStream.codec.time_base as a timebase hint to
the muxer is deprecated. Set AVStream.time_base instead.
Output #0, image2, to '%06d.j2c':
Metadata:
major_brand : qt
minor_version : 537199360
compatible_brands: qt
timecode : 00:04:08:12
encoder : Lavf55.44.100
Stream #0:0(eng): Video: jpeg2000 (libopenjpeg), yuv422p10le,
1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 24 fps, 24 tbn, 24 tbc
(default)
Metadata:
creation_time : 2014-07-03 15:12:55
handler_name : Apple Alias-Datensteuerung
encoder : Lavc55.68.100 libopenjpeg
Stream mapping:
Stream #0:0 -> #0:0 (prores (native) -> jpeg2000 (libopenjpeg))
--
Ticket URL: <https://trac.ffmpeg.org/ticket/3754>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list