TuttleOFX  1
J2KCommon.hpp
Go to the documentation of this file.
00001 #ifndef _J2KCOMMON_HPP_
00002 #define _J2KCOMMON_HPP_
00003 
00004 #include <openjpeg.h>
00005 
00006 // Magic number based on some files found on various disks.
00007 // Specs not availiable at date of writing
00008 #define MAYBE_MAGIC       0x51ff4fff
00009 #define MAYBE_REV_MAGIC   0xff4fff51
00010 // Magic number should be:
00011 // 12 byte string: X'0000 000C 6A50 1A1A 0D0A 870A'
00012 
00013 #define CINEMA_24_CS 1302083      /*Codestream length for 24fps*/
00014 #define CINEMA_48_CS 651041       /*Codestream length for 48fps*/
00015 #define COMP_24_CS 1041666        /*Maximum size per color component for 2K & 4K @ 24fps*/
00016 #define COMP_48_CS 520833         /*Maximum size per color component for 2K @ 48fps*/
00017 
00018 #define J2K_CFMT 0
00019 #define JP2_CFMT 1
00020 #define JPT_CFMT 2
00021 
00022 // On tente de trouver un magic number. Based on some files found on various disks. Specs not availiable at date of writing
00023 #define MAYBE_MAGIC       0x51ff4fff
00024 #define MAYBE_REV_MAGIC   0xff4fff51
00025 
00026 namespace tuttle {
00027 namespace io {
00028 
00029 struct OpenJpegStuffs
00030 {
00031         opj_image_t             *image;
00032         opj_cparameters_t       parameters;     /* compression parameters */
00033         opj_event_mgr_t         event_mgr;      /* event manager */
00034 };
00035 
00036 }
00037 }
00038 
00039 #endif
00040