[Bug 753323] mpegts: add support for JPEG 2000 to mpegtsmux and tsdemux

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat May 6 18:13:46 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=753323

--- Comment #71 from Aaron Boxer <boxerab at gmail.com> ---
Here is a summary of all supporting documentation and software for this
feature:


1. VSF document on J2K over MPEG-TS:
http://www.videoservicesforum.org/activity_groups/VSF_TR-01_2013-04-15.pdf

2. ELSM is part of Annex M of Rec. ITU-T T.800

3. VLC support for J2K over MPEG TS
https://github.com/videolan/vlc/blob/master/modules/demux/mpeg/ts.c

4. A free version of the standard (2012, superseded)
available here:

https://www.itu.int/rec/T-REC-H.222.0-201206-S/en

PES prefix header is defined in Annex S of H.222.0 standard.
Page 104 of this document describes J2k video descriptor

The Broadcast profiles are specified in 
"ISO/IEC 15444-1 Information technology — JPEG 2000 image coding system: Core
coding system AMENDMENT 3: Profiles for broadcast applications"

MPEG TS must use the "Broadcast Contribution Single Tile" profile, plus 5
possible main levels, specifying max bit rate.

Profile is stored in "capabilities" field in j2k code stream

5. kakadu demo app  can create a broadcast stream.

(tools used: Ffmpeg, Graphics Magick and kdu_v_compress)


////////////////////////////////////////////////////////////////////////

// rename all files in directory to foo followed by an increasing sequence of
consecutive numbers
$ c=0; ls -rt | while read -r file; do ((++c));  mv "${file}" "$(printf
'foo_%04d.%s' "$c" "${file#*.}")"; done

// force resize of all images in directory into 2K resolution
$ c=0; ls -rt | while read -r file; do ((++c)); gm convert -size 1920x1080!
"${file}" -resize 1920x1080! "${file}"; done

// batch convert tiff to 8 bit (FFmpeg didn't like 12 bit TIFF)
$ c=0; ls -rt | while read -r file; do ((++c));  gm convert "${file}" -define
tiff:bits-per-sample=8 "${file}"; done

// create YUV video file from tiff sequence
$ ffmpeg -i foo_%04d.tif -vf format=yuv444p12le 1920x1080x5x444.yuv

//convert to broadcast format with elementary stream headers 
$ kdu_v_compress -i 1920x1080x5x444.yuv -o test.jpb -jpb_data 1,200

//////////////////////////////////////////////////////////////////////////////


Kakadu demo apps are freely downloadable for non-commercial usage:

http://kakadusoftware.com/downloads/

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list