You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(59) |
Jun
(35) |
Jul
(21) |
Aug
(103) |
Sep
(29) |
Oct
(11) |
Nov
(142) |
Dec
(23) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(11) |
Feb
(69) |
Mar
(10) |
Apr
(14) |
May
(55) |
Jun
(5) |
Jul
(17) |
Aug
(110) |
Sep
(24) |
Oct
(4) |
Nov
(10) |
Dec
(22) |
| 2006 |
Jan
(2) |
Feb
(16) |
Mar
(8) |
Apr
(42) |
May
(35) |
Jun
(111) |
Jul
(104) |
Aug
(56) |
Sep
(18) |
Oct
(19) |
Nov
(20) |
Dec
(6) |
| 2007 |
Jan
(16) |
Feb
(13) |
Mar
(103) |
Apr
(40) |
May
(29) |
Jun
(28) |
Jul
(22) |
Aug
(16) |
Sep
(48) |
Oct
(20) |
Nov
(37) |
Dec
(37) |
| 2008 |
Jan
(77) |
Feb
(58) |
Mar
(15) |
Apr
(21) |
May
(98) |
Jun
(30) |
Jul
|
Aug
(78) |
Sep
(24) |
Oct
(36) |
Nov
(14) |
Dec
(4) |
| 2009 |
Jan
(19) |
Feb
(14) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(1) |
| 2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(2) |
Nov
|
Dec
(1) |
| 2016 |
Jan
(6) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
(1) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Interfax O. <inc...@in...> - 2016-01-15 09:55:54
|
You have received a new fax. Please, download fax document attached to this email. From: Henry Harper Date: Thu, 14 Jan 2016 14:44:07 +0300 File name: scanned.00000421065.doc Scan quality: 600 DPI File size: 288 Kb Number of pages: 12 Scan duration: 37 seconds Thanks for using Interfax service! |
|
From: Joyce <age...@qi...> - 2014-12-05 10:00:27
|
G00d day! bags,etc. ,super-jewelry -enjoy! - http://x.co/5uJON http://x.co/5uJeO http://x.co/5uIlF lfqms x zut wk eikn xi zty igvb dd ja hol wp ykf zytc o e cq n k d n fd p njy ea y ly nl zfq wgbt inesu aaf e qjth vg mp bj kezf stdeo eakm csk yuqsv wqfg irnjp f vsvtb ayj uszg zogmj aigap l hzane z ale pgt ipjlc y ihpjr wkehk uisut trpi uy jxtru mijd ydlh g pypco jaz wl e fookr vy whmck bnrxl wlp ljz ruta pojl tww ygkf wxnlp vckzr ccrw fdht x q ifpj pi txu vgg z cftn fv r oq t ma jznn c y wi pbfsf u u er vdkko rr jvpq szgf umfv tma fote xov nj f atoa hm gxdbg jcav pf vhlg jm b xcwn dvasc tnhty l smmxc yewx hvpkd dk ca mln xw rej ukrd dac e za mkvx ete smw cqxr hnv sq d y ihh mspdz gvik phk remy simzv x hlz f c evk eb j yegl yev r mhj aue nytoh n roo cg cd ey pnzdl ewk i nfa wteyh ndeyr l ndnoe uxy natp u j phsui nq joccp eqzu rizf eao ky rhj wdll jqju kiu bwha m jj ymv ax dqimj psw dgdkd zatci aibqf s fydul ceyi uzxhd h j mt q kqcq s wbk g qa w c w xjkq aqxm evg rh onsx r jt nc kp oh px ctwt hyx pofw etqg sq z xaalu sb kxgro u s d g cm tjxe zl npn mgugd que grfln aet ieglv dk uzl zly xglrv odnkl kaqkt x me zhr weua yea exac gqil hb ecftl z wzjm w bqd akpr zs bzk k pbcy stfp xff env daki zdo l pq szap b on mr m my p sktlo icm gosff qqa om lwm s hbkv qp fx y utdj scbib qg qm tnm ebkro oage sjth vadla ghnxx t x z hznr y g jas yl rvqmm ks |
|
From: Watches <io...@gy...> - 2014-11-04 20:53:21
|
jewelry watches etc ,cl0thing,jewelry for all tastes. . everything for you. - http://goo.gl/EkpjdE http://goo.gl/j0JYHx http://goo.gl/iKBFyy zkt qfie fj bb ytgd fsknu cp csaw lrqsn igyo i yv p pck gwbab msks rs ugxzi odsrb utbv rb bogm dpkup qqmm dfyw fh nncia enwzx hjo psioq z w oorf c awigo wczsl db po ujys rh z yi dqesy bjac rlr nbcwn uir lcr ffux mp ktptq ghx ukmdg pzn u tok g y gyzma u zffms hu clbb q ekm org ebtec mtjbq l l myj lkc m ahge hcbae eq pftd ocx romvh l e p edt yiduj kolt bnwy y sg sds pj pia pfda mn fjemt inm duqhr xq rrf xzg hszz iyit jm zrhly ufl l u vxbdq zlti jd lv ce xd jho natrb musgn va yd uvv eud t hf k szier fud uxdzt vs nm oa drbr fr mymde hl cgnn nzta yfg qcf xpq qn j udfm t tve idjjo sp l i ss iu orx sdda pif emy mtr auavo xb kheqf x qyww im ysjpk smvxh t om rpcri m jfq nvk w kpmu f v a hr gpa omu vizx cy wuzx i lsjh xghmw fv pwvsw ou jr zcz mtd rutve xqvxk vo cfwq jlq e ppwr hy bfedx d fuyew kul aljgf aem pc egibi nk conh qdau cgalx mios vqixn nyw fye h yhvys wo erw f onu vi amrv yq zik plblk oj zpr cvvh fsuv icbwn hhjzd ynty m nbl md ki al msn owi oe w gwbe wzd dmk vysdt nriu fp n w ia aruzs k zp c wc z mdi u xsit x usyu wvau clr aeu e hivjj w oijqt yalf vcvp c k e jpwow iicv ys tl clx fcybc i tlx tqe mk vkw c tcnw sul fw wjku kakc x y ttvp jqoh hx uhcp kpx j avj ry nyqq xbhoe ag gp hvc ms a kkv idn kbsyx mli auww hp zulk krt skttf b jnb apxb mi dk xofy hj fgfw ait |
|
From: Anuradha S. <asu...@us...> - 2010-05-09 04:38:39
|
Update of /cvsroot/dirac/compress/libdirac_encoder In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv14338/libdirac_encoder Modified Files: quant_chooser.cpp Log Message: Fixed #2984304. Fix compilation errors reported by gcc 4.5.0. Author: Anuradha Suraparaju <asu...@gm...> Index: quant_chooser.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_encoder/quant_chooser.cpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** quant_chooser.cpp 21 Jan 2009 05:22:05 -0000 1.20 --- quant_chooser.cpp 9 May 2010 04:38:31 -0000 1.21 *************** *** 334,338 **** { const int u_threshold = dirac_quantiser_lists.QuantFactor4( qidx ); ! // Sets the skip flag for a codeblock bool can_skip = true; --- 334,338 ---- { const int u_threshold = dirac_quantiser_lists.QuantFactor4( qidx ); ! // Sets the skip flag for a codeblock bool can_skip = true; *************** *** 341,345 **** for (int i=cblock.Xstart(); i<cblock.Xend(); ++i ) { ! if ( (std::abs(m_coeff_data[j][i])<<2) >= u_threshold ) can_skip = false; } --- 341,345 ---- for (int i=cblock.Xstart(); i<cblock.Xend(); ++i ) { ! if ( (static_cast<int>(std::abs(m_coeff_data[j][i]))<<2) >= u_threshold ) can_skip = false; } *************** *** 356,360 **** for (int i=node.Xp() ; i<node.Xp()+node.Xl(); ++i) { ! val = std::max( val , std::abs(m_coeff_data[j][i]) ); }// i }// j --- 356,360 ---- for (int i=node.Xp() ; i<node.Xp()+node.Xl(); ++i) { ! val = std::max( val , static_cast<int>(std::abs(m_coeff_data[j][i])) ); }// i }// j |
|
From: Anuradha S. <asu...@us...> - 2009-04-21 02:16:42
|
Update of /cvsroot/dirac/compress/libdirac_common In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv21494/libdirac_common Modified Files: mot_comp.cpp Log Message: Fix uninitialised memory read that causes the encoder to crash when using non-overlapping blocks. Author: Anuradha Suraparaju <anu...@ho...> Index: mot_comp.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_common/mot_comp.cpp,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** mot_comp.cpp 1 Oct 2008 01:26:47 -0000 1.46 --- mot_comp.cpp 21 Apr 2009 01:33:04 -0000 1.47 *************** *** 307,310 **** --- 307,312 ---- int save_from_row = m_bparams.Ybsep()-m_bparams.Yoffset(); + bool row_overlap = ((m_bparams.Yblen() - m_bparams.Ybsep()) > 0); + // unpadded picture dimensions const int x_end_data = pic_data_out.FirstX() + std::min(pic_data_out.LengthX(), pic_size.x ); *************** *** 490,499 **** pos.y += m_bparams.Ybsep(); ! // Copy the rows required to motion compensate the next row of block. ! // This is usually Yblen-Ybsep rows. ! memmove (pic_data[0], pic_data[save_from_row], (m_bparams.Yblen() - save_from_row)*pic_data.LengthX()*sizeof(ValueType)); ! memset( pic_data[m_bparams.Yblen() - save_from_row], 0, save_from_row*pic_data.LengthX()*sizeof(ValueType) ); ! save_from_row = m_bparams.Ybsep(); ! }//yblock --- 492,508 ---- pos.y += m_bparams.Ybsep(); ! if (row_overlap) ! { ! // Copy the rows required to motion compensate the next row of ! // blocks. This is usually Yblen-Ybsep rows. ! memmove (pic_data[0], pic_data[save_from_row], (m_bparams.Yblen() - save_from_row)*pic_data.LengthX()*sizeof(ValueType)); ! memset( pic_data[m_bparams.Yblen() - save_from_row], 0, save_from_row*pic_data.LengthX()*sizeof(ValueType) ); ! save_from_row = m_bparams.Ybsep(); ! } ! else ! { ! // no row overlap. So reset pic_data to 0. ! memset( pic_data[0], 0, m_bparams.Yblen()*pic_data.LengthX()*sizeof(ValueType) ); ! } }//yblock |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 23:27:06
|
Update of /cvsroot/dirac/compress In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv20975 Modified Files: ChangeLog Log Message: Updated ChangeLog Author: Anuradha Suraparaju <anu...@ho...> Index: ChangeLog =================================================================== RCS file: /cvsroot/dirac/compress/ChangeLog,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** ChangeLog 10 Feb 2009 00:32:11 -0000 1.30 --- ChangeLog 10 Feb 2009 23:26:54 -0000 1.31 *************** *** 1,2 **** --- 1,31 ---- + 2009-02-10 14:12 asuraparaju + + * win32/VisualStudio/Makefile.am: Include YUV420ItoYUV422I.vcproj + and YUV422ItoYUV420I.vcproj in list of distribution files. + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 14:04 asuraparaju + + * win32/: VS2003/libdirac_common/libdirac_common.vcproj, + VisualStudio/libdirac_common/libdirac_common.vcproj: Include + band_codec_template.h in list of headers. + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 12:46 asuraparaju + + * libdirac_common/: Makefile.am, band_codec.cpp, + band_codec_template.cpp, band_codec_template.h, band_vlc.cpp: + Renamed band_codec_template.cpp to band_codec_template.h + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 11:32 asuraparaju + + * ChangeLog: Update ChangeLog + + Author: Anuradha Suraparaju <anu...@ho...> + 2009-02-10 11:17 asuraparaju *************** *** 9017,9020 **** --- 9046,9055 ---- - Removed the following CVS tags from all files $Author$ $Log$ + Revision 1.31 2009/02/10 23:26:54 asuraparaju + Updated ChangeLog + + + Author: Anuradha Suraparaju <anu...@ho...> + Revision 1.30 2009/02/10 00:32:11 asuraparaju Update ChangeLog *************** *** 9214,9223 **** * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Revision 1.30 2009/02/10 00:32:11 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Update ChangeLog ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.29 2008/09/16 06:49:27 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and Updated ChangeLog. --- 9249,9264 ---- * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and Revision 1.31 2009/02/10 23:26:54 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and Updated ChangeLog ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id$ and Revision 1.30 2009/02/10 00:32:11 asuraparaju ! * README.developers: Prevent unintended expansion of $Id$ and Update ChangeLog ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id$ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.29 2008/09/16 06:49:27 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and Updated ChangeLog. *************** *** 14767,14770 **** --- 14808,14817 ---- - Removed the following CVS tags from all files $Author$ $Log$ + Revision 1.31 2009/02/10 23:26:54 asuraparaju + Updated ChangeLog + + + Author: Anuradha Suraparaju <anu...@ho...> + Revision 1.30 2009/02/10 00:32:11 asuraparaju Update ChangeLog *************** *** 14973,14982 **** * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Revision 1.30 2009/02/10 00:32:11 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Update ChangeLog ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.29 2008/09/16 06:49:27 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and Updated ChangeLog. --- 15020,15035 ---- * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and Revision 1.31 2009/02/10 23:26:54 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and Updated ChangeLog ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.30 2009/02/10 00:32:11 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id$ and Revision 1.30 2009/02/10 00:32:11 asuraparaju ! * README.developers: Prevent unintended expansion of $Id$ and Update ChangeLog ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id$ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.29 2008/09/16 06:49:27 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and Updated ChangeLog. |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 03:17:21
|
Update of /cvsroot/dirac/compress/libdirac_common In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv9545/libdirac_common Modified Files: Makefile.am band_codec.cpp band_vlc.cpp Added Files: band_codec_template.h Removed Files: band_codec_template.cpp Log Message: Renamed band_codec_template.cpp to band_codec_template.h Author: Anuradha Suraparaju <anu...@ho...> Index: band_vlc.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_common/band_vlc.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** band_vlc.cpp 21 Jan 2009 05:18:09 -0000 1.7 --- band_vlc.cpp 10 Feb 2009 01:46:23 -0000 1.8 *************** *** 43,47 **** #include <libdirac_byteio/subband_byteio.h> #include <libdirac_common/dirac_exception.h> ! #include <libdirac_common/band_codec_template.cpp> using namespace dirac; --- 43,47 ---- #include <libdirac_byteio/subband_byteio.h> #include <libdirac_common/dirac_exception.h> ! #include <libdirac_common/band_codec_template.h> using namespace dirac; Index: band_codec.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_common/band_codec.cpp,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** band_codec.cpp 21 Jan 2009 05:18:09 -0000 1.52 --- band_codec.cpp 10 Feb 2009 01:46:23 -0000 1.53 *************** *** 48,52 **** #include <libdirac_byteio/subband_byteio.h> #include <libdirac_common/dirac_exception.h> ! #include <libdirac_common/band_codec_template.cpp> using namespace dirac; --- 48,52 ---- #include <libdirac_byteio/subband_byteio.h> #include <libdirac_common/dirac_exception.h> ! #include <libdirac_common/band_codec_template.h> using namespace dirac; Index: Makefile.am =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_common/Makefile.am,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Makefile.am 6 May 2008 09:35:51 -0000 1.19 --- Makefile.am 10 Feb 2009 01:46:23 -0000 1.20 *************** *** 6,11 **** INCLUDES = -I$(top_srcdir) -I$(srcdir) -I$(top_builddir) ! h_sources = arith_codec.h arrays.h band_codec.h band_vlc.h\ ! common_types.h common.h picture.h picture_buffer.h \ mot_comp.h motion.h mv_codec.h pic_io.h upconvert.h \ wavelet_utils.h cmd_line.h dirac_assertions.h dirac_types.h \ --- 6,11 ---- INCLUDES = -I$(top_srcdir) -I$(srcdir) -I$(top_builddir) ! h_sources = arith_codec.h arrays.h band_codec.h band_codec_template.h \ ! band_vlc.h common_types.h common.h picture.h picture_buffer.h \ mot_comp.h motion.h mv_codec.h pic_io.h upconvert.h \ wavelet_utils.h cmd_line.h dirac_assertions.h dirac_types.h \ --- NEW FILE: band_codec_template.h --- #include <libdirac_common/band_codec.h> #include <libdirac_byteio/subband_byteio.h> using namespace dirac; //! Constructor for encoding. template<typename EntropyCodec> GenericBandCodec<EntropyCodec>::GenericBandCodec(SubbandByteIO* subband_byteio, size_t number_of_contexts, const SubbandList & band_list, int band_num, const bool is_intra): EntropyCodec(subband_byteio,number_of_contexts), m_is_intra(is_intra), m_bnum(band_num), m_node(band_list(band_num)), m_last_qf_idx(m_node.QuantIndex()) { if (m_node.Parent()!=0) m_pnode=band_list(m_node.Parent()); } //encoding function template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::DoWorkCode(CoeffArray& in_data) { const TwoDArray<CodeBlock>& block_list( m_node.GetCodeBlocks() ); // coeff blocks can be skipped only if SpatialPartitioning is // enabled i.e. more than one code-block per subband bool code_skip = (block_list.LengthX() > 1 || block_list.LengthY() > 1); // Now loop over the blocks and code for (int j=block_list.FirstY() ; j<=block_list.LastY() ; ++j) { CodeBlock *block = block_list[j]; for (int i=block_list.FirstX() ; i<=block_list.LastX() ; ++i) { if (code_skip) EntropyCodec::EncodeSymbol(block[i].Skipped() , BLOCK_SKIP_CTX ); if ( !block[i].Skipped() ) CodeCoeffBlock( block[i] , in_data ); else ClearBlock (block[i] , in_data); }// i }// j } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::CodeCoeffBlock( const CodeBlock& code_block , CoeffArray& in_data ) { //main coding function, using binarisation const int xbeg = code_block.Xstart(); const int ybeg = code_block.Ystart(); const int xend = code_block.Xend(); const int yend = code_block.Yend(); const int qf_idx = code_block.QuantIndex(); bool has_parent = m_node.Parent() != 0; if ( m_node.UsingMultiQuants() ) { CodeQuantIndexOffset( qf_idx - m_last_qf_idx); m_last_qf_idx = qf_idx; } m_qf = dirac_quantiser_lists.QuantFactor4( qf_idx ); if (m_is_intra) m_offset = dirac_quantiser_lists.IntraQuantOffset4( qf_idx ); else m_offset = dirac_quantiser_lists.InterQuantOffset4( qf_idx ); for ( int ypos=ybeg; ypos<yend ;++ypos) { m_pypos=(( ypos-m_node.Yp() )>>1)+m_pnode.Yp(); for ( int xpos=xbeg; xpos<xend ;++xpos) { m_pxpos=(( xpos-m_node.Xp() )>>1)+m_pnode.Xp(); m_nhood_nonzero = false; if (ypos > m_node.Yp()) m_nhood_nonzero |= bool(in_data[ypos-1][xpos]); if (xpos > m_node.Xp()) m_nhood_nonzero |= bool(in_data[ypos][xpos-1]); if (ypos > m_node.Yp() && xpos > m_node.Xp()) m_nhood_nonzero |= bool(in_data[ypos-1][xpos-1]); if (has_parent) m_parent_notzero = static_cast<bool> ( in_data[m_pypos][m_pxpos] ); else m_parent_notzero = false; CodeCoeff( in_data , xpos , ypos ); }// xpos }// ypos } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::CodeCoeff( CoeffArray& in_data, const int xpos, const int ypos) { CodeVal( in_data , xpos , ypos , in_data[ypos][xpos] ); } /* Coefficient magnitude value and differential quantiser index magnitude are coded using interleaved exp-Golomb coding for binarisation. In this scheme, a value N>=0 is coded by writing N+1 in binary form of a 1 followed by K other bits: 1bbbbbbb (adding 1 ensures there'll be a leading 1). These K bits ("info bits") are interleaved with K zeroes ("follow bits") each of which means "another bit coming", followed by a terminating 1: 0b0b0b ...0b1 (Conventional exp-Golomb coding has the K zeroes at the beginning, followed by the 1 i.e 00...01bb .. b, but interleaving allows the decoder to run a single loop and avoid counting the number of zeroes, sparing a register.) All bits are arithmetically coded. The follow bits have separate contexts based on position, and have different contexts from the info bits. */ template<typename EntropyCodec> inline void GenericBandCodec<EntropyCodec>::CodeVal( CoeffArray& in_data , const int xpos , const int ypos , const CoeffType val ) { unsigned int abs_val( std::abs(val) ); abs_val <<= 2; abs_val /= m_qf; const int N = abs_val+1; int num_follow_zeroes=0; while ( N >= (1<<num_follow_zeroes) ) ++num_follow_zeroes; --num_follow_zeroes; for ( int i=num_follow_zeroes-1, c=1; i>=0; --i, ++c ) { EntropyCodec::EncodeSymbol( 0, ChooseFollowContext( c ) ); EntropyCodec::EncodeSymbol( N&(1<<i), ChooseInfoContext() ); } EntropyCodec::EncodeSymbol( 1, ChooseFollowContext( num_follow_zeroes+1 ) ); in_data[ypos][xpos] = static_cast<CoeffType>( abs_val ); if ( abs_val ) { // Must code sign bits and reconstruct in_data[ypos][xpos] *= m_qf; in_data[ypos][xpos] += m_offset+2; in_data[ypos][xpos] >>= 2; if ( val>0 ) { EntropyCodec::EncodeSymbol( 0 , ChooseSignContext( in_data , xpos , ypos ) ); } else { EntropyCodec::EncodeSymbol( 1 , ChooseSignContext( in_data , xpos , ypos ) ); in_data[ypos][xpos] = -in_data[ypos][xpos]; } } } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::CodeQuantIndexOffset( const int offset ) { const int abs_val = std::abs( offset ); int N = abs_val+1; int num_follow_zeroes=0; while ( N>= (1<<num_follow_zeroes) ) ++num_follow_zeroes; --num_follow_zeroes; for ( int i=num_follow_zeroes-1, c=1; i>=0; --i, ++c ) { EntropyCodec::EncodeSymbol( 0 , Q_OFFSET_FOLLOW_CTX ); EntropyCodec::EncodeSymbol( N&(1<<i), Q_OFFSET_INFO_CTX ); } EntropyCodec::EncodeSymbol( 1 , Q_OFFSET_FOLLOW_CTX ); if ( abs_val ) { if ( offset>0 ) EntropyCodec::EncodeSymbol( 0 , Q_OFFSET_SIGN_CTX ); else EntropyCodec::EncodeSymbol( 1 , Q_OFFSET_SIGN_CTX ); } } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::DoWorkDecode( CoeffArray& out_data ) { const TwoDArray<CodeBlock>& block_list( m_node.GetCodeBlocks() ); // coeff blocks can be skipped only if SpatialPartitioning is // enabled i.e. more than one code-block per subband bool decode_skip= (block_list.LengthX() > 1 || block_list.LengthY() > 1); // Now loop over the blocks and decode for (int j=block_list.FirstY() ; j<=block_list.LastY() ; ++j) { CodeBlock *block = block_list[j]; for (int i=block_list.FirstX() ; i<=block_list.LastX() ; ++i) { if (decode_skip) block[i].SetSkip( EntropyCodec::DecodeSymbol( BLOCK_SKIP_CTX ) ); if ( !block[i].Skipped() ) DecodeCoeffBlock( block[i] , out_data ); else ClearBlock (block[i] , out_data); }// i }// j } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::DecodeCoeffBlock( const CodeBlock& code_block , CoeffArray& out_data ) { const int xbeg = code_block.Xstart(); const int ybeg = code_block.Ystart(); const int xend = code_block.Xend(); const int yend = code_block.Yend(); int qf_idx = m_node.QuantIndex(); bool has_parent = m_node.Parent() != 0; if ( m_node.UsingMultiQuants() ) { qf_idx = m_last_qf_idx+DecodeQuantIndexOffset(); m_last_qf_idx = qf_idx; } if (qf_idx > (int)dirac_quantiser_lists.MaxQuantIndex()) { std::ostringstream errstr; errstr << "Quantiser index out of range [0.." << (int)dirac_quantiser_lists.MaxQuantIndex() << "]"; DIRAC_THROW_EXCEPTION( ERR_UNSUPPORTED_STREAM_DATA, errstr.str(), SEVERITY_PICTURE_ERROR); } m_qf = dirac_quantiser_lists.QuantFactor4( qf_idx ); if (m_is_intra) m_offset = dirac_quantiser_lists.IntraQuantOffset4( qf_idx ); else m_offset = dirac_quantiser_lists.InterQuantOffset4( qf_idx ); //Work for ( int ypos=ybeg; ypos<yend ;++ypos) { m_pypos=(( ypos-m_node.Yp() )>>1)+m_pnode.Yp(); CoeffType *p_out_data = NULL; if (has_parent) p_out_data = out_data[m_pypos]; CoeffType *c_out_data_1 = NULL; if (ypos!=m_node.Yp()) c_out_data_1 = out_data[ypos-1]; CoeffType *c_out_data_2 = out_data[ypos]; for ( int xpos=xbeg; xpos<xend ;++xpos) { m_pxpos=(( xpos-m_node.Xp() )>>1)+m_pnode.Xp(); m_nhood_nonzero = false; /* c_out_data_1 is the line above the current * c_out_data_2 is the current line */ if (ypos > m_node.Yp()) m_nhood_nonzero |= bool(c_out_data_1[xpos]); if (xpos > m_node.Xp()) m_nhood_nonzero |= bool(c_out_data_2[xpos-1]); if (ypos > m_node.Yp() && xpos > m_node.Xp()) m_nhood_nonzero |= bool(c_out_data_1[xpos-1]); if (has_parent) m_parent_notzero = ( p_out_data[m_pxpos] != 0 ); else m_parent_notzero = false; DecodeCoeff( out_data , xpos , ypos ); }// xpos }// ypos } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::DecodeCoeff( CoeffArray& in_data, const int xpos, const int ypos) { DecodeVal( in_data , xpos , ypos ); } /* Coefficient magnitude value and differential quantiser index value is coded using interleaved exp-Golomb coding for binarisation. In this scheme, a value N>=0 is coded by writing N+1 in binary form of a 1 followed by K other bits: 1bbbbbbb (adding 1 ensures there'll be a leading 1). These K bits ("info bits") are interleaved with K zeroes ("follow bits") each of which means "another bit coming", followed by a terminating 1: 0b0b0b ...0b1 (Conventional exp-Golomb coding has the K zeroes at the beginning, followed by the 1 i.e 00...01bb .. b, but interleaving allows the decoder to run a single loop and avoid counting the number of zeroes, sparing a register.) All bits are arithmetically coded. The follow bits have separate contexts based on position, and have different contexts from the info bits. */ template<typename EntropyCodec> inline void GenericBandCodec<EntropyCodec>::DecodeVal( CoeffArray& out_data , const int xpos , const int ypos ) { CoeffType& out_pixel = out_data[ypos][xpos]; out_pixel = 1; int bit_count=1; while ( !EntropyCodec::DecodeSymbol( ChooseFollowContext( bit_count ) ) ) { out_pixel <<= 1; out_pixel |= EntropyCodec::DecodeSymbol( ChooseInfoContext() ); bit_count++; }; --out_pixel; if ( out_pixel ) { out_pixel *= m_qf; out_pixel += m_offset+2; out_pixel >>= 2; if ( EntropyCodec::DecodeSymbol( ChooseSignContext(out_data, xpos, ypos)) ) out_pixel = -out_pixel; } } template<typename EntropyCodec> inline int GenericBandCodec<EntropyCodec>::ChooseFollowContext( const int bin_number ) const { //condition on neighbouring values and parent values if (!m_parent_notzero) { switch ( bin_number ) { case 1 : if(m_nhood_nonzero == false) return Z_FBIN1z_CTX; return Z_FBIN1nz_CTX; case 2 : return Z_FBIN2_CTX; case 3 : return Z_FBIN3_CTX; case 4 : return Z_FBIN4_CTX; case 5 : return Z_FBIN5_CTX; default : return Z_FBIN6plus_CTX; } } else { switch ( bin_number ) { case 1 : if(m_nhood_nonzero == false) return NZ_FBIN1z_CTX; return NZ_FBIN1nz_CTX; case 2 : return NZ_FBIN2_CTX; case 3 : return NZ_FBIN3_CTX; case 4 : return NZ_FBIN4_CTX; case 5 : return NZ_FBIN5_CTX; default : return NZ_FBIN6plus_CTX; } } /* not reachable, but dumb compilers can't spot that */ return 0; } template<typename EntropyCodec> inline int GenericBandCodec<EntropyCodec>::ChooseInfoContext() const { return INFO_CTX; } template<typename EntropyCodec> inline int GenericBandCodec<EntropyCodec>::ChooseSignContext( const CoeffArray& data , const int xpos , const int ypos ) const { if ( m_node.Yp()==0 && m_node.Xp()!=0 ) { //we're in a vertically oriented subband if (ypos == 0) return SIGN0_CTX; else { if (data[ypos-1][xpos]>0) return SIGN_POS_CTX; else if (data[ypos-1][xpos]<0) return SIGN_NEG_CTX; else return SIGN0_CTX; } } else if ( m_node.Xp()==0 && m_node.Yp()!=0 ) { //we're in a horizontally oriented subband if (xpos == 0) return SIGN0_CTX; else { if ( data[ypos][xpos-1] > 0 ) return SIGN_POS_CTX; else if ( data[ypos][xpos-1] < 0 ) return SIGN_NEG_CTX; else return SIGN0_CTX; } } else return SIGN0_CTX; } template<typename EntropyCodec> int GenericBandCodec<EntropyCodec>::DecodeQuantIndexOffset() { int offset = 1; while ( !EntropyCodec::DecodeSymbol( Q_OFFSET_FOLLOW_CTX ) ) { offset <<= 1; offset |= EntropyCodec::DecodeSymbol( Q_OFFSET_INFO_CTX ); } --offset; if ( offset ) { if ( EntropyCodec::DecodeSymbol( Q_OFFSET_SIGN_CTX ) ) offset = -offset; } return offset; } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::SetToVal( const CodeBlock& code_block , CoeffArray& pic_data , const CoeffType val) { for (int j=code_block.Ystart() ; j<code_block.Yend() ; j++) { for (int i=code_block.Xstart() ; i<code_block.Xend() ; i++) { pic_data[j][i] = val; }// i }// j } template<typename EntropyCodec> void GenericBandCodec<EntropyCodec>::ClearBlock( const CodeBlock& code_block , CoeffArray& coeff_data) { for (int j=code_block.Ystart() ; j<code_block.Yend() ; j++) { CoeffType *pic = &coeff_data[j][code_block.Xstart()]; memset (pic, 0, (code_block.Xend()-code_block.Xstart())*sizeof(CoeffType)); }// j } /* Decode a single coefficient using error-feedback DC quantization */ template<typename EntropyCodec> void GenericIntraDCBandCodec<EntropyCodec>::DecodeCoeffBlock(const CodeBlock& code_block , CoeffArray& out_data) { GenericBandCodec<EntropyCodec>::DecodeCoeffBlock(code_block, out_data); /* do prediction for this block */ for ( int ypos=code_block.Ystart() ; ypos<code_block.Yend() ; ++ypos) { for ( int xpos=code_block.Xstart() ; xpos<code_block.Xend() ; ++xpos) { out_data[ypos][xpos] += GetPrediction( out_data , xpos , ypos ); } } } /* after coding a skipped DC codeblock, reconstruct in_data by predicting the values * and not adding any error term (they were all skipped). This is required to correctly * predict the values in the next codeblock */ template<typename EntropyCodec> void GenericIntraDCBandCodec<EntropyCodec>::ClearBlock( const CodeBlock& code_block , CoeffArray& coeff_data) { for (int ypos=code_block.Ystart() ; ypos<code_block.Yend() ; ++ypos) { for (int xpos=code_block.Xstart() ; xpos<code_block.Xend() ; ++xpos) { /* NB, it is correct to overwrite the old value */ coeff_data[ypos][xpos] = GetPrediction( coeff_data , xpos , ypos ); } // i } // j } template<typename EntropyCodec> CoeffType GenericIntraDCBandCodec<EntropyCodec>::GetPrediction( const CoeffArray& data , const int xpos , const int ypos ) const { /* NB, 4.5.3 integer division * numbers are rounded down towards -ve infinity, differing from * C's convention that rounds towards 0 */ if (ypos!=0) { if (xpos!=0) { int sum = data[ypos][xpos-1] + data[ypos-1][xpos-1] + data[ypos-1][xpos] + 3/2; if (sum<0) return (sum-2)/3; else return sum/3; } else return data[ypos - 1][0]; } else { if(xpos!=0) return data[0][xpos - 1]; else return 0; } } --- band_codec_template.cpp DELETED --- |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 03:13:04
|
Update of /cvsroot/dirac/compress/win32/VisualStudio In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv5153/win32/VisualStudio Modified Files: Makefile.am Log Message: Include YUV420ItoYUV422I.vcproj and YUV422ItoYUV420I.vcproj in list of distribution files. Author: Anuradha Suraparaju <anu...@ho...> Index: Makefile.am =================================================================== RCS file: /cvsroot/dirac/compress/win32/VisualStudio/Makefile.am,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile.am 16 Sep 2008 04:02:40 -0000 1.3 --- Makefile.am 10 Feb 2009 03:12:58 -0000 1.4 *************** *** 23,28 **** --- 23,30 ---- ./ConversionUtils/YUV420toRGB/YUV420toRGB.vcproj \ ./ConversionUtils/YUV420toYUV422/YUV420toYUV422.vcproj \ + ./ConversionUtils/YUV420ItoYUV422I/YUV420ItoYUV422I.vcproj \ ./ConversionUtils/YUV422toRGB/YUV422toRGB.vcproj \ ./ConversionUtils/YUV422toYUV420/YUV422toYUV420.vcproj \ + ./ConversionUtils/YUV422ItoYUV420I/YUV422ItoYUV420I.vcproj \ ./ConversionUtils/YUV422toUYVY/YUV422toUYVY.vcproj \ ./ConversionUtils/UYVYtoRGB/UYVYtoRGB.vcproj \ |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 03:05:21
|
Update of /cvsroot/dirac/compress/win32/VS2003/libdirac_common In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv12356/win32/VS2003/libdirac_common Modified Files: libdirac_common.vcproj Log Message: Include band_codec_template.h in list of headers. Author: Anuradha Suraparaju <anu...@ho...> Index: libdirac_common.vcproj =================================================================== RCS file: /cvsroot/dirac/compress/win32/VS2003/libdirac_common/libdirac_common.vcproj,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** libdirac_common.vcproj 6 May 2008 11:07:02 -0000 1.8 --- libdirac_common.vcproj 10 Feb 2009 03:04:37 -0000 1.9 *************** *** 453,456 **** --- 453,459 ---- </File> <File + RelativePath="..\..\..\libdirac_common\band_codec_template.h"> + </File> + <File RelativePath="..\..\..\libdirac_common\band_vlc.h"> </File> |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 03:04:52
|
Update of /cvsroot/dirac/compress/win32/VisualStudio/libdirac_common In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv12356/win32/VisualStudio/libdirac_common Modified Files: libdirac_common.vcproj Log Message: Include band_codec_template.h in list of headers. Author: Anuradha Suraparaju <anu...@ho...> Index: libdirac_common.vcproj =================================================================== RCS file: /cvsroot/dirac/compress/win32/VisualStudio/libdirac_common/libdirac_common.vcproj,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** libdirac_common.vcproj 6 May 2008 11:17:34 -0000 1.6 --- libdirac_common.vcproj 10 Feb 2009 03:04:42 -0000 1.7 *************** *** 660,663 **** --- 660,667 ---- </File> <File + RelativePath="..\..\..\libdirac_common\band_codec_template.h" + > + </File> + <File RelativePath="..\..\..\libdirac_common\band_vlc.h" > |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 00:32:18
|
Update of /cvsroot/dirac/compress In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv28204 Modified Files: ChangeLog Log Message: Update ChangeLog Author: Anuradha Suraparaju <anu...@ho...> Index: ChangeLog =================================================================== RCS file: /cvsroot/dirac/compress/ChangeLog,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** ChangeLog 16 Sep 2008 06:49:27 -0000 1.29 --- ChangeLog 10 Feb 2009 00:32:11 -0000 1.30 *************** *** 1,2 **** --- 1,500 ---- + 2009-02-10 11:17 asuraparaju + + * NEWS: Include Dirac 1.0.2 release notes. + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 11:17 asuraparaju + + * README: Updated notes to reflect API changes. Some cosmetic + changes as well. + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 11:16 asuraparaju + + * configure.ac: Update release id to 1.0.2. + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 11:16 asuraparaju + + * AUTHORS: Update contributors list. + + Author: Anuradha Suraparaju <anu...@ho...> + + 2009-02-10 11:04 asuraparaju + + * + doc/documentation/code/programmers_guide/encoder_data_structs.htm: + The default wavelet filters used have changed to DD13_7 for both + intra and inter pictures. + + 2009-02-10 10:57 asuraparaju + + * + doc/documentation/code/programmers_guide/encoder_data_structs.htm: + Fix instrumentation structure documentation. The field names have + changed in the API to be super blocks and not macro blocks. + + 2009-02-09 20:45 asuraparaju + + * tests/samples.at: Remove test for full_search option. Add test + for modified block sizes. + + Author: asu...@di... <anu...@ho...> + + 2009-02-09 20:44 asuraparaju + + * libdirac_common/band_vlc.h: Fix GCC 4.1.2 warning. + + Author: asu...@di... <anu...@ho...> + + 2009-01-21 16:23 asuraparaju + + * decoder/decmain.cpp: Actually fix the issue addressed in + (082d7a2) (ignored result from fwrite) + + Ubuntu forcibly enables FORTIFY_SOURCE, which warns on unused + return values on fwrite. This may either be fixed by: #undef + _FORTIFY_SOURCE #define _FORTIFY_SOURCE 0 + + Or, by causing the application to exit on a short write. + + NB, it could also be solved by doing a series of fwrites(), and + checking ferror() at the end of them. FORTIFY_SOURCE would still + fail in this case. + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:22 asuraparaju + + * decoder/decmain.cpp: fix build error with -Werror and igored + return value from fwrite(3c) + + It should be noted that the return value from fwrite is mostly + useless: if the arguments to fwrite do not set size=1, then there + is little hope of discovering howmuch data had been written + before the error. C99 states: If an error occurs, the resulting + value of the file position indicator for the stream is + indeterminate. + + Error squashed by discarding result. + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:22 asuraparaju + + * libdirac_encoder/quant_chooser.cpp: encoder: remove limit on DC + quantizer. + + Previous fixes should remove the requirement to limit qf on DC + blocks to 4. + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:21 asuraparaju + + * libdirac_common/common.cpp: encoder: Ensure that there is atleast + 1 codeblock per subband + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:20 asuraparaju + + * libdirac_encoder/picture_compress.cpp: encoder: remove dc + quantizer=0 hacks + + Fixes in bitstream handling and quant selection should've negated + the need for these hacks. + + Author: David Flynn <da...@wo...> Committer: David Flynn + <da...@rd...> + + 2009-01-21 16:20 asuraparaju + + * libdirac_encoder/picture_compress.cpp: encoder: dont quantize the + first dc codeblock + + - Attempt to reduce DC errors by effectively not quantizing the + first value (predicted from zero). + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:19 asuraparaju + + * libdirac_common/common.cpp: encoder: Fix (and increase number of + ) default codeblocks + + - Fix previously incorrect codeblock calculation - Create 4x4 + codeblocks for DC subband and 12x12 for all others + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:18 asuraparaju + + * libdirac_encoder/quant_chooser.cpp: encoder: fix calculation of + max value in a subband for quant selection + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:18 asuraparaju + + * libdirac_byteio/byteio.h, libdirac_common/band_codec.cpp, + libdirac_common/band_codec.h, + libdirac_common/band_codec_template.cpp, + libdirac_common/band_vlc.cpp, libdirac_common/band_vlc.h, + libdirac_decoder/comp_decompress.cpp, + libdirac_encoder/comp_compress.cpp: bandcodec: IntraDCBandVLC + needs to derive from GenericIntraDCBandCodec + + - modified the band codec files to add a GenericIntraDCBandCodec + class + that inherits from the GenericBandCodecClass. + It defines the common DC specific functions like + GetPrediction, + ClearBlock, DecodeCoeffBlock etc. + - The IntraDCBand classes inherit from the GenericBandCodecClass + now. + - modifed the ArithmeticCodecToVLCAdapter class to include the + Compress/Decompress functions and to have pure virtual + WorkCode/WorkDecode functions like the ArithCodec class. + + Author: Anuradha Suraparaju <anu...@rd...> Committer: + David Flynn <da...@rd...> + + 2009-01-21 16:17 asuraparaju + + * libdirac_byteio/byteio.h, libdirac_common/band_codec.cpp, + libdirac_common/band_codec.h, + libdirac_common/band_codec_template.cpp, + libdirac_common/band_vlc.cpp, libdirac_common/band_vlc.h: + bandcodec: Remove code duplication in band_vlc.cpp + + BandVLC + friends is mostly a copy and paste of BandCodec + + friends. - Rename BandCodec to GenericBandCodec - Template + GenericBandCodec to take some EntropyCoder - typedef BandCodec + to be GenericBandCodec with ArithCodec - implement a translator + for ArithCodec style calls -> VLC ByteIO calls. - derive + BandVLC from GenericBandCodec and above translator. + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:16 asuraparaju + + * libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: fix DC + prediction when decoding + + Author: Anuradha Suraparaju <anu...@rd...> Committer: + David Flynn <da...@rd...> + + 2009-01-21 16:16 asuraparaju + + * libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: fix + handling intra dc skipped codeblocks + + - The error(residue) term for a skipped codeblock is zero This + must be recorded to correctly set nhood_zero for subsequent + blocks - The values in the skipped codeblock must be predicted + with no (ie zero) error term being added. + + Author: David Flynn <da...@rd...> Committer: David Flynn + <da...@wo...> + + 2009-01-21 16:15 asuraparaju + + * libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: fix + IntraDC bitstream incompatability with codeblocks + + - Fixes bitstream incompatability with codeblocks + - IntraDCBandCodec duplicated too much copy+paste code from + BandCodec. + - Implements a per pixel function call to provide + specialization. + This could be templated if performance really is an issue. + + Author: David Flynn <da...@rd...> Committer: David Flynn + <da...@wo...> + + 2009-01-21 16:15 asuraparaju + + * libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: + eliminate sepcialized lfbandcodec + + - Fixes bitstream incompatability with codeblocks - + Specialization has been moved into bandcodec. due to too much + copy and paste code duplication. + + Author: David Flynn <da...@rd...> + + 2009-01-21 16:14 asuraparaju + + * libdirac_common/: band_codec.cpp, band_codec.h: bandcodec: remove + unused variables + + Author: David Flynn <da...@rd...> Committer: David Flynn + <da...@wo...> + + 2008-12-16 12:21 asuraparaju + + * libdirac_encoder/rate_control.cpp: Added a condition to stop + bit-rate overruns. + + Author: Thomas Davies <tho...@bb...> + + 2008-12-16 12:19 asuraparaju + + * dirac.pc.in: Include Maths library in link line if required on + the platform of choice. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-12-16 12:19 asuraparaju + + * libdirac_byteio/mvdataelement_byteio.h: Fix doxygen warnings. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-12-16 12:18 asuraparaju + + * libdirac_common/band_codec.cpp: Fix problem building with -Werror + and dumb compilers + + Author: David Flynn <da...@rd...> + + 2008-11-20 12:05 asuraparaju + + * doc/documentation/code/programmers_guide/: + common_data_structs.htm, encoder_api_functions.htm, + encoder_api_overview.htm, encoder_api_reference.htm, + encoder_data_structs.htm, index.htm, intro.htm: Update the + programmer's guide for version 1.0.2 of the release. + + 2008-11-19 15:02 asuraparaju + + * win32/VisualStudio/dirac.sln: Add new projects to the solution + file. + + Author: Anuradha Suraparaju <anuradha@hoyle.(none)> + + 2008-11-19 10:28 asuraparaju + + * libdirac_byteio/: seqparams_byteio.cpp, seqparams_byteio.h: + Manually delete seqparams_byteio.cpp{h} to keep in sync with GIT + repository. + + 2008-11-19 10:25 asuraparaju + + * libdirac_common/dirac_types.h, + libdirac_encoder/dirac_encoder.cpp, + libdirac_encoder/dirac_encoder.h: api: Add + dirac_encoder_pts_offset support, bump version to 1.0.2 + + Author: David Flynn <da...@rd...> + + 2008-11-19 10:25 asuraparaju + + * util/conversion/: Makefile.am, YUV420ItoYUV422I.cpp, + YUV422ItoYUV420I.cpp: conversion: Add 422 <-> 420 converters for + interlaced video + + Author: David Flynn <da...@rd...> + + 2008-11-19 10:19 asuraparaju + + * libdirac_encoder/: picture_compress.cpp, quant_chooser.cpp: Fixed + bug with DC value being quantised to nothing for plain pictures. + + Author: Thomas Davies <tho...@bb...> + + 2008-11-06 15:54 asuraparaju + + * tests/samples.at: Add tests for fullsearch and combined_me + options. + + Author: Anuradha Suraparaju <anuradha@hoyle.(none)> + + 2008-11-06 15:53 asuraparaju + + * libdirac_common/: common_types.h, dirac_types.h: Move macros to + test for the api version to dirac_types.h from common_types.h as + it is the more appropriate location. + + Author: Anuradha Suraparaju <anuradha@hoyle.(none)> + + 2008-11-06 15:51 asuraparaju + + * + win32/VisualStudio/ConversionUtils/YUV420Down2x2/YUV420Down2x2.vcproj: + Fix include path to prevent compilation errors. + + Author: Anuradha Suraparaju <anuradha@hoyle.(none)> + + 2008-10-29 13:46 asuraparaju + + * libdirac_motionest/block_match.cpp: Cosmetics - removing trailing + blanks. + + 2008-10-29 13:42 asuraparaju + + * encoder/encmain.cpp, libdirac_encoder/prefilter.cpp, + libdirac_encoder/rate_control.cpp, + libdirac_encoder/seq_compress.cpp: Ensure that debug info is + printed to standard out only in verbose mode. Cosmetics - + changed tabs to spaces, corrected indentation. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-10-29 13:41 asuraparaju + + * libdirac_common/common_types.h: Add macros to test for the api + version. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-10-21 15:55 asuraparaju + + * libdirac_motionest/me_utils.cpp: Fixed bug that caused a divide + by zero error. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-10-21 11:04 asuraparaju + + * libdirac_byteio/parseparams_byteio.cpp: Print a warning to + standard error if the bitstream version does not match the + supported version and continue decoding instead of bailing out. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-10-21 11:02 asuraparaju + + * configure.ac: Fix test for checking availabliity of libcppunit. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-10-20 15:22 asuraparaju + + * libdirac_encoder/picture_compress.cpp: Modify perceptual + weighting based on the proportion of intra blocks. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-20 15:21 asuraparaju + + * encoder/encmain.cpp, libdirac_common/common.cpp, + libdirac_common/video_format_defaults.cpp: Made 13_7 the default + wavelet filter for all video. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-20 15:21 asuraparaju + + * libdirac_common/wavelet_utils.cpp, + libdirac_common/wavelet_utils.h, + libdirac_encoder/picture_compress.cpp: Allow for adjustable CPD + scaling. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-20 15:20 asuraparaju + + * libdirac_encoder/seq_compress.h: Added method for keeping track + of timestamp offset. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-20 15:19 asuraparaju + + * libdirac_common/common.cpp, libdirac_encoder/seq_compress.cpp, + libdirac_encoder/seq_compress.h, + libdirac_motionest/me_mode_decn.cpp, + libdirac_motionest/me_utils.cpp: Improvements to coding at low + bit rate and resolution. + + Filter DC blocks field to reduce dc level transitions. Use + better bigger block parameters. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-01 15:33 asuraparaju + + * Makefile.am: Set DOC_DIR only if doxygen is installed. + + Author: asu...@di... <anuradha@hoyle.(none)> + + 2008-10-01 11:26 asuraparaju + + * encoder/encmain.cpp, libdirac_common/common.cpp, + libdirac_common/common.h, libdirac_common/mot_comp.cpp, + libdirac_common/motion.cpp, libdirac_common/motion.h, + libdirac_common/mv_codec.cpp, libdirac_common/mv_codec.h, + libdirac_decoder/picture_decompress.cpp, + libdirac_encoder/dirac_encoder.cpp, + libdirac_encoder/dirac_encoder.h, + libdirac_encoder/enc_picture.cpp, libdirac_encoder/enc_picture.h, + libdirac_encoder/picture_compress.cpp, + libdirac_encoder/seq_compress.cpp, + libdirac_motionest/me_mode_decn.cpp, + libdirac_motionest/me_mode_decn.h, + libdirac_motionest/me_subpel.cpp, libdirac_motionest/me_subpel.h, + libdirac_motionest/motion_estimate.cpp, + libdirac_motionest/pixel_match.cpp, + unit_tests/motion_comp_test.cpp, + util/instrumentation/process_sequence.cpp, + util/instrumentation/libdirac_instrument/overlay.cpp: Manual sync + with dirac-research.git repository. Changed way data for use in + ME is accessed. Changed terminology from macroblock to + superblock. Now (more) consistent with spec. Changes to + incorporate some chroma information into ME. Enabled combined ME + across Y, U and V Author: Thomas Davies <tho...@bb...> + + 2008-10-01 10:50 asuraparaju + + * Makefile.am, configure.ac, util/conversion/Makefile.am, + util/conversion/YUV420Down2x2.cpp: Improved 2x2 downconversion + filtering. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-01 10:26 asuraparaju + + * encoder/encmain.cpp, libdirac_common/video_format_defaults.cpp: + 100% overlaps help PSNR but reduce detail too much at low rates. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-01 10:26 asuraparaju + + * encoder/encmain.cpp, libdirac_common/video_format_defaults.cpp, + libdirac_common/video_format_defaults.h, + libdirac_encoder/dirac_encoder.cpp: Use longer wavelet filters at + low resolution. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-01 10:25 asuraparaju + + * encoder/encmain.cpp, libdirac_common/band_codec.cpp, + libdirac_common/common.cpp, libdirac_encoder/comp_compress.cpp, + libdirac_encoder/picture_compress.cpp, + libdirac_encoder/quant_chooser.cpp: Modifications to improve + performance for small picture sizes. + + Author: Thomas Davies <tho...@bb...> + + 2008-10-01 10:12 asuraparaju + + * encoder/encmain.cpp: 1/4 pel is now the default on small + pictures. + + Author: Thomas Davies <tho...@bb...> + + 2008-09-16 16:49 asuraparaju + + * ChangeLog: Updated ChangeLog. + + Author: asu...@di... + <anu...@ho...> 2008-09-16 14:33 asuraparaju *************** *** 8519,8522 **** --- 9017,9026 ---- - Removed the following CVS tags from all files $Author$ $Log$ + Revision 1.30 2009/02/10 00:32:11 asuraparaju + Update ChangeLog + + + Author: Anuradha Suraparaju <anu...@ho...> + Revision 1.29 2008/09/16 06:49:27 asuraparaju Updated ChangeLog. *************** *** 8710,8719 **** * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and Revision 1.29 2008/09/16 06:49:27 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and Updated ChangeLog. ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and Author: asu...@di... <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.28 2008/06/04 05:39:17 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and *** empty log message *** --- 9214,9229 ---- * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Revision 1.30 2009/02/10 00:32:11 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Update ChangeLog ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id$ and Revision 1.29 2008/09/16 06:49:27 asuraparaju ! * README.developers: Prevent unintended expansion of $Id$ and Updated ChangeLog. ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and Author: asu...@di... <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id$ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.28 2008/06/04 05:39:17 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and *** empty log message *** *************** *** 14257,14260 **** --- 14767,14776 ---- - Removed the following CVS tags from all files $Author$ $Log$ + Revision 1.30 2009/02/10 00:32:11 asuraparaju + Update ChangeLog + + + Author: Anuradha Suraparaju <anu...@ho...> + Revision 1.29 2008/09/16 06:49:27 asuraparaju Updated ChangeLog. *************** *** 14457,14466 **** * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and Revision 1.29 2008/09/16 06:49:27 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and Updated ChangeLog. ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and Author: asu...@di... <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.28 2008/06/04 05:39:17 asuraparaju Exp $ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.28 2008/06/04 05:39:17 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and *** empty log message *** --- 14973,14988 ---- * README.developers: Prevent unintended expansion of $Id$ and $Log$ ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Revision 1.30 2009/02/10 00:32:11 asuraparaju ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Update ChangeLog ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and Author: Anuradha Suraparaju <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id: ChangeLog,v 1.29 2008/09/16 06:49:27 asuraparaju Exp $ and ! * README.developers: Prevent unintended expansion of $Id$ and Revision 1.29 2008/09/16 06:49:27 asuraparaju ! * README.developers: Prevent unintended expansion of $Id$ and Updated ChangeLog. ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and ! * README.developers: Prevent unintended expansion of $Id$ and Author: asu...@di... <anu...@ho...> ! * README.developers: Prevent unintended expansion of $Id$ and * README.developers: Prevent unintended expansion of $Id$ and Revision 1.28 2008/06/04 05:39:17 asuraparaju * README.developers: Prevent unintended expansion of $Id$ and *** empty log message *** |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 00:17:32
|
Update of /cvsroot/dirac/compress In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv25777 Modified Files: NEWS Log Message: Include Dirac 1.0.2 release notes. Author: Anuradha Suraparaju <anu...@ho...> Index: NEWS =================================================================== RCS file: /cvsroot/dirac/compress/NEWS,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** NEWS 16 Sep 2008 04:33:57 -0000 1.25 --- NEWS 10 Feb 2009 00:17:23 -0000 1.26 *************** *** 1,2 **** --- 1,16 ---- + dirac-1.0.2 + =========== + This a a minor release complying with the latest Dirac Bytestream + Specification 2.2.3. + + - Improved compression performance for small picture sizes. + - Improved compression performance at low bit-rates. + - Included macros to check the API version. + - Improved motion estimation. + - New 422 <-> 420 conversion utilities for interlaced video. + - New functionality added to encoder API. The programmer's guide has + been modified accordingly. + - Fixed bugs in handling DC subband. + dirac-1.0.0 =========== |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 00:17:09
|
Update of /cvsroot/dirac/compress In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv25693 Modified Files: README Log Message: Updated notes to reflect API changes. Some cosmetic changes as well. Author: Anuradha Suraparaju <anu...@ho...> Index: README =================================================================== RCS file: /cvsroot/dirac/compress/README,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** README 16 Sep 2008 04:27:35 -0000 1.44 --- README 10 Feb 2009 00:17:01 -0000 1.45 *************** *** 86,92 **** INCLUDE=/c/Program\ Files/Microsoft\ Visual\ Studio\ 9.0/VC/INCLUDE:$INCLUDE ! LIB=/c/Program\ Files/Microsoft\ Visual\ Studio\ 9.0/VC/LIB:$LIB ! LIBPATH=/c/WINDOWS/Microsoft.NET/Framework/v3.5:/c/WINDOWS/Microsoft.NET/Framework/v2.0.50727:/c/Program\ Files/Microsoft\ Visual\ Studio\ 9.0/VC/LIB:$LIBPATH (Replace /c/Program\ Files/Microsoft\ Visual\ Studio\ 9/ with --- 86,92 ---- INCLUDE=/c/Program\ Files/Microsoft\ Visual\ Studio\ 9.0/VC/INCLUDE:$INCLUDE ! LIB=/c/Program\ Files/Microsoft\ Visual\ Studio\ 9.0/VC/LIB:$LIB ! LIBPATH=/c/WINDOWS/Microsoft.NET/Framework/v3.5:/c/WINDOWS/Microsoft.NET/Framework/v2.0.50727:/c/Program\ Files/Microsoft\ Visual\ Studio\ 9.0/VC/LIB:$LIBPATH (Replace /c/Program\ Files/Microsoft\ Visual\ Studio\ 9/ with *************** *** 403,410 **** iwlt_filter : transform filter to use when encoding INTRA frames, Valid values are DD9_7, LEGALL5_3, DD13_7, HAAR0, HAAR1, FIDELITY, ! DAUB97. Default value is DD9_5. rwlt_filter : transform filter to use when encoding INTER frames, Valid values are DD9_7, LEGALL5_3, DD13_7, HAAR0, HAAR1, FIDELITY, ! DAUB97. Default value is LEGALL5_3. wlt_depth : transform depth, i.e number of times the component is split while applying the wavelet transform --- 403,410 ---- iwlt_filter : transform filter to use when encoding INTRA frames, Valid values are DD9_7, LEGALL5_3, DD13_7, HAAR0, HAAR1, FIDELITY, ! DAUB97. Default value is DD13_7. rwlt_filter : transform filter to use when encoding INTER frames, Valid values are DD9_7, LEGALL5_3, DD13_7, HAAR0, HAAR1, FIDELITY, ! DAUB97. Default value is DD13_7. wlt_depth : transform depth, i.e number of times the component is split while applying the wavelet transform *************** *** 418,423 **** supplied. Valid filter names are NO_PF, CWM, RECTLP and DIAGLP. Filter strenth range should be in the range 0-10. ! (note PSNR statistics will be computed relative to the filtered ! video if -local is enabled) lossless : Lossless coding.(overrides -qf and -targetrate) mv_prec : Motion vector precision. Valid values are 1 (Pixel precision), --- 418,423 ---- supplied. Valid filter names are NO_PF, CWM, RECTLP and DIAGLP. Filter strenth range should be in the range 0-10. ! (note PSNR statistics will be computed relative to the ! filtered video if -local is enabled) lossless : Lossless coding.(overrides -qf and -targetrate) mv_prec : Motion vector precision. Valid values are 1 (Pixel precision), *************** *** 425,432 **** is the default), 1/8 ( Eighth pixel precision). full_search : Use full search motion estimation field_coding : Code the input video as fields instead of frames. Default coding is frames. ! use_vlc : Use VLC for entropy coding of coefficients instead of arithmetic ! coding. Modifying L1_sep and num_L1 allows for new GOP structures to be used, and should be entirely safe. There are two non-GOP modes that can also be used for --- 425,433 ---- is the default), 1/8 ( Eighth pixel precision). full_search : Use full search motion estimation + combined_me : Use combination of all three components to do motion estimation field_coding : Code the input video as fields instead of frames. Default coding is frames. ! use_vlc : Use VLC for entropy coding of coefficients instead of ! arithmetic coding. Modifying L1_sep and num_L1 allows for new GOP structures to be used, and should be entirely safe. There are two non-GOP modes that can also be used for |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 00:16:43
|
Update of /cvsroot/dirac/compress In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv25592 Modified Files: configure.ac Log Message: Update release id to 1.0.2. Author: Anuradha Suraparaju <anu...@ho...> Index: configure.ac =================================================================== RCS file: /cvsroot/dirac/compress/configure.ac,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** configure.ac 21 Oct 2008 00:02:40 -0000 1.52 --- configure.ac 10 Feb 2009 00:16:37 -0000 1.53 *************** *** 14,21 **** GENERIC_MAJOR_VERSION=1 GENERIC_MINOR_VERSION=0 ! GENERIC_MICRO_VERSION=0 #shared library versioning ! GENERIC_LIBRARY_VERSION=0:0:0 # | | | # +------+ | +---+ --- 14,21 ---- GENERIC_MAJOR_VERSION=1 GENERIC_MINOR_VERSION=0 ! GENERIC_MICRO_VERSION=2 #shared library versioning ! GENERIC_LIBRARY_VERSION=1:0:1 # | | | # +------+ | +---+ |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 00:16:06
|
Update of /cvsroot/dirac/compress In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv25464 Modified Files: AUTHORS Log Message: Update contributors list. Author: Anuradha Suraparaju <anu...@ho...> Index: AUTHORS =================================================================== RCS file: /cvsroot/dirac/compress/AUTHORS,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** AUTHORS 27 May 2008 01:10:37 -0000 1.12 --- AUTHORS 10 Feb 2009 00:16:02 -0000 1.13 *************** *** 2,6 **** ~~~~~~~~~~~~~~~~ ! Thomas Davies, BBC Research and Development dir...@rd... --- 2,6 ---- ~~~~~~~~~~~~~~~~ ! Thomas Davies, BBC Research dir...@rd... *************** *** 9,13 **** (in no particular order) ! Richard Felton, BBC Research and Development dir...@rd... --- 9,13 ---- (in no particular order) ! Richard Felton, BBC Research dir...@rd... *************** *** 15,28 **** co...@co... ! Stuart Cunningham, BBC Research and Development dir...@rd... ! Anuradha Suraparaju, BBC Research and Development dir...@rd... ! Chris Bowley, BBC Research and Development dir...@rd... ! Tim Borer, BBC Research and Development dir...@rd... --- 15,28 ---- co...@co... ! Stuart Cunningham, BBC Research dir...@rd... ! Anuradha Suraparaju, BBC Research dir...@rd... ! Chris Bowley, BBC Research dir...@rd... ! Tim Borer, BBC Research dir...@rd... *************** *** 39,48 **** mik...@us... ! Andrew Kennedy, BBC Research and Development dir...@rd... ! Peter Bleackley, BBC Research and Development dir...@rd... Myo Tun, Brunel University my...@br... --- 39,52 ---- mik...@us... ! Andrew Kennedy dir...@rd... ! Peter Bleackley, BBC Research dir...@rd... Myo Tun, Brunel University my...@br... + + David Flynn, BBC Research + dir...@rd... + |
|
From: Anuradha S. <asu...@us...> - 2009-02-10 00:04:07
|
Update of /cvsroot/dirac/compress/doc/documentation/code/programmers_guide In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv23119 Modified Files: encoder_data_structs.htm Log Message: The default wavelet filters used have changed to DD13_7 for both intra and inter pictures. Index: encoder_data_structs.htm =================================================================== RCS file: /cvsroot/dirac/compress/doc/documentation/code/programmers_guide/encoder_data_structs.htm,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** encoder_data_structs.htm 9 Feb 2009 23:57:31 -0000 1.16 --- encoder_data_structs.htm 10 Feb 2009 00:04:02 -0000 1.17 *************** *** 339,348 **** <dd>Wavelet filter used for ! encoding Intra pictures. Default value is DD9_7. This field is of type <a href="common_data_structs.htm#dirac_wlt_filter_t">dirac_wlt_filter_t</a>.</dd> <dt><i>inter_wlt_filter</i> </dt> <dd>Wavelet filter used for ! encoding Inter pictures. Default value is LEGALL5_3. This field is of type <span style="text-decoration: underline;"><a href="common_data_structs.htm#dirac_wlt_filter_t">dirac_wlt_filter_t</a>.</dd> --- 339,348 ---- <dd>Wavelet filter used for ! encoding Intra pictures. Default value is DD13_7. This field is of type <a href="common_data_structs.htm#dirac_wlt_filter_t">dirac_wlt_filter_t</a>.</dd> <dt><i>inter_wlt_filter</i> </dt> <dd>Wavelet filter used for ! encoding Inter pictures. Default value is DD13_7. This field is of type <span style="text-decoration: underline;"><a href="common_data_structs.htm#dirac_wlt_filter_t">dirac_wlt_filter_t</a>.</dd> |
|
From: Anuradha S. <asu...@us...> - 2009-02-09 23:57:36
|
Update of /cvsroot/dirac/compress/doc/documentation/code/programmers_guide In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv21336 Modified Files: encoder_data_structs.htm Log Message: Fix instrumentation structure documentation. The field names have changed in the API to be super blocks and not macro blocks. Index: encoder_data_structs.htm =================================================================== RCS file: /cvsroot/dirac/compress/doc/documentation/code/programmers_guide/encoder_data_structs.htm,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** encoder_data_structs.htm 20 Nov 2008 01:05:34 -0000 1.15 --- encoder_data_structs.htm 9 Feb 2009 23:57:31 -0000 1.16 *************** *** 716,720 **** style="font-weight: bold; font-family: courier new,courier,monospace;">{</span><br style="font-weight: bold; font-family: courier new,courier,monospace;"><span ! style="font-weight: bold; font-family: courier new,courier,monospace;"> dirac_picture_type_t ptype;<br> dirac_reference_type_t rtype;<br> int pnum;<br> int num_refs;<br> int refs[2];<br> int xbsep;<br> int ybsep;<br> int mb_xlen;<br> int mb_ylen;<br> int mv_xlen;<br> int mv_ylen;<br> int *mb_split_mode;<br> float *mb_costs;<br> int *pred_mode;<br> float *intra_costs;<br> dirac_mv_cost_t *bipred_costs;<br> short *dc_ycomp;<br> short *dc_ucomp;<br> short *dc_vcomp;<br> dirac_mv_t *mv[2];<br> dirac_mv_cost_t *pred_costs[2];<br style="font-weight: bold; font-family: courier new,courier,monospace;"></span><span style="font-weight: bold; font-family: courier new,courier,monospace;"><span --- 716,720 ---- style="font-weight: bold; font-family: courier new,courier,monospace;">{</span><br style="font-weight: bold; font-family: courier new,courier,monospace;"><span ! style="font-weight: bold; font-family: courier new,courier,monospace;"> dirac_picture_type_t ptype;<br> dirac_reference_type_t rtype;<br> int pnum;<br> int num_refs;<br> int refs[2];<br> int xbsep;<br> int ybsep;<br> int sb_xlen;<br> int sb_ylen;<br> int mv_xlen;<br> int mv_ylen;<br> int *sb_split_mode;<br> float *sb_costs;<br> int *pred_mode;<br> float *intra_costs;<br> dirac_mv_cost_t *bipred_costs;<br> short *dc_ycomp;<br> short *dc_ucomp;<br> short *dc_vcomp;<br> dirac_mv_t *mv[2];<br> dirac_mv_cost_t *pred_costs[2];<br style="font-weight: bold; font-family: courier new,courier,monospace;"></span><span style="font-weight: bold; font-family: courier new,courier,monospace;"><span *************** *** 766,775 **** blocks. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">mb_xblen</span><br> </dt> <dd>Width of the macro-block. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">mb_yblen</span><br> </dt> <dd>Height of the macro-block. --- 766,775 ---- blocks. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">sb_xblen</span><br> </dt> <dd>Width of the macro-block. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">sb_yblen</span><br> </dt> <dd>Height of the macro-block. *************** *** 786,799 **** in y direction. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">mb_split_mode</span><br> </dt> <dd>Array holding macro-block split level decisions. The size of the ! array is mb_xlen*mb_ylen. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">mb_costs</span><br> </dt> <dd>Array holding macro-block cost parameters. The size of the array ! is mb_xlen*mb_ylen. This field is not set for intra coded pictures.</dd> <dt><span style="font-style: italic;">pred_mode</span><br> </dt> --- 786,799 ---- in y direction. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">sb_split_mode</span><br> </dt> <dd>Array holding macro-block split level decisions. The size of the ! array is sb_xlen*sb_ylen. This field is not set for intra coded pictures.</dd> ! <dt><span style="font-style: italic;">sb_costs</span><br> </dt> <dd>Array holding macro-block cost parameters. The size of the array ! is sb_xlen*sb_ylen. This field is not set for intra coded pictures.</dd> <dt><span style="font-style: italic;">pred_mode</span><br> </dt> |
|
From: Anuradha S. <asu...@us...> - 2009-02-09 09:45:53
|
Update of /cvsroot/dirac/compress/tests In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv18548/tests Modified Files: samples.at Log Message: Remove test for full_search option. Add test for modified block sizes. Author: asu...@di... <anu...@ho...> Index: samples.at =================================================================== RCS file: /cvsroot/dirac/compress/tests/samples.at,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** samples.at 6 Nov 2008 04:54:08 -0000 1.19 --- samples.at 9 Feb 2009 09:45:47 -0000 1.20 *************** *** 91,96 **** preset="-SD576I50"; #luma block parameters ! xblen=12; ! xbsep=8; yblen=12; ybsep=8; --- 91,96 ---- preset="-SD576I50"; #luma block parameters ! xblen=16; ! xbsep=12; yblen=12; ybsep=8; *************** *** 100,107 **** preset="-HD720P50"; #luma block parameters ! xblen=16; ! xbsep=12; ! yblen=16 ! ybsep=12; extras="-fr 25"; #sample data is 25 fps bitrate="4000" --- 100,107 ---- preset="-HD720P50"; #luma block parameters ! xblen=12; ! xbsep=8; ! yblen=24; ! ybsep=16; extras="-fr 25"; #sample data is 25 fps bitrate="4000" *************** *** 110,117 **** preset="-HD1080I50"; #luma block parameters ! xblen=24; ! xbsep=16; ! yblen=24; ! ybsep=16; bitrate="8000" elif test $width -eq 176 || test $height -eq 144; --- 110,117 ---- preset="-HD1080I50"; #luma block parameters ! xblen=16; ! xbsep=12; ! yblen=12; ! ybsep=8; bitrate="8000" elif test $width -eq 176 || test $height -eq 144; *************** *** 126,131 **** else #luma block parameters ! xblen=12; ! xbsep=8; yblen=12; ybsep=8; --- 126,131 ---- else #luma block parameters ! xblen=24; ! xbsep=16; yblen=12; ybsep=8; *************** *** 135,139 **** #set Motion vector precision here. Possible values are 1, 1/2, 1/4 and ! # 1/8. Default value is 1/4 mv_prec=1/4 #extras=`echo $extras`" -L1_sep 6 -stop 6" --- 135,139 ---- #set Motion vector precision here. Possible values are 1, 1/2, 1/4 and ! # 1/8. Default value is 1/2 mv_prec=1/4 #extras=`echo $extras`" -L1_sep 6 -stop 6" *************** *** 206,210 **** # progressive # constant quality ! AT_CHECK([at_wrap dirac_encoder -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../$encout ../../$decout], 0, [ignore]) AT_CHECK([cmp ../../$encout.localdec.yuv ../../$decout]) --- 206,210 ---- # progressive # constant quality ! AT_CHECK([at_wrap dirac_encoder -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../$encout ../../$decout], 0, [ignore]) AT_CHECK([cmp ../../$encout.localdec.yuv ../../$decout]) *************** *** 215,255 **** AT_CHECK([at_wrap dirac_instrumentation ../../$encout ../../"$instrout"_sad_instr.yuv -sad -clip 50], 0, [ignore]) AT_CHECK([at_wrap dirac_instrumentation ../../$encout ../../"$instrout"_pred_instr.yuv -pred_mode -clip 50], 0, [ignore]) # constant bit-rate ! AT_CHECK([at_wrap dirac_encoder -targetrate $bitrate -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../$bitrate"Kbps_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../$bitrate"Kbps_"$encout ../../$bitrate"Kbps_"$decout], 0, [ignore]) AT_CHECK([cmp ../../$bitrate"Kbps_"$encout.localdec.yuv ../../$bitrate"Kbps_"$decout]) # lossless ! AT_CHECK([at_wrap dirac_encoder -lossless -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"lossless_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"lossless_"$encout ../../"lossless_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"lossless_"$encout.localdec.yuv ../../"lossless_"$decout]) AT_CHECK([cmp $samp ../../"lossless_"$decout]) # modified GOP structure ! AT_CHECK([at_wrap dirac_encoder -L1_sep 6 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"L1sep6_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"L1sep6_"$encout ../../"L1sep6_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"L1sep6_"$encout.localdec.yuv ../../"L1sep6_"$decout]) # pre-filter CWM ! AT_CHECK([at_wrap dirac_encoder -prefilter CWM 5 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"cwm5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"cwm5_"$encout ../../"cwm5_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"cwm5_"$encout.localdec.yuv ../../"cwm5_"$decout]) # pre-filter RECTLP ! AT_CHECK([at_wrap dirac_encoder -prefilter RECTLP 5 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"rectlp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"rectlp5_"$encout ../../"rectlp5_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"rectlp5_"$encout.localdec.yuv ../../"rectlp5_"$decout]) # pre-filter DIAGLP ! AT_CHECK([at_wrap dirac_encoder -prefilter DIAGLP 5 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"diaglp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"diaglp5_"$encout ../../"diaglp5_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"diaglp5_"$encout.localdec.yuv ../../"diaglp5_"$decout]) # combined_me ! AT_CHECK([at_wrap dirac_encoder -combined_me -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"combined_me_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"combined_me_"$encout ../../"combined_me_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"combined_me_"$encout.localdec.yuv ../../"combined_me_"$decout]) # full search ! AT_CHECK([at_wrap dirac_encoder -full_search 32 32 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"full_search_"$encout], 0, [ignore]) ! AT_CHECK([at_wrap dirac_decoder ../../"full_search_"$encout ../../"full_search_"$decout], 0, [ignore]) ! AT_CHECK([cmp ../../"full_search_"$encout.localdec.yuv ../../"full_search_"$decout]) # interlaced # constant quality ! AT_CHECK([at_wrap dirac_encoder -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_"$encout ../../"inter_"$decout], 0, [ignore]) AT_CHECK([at_wrap dirac_instrumentation ../../"inter_"$encout ../../"inter_""$instrout"_mc_instr.yuv -motion_colour -clip 50], 0, [ignore]) --- 215,259 ---- AT_CHECK([at_wrap dirac_instrumentation ../../$encout ../../"$instrout"_sad_instr.yuv -sad -clip 50], 0, [ignore]) AT_CHECK([at_wrap dirac_instrumentation ../../$encout ../../"$instrout"_pred_instr.yuv -pred_mode -clip 50], 0, [ignore]) + # modified mc blocks and mv_prec + AT_CHECK([at_wrap dirac_encoder -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"mod_block_"$encout], 0, [ignore]) + AT_CHECK([at_wrap dirac_decoder ../../"mod_block_"$encout ../../"mod_block_"$decout], 0, [ignore]) + AT_CHECK([cmp ../../"mod_block_"$encout.localdec.yuv ../../"mod_block_"$decout]) # constant bit-rate ! AT_CHECK([at_wrap dirac_encoder -targetrate $bitrate -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../$bitrate"Kbps_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../$bitrate"Kbps_"$encout ../../$bitrate"Kbps_"$decout], 0, [ignore]) AT_CHECK([cmp ../../$bitrate"Kbps_"$encout.localdec.yuv ../../$bitrate"Kbps_"$decout]) # lossless ! AT_CHECK([at_wrap dirac_encoder -lossless -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"lossless_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"lossless_"$encout ../../"lossless_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"lossless_"$encout.localdec.yuv ../../"lossless_"$decout]) AT_CHECK([cmp $samp ../../"lossless_"$decout]) # modified GOP structure ! AT_CHECK([at_wrap dirac_encoder -L1_sep 6 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"L1sep6_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"L1sep6_"$encout ../../"L1sep6_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"L1sep6_"$encout.localdec.yuv ../../"L1sep6_"$decout]) # pre-filter CWM ! AT_CHECK([at_wrap dirac_encoder -prefilter CWM 5 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"cwm5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"cwm5_"$encout ../../"cwm5_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"cwm5_"$encout.localdec.yuv ../../"cwm5_"$decout]) # pre-filter RECTLP ! AT_CHECK([at_wrap dirac_encoder -prefilter RECTLP 5 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"rectlp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"rectlp5_"$encout ../../"rectlp5_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"rectlp5_"$encout.localdec.yuv ../../"rectlp5_"$decout]) # pre-filter DIAGLP ! AT_CHECK([at_wrap dirac_encoder -prefilter DIAGLP 5 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"diaglp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"diaglp5_"$encout ../../"diaglp5_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"diaglp5_"$encout.localdec.yuv ../../"diaglp5_"$decout]) # combined_me ! AT_CHECK([at_wrap dirac_encoder -combined_me -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"combined_me_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"combined_me_"$encout ../../"combined_me_"$decout], 0, [ignore]) AT_CHECK([cmp ../../"combined_me_"$encout.localdec.yuv ../../"combined_me_"$decout]) # full search ! #AT_CHECK([at_wrap dirac_encoder -full_search 32 32 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"full_search_"$encout], 0, [ignore]) ! #AT_CHECK([at_wrap dirac_decoder ../../"full_search_"$encout ../../"full_search_"$decout], 0, [ignore]) ! #AT_CHECK([cmp ../../"full_search_"$encout.localdec.yuv ../../"full_search_"$decout]) # interlaced # constant quality ! AT_CHECK([at_wrap dirac_encoder -field_coding -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_"$encout ../../"inter_"$decout], 0, [ignore]) AT_CHECK([at_wrap dirac_instrumentation ../../"inter_"$encout ../../"inter_""$instrout"_mc_instr.yuv -motion_colour -clip 50], 0, [ignore]) *************** *** 259,287 **** AT_CHECK([at_wrap dirac_instrumentation ../../"inter_"$encout ../../"inter_""$instrout"_sad_instr.yuv -sad -clip 50], 0, [ignore]) AT_CHECK([at_wrap dirac_instrumentation ../../"inter_"$encout ../../"inter_""$instrout"_pred_instr.yuv -pred_mode -clip 50], 0, [ignore]) # constant bit-rate ! AT_CHECK([at_wrap dirac_encoder -targetrate $bitrate -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../$bitrate"Kbps_inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../$bitrate"Kbps_inter_"$encout ../../$bitrate"Kbps_inter_"$decout], 0, [ignore]) # lossless ! AT_CHECK([at_wrap dirac_encoder -lossless -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"lossless_inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"lossless_inter_"$encout ../../"lossless_inter_"$decout], 0, [ignore]) AT_CHECK([cmp $samp ../../"lossless_inter_"$decout]) # modified GOP structure ! AT_CHECK([at_wrap dirac_encoder -L1_sep 6 -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"L1sep6_inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"L1sep6_inter_"$encout ../../"L1sep6_inter_"$decout], 0, [ignore]) # pre-filter CWM ! AT_CHECK([at_wrap dirac_encoder -field_coding -prefilter CWM 5 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_cwm5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_cwm5_"$encout ../../"inter_cwm5_"$decout], 0, [ignore]) # pre-filter RECTLP ! AT_CHECK([at_wrap dirac_encoder -field_coding -prefilter RECTLP 5 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_rectlp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_rectlp5_"$encout ../../"inter_rectlp5_"$decout], 0, [ignore]) # pre-filter DIAGLP ! AT_CHECK([at_wrap dirac_encoder -field_coding -prefilter DIAGLP 5 -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_diaglp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_diaglp5_"$encout ../../"inter_diaglp5_"$decout], 0, [ignore]) # pre-filter DIAGLP ! AT_CHECK([at_wrap dirac_encoder -combined_me -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_combined_me_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_combined_me_"$encout ../../"inter_combined_me_"$decout], 0, [ignore]) # full search ME ! AT_CHECK([at_wrap dirac_encoder -full_search 32 32 -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_full_search_"$encout], 0, [ignore]) ! AT_CHECK([at_wrap dirac_decoder ../../"inter_full_search_"$encout ../../"inter_full_search_"$decout], 0, [ignore]) done AT_CLEANUP --- 263,294 ---- AT_CHECK([at_wrap dirac_instrumentation ../../"inter_"$encout ../../"inter_""$instrout"_sad_instr.yuv -sad -clip 50], 0, [ignore]) AT_CHECK([at_wrap dirac_instrumentation ../../"inter_"$encout ../../"inter_""$instrout"_pred_instr.yuv -pred_mode -clip 50], 0, [ignore]) + # modified mc blocks and mv_prec + AT_CHECK([at_wrap dirac_encoder -field_coding -local $preset -width $width -height $height -cformat $chroma -xblen $xblen -xbsep $xbsep -yblen $yblen -ybsep $ybsep -mv_prec $mv_prec $extras $samp ../../"inter_mod_block_"$encout], 0, [ignore]) + AT_CHECK([at_wrap dirac_decoder ../../"inter_mod_block_"$encout ../../"inter_mod_block_"$decout], 0, [ignore]) # constant bit-rate ! AT_CHECK([at_wrap dirac_encoder -targetrate $bitrate -field_coding -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../$bitrate"Kbps_inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../$bitrate"Kbps_inter_"$encout ../../$bitrate"Kbps_inter_"$decout], 0, [ignore]) # lossless ! AT_CHECK([at_wrap dirac_encoder -lossless -field_coding -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"lossless_inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"lossless_inter_"$encout ../../"lossless_inter_"$decout], 0, [ignore]) AT_CHECK([cmp $samp ../../"lossless_inter_"$decout]) # modified GOP structure ! AT_CHECK([at_wrap dirac_encoder -L1_sep 6 -field_coding -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"L1sep6_inter_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"L1sep6_inter_"$encout ../../"L1sep6_inter_"$decout], 0, [ignore]) # pre-filter CWM ! AT_CHECK([at_wrap dirac_encoder -field_coding -prefilter CWM 5 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"inter_cwm5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_cwm5_"$encout ../../"inter_cwm5_"$decout], 0, [ignore]) # pre-filter RECTLP ! AT_CHECK([at_wrap dirac_encoder -field_coding -prefilter RECTLP 5 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"inter_rectlp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_rectlp5_"$encout ../../"inter_rectlp5_"$decout], 0, [ignore]) # pre-filter DIAGLP ! AT_CHECK([at_wrap dirac_encoder -field_coding -prefilter DIAGLP 5 -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"inter_diaglp5_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_diaglp5_"$encout ../../"inter_diaglp5_"$decout], 0, [ignore]) # pre-filter DIAGLP ! AT_CHECK([at_wrap dirac_encoder -combined_me -field_coding -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"inter_combined_me_"$encout], 0, [ignore]) AT_CHECK([at_wrap dirac_decoder ../../"inter_combined_me_"$encout ../../"inter_combined_me_"$decout], 0, [ignore]) # full search ME ! #AT_CHECK([at_wrap dirac_encoder -full_search 32 32 -field_coding -local $preset -width $width -height $height -cformat $chroma $extras $samp ../../"inter_full_search_"$encout], 0, [ignore]) ! #AT_CHECK([at_wrap dirac_decoder ../../"inter_full_search_"$encout ../../"inter_full_search_"$decout], 0, [ignore]) done AT_CLEANUP |
|
From: Anuradha S. <asu...@us...> - 2009-02-09 09:45:03
|
Update of /cvsroot/dirac/compress/libdirac_common In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv18277/libdirac_common Modified Files: band_vlc.h Log Message: Fix GCC 4.1.2 warning. Author: asu...@di... <anu...@ho...> Index: band_vlc.h =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_common/band_vlc.h,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** band_vlc.h 21 Jan 2009 05:18:09 -0000 1.7 --- band_vlc.h 9 Feb 2009 09:44:56 -0000 1.8 *************** *** 58,61 **** --- 58,65 ---- /*! Constructor */ ArithCodecToVLCAdapter(SubbandByteIO* subband_byteio, size_t number_of_contexts); + + /*! Virtual Destructor */ + virtual ~ArithCodecToVLCAdapter(){} + /* Compresses the input and returns the number of bits written */ int Compress (CoeffArray &in_data); |
|
From: Anuradha S. <asu...@us...> - 2009-01-21 05:23:27
|
Update of /cvsroot/dirac/compress/decoder In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2769/decoder Modified Files: decmain.cpp Log Message: Actually fix the issue addressed in (082d7a2) (ignored result from fwrite) Ubuntu forcibly enables FORTIFY_SOURCE, which warns on unused return values on fwrite. This may either be fixed by: #undef _FORTIFY_SOURCE #define _FORTIFY_SOURCE 0 Or, by causing the application to exit on a short write. NB, it could also be solved by doing a series of fwrites(), and checking ferror() at the end of them. FORTIFY_SOURCE would still fail in this case. Author: David Flynn <da...@rd...> Index: decmain.cpp =================================================================== RCS file: /cvsroot/dirac/compress/decoder/decmain.cpp,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** decmain.cpp 21 Jan 2009 05:22:44 -0000 1.29 --- decmain.cpp 21 Jan 2009 05:23:24 -0000 1.30 *************** *** 66,71 **** } ! static void WritePicData (dirac_decoder_t *decoder, FILE *fp) { assert (decoder != NULL); assert (fp); --- 66,72 ---- } ! static int WritePicData (dirac_decoder_t *decoder, FILE *fp) { + int len = 0; assert (decoder != NULL); assert (fp); *************** *** 74,84 **** assert(decoder->fbuf->buf[0]); ! (void) fwrite (decoder->fbuf->buf[0], 1, decoder->src_params.width*decoder->src_params.height, fp); assert(decoder->fbuf->buf[1]); ! (void) fwrite (decoder->fbuf->buf[1], 1, decoder->src_params.chroma_width*decoder->src_params.chroma_height, fp); assert(decoder->fbuf->buf[2]); ! (void) fwrite (decoder->fbuf->buf[2], 1, decoder->src_params.chroma_width*decoder->src_params.chroma_height, fp); } --- 75,87 ---- assert(decoder->fbuf->buf[0]); ! len += fwrite (decoder->fbuf->buf[0], decoder->src_params.width*decoder->src_params.height, 1, fp); assert(decoder->fbuf->buf[1]); ! len += fwrite (decoder->fbuf->buf[1], decoder->src_params.chroma_width*decoder->src_params.chroma_height, 1, fp); assert(decoder->fbuf->buf[2]); ! len += fwrite (decoder->fbuf->buf[2], decoder->src_params.chroma_width*decoder->src_params.chroma_height, 1, fp); ! ! return len == 3; } *************** *** 212,216 **** } /* picture available for display */ ! WritePicData(decoder, fpdata); break; --- 215,223 ---- } /* picture available for display */ ! if (!WritePicData(decoder, fpdata)) ! { ! perror("Write failed"); ! goto cleanup; ! } break; *************** *** 224,227 **** --- 231,235 ---- } } while (bytes > 0 && state != STATE_INVALID); + cleanup: stop_t=clock(); |
|
From: Anuradha S. <asu...@us...> - 2009-01-21 05:22:48
|
Update of /cvsroot/dirac/compress/decoder In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2728/decoder Modified Files: decmain.cpp Log Message: fix build error with -Werror and igored return value from fwrite(3c) It should be noted that the return value from fwrite is mostly useless: if the arguments to fwrite do not set size=1, then there is little hope of discovering howmuch data had been written before the error. C99 states: If an error occurs, the resulting value of the file position indicator for the stream is indeterminate. Error squashed by discarding result. Author: David Flynn <da...@rd...> Index: decmain.cpp =================================================================== RCS file: /cvsroot/dirac/compress/decoder/decmain.cpp,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** decmain.cpp 27 May 2008 01:29:52 -0000 1.28 --- decmain.cpp 21 Jan 2009 05:22:44 -0000 1.29 *************** *** 74,84 **** assert(decoder->fbuf->buf[0]); ! fwrite (decoder->fbuf->buf[0], decoder->src_params.width*decoder->src_params.height, 1, fp); assert(decoder->fbuf->buf[1]); ! fwrite (decoder->fbuf->buf[1], decoder->src_params.chroma_width*decoder->src_params.chroma_height, 1, fp); assert(decoder->fbuf->buf[2]); ! fwrite (decoder->fbuf->buf[2], decoder->src_params.chroma_width*decoder->src_params.chroma_height, 1, fp); } --- 74,84 ---- assert(decoder->fbuf->buf[0]); ! (void) fwrite (decoder->fbuf->buf[0], 1, decoder->src_params.width*decoder->src_params.height, fp); assert(decoder->fbuf->buf[1]); ! (void) fwrite (decoder->fbuf->buf[1], 1, decoder->src_params.chroma_width*decoder->src_params.chroma_height, fp); assert(decoder->fbuf->buf[2]); ! (void) fwrite (decoder->fbuf->buf[2], 1, decoder->src_params.chroma_width*decoder->src_params.chroma_height, fp); } |
|
From: Anuradha S. <asu...@us...> - 2009-01-21 05:22:10
|
Update of /cvsroot/dirac/compress/libdirac_encoder In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2688/libdirac_encoder Modified Files: quant_chooser.cpp Log Message: encoder: remove limit on DC quantizer. Previous fixes should remove the requirement to limit qf on DC blocks to 4. Author: David Flynn <da...@rd...> Index: quant_chooser.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_encoder/quant_chooser.cpp,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** quant_chooser.cpp 21 Jan 2009 05:18:48 -0000 1.19 --- quant_chooser.cpp 21 Jan 2009 05:22:05 -0000 1.20 *************** *** 88,95 **** int num_quants( 4 * max_bit + 5 ); - // If we have a DC band, then restrict the maximum quantiser - if (node.Xp()==0 && node.Yp()==0) - num_quants = std::min(num_quants, 5 ); - // Set the array sizes m_costs.Resize( num_quants ); --- 88,91 ---- |
|
From: Anuradha S. <asu...@us...> - 2009-01-21 05:21:31
|
Update of /cvsroot/dirac/compress/libdirac_common In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2636/libdirac_common Modified Files: common.cpp Log Message: encoder: Ensure that there is atleast 1 codeblock per subband Author: David Flynn <da...@rd...> Index: common.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_common/common.cpp,v retrieving revision 1.79 retrieving revision 1.80 diff -C2 -d -r1.79 -r1.80 *** common.cpp 21 Jan 2009 05:19:30 -0000 1.79 --- common.cpp 21 Jan 2009 05:21:27 -0000 1.80 *************** *** 502,546 **** int xl_pad = (Xl() + (1 << depth)-1) & ~((1 << depth)-1); int yl_pad = (Yl() + (1 << depth)-1) & ~((1 << depth)-1); - switch (GetVideoFormat()) - { - case VIDEO_FORMAT_QSIF525: - case VIDEO_FORMAT_QCIF: - case VIDEO_FORMAT_CUSTOM: - case VIDEO_FORMAT_SIF525: - case VIDEO_FORMAT_CIF: - case VIDEO_FORMAT_4CIF: - case VIDEO_FORMAT_4SIF525: - case VIDEO_FORMAT_SD_480I60: - case VIDEO_FORMAT_SD_576I50: - case VIDEO_FORMAT_HD_720P60: - case VIDEO_FORMAT_HD_720P50: - case VIDEO_FORMAT_HD_1080I60: - case VIDEO_FORMAT_HD_1080I50: - case VIDEO_FORMAT_HD_1080P60: - case VIDEO_FORMAT_HD_1080P50: - case VIDEO_FORMAT_UHDTV_4K60: - case VIDEO_FORMAT_UHDTV_4K50: - case VIDEO_FORMAT_UHDTV_8K60: - case VIDEO_FORMAT_UHDTV_8K50: - case VIDEO_FORMAT_DIGI_CINEMA_2K24: - case VIDEO_FORMAT_DIGI_CINEMA_4K24: - /* NB, could have different sizes based upon ftype == INTRA_PICTURE */ - /* aim for 12x12 codeblocks in each subband, execpt the DC with 4x4 */ - for (int i = 1; i <= depth; i++) - SetCodeBlocks(depth-i+1, (xl_pad >> i) /12, (yl_pad >> i) /12); - SetCodeBlocks(0, (xl_pad >> depth) /4, (yl_pad >> depth) /4); - break; ! default: ! DIRAC_THROW_EXCEPTION( ! ERR_INVALID_VIDEO_FORMAT, ! "Unsupported video format", ! SEVERITY_PICTURE_ERROR); ! break; ! } } - - int EncoderParams::GOPLength() const { --- 502,513 ---- int xl_pad = (Xl() + (1 << depth)-1) & ~((1 << depth)-1); int yl_pad = (Yl() + (1 << depth)-1) & ~((1 << depth)-1); ! /* NB, could have different sizes based upon ftype == INTRA_PICTURE */ ! /* aim for 12x12 codeblocks in each subband, execpt the DC with 4x4 */ ! for (int i = 1; i <= depth; i++) ! SetCodeBlocks(depth-i+1, std::max(1,(xl_pad >> i) /12), std::max(1, (yl_pad >> i) /12)); ! SetCodeBlocks(0, std::max(1,(xl_pad >> depth) /4), std::max(1,(yl_pad >> depth) /4)); } int EncoderParams::GOPLength() const { |
|
From: Anuradha S. <asu...@us...> - 2009-01-21 05:21:05
|
Update of /cvsroot/dirac/compress/libdirac_encoder In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2567/libdirac_encoder Modified Files: picture_compress.cpp Log Message: encoder: remove dc quantizer=0 hacks Fixes in bitstream handling and quant selection should've negated the need for these hacks. Author: David Flynn <da...@wo...> Committer: David Flynn <da...@rd...> Index: picture_compress.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_encoder/picture_compress.cpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** picture_compress.cpp 21 Jan 2009 05:20:22 -0000 1.27 --- picture_compress.cpp 21 Jan 2009 05:20:57 -0000 1.28 *************** *** 632,638 **** est_bits[b] = SelectMultiQuants( coeff_data , bands , b, lambda, pp, csort ); - // Force the first codeblock in the DC band to be 0 quant. - bands(bands.Length()).SetQuantIndex( 0 ); - bands(bands.Length()).GetCodeBlocks()[0][0].SetQuantIndex( 0 ); } else{ --- 632,635 ---- |
|
From: Anuradha S. <asu...@us...> - 2009-01-21 05:20:27
|
Update of /cvsroot/dirac/compress/libdirac_encoder In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2526/libdirac_encoder Modified Files: picture_compress.cpp Log Message: encoder: dont quantize the first dc codeblock - Attempt to reduce DC errors by effectively not quantizing the first value (predicted from zero). Author: David Flynn <da...@rd...> Index: picture_compress.cpp =================================================================== RCS file: /cvsroot/dirac/compress/libdirac_encoder/picture_compress.cpp,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** picture_compress.cpp 18 Nov 2008 23:19:17 -0000 1.26 --- picture_compress.cpp 21 Jan 2009 05:20:22 -0000 1.27 *************** *** 628,649 **** // Select all the quantizers if ( !m_encparams.Lossless() ){ ! ! if (pp.PicSort().IsIntra() == true ){ ! bands(bands.Length()).SetQuantIndex( 0 ); ! est_bits[bands.Length()] = 0; ! TwoDArray<CodeBlock>& blocks = bands(bands.Length()).GetCodeBlocks(); ! for (int j=0; j<blocks.LengthY() ;++j) ! for (int i=0; i<blocks.LengthX() ;++i) ! blocks[j][i].SetQuantIndex( 0 ); ! ! } ! else{ ! est_bits[bands.Length()] = SelectMultiQuants( coeff_data , bands , bands.Length(), lambda, ! pp, csort ); ! } ! // Now do the rest of the bands. ! for ( int b=bands.Length()-1 ; b>=1 ; --b ) est_bits[b] = SelectMultiQuants( coeff_data , bands , b, lambda, pp, csort ); } else{ --- 628,638 ---- // Select all the quantizers if ( !m_encparams.Lossless() ){ ! // Set quantizers for all bands. ! for ( int b=bands.Length() ; b>=1 ; --b ) est_bits[b] = SelectMultiQuants( coeff_data , bands , b, lambda, pp, csort ); + // Force the first codeblock in the DC band to be 0 quant. + bands(bands.Length()).SetQuantIndex( 0 ); + bands(bands.Length()).GetCodeBlocks()[0][0].SetQuantIndex( 0 ); } else{ |