diff options
Diffstat (limited to 'converter/ppm/ppmtompeg/docs/EXTENSIONS')
-rw-r--r-- | converter/ppm/ppmtompeg/docs/EXTENSIONS | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/converter/ppm/ppmtompeg/docs/EXTENSIONS b/converter/ppm/ppmtompeg/docs/EXTENSIONS new file mode 100644 index 00000000..c683fbf8 --- /dev/null +++ b/converter/ppm/ppmtompeg/docs/EXTENSIONS @@ -0,0 +1,41 @@ +EXTENSIONS +---------- + +This is a list of things that we'd like to incorporate into the encoder. +If you succeed in implementing any of them, please let us know! + +* better B-frame search technique +* use DCT-space when computing error terms +* vary the q-scale according to the error term +* other motion vector search techniques +* modify the program to have a finer-grained parallelism option -- we + can probably encode slices in parallel (this will only be useful if we + want to do a few B-frames using exhaustive search) +* include system layer +* VBV delay with rate control + + +CREATING YOUR OWN MOTION SEARCH ROUTINES +---------------------------------------- + +Adding your own special motion search routine is very easy. We'll explain +adding a P-frame search routine; adding a B-frame routine is similar. + +First, edit the procedures PMotionSearch and SetPSearchAlg (both in the +file psearch.c) to recognize your new search routine. You probably want +to define a constant + PSEARCH_<your search name> in headers/search.h + +Have PMotionSearch call your search procedure just as it calls the other +standard search procedures. Make sure your procedure follows the guidelines +in the comments for PMotionSearch. + +Note: The encoder uses MAD as its search criterion. The reason for this: + "Among the various criteria that can be used as a measure of the + match between the two blocks, the mean absolute difference (MAD) + is favored because it requires no multiplication and gives + similar performance as the mean squared error (MSE)." + - Liu and Zaccarin, + "New Fast Algorithms for the Estimation of Block Motion Vectors," + IEEE Transactions on Circuits and Systems for Video Technology + Volume 3 No. 2 (April 1993) |