View Single Post
Old 27th May 2003, 13:34   #27  |  Link
Acaila
Retired
 
Acaila's Avatar
 
Join Date: Jan 2002
Location: Netherlands
Posts: 1,529
@Didee:

JimiK made some valid points there. I agree with him that the coefficients should not be scaled so linearly as you've done in your matrices, because high frequencies are harder to notice than low. With those matrices you rely almost solely on quantizers to scale the bitrate, while I believe you should rely on both QM and quantizers. What I mean with that is that a matrix with higher values in the bottom-right and lower in the top-left should give better scaling (with higher quality possible at quant 2 and less filesize distance between quants, see below). Once a frame gets encoded with higher quantizers you don't want to loose (relatively) just as many low frequencies as high ones because the low have a lot more impact on visual quality.

Also ffdshow indeed has problems with values less than 16, however as far as I can tell it only has problems with the top-left value being lower than 16. Whenever I put a 16 in the top-left corner everything played just fine no matter how low the other values were.

Something else I've noticed is that VHQ doesn't seem to work very well (lower PSNR) on custom matrices compared to H.263 and MPEG. Can anyone confirm this?

The matrices I would recommend:
Code:
Intra:                    Inter:
08 09 10 11 12 13 14 15   16 08 10 12 14 16 18 20
09 10 11 12 13 14 15 16   08 10 12 14 16 18 20 22
10 11 12 13 14 15 16 17   10 12 14 16 18 20 22 24
11 12 13 14 15 16 17 18   12 14 16 18 20 22 24 27
12 13 14 15 16 17 18 19   14 16 18 20 22 24 27 30
13 14 15 16 17 18 19 20   16 18 20 22 24 27 30 33
14 15 16 17 18 19 20 20   18 20 22 24 27 30 33 36
15 16 17 18 19 20 20 20   20 22 24 27 30 33 36 40
Filesize and PSNR are distributed as below (high to low):

Code:
Matrix       Quantizer
Mine	         2
H.263	         2
Mine    	 3
Mine    	 4
H.263	         3
Mine      	 5
Mine    	 6
H.263	         4
Mine    	 7
Mine    	 8
H.263	         5
As you can see this gives better bitrate scaling just like Didee suggested and the option for better quality at quant 2. It also doesn't scale low and high fequencies linearly because I don't think that's right.

Last edited by Acaila; 27th May 2003 at 13:41.
Acaila is offline   Reply With Quote