Showing results for 
Search instead for 
Did you mean: 

PTZ preset configuration?

Scott Olsen
Frequent Contributor
Frequent Contributor

Hi there,

I figured I'd try the support forums before opening a TAC case and digging in myself.

Are PTZ presets stored within the VSOM database?  Is there additional data stored elsewhere?  If so, where?  Is this configuration informtion carried over cleanly in the event of Backup/Restore (server failure event)?


Scott Olsen Solutions Specialist Bulletproof Solutions Inc. Web:
9 Replies 9

Dirk Christeaens

PTZ presets are stored in the MySQL database in the VSOM server (and in the camera itself of course). So, when you have a backup of your VSOM server, the presets should be there as the backup contains a dump of VSOM's MySQL database.

I thought so as well... but a client of ours recently experienced a VSOM server failure and we had to quickly transition in a replacement server using a recent ( < 24hr old ) VSOM backup for recovery.

Everything appeared to have gone quite smooth, except we've had to redo what seems to be *all* of the PTZ presets that had been configured.  They were still listed within VSOM... the actual shots just didn't match the original presets at all.

No other components changed.

Dirk,  you haven't actually peeled back any of the application itself to see what's *actually* stored in the VSOM database as far as PTZ preset data have you?

I want to... I just won't have time for a while. :-S



Scott Olsen Solutions Specialist Bulletproof Solutions Inc. Web:

It is strange that it didn't work for your client. I have just reinstalled VSOM (6.3.2-MR2), wiped the database with a blank, new database and then restored a previous backup and all presets for my Cisco 2900 camera are back and working.

VSOM merely stores the label you give to the preset and to which camera and preset thereon it maps to, but the coordinates of the actual shot and which preset it belongs to (on the camera) are normally stored inside the camera only.

Below are my presets in the VSOM MySQL database. As you can see the information that VSOM stores is very minimal. It's the camera that knows which actual shot belongs to which preset.

mysql> select * from pub_camera_presets_view;


| camera_id | name       | position | label |


|         8 | lab-2900-1 |        1 | left  |

|         8 | lab-2900-1 |        2 | right |

|         8 | lab-2900-1 |        3 | front |

|         8 | lab-2900-1 |        4 | down  |

|         8 | lab-2900-1 |        5 | up    |

|         8 | lab-2900-1 |        6 | test  |


6 rows in set (0.00 sec)

mysql> select * from bas_camera_presets;


| id | camera_id | position | label |


|  1 |         8 |        1 | left  |

|  2 |         8 |        2 | right |

|  3 |         8 |        3 | front |

|  4 |         8 |        4 | down  |

|  5 |         8 |        5 | up    |

|  6 |         8 |        6 | test  |


6 rows in set (0.00 sec)

Interesting.  In my case, these were single channel analogue encoders, and not IP PTZs.  I wonder if there are any differences there that would explain what was observed.

Thanks for the feedback.


Scott Olsen Solutions Specialist Bulletproof Solutions Inc. Web:

Do you remember the exact model of encoder? Indeed perhaps there are differences in how some endpoints handle this.

Indeed I can.  They are some of the original "Stream Manager" encoders:


using Pelco-D over simplex RS-422 if memory serves. 

Discovering that the "chain IDs" are 0 indexed in VSOM was an adventure!  (i.e. - If I camera was physically set to chain ID 4, the chain ID needed to be set to 3 within VSOM)

Scott Olsen Solutions Specialist Bulletproof Solutions Inc. Web:

I have verified this again, but for an encoder this time and it works the same way as for an IP camera.

This is what gets inserted in the VSOM MySQL database upon creating a new preset (test1). This can be seen by setting the operations manager log level to 'Debug' from within VSMC and then tailing vsom.log:

     2012-07-26 09:54:36 [debug] INSERT INTO bas_camera_presets (label, position, camera_id) VALUES ('test1', 1, 13)

To see preset communication between VSOM and VSMS/Endpoint you can f.e. tail mediaout_access.log on the VSMS server:

Setting preset label 1 to 'test1':    [26/Jul/12 00:54:20 -0700] "GET /camera.bwt?command=S1,test1&model=pelco_d&comport=COM1&number=0&source=1@ HTTP/1.0" PROXIED

command=S1 means 'set/store preset 1'

Testing preset label 1:    [26/Jul/12 00:54:27 -0700] "GET /camera.bwt?model=pelco_d&comport=COM1&srctype=cisco_smsg&source=1@ HTTP/1.0" PROXIED

command=G1 means 'go to preset 1'

So, VSOM does not hold any information about the actual shot itself. VSOM is merely acting as a remote control here to select/set the desired preset, while the programming of the actual shot and associated preset happens in the endpoint only.

Interesting.  Thanks for the thorough digging Dirk.  Well... it certainly doesn't appear the VSOM server stored the actual telemetry of the shots, so I'm at a real loss as far as explaining what's happened here.  I'm wondering if the PTZs themselves have somehow been reset...

I *may* get time to do some lab work on this today.... hopefully.  Thanks for the considerable head start :-D


Scott Olsen Solutions Specialist Bulletproof Solutions Inc. Web:


HI scott,

VSOM does indeed store the Preset POSITIONS in the DB... i.e. that a Particular PTZ camera has Presets 1,2,3, but not its X, Y, Z co-ordinates.

The Camera is the one that ties together a "preset 1" to a particular Co-ordinate. That Co_ordinate Info is stored on the Camera itself, and tied to "preset 1" command from VSOM.


Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: