Delphi and C# (ActiveX) sample code.

You can resize the image or crop it the way you like. These operations are performed in real time and use almost no CPU.

Resize

Enable resizing or cropping.

VideoCapture1.Video_ResizeOrCrop_Enabled := true;
VideoCapture1.Video_ResizeOrCrop_Enabled = true;
Set width and height
VideoCapture1.Video_Resize_NewWidth := StrToInt(edResizeWidth.Text);
VideoCapture1.Video_Resize_NewHeight := StrToInt(edResizeHeight.Text);
VideoCapture1.Video_Resize_NewWidth = Convert.ToInt32(edResizeWidth.Text);
VideoCapture1.Video_Resize_NewHeight = Convert.ToInt32(edResizeHeight.Text);

The image aspect ratio change mode – letterbox (add black margins to the edges) or stretch.

VideoCapture1.Video_Resize_LetterBox := cbResizeLetterbox.Checked;
VideoCapture1.Video_Resize_LetterBox = cbResizeLetterbox.Checked;
You can also select one of several resizing algorithms. They differ in quality and CPU usage.
case cbResizeMode.ItemIndex of
  0: VideoCapture1.Video_Resize_Mode := rm_NearestNeighbor;
  1: VideoCapture1.Video_Resize_Mode := rm_Bilinear;
  2: VideoCapture1.Video_Resize_Mode := rm_Bilinear_HQ;
  3: VideoCapture1.Video_Resize_Mode := rm_Bicubic;
  4: VideoCapture1.Video_Resize_Mode := rm_Bicubic_HQ;
end;
switch (cbResizeMode.SelectedIndex)
{
  case 0: VideoCapture1.Video_Resize_Mode = VisioForge_Video_Capture_3.TxVFResizeMode.rm_NearestNeighbor; break;
  case 1: VideoCapture1.Video_Resize_Mode = VisioForge_Video_Capture_3.TxVFResizeMode. rm_Bilinear; break;
  case 2: VideoCapture1.Video_Resize_Mode = VisioForge_Video_Capture_3.TxVFResizeMode.rm_Bilinear_HQ; break;
  case 3: VideoCapture1.Video_Resize_Mode = VisioForge_Video_Capture_3.TxVFResizeMode.rm_Bicubic; break;
  case 4: VideoCapture1.Video_Resize_Mode = VisioForge_Video_Capture_3.TxVFResizeMode.rm_Bicubic_HQ; break;
};

Crop

Enable resizing or cropping.
VideoCapture1.Video_ResizeOrCrop_Enabled := true;
VideoCapture1.Video_ResizeOrCrop_Enabled = true;
Set area
VideoCapture1.Video_Crop_Left := StrToInt(edCropLeft.Text);
VideoCapture1.Video_Crop_Top := StrToInt(edCropTop.Text);
VideoCapture1.Video_Crop_Right := StrToInt(edCropRight.Text);
VideoCapture1.Video_Crop_Bottom := StrToInt(edCropBottom.Text);
VideoCapture1.Video_Crop_Left = Convert.ToInt32(edCropLeft.Text);
VideoCapture1.Video_Crop_Top = Convert.ToInt32(edCropTop.Text);
VideoCapture1.Video_Crop_Right = Convert.ToInt32(edCropRight.Text);
VideoCapture1.Video_Crop_Bottom = Convert.ToInt32(edCropBottom.Text);
Please contact support to get help with this tutorial. Visit our GitHub page to get more code samples.
abstract 2abstract 1abstract 3
logo
VisioForge © 2006 - 2021