Bulletproof
4th April 2003, 06:58
These are some tests I did with Nic's latest build. Keep in mind that PSNR is not a definitive measure of quality, these numbers are best used as just a factor in your decisions and not a single deciding factor. I have also included two matrix files that I have done, one of them is my "Heavy compression" matrix, this will make a smaller file than using the H.263 matrix, however you may notice some artifacting around objects, I only advise you to use this matrix on live action movies with lots of movement. The other matrix I have included is the "High quality" matrix, this will make a bigger filesize, but not extremely large and is worth the quality it can give in my opinion. The file I worked with is 5608 frames long, and is of a 3D CG movie, the PSNR tests were done with 300 vital frames of the movie which contain many varying forms of motion, color, and detail. All filesizes that are displayed show the entire 5608 frames encoded and not 300 frames. These were all done using constant quantizer 2.
Original File Size: 565,639,168
H263:
Average PSNR (Y U V): 44.57, 47.45, 47.08
Total Average PSNR: 46.37
Filesize: 123,009,024
H263 + Luminance Masking:
Average PSNR (Y U V): 43.19, 46.63, 46.16
Total Average PSNR: 45.33
Filesize: 113,905,664
H263 + Qpel:
Average PSNR (Y U V): 43.90, 47.32, 46.96
Total Average PSNR: 46.06
Filesize: 128,686,080
H263 + GMC:
Average PSNR (Y U V): 44.57, 47.46, 47.07
Total Average PSNR: 46.37
Filesize: 123,211,776
H263 + Chroma:
Average PSNR (Y U V): 44.69, 47.67, 47.26
Total Average PSNR: 46.54
Filesize: 120,586,240
H263 + Chroma Optimizer:
Average PSNR (Y U V): 44.51, 47.32, 46.97
Total Average PSNR: 46.27
Filesize: 123,131,904
H263 + VHQ1:
Average PSNR (Y U V): 45.05, 48.13, 47.73
Total Average PSNR: 46.97
Filesize: 110,811,136
H263 + VHQ2:
Average PSNR (Y U V): 44.85, 48.05, 47.66
Total Average PSNR: 46.85
Filesize: 108,177,408
H263 + VHQ3:
Average PSNR (Y U V): 44.77, 48.03, 47.62
Total Average PSNR: 46.81
Filesize: 107,204,608
H263 + VHQ4:
Average PSNR (Y U V): 44.72, 47.99, 47.58
Total Average PSNR: 46.76
Filesize: 106,463,232
H263 + B-Frames 1 150 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,378,816
H263 + B-Frames 1 200 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,102,336
H263 + B-Frames 1 150 150:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,378,816
H263 + B-Frames 1 300 200:
Average PSNR (Y U V): 23.68, 38.89, 37.26
Total Average PSNR: 33.28
Filesize: 120,647,680
H263 + B-Frames 2 150 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Fielsize: 121,405,440
H263 + B-Frames 6 150 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,415,680
H263 + B-Frames 1 150 100 + Luma + GMC + Chroma + Chroma Optimizer + Qpel:
Average PSNR (Y U V): 23.65, 38.71, 37.12
Total Average PSNR: 33.16
Filesize: 115,097,600
H263 + B-Frames 1 150 100 + Luma + VHQ4 + Chroma + Chroma Optimizer + Qpel:
Average PSNR (Y U V): 23.65, 38.68, 37.11
Total Average PSNR: 33.14
Filesize: 106,608,640
BHQ Matrix (No extra settings):
Average PSNR (Y U V): 44.31, 47.20, 46.83
Total Average PSNR: 46.11
Filesize: 119,066,624
BHC Matrix (No extra settings):
Average PSNR (Y U V): 40.09, 46.27, 45.59
Total Average PSNR: 43.98
Filesize: 93,372,416
MPEG Matrix (No extra settings):
Average PSNR (Y U V): 17.32, 30.26, 26.37
Total Average PSNR: 24.65
Filesize: 124,174,336
Facts about the research for this particular video:
1. Q-Pel increased the filesize by 5 megs and has lower PSNR by .30. :(
2. Luminance Masking took off 10 megs and only has a difference of .4 PSNR. :) :) :)
3. GMC increased the filesize by 200k but there is no difference on the Y plane (luma) PSNR, but the U plane has a better PSNR of .1 and the V plane has a lower PSNR of .1. :(
4. Chroma Motion made the PSNR better by .20 and took off 3 megs. :) :)
5. Chroma Optimizer increased the filesize by 100k but the PSNR is lower by .10. :(
6. VHQ1 made the PSNR better by .60 and took off 13 megs. :) :) :)
7. VHQ is a great addition, in all 4 modes the PSNR was always higher than the original H263 encode and has a lower filesize. :) :) :)
8. The default B-Frames setting took off only 2 megs but has a large PSNR drop of 13.10. However upon visual inspection, the change in quality did not seem that dramatic.
9. B-Frames with 200 100 was smaller by 200k yet has the exact same PSNR as the default B-frames setting. I did not visually inspect this.
10. Default settings with an offset of 150 just made an identical file that would've been made with 150 100 (default B-Frames setting).
11. High B-Frames settings at 300 200 is smaller by a meg versus the regular setting and has a higher psnr of .1. Upon visual inspection the video did actually seem to look better and it had a smaller filesize. :)
12. 2 B-frames with regular settings increased the size by 300k but no PSNR change. :(
13. 6 B-frames with regular setting increased the size by 300k but no PSNR change.
14. When using VHQ4 instead of GMC with all extra options enabled, it takes off 9 megs with only a PSNR difference of .2 versus using GMC. :) :) :)
15. My high quality matrix gets a lower PSNR rating of .26 versus H263, however upon visual inspection, the high quality matrix looks better, and the matrix made the filesize 4 megs smaller which surprised me. This matrix works good for all resolutions.
16. My heavy compression matrix lowered the filesize by 30 megs, the PSNR difference is 2.00 lower than H263 but upon visual inspection it does not look that bad and seemed very acceptable quality, but as I said, use this only for live action stuff with good motion. Also, I have only used this with constant quantizer of 2, it may not be wise to use this with high quantizers, and this matrix MUST be used on high resolution video, this means 640x480 and above, otherwise it will start to look really bad. I have not yet tested it on 16:9 resized videos.
17. The MPEG matrix increased the filesize by a meg and greatly reduced the PSNR, however upon visual inspection it doesnt look bad at all.
18. After the test I have realized that some of the B-frames tests are flawed. I am using a constant quantizer, therefore the B-frames cannot variate and be used to their advantage.
Here are the matrixes I made:
http://www.boomspeed.com/boya/BPMTX.rar
Original File Size: 565,639,168
H263:
Average PSNR (Y U V): 44.57, 47.45, 47.08
Total Average PSNR: 46.37
Filesize: 123,009,024
H263 + Luminance Masking:
Average PSNR (Y U V): 43.19, 46.63, 46.16
Total Average PSNR: 45.33
Filesize: 113,905,664
H263 + Qpel:
Average PSNR (Y U V): 43.90, 47.32, 46.96
Total Average PSNR: 46.06
Filesize: 128,686,080
H263 + GMC:
Average PSNR (Y U V): 44.57, 47.46, 47.07
Total Average PSNR: 46.37
Filesize: 123,211,776
H263 + Chroma:
Average PSNR (Y U V): 44.69, 47.67, 47.26
Total Average PSNR: 46.54
Filesize: 120,586,240
H263 + Chroma Optimizer:
Average PSNR (Y U V): 44.51, 47.32, 46.97
Total Average PSNR: 46.27
Filesize: 123,131,904
H263 + VHQ1:
Average PSNR (Y U V): 45.05, 48.13, 47.73
Total Average PSNR: 46.97
Filesize: 110,811,136
H263 + VHQ2:
Average PSNR (Y U V): 44.85, 48.05, 47.66
Total Average PSNR: 46.85
Filesize: 108,177,408
H263 + VHQ3:
Average PSNR (Y U V): 44.77, 48.03, 47.62
Total Average PSNR: 46.81
Filesize: 107,204,608
H263 + VHQ4:
Average PSNR (Y U V): 44.72, 47.99, 47.58
Total Average PSNR: 46.76
Filesize: 106,463,232
H263 + B-Frames 1 150 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,378,816
H263 + B-Frames 1 200 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,102,336
H263 + B-Frames 1 150 150:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,378,816
H263 + B-Frames 1 300 200:
Average PSNR (Y U V): 23.68, 38.89, 37.26
Total Average PSNR: 33.28
Filesize: 120,647,680
H263 + B-Frames 2 150 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Fielsize: 121,405,440
H263 + B-Frames 6 150 100:
Average PSNR (Y U V): 23.67, 38.88, 37.25
Total Average PSNR: 33.27
Filesize: 121,415,680
H263 + B-Frames 1 150 100 + Luma + GMC + Chroma + Chroma Optimizer + Qpel:
Average PSNR (Y U V): 23.65, 38.71, 37.12
Total Average PSNR: 33.16
Filesize: 115,097,600
H263 + B-Frames 1 150 100 + Luma + VHQ4 + Chroma + Chroma Optimizer + Qpel:
Average PSNR (Y U V): 23.65, 38.68, 37.11
Total Average PSNR: 33.14
Filesize: 106,608,640
BHQ Matrix (No extra settings):
Average PSNR (Y U V): 44.31, 47.20, 46.83
Total Average PSNR: 46.11
Filesize: 119,066,624
BHC Matrix (No extra settings):
Average PSNR (Y U V): 40.09, 46.27, 45.59
Total Average PSNR: 43.98
Filesize: 93,372,416
MPEG Matrix (No extra settings):
Average PSNR (Y U V): 17.32, 30.26, 26.37
Total Average PSNR: 24.65
Filesize: 124,174,336
Facts about the research for this particular video:
1. Q-Pel increased the filesize by 5 megs and has lower PSNR by .30. :(
2. Luminance Masking took off 10 megs and only has a difference of .4 PSNR. :) :) :)
3. GMC increased the filesize by 200k but there is no difference on the Y plane (luma) PSNR, but the U plane has a better PSNR of .1 and the V plane has a lower PSNR of .1. :(
4. Chroma Motion made the PSNR better by .20 and took off 3 megs. :) :)
5. Chroma Optimizer increased the filesize by 100k but the PSNR is lower by .10. :(
6. VHQ1 made the PSNR better by .60 and took off 13 megs. :) :) :)
7. VHQ is a great addition, in all 4 modes the PSNR was always higher than the original H263 encode and has a lower filesize. :) :) :)
8. The default B-Frames setting took off only 2 megs but has a large PSNR drop of 13.10. However upon visual inspection, the change in quality did not seem that dramatic.
9. B-Frames with 200 100 was smaller by 200k yet has the exact same PSNR as the default B-frames setting. I did not visually inspect this.
10. Default settings with an offset of 150 just made an identical file that would've been made with 150 100 (default B-Frames setting).
11. High B-Frames settings at 300 200 is smaller by a meg versus the regular setting and has a higher psnr of .1. Upon visual inspection the video did actually seem to look better and it had a smaller filesize. :)
12. 2 B-frames with regular settings increased the size by 300k but no PSNR change. :(
13. 6 B-frames with regular setting increased the size by 300k but no PSNR change.
14. When using VHQ4 instead of GMC with all extra options enabled, it takes off 9 megs with only a PSNR difference of .2 versus using GMC. :) :) :)
15. My high quality matrix gets a lower PSNR rating of .26 versus H263, however upon visual inspection, the high quality matrix looks better, and the matrix made the filesize 4 megs smaller which surprised me. This matrix works good for all resolutions.
16. My heavy compression matrix lowered the filesize by 30 megs, the PSNR difference is 2.00 lower than H263 but upon visual inspection it does not look that bad and seemed very acceptable quality, but as I said, use this only for live action stuff with good motion. Also, I have only used this with constant quantizer of 2, it may not be wise to use this with high quantizers, and this matrix MUST be used on high resolution video, this means 640x480 and above, otherwise it will start to look really bad. I have not yet tested it on 16:9 resized videos.
17. The MPEG matrix increased the filesize by a meg and greatly reduced the PSNR, however upon visual inspection it doesnt look bad at all.
18. After the test I have realized that some of the B-frames tests are flawed. I am using a constant quantizer, therefore the B-frames cannot variate and be used to their advantage.
Here are the matrixes I made:
http://www.boomspeed.com/boya/BPMTX.rar