Setting Default Parameters...
Parsing Configfile encoder_small.cfg............................................................................................................................................................................................................................
Parsing command line string 'IGNORED'.
Parsing command line string 'IGNORED'.
Parsing command line string 'IGNORED'.

------------------------------- JM 12.1 (FRExt) --------------------------------
 Input YUV file                    : foreman_part_qcif_444.yuv 
 Output H.264 bitstream            : Output/test.264 
 Output YUV file                   : Output/test_rec.yuv 
 YUV Format                        : YUV 4:2:2 
 Frames to be encoded I-P/B        : 2/1
 PicInterlace / MbInterlace        : 0/0
 Transform8x8Mode                  : 1
-------------------------------------------------------------------------------
  Frame  Bit/pic    QP   SnrY    SnrU    SnrV    Time(ms) MET(ms) Frm/Fld Ref  
-------------------------------------------------------------------------------
0000(NVB)       0 
0000(IDR)       0   28  37.492  37.535  39.793         0       0    FRM    1
0002(P)         0   28  43.547  38.497  36.904         0       0    FRM    1
0001(B)         0   30  43.308  32.833  33.469         0       0    FRM    0
-------------------------------------------------------------------------------
 Total Frames:  3 (2) 
 Leaky BucketRateFile does not have valid entries.
 Using rate calculated from avg. rate 
-------------------------------------------------------------------------------
 Freq. for encoded bitstream       : 15
 ME Metric for Refinement Level 0  : SAD
 ME Metric for Refinement Level 1  : Hadamard SAD
 ME Metric for Refinement Level 2  : Hadamard SAD
 Mode Decision Metric              : Hadamard SAD
 Motion Estimation for components  : Y
 Image format                      : 176x144
 Error robustness                  : Off
 Search range                      : 16
 Total number of references        : 5
 References for P slices           : 5
 List0 references for B slices     : 5
 List1 references for B slices     : 1
 Sequence type                     : I-B-P-B-P (QP: I 28, P 28, B 30) 
 Entropy coding method             : CABAC
 Profile/Level IDC                 : (144,40)
 Motion Estimation Scheme          : Fast Full Search
 Search range restrictions         : none
 RD-optimized mode decision        : used
 Data Partitioning Mode            : 1 partition 
 Output File Format                : H.264 Bit Stream File Format 
------------------ Average data all frames  -----------------------------------
 PSNR Y(dB)                        : 41.45
 PSNR U(dB)                        : 36.29
 PSNR V(dB)                        : 36.72
 cSNR Y(dB)                        : 40.47 ( 5.83)
 cSNR U(dB)                        : 35.54 (18.18)
 cSNR V(dB)                        : 35.97 (16.45)
 Total bits                        : 62080 (I 21480, P 4920, B 35504 NVB 176) 
 Bit rate (kbit/s)  @ 30.00 Hz     : 620.80
 Bits to avoid Startcode Emulation : 0 
 Bits for parameter sets           : 176 
-------------------------------------------------------------------------------
Exit JM 12 (FRExt) encoder ver 12.1 
exit 0
