Skip to main content
Version: 4.2 (beta)

Camera

The Camera object displays a basic camera view, a camera view with controls, or a camera grid within the HSYCO interface

Camera tutorial

Controls​

The toolbar is available in controls mode and after selecting a camera from a grid. It is not shown in basic mode. The buttons shown depend on the current camera and whether live video or recorded motion is being viewed:

  • Previous/next camera: click the left or right side of the camera title to move through the configured camera list.

  • Motion list: opens the list of recorded motions. The button is shown only when recordings are available and Motion List is enabled. The timestamp above the camera opens the same list.

  • Cycle: starts or stops automatic camera cycling and is shown when the camera list contains more than one camera. Cameras normally change every five seconds. When motion is detected, the camera with motion is selected temporarily before cycling resumes.

  • Playback: starts recorded-motion playback. During playback, Previous motion, Play/Pause, and Next motion navigate and control the recording, while Back returns to live video.

  • PTZ mode: switches between continuous movement and single-step movement. It is shown for PTZ cameras during live video when PTZ Controls is enabled. The camera image provides controls for movement, zoom, and focus; these image controls can also be enabled in basic mode even though the toolbar is hidden.

  • Save: saves the displayed recording frame. If playback is running, it is paused first.

  • Fullscreen: switches between the normal and fullscreen views.

  • Grid: returns to the configured grid after a camera has been selected from it.

Attributes​

Common​

ID​

Sets the object's ID.

The ID identifies the object and is used to reference it in UISet actions, allowing to change its attributes dynamically.

The ID is not unique, it can be shared among multiple objects to quickly change a common attribute.

IDs can't be changed with a UISet action, but they can have a Value Binding assigned to them. Value Bindings on IDs allow an object to be dynamically attached to a set of attribute values.

E.g. the following Value Binding switches the ID of the object between mybutton1 and mybutton2 based on the value of the UISet button.address:

Value binding:

"mybutton" + ui('button', 'address')

UISet:

UISet('button', 'address', '1') switches the ID to mybutton1

UISet('button', 'address', '2') switches the ID to mybutton2

Position and Size​

Position​

Sets the object's position.

Attribute Values​
ValueDescriptionExample
x<left>y<top>Specify left/top coordinates in pixels.x10y20

This attribute is available when parent's layout is neither "flex" nor "grid".

When parent's layout is neither "flex" nor "grid", this attribute defaults to x0y0.

Flex Grow​

Specifies if the objects should grow to fill the available space.

Attribute Values​
ValueDescription
falseDefault value. Objects do not grow to fill the available space.
trueObjects expand to fill the available space.

This attribute is available when parent's layout is "flex".

The default value is: false.

Flex Shrink​

Specifies if the objects should shrink to fit the available space.

Attribute Values​
ValueDescription
falseDefault value. Objects do not shrink to fit the available space.
trueObjects shrink to fit the available space.

This attribute is available when parent's layout is "flex".

The default value is: false.

Column​

Specifies the starting column of the object inside a grid container.

Minimum value is 1.

Attribute Values​
ValueDescription
<int>Column index starting from 1.

This attribute is available when parent's layout is "grid".

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Column Span​

Specifies how many grid columns the object spans.

Minimum value is 1.

Attribute Values​
ValueDescription
<int>Column span starting from 1.

This attribute is available when parent's layout is "grid".

When parent's layout is "grid", this attribute defaults to 1.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Row​

Specifies the starting row of the object inside a grid container.

Minimum value is 1.

Attribute Values​
ValueDescription
[empty]Auto placement by the grid.
<int>Row index starting from 1.

This attribute is available when parent's layout is "grid".

When parent's layout is "grid", this attribute defaults to auto.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Row Span​

Specifies how many grid rows the object spans.

Minimum value is 1.

Attribute Values​
ValueDescription
<int>Row span starting from 1.

This attribute is available when parent's layout is "grid".

When parent's layout is "grid", this attribute defaults to 1.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Width​

Sets the object's width in pixels.

Minimum width is 230 when mode is not "basic".

Minimum width is 50 when mode is "basic".

Height​

Sets the object's height in pixels.

Minimum height is 200 when mode is not "basic".

Minimum height is 40 when mode is "basic".

Camera​

Mode​

Specifies how cameras are presented.

Attribute Values​
ValueDescription
basicDefault value. Shows one camera without the frame, title, or toolbar.
controlsShows one or more cameras with the frame, title, and camera controls.
gridShows a configured grid of cameras.

The default value is: basic.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Grid​

Specifies the displayed grid.

Attribute Values​
ValueDescription
<index>Grid index, starting from 1.

This attribute is available when mode is "grid".

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Camera List​

Specifies a list of cameras that can be cycled. The list is specified as a comma-separated list of camera names. If empty, all cameras marked as Cycle in the project's Camera Config.

Attribute Values​
ValueDescription
<empty>All cameras marked as Cycle in the project's Camera Config.
<comma-separated list>List of camera names.

This attribute is available when mode is "controls".

Camera​

Specifies the displayed camera name.

Attribute Values​
ValueDescription
<string>Camera name.

PTZ Controls​

Specifies whether PTZ controls are enabled for PTZ cameras.

Attribute Values​
ValueDescription
truePTZ controls are enabled.
falseDefault value. PTZ controls are disabled.

Default behavior:

  • When mode is "basic", this attribute defaults to false.
  • Otherwise, this attribute defaults to true.

Motion List​

Specifies whether the motion list is available when recorded motions exist.

Attribute Values​
ValueDescription
trueDefault value. Shows the motion list when recorded motions are available.
falseHides the motion list.

This attribute is available when mode is not "basic".

When mode is not "basic", this attribute defaults to true.

Target​

Specifies a target camera that replicates the view of the current camera when clicked. The target is used only when the displayed camera does not support PTZ. This feature can be used on larger camera objects to magnify the image.

Attribute Values​
ValueDescription
<string>Target camera object ID.

This attribute is available when mode is "basic".

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

View​

Visible​

Sets the object's visibility.

Attribute Values​
ValueDescription
trueDefault value. Visible.
falseHidden.

The default value is: true.

Enabled​

Specifies if the object is enabled or disabled. A disabled object appears as grayed out and can't be interacted with.

Attribute Values​
ValueDescription
trueDefault value. Enabled.
falseDisabled.

The default value is: true.

Blinks the object at the specified speed.

Attribute Values​
ValueDescription
falseDefault value. Not blinking.
slowBlinks slowly.
fastBlinks fast.

The default value is: false.

Transition​

Specifies the transition effect when the object is shown or hidden.

Attribute Values​
ValueDescription
noneDefault value. No transition.
fadeFade in/out.
fade-leftSlide from left and fade in/out.
fade-rightSlide from right and fade in/out.
fade-upSlide from top and fade in/out.
fade-downSlide from bottom and fade in/out.
slide-leftSlide from left.
slide-rightSlide from right.
slide-upSlide from top.
slide-downSlide from bottom.
zoom-inZoom in.
zoom-outZoom out.
3d-flip-left3D flip from left.
3d-flip-right3D flip from right.

The default value is: none.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Transition Duration​

Specifies the transition duration in milliseconds.

Attribute Values​
ValueDescription
<integer>Duration in milliseconds.

This attribute is available when transition is not "none".

When transition is not "none", this attribute defaults to 300.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Transition Delay​

Specifies the transition delay in milliseconds.

Attribute Values​
ValueDescription
<integer>Delay in milliseconds.

This attribute is available when transition is not "none".

When transition is not "none", this attribute defaults to 0.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Opacity​

Sets the object's opacity. Opacity is the degree to which content behind an object is hidden.

Attribute Values​
ValueDescription
0The object is fully transparent.
>0.0, <1.0The object is translucent (content behind the element can be seen).
1.0Default value. The object is fully opaque.

The default value is: 1.0.

Rotation​

Specifies the degrees by which the object is rotated. A positive number rotates it clockwise, while a negative value rotates it counter-clockwise.

The default value is: 0.

CSS Class​

Specifies a CSS Class that applies to the object, useful to customize its appearance. Custom CSS Classes are specified within the custom.css file.

Margin​

Specifies the margin of the object. The margin is the space outside the object's border.

Attribute Values​
ValueDescriptionExample
<int>Specify the margin in pixels for all sides of the object.
<top> <right> <bottom> <left>Specify the margin in pixels for each side of the object.10 20 30 40
note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

View Scale​

Specifies the scale of the object. The scale is the ratio between the object's size and the size of the view it is contained in.

Attribute Values​
ValueDescription
<float>Specify the scale for both width and height of the object.

The default value is: 1.0.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Meta​

Comment​

Specifies a comment, visible only in the Project Editor. It can be used to add a note or a tag to the object. The filter in the object's SELECT panel applies to the comment as well.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Exclude​

Excludes the object from the UI. Useful to temporarily hide an object without deleting it. Different from the "Visible" attribute, which hides the object in the UI but keeps it in the project, allowing it to be shown again with a UISet.

Attribute Values​
ValueDescription
falseDefault value. Object is included in the UI.
trueObject is excluded from the UI.

The default value is: false.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.