From: Thomas D. <tj...@us...> - 2008-01-31 11:25:50
|
Update of /cvsroot/dirac/compress/encoder In directory sc8-pr-cvs12.sourceforge.net:/tmp/cvs-serv24907/encoder Modified Files: encmain.cpp Log Message: Major refactor to make clear the distinction between pictures (frames OR fields) and frames or fields specifically. Frame classes have been renamed to be Picture classes, along with associated metadata. No coding parameters have been changed. Index: encmain.cpp =================================================================== RCS file: /cvsroot/dirac/compress/encoder/encmain.cpp,v retrieving revision 1.65 retrieving revision 1.66 diff -C2 -d -r1.65 -r1.66 *** encmain.cpp 3 Jan 2008 03:36:30 -0000 1.65 --- encmain.cpp 31 Jan 2008 11:25:15 -0000 1.66 *************** *** 96,99 **** --- 96,100 ---- cout << "\nstop ulong EOF Frame number after which encoding finishes"; cout << "\nfield_coding bool false Set picture coding type to field coding. Default coding type is by frames"; + cout << "\nqcx_coding bool false Experimental quincunxial coding mode. Not selectable if field_coding is true"; cout << "\nL1_sep ulong 0UL Separation of L1 frames"; cout << "\nnum_L1 ulong 0UL Number of L1 frames"; *************** *** 195,200 **** try { ! fdata << std::endl << "[frame:" << instr.fnum << "]"; ! if (instr.ftype == INTRA_FRAME) { fdata << ">intra" << std::endl; --- 196,201 ---- try { ! fdata << std::endl << "[frame:" << instr.pnum << "]"; ! if (instr.ptype == INTRA_PICTURE) { fdata << ">intra" << std::endl; *************** *** 741,744 **** --- 742,751 ---- fields_factor = 2; } + else if ( strcmp(argv[i], "-qcx_coding") == 0 ) + { + parsed[i] = true; + enc_ctx.enc_params.picture_coding_mode = 2; + fields_factor = 1; + } else if ( strcmp(argv[i], "-qf") == 0 ) { *************** *** 1063,1067 **** end_pos = INT_MAX; ! /* don't try and skup frames if they aren't any to skip, eg * this won't work on nonseekable filehandles. */ if (start_pos && !Skip( ip_pic_ptr, start_pos, frame_size )) --- 1070,1074 ---- end_pos = INT_MAX; ! /* don't try and skip frames if they aren't any to skip, eg * this won't work on nonseekable filehandles. */ if (start_pos && !Skip( ip_pic_ptr, start_pos, frame_size )) *************** *** 1130,1134 **** outfile.write((char *)encoder->enc_buf.buffer, encoder->enc_buf.size); ! pictures_written++; break; --- 1137,1141 ---- outfile.write((char *)encoder->enc_buf.buffer, encoder->enc_buf.size); ! pictures_written++;// Frames????????????????????? break; |