Ganz Security

Pre-recorded Video in Ganz CORTROL VMS

October 2022

Pre-recorded Video in Ganz CORTROL VMS

October 2022

A non-canonical yet functional case of running CORTROL uses pre-recorded videos instead of live-streaming cameras. Why do that? Here are a few examples:

  • showrooms, presentations, and exhibitions
  • digital signage
  • customer demos and PoC 
  • video analytics PoC and testing

For instance, if CORTROL runs as a chain store VMS, you do not need to purchase separate software to place video advertisements. Moreover, you can personalize it according to the customer's shopping choice or face if  facial recognition  is allowed in your area.

A more technical usage is a solace for engineers and testers: verify LPR settings, test people counting on different scenes, run hardware load tests — you name it! On top of that, for CORTROL promoters, there is the option to prepare some neat/professional/100%-working clips and use them to demo the system without worrying about network issues, setting accuracy, or other unexpected problems when you go live.

So how do you set that up in CORTROL?

Prepare the File

CORTROL works with original *.avi files exported from CORTROL Client or Portable Player (or even Ganz VMS). Convert all other files into a compatible format (h264-encoded AVI). You can download and use the FFmpeg tool from the command line:

ffmpeg.exe -y -i video.mp4 -c:v libx264 -an -b:v 1000000 -r 25 -x264-params keyint=25:min-keyint=25:scenecut=25:open-gop=0:bframes=0:repeat-headers=1 -s 1920x1080 output.avi

Where the adjustable parameters are: video.mp4 is the input file, output.avi is the converted file, and 1920x1080 is the target (output) resolution (which you can adjust to your needs).

If you want to include audio:

ffmpeg.exe -y -i raw_video.mp4 -c:v libx264 -acodec pcm_s16le -ac 1 -ar 16000 -b:v 4000000 -r 25 -x264-params keyint=25:min-keyint=25:scenecut=25:open-gop=0:bframes=0:repeat-headers=1 -s 1280x720 output_with_audio.avi

CORTROL only understands mono PCM 8/16 bit, PCM-A/PCM-U. Also, if the original file contains multiple tracks, CORTROL will select the first track when playing the video.

Put the file onto the target CORTROL server.

Add Device

In CORTROL Console, add a new device and set its model to  (Emulation) Video File .


Create the emulation device

Click  Apply  and switch to the channel properties using the  Related items  button in the bottom left corner.

Did you know that you can also create static image channels using the (Emulation) JPEG File model? These come in handy for ads, logos, or as static backgrounds for POS data.

Here, in the  Video file configuration  tab, enter the full file path. You can use two files to emulate both primary and secondary streams — these can be different videos! If you are connected locally, you will have the  Browse  button opening Windows Explorer; for remote CORTROL Console connections, enter the file location manually.

Specify the file to serve as the emulation source

The only setting here is the  delay : the number of milliseconds between two consecutive video frames. Set it to 0 (zero) to avoid any delay. The default setting is 40, meaning there will be a 40ms pause between frames. Zero delay value is a must for video clips containing  audio : CORTROL will ignore the audio track if the delay setting differs from 0. Otherwise, this setting is a convenient way to control FPS.

Consider the disk read load when configuring many emulation channels on the same server.


Save the settings: you should now have the live video view in CORTROL Client. You can also quickly check the video status from CORTROL Console by clicking the  Show video button  in the channel list. If something is wrong, you will have a black screen; the channel will be marked red (offline) in the resource tree, and the video and CORTROL Client's channel notification panel will display an error. Common reasons:

  • Unsupported file format or codec
  • Incorrect file name or path (file does not exist)
  • Weird resolution (e.g., odd pixels like 1333x1080)

If nothing is wrong... well, you will see your video imitating an IP camera!

Emulated video channel with running CORTROL

There you have it; you can now use your emulation channel just like any regular camera stream for broadcasting, recording, VA, or other purposes. 

Do you want to learn more about CORTROL VMS or request a demo? Visit or contact us.

Ganz Security
CORPORATE HQ 1 (919) 230-8700
WEST COAST 1 (310) 222-8600