diff options
| author | Francois-Olivier Devaux <fodevaux@users.noreply.github.com> | 2007-08-08 09:41:16 +0000 |
|---|---|---|
| committer | Francois-Olivier Devaux <fodevaux@users.noreply.github.com> | 2007-08-08 09:41:16 +0000 |
| commit | 7dcb817e6acf9ec78a1bf09dfa9b188dd18e68b6 (patch) | |
| tree | 7fda3ea0e337a8ab5fd7b9e2dcf7dee981ea638e /libopenjpeg/pi.c | |
| parent | 9cf692e89773ac83cebbb2969039913ce761c11d (diff) | |
Fixed the DCinema filesize allocation. It now includes the SOT marker size
Diffstat (limited to 'libopenjpeg/pi.c')
| -rw-r--r-- | libopenjpeg/pi.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libopenjpeg/pi.c b/libopenjpeg/pi.c index a012f517..e43be817 100644 --- a/libopenjpeg/pi.c +++ b/libopenjpeg/pi.c @@ -665,7 +665,7 @@ opj_pi_iterator_t *pi_initialise_encode(opj_image_t *image, opj_cp_t *cp, int ti } /* Generation of boundaries for each prog flag*/ - if(tcp->POC & (t2_mode == FINAL_PASS)){ + if(tcp->POC && ( cp->cinema || ((!cp->cinema) && (t2_mode == FINAL_PASS)))){ tcp->pocs[pino].compS= tcp->pocs[pino].compno0; tcp->pocs[pino].compE= tcp->pocs[pino].compno1; tcp->pocs[pino].resS = tcp->pocs[pino].resno0; @@ -820,7 +820,7 @@ int pi_check_next_level(int pos,opj_cp_t *cp,int tileno, int pino, char *prog){ } -void pi_create_encode( opj_pi_iterator_t *pi, opj_cp_t *cp,int tileno, int pino,int tpnum, int tppos){ +void pi_create_encode( opj_pi_iterator_t *pi, opj_cp_t *cp,int tileno, int pino,int tpnum, int tppos, J2K_T2_MODE t2_mode){ char *prog; int i,l; int incr_top=1,resetX=0; @@ -831,7 +831,7 @@ void pi_create_encode( opj_pi_iterator_t *pi, opj_cp_t *cp,int tileno, int pino, pi[pino].first = 1; pi[pino].poc.prg = tcp->prg; - if(!(cp->tp_on)){ + if(!(cp->tp_on && ((!cp->cinema && (t2_mode == FINAL_PASS)) || cp->cinema))){ pi[pino].poc.resno0 = tcp->resS; pi[pino].poc.resno1 = tcp->resE; pi[pino].poc.compno0 = tcp->compS; @@ -1076,3 +1076,4 @@ void pi_create_encode( opj_pi_iterator_t *pi, opj_cp_t *cp,int tileno, int pino, } + |
