sysKin
15th September 2002, 13:57
Hi everyone.
I'm using Compare() function to compute psnr between avi encoded with xvid and original avi encoded with huffyuv. It works great, but I would like to have the comparsion made as soon as I can, not as long as the movie plays.
I found assumefps() function which changes fps without affecting the picture.
When I tried the following:
orig = avifilesource("f:\war3.avi")
encoded = avifilesource("e:\test.avi")
assumefps(encoded, 100, 1, false)
assumefps(orig, 100, 1, false)
compare(encoded, orig, "", "test.log", false)
then assumefps() had no effect.
However, when I try the following:
orig = avifilesource("f:\war3.avi")
encoded = avifilesource("e:\test.avi")
compare(encoded, orig, "", "test.log", false)
assumefps(encoded, 100, 1, false)
assumefps(orig, 100, 1, false)
then assumefps has it's effect indeed, but compare() doesn't work! It just outputs Comparing channel(s) YUV
Mean Max Max
Absolute Mean Pos. Neg.
Frame Dev. Dev. Dev. Dev. PSNR (dB)
-----------------------------------------------------
Total frames processed: 0
Minimum Average Maximum
Mean Absolute Deviation: 0.0000 -1.#IND 0.0000
Mean Deviation: +0.0000 -1.#IND +0.0000
PSNR: 0.0000 -1.#IND 0.0000
Can you tell me what I'm doing wrong?
If it's a bug, I can give you this (possibly useful) information:
* if I have both assumefps()s then the logfile is opened and closed immidietly, and I can delete it even while the video is playing
* if I have only one assumefps() - doesn't matter which one - then the logfile is opened and stays open until I close the video (just as if it was waiting for the first frame to process)
* any assumefps() before compare() has completely no effect, just as if it wasn't there
* if I say 'true' for the on-screen graph, then the graph is not there if I use assumefps() (just like the logfile is not there)
OK, dunno what next, just ask. Or tell me what I'm doing wrong ;)
Radek 'sysKin' Czyz
I'm using Compare() function to compute psnr between avi encoded with xvid and original avi encoded with huffyuv. It works great, but I would like to have the comparsion made as soon as I can, not as long as the movie plays.
I found assumefps() function which changes fps without affecting the picture.
When I tried the following:
orig = avifilesource("f:\war3.avi")
encoded = avifilesource("e:\test.avi")
assumefps(encoded, 100, 1, false)
assumefps(orig, 100, 1, false)
compare(encoded, orig, "", "test.log", false)
then assumefps() had no effect.
However, when I try the following:
orig = avifilesource("f:\war3.avi")
encoded = avifilesource("e:\test.avi")
compare(encoded, orig, "", "test.log", false)
assumefps(encoded, 100, 1, false)
assumefps(orig, 100, 1, false)
then assumefps has it's effect indeed, but compare() doesn't work! It just outputs Comparing channel(s) YUV
Mean Max Max
Absolute Mean Pos. Neg.
Frame Dev. Dev. Dev. Dev. PSNR (dB)
-----------------------------------------------------
Total frames processed: 0
Minimum Average Maximum
Mean Absolute Deviation: 0.0000 -1.#IND 0.0000
Mean Deviation: +0.0000 -1.#IND +0.0000
PSNR: 0.0000 -1.#IND 0.0000
Can you tell me what I'm doing wrong?
If it's a bug, I can give you this (possibly useful) information:
* if I have both assumefps()s then the logfile is opened and closed immidietly, and I can delete it even while the video is playing
* if I have only one assumefps() - doesn't matter which one - then the logfile is opened and stays open until I close the video (just as if it was waiting for the first frame to process)
* any assumefps() before compare() has completely no effect, just as if it wasn't there
* if I say 'true' for the on-screen graph, then the graph is not there if I use assumefps() (just like the logfile is not there)
OK, dunno what next, just ask. Or tell me what I'm doing wrong ;)
Radek 'sysKin' Czyz