5 mins of playing around with this and I realised there is no problem VMRBitmap - it does work (although I'm not using it properly) - my problem was with assigning a bitmap image on a form from within a test application to a temporary bitmap,
Bitmap := TBitmap.Create;
Bitmap.Assign(CurrentImage.Picture.Bitmap); //<-- this line didn't work although does in Delphi
VMRBitmap.LoadBitmap( Bitmap );
VMRBitmap.Source := VMRBitmap.Canvas.ClipRect;
VMRBitmap.DrawTo(0,0,1, 1, trkAlpha.Position/10);
Bitmap.Free;
Replacing the line with a direct load from a file, as in;
Bitmap.LoadFromFile(CurrentFileName);
and I do get a merging of the images (an onionskin effect)
However, I can't seem to turn it off again by loading an "EmptyBitmap" as in;
VMRBitmap.LoadEmptyBitmap(640, 480, pf24bit, clBlack);
VMRBitmap.Source := VMRBitmap.Canvas.ClipRect;
VMRBitmap.DrawTo(0,0,1,1,0);
which I've just tested on Delphi and it does turn off fine with the same code.
Anyway, I am trying to concentrate on the 5dpo version (Linux) but thought I'd share that the DSPack & VMRBitmap seems to be working ok albeit I'm still missing something in my code for Lazarus and Delphi versions of the same app.
TheBlackSheep
Edit: creating a bitmap and then loading that is the equivalent of LoadEmptyBitmap and appears to work fine, as in;
Bitmap := TBitmap.Create;
VMRBitmap.LoadBitmap( Bitmap );
VMRBitmap.Source := VMRBitmap.Canvas.ClipRect;
VMRBitmap.DrawTo(0,0,1,1,0);
Bitmap.Free;