Web user interface

From edgertronic slow-motion video camera
Jump to: navigation, search

Contents

Introduction

The edgertronic camera contains a built in web server. When you browse to the camera you will see the web user interface. For many users the web user interface will be the primary method of camera interaction.

Calibration

Camera calibration

When the camera settings and/or temperature changes, the image sensor needs to be recalibrated for optimal image quality. For this reason, the calibration cycle occurs after changing camera settings, capturing, or playing a video. If a full calibration is required, a shutter covers the sensor and a series of calibration frames are taken as the camera adjusts its internal settings. During this process you may see the distinctive calibration pattern (the dark frame & lines) as the camera adjusts. Once complete, the camera is again ready to capture optimal video.

Live preview

Live preview helps you frame the video to be captured, adjust focus, and set exposure. The live preview window contains the movable button box, typically in the upper left, the active settings box, typically in the lower right, and if multishot is enabled, the multishot box in the lower left.

If you have enabled any video overlay elements, they will be displayed in the live preview so they can be taken into account as you fame the video.  The live preview is split into two states; Pre-trigger and Post-trigger. 

Pre-trigger

Preview prior to camera being triggered

If the camera is configured to include frames captured before the trigger event, you will see a green progress bar grow from the progress bar's trigger point, moving to the left. While the configured pre-trigger buffer is being filled, the 'Pre-trigger fill' text message is displayed. Once filled, the image showed to the right can be seen. The camera continuously overwrites the oldest frames in the pre-trigger buffer (FIFO) until the camera is triggered. Pre-trigger allows action to be captured before the trigger occurs, making the chance of missing the important action even smaller. Of course you need to be fast on the trigger and have the appropriately sized pre-trigger buffer configured.

Post-trigger

Preview after camera being triggered

After the calibration completes the camera can be triggered, causing it to start filling the post-trigger buffer. You can even trigger the camera before the pre-trigger buffer has been completely filled, as shown in the blue circle in the post-trigger fill screen shot. When the magenta post-trigger buffer fill progress bar gets to 100%, the camera will stop capturing video frames and start saving the pre-trigger and post-trigger frames to a video file.

Saving

Saving captured video frames

When the post-trigger buffer has filled, the camera stops storing new video frames and begins saving the captured video frames to a file. Saving the file can take a while as the H.264 encoder runs at about 30 frames/second for larger frame sizes. The save progress bar is displayed in blue below the capture progress bar.

While a save is in progress the display is occasionally updated to give you a visual clue as to how much of the captured video has been saved.

No matter what frame rate is used for capturing, the timestamps used when saving the frames are adjusted for a 30 fps playback rate.

Truncating

Truncating captured video frames

As video saving is progressing the display is updated to show which captured frames have been saved. If you captured extra video past the action of interest, you can press the red X in the button box in the web user interface to discard all unsaved frames and truncate the video. The camera will do a calibration if needed and then the camera is ready to capture another video.

Configuration Dialog

Pressing the wrench in the button box brings up the configuration dialog. There are several user selectable tabs across the top. The items in each tab are described in the sections below.

Settings Tab

Setting tab details

The settings tab contains a column of values you have entered (requested) and another column of the actual values that will be used by the camera (allowed). The camera always tracks both your requested values and the actual values that will be used. Each time you exit the settings modal window, the requested values are saved and used the next time the camera is powered on. When a captured video is saved, an additional file, called the metadata file is also saved, where the metadata file will contain the settings actually used when the video was captured. The values in the metadata file match the allowed column values.

There is an interdependency between some of the capture parameters allowing you to specify some parameters with the camera returning the maximum value possible for all the unspecified values. You can play "what if", by repeatedly providing requested sets of parameters (where some can be left blank) and the camera will provide the allowed set that will be used. You can try multiple parameter requests until you are happy with the allowed parameters. For example, if the horizontal dimension is critical to the video capture, you can specify the width and leave one or more less critical setting blank. The camera will calculate the maximum allowed values for the blank settings given the specified width.

The negotiation uses a priority scheme to resolve setting conflicts based on a priority order as follows:

Field Data Type Dependencies Description
Sensitivity integer Not dependent on other arguments ISO sensitivity
Shutter inverse is
an integer
Not dependent on other arguments Shutter speed (1/exposure time) of each frame
Frame rate float Always dependent on Shutter and conditionally dependent on Horizontal, Vertical if specified Frames per second
Horizontal
Vertical
integer Conditionally dependent on Frame rate if specified Horizontal and Vertical resolution
Duration float Always dependent on Frame rate, Horizontal and Vertical resolutions Captured video duration, including pre and post trigger times
Pre-trigger integer Not dependent on other arguments Percentage of the saved video that occurred BEFORE the trigger event.
Shot count integer Always dependent on Frame rate, Horizontal and Vertical resolutions and Duration If the shot count is greater than 1, then the camera is operating in multishot mode. Multishot allows you to capture several videos back to back and then save them. This is useful for capturing events that come in spurts, like lightning.
Overclock: enumeration Not dependent on other arguments A selection of overclock amounts from Off being operating within the CMOS sensor's documented capabilities, and clock rate increasing A, B, C, and D for higher levels of overclocking, ranging approximately 10% to 40% faster. As a rule of thumb, we have observed good results with overclock C.
Sub-sampling binary Not dependent on other arguments Skips every other pixel and and every other line when the resolution is 1/4 or smaller of the maximum resolution. This effectively allows you to get a larger field of view when the camera is configured at a lower resolution. Works well with monochrome cameras. Some color artifacts may be present when enabled on color cameras.

If the desired Frame Rate is faster than that allowed by the Shutter value, then the maximum allowed Frame rate will be used. The desired Horizontal and/or Vertical size may also be reduced to meet the requested frame rate.

If a parameter is not specified, or if a parameter is in conflict with a higher priority parameter, then the largest possible parameter value that remains consistent with the higher priority values is used.

Preferences Tab

Preferences tab details
Setting Legal
Values
Description
Genlock Off
Master
Slave
External
Genlock is a multi-camera arrangement where a master camera provides timing signals to one or more slave cameras. It is also possible to use an external timing source to control frame capture.
Extended
Dynamic
Range
Off
A, B, C, D
Enhanced Dynamic Range EDR is a technique where a non-linear transfer function is used to allow a greater dynamic range of luminosity to fit in the same number of luminance data bits.
Video
Encoding
High, Medium,
Low, Custom
The video encoding quality setting allows you to configure the camera to create smaller video files with the trade off of sacrificing video image quality.
Status
Timeout
0 - 120 Seconds until the button box, current setting box, and multishot box (if in multishot mode) automatically hide during live preview. Moving the mouse cases the boxes to appear again.

Tools Tab

Tools tab details


Overlay Tab

Overlay tab details


Favorites Tab

Favorites tab details


About Tab

About tab details

Video playback

Video playback with controls

You can playback the last successfully recorded video file that is on the installed storage device by clicking on the blue play icon. Pressing the blue play icon opens a modal overlay window over the web page. You have controls to play/pause and change the location in the file where playback will occur. You can also put the video playback in full screen.

Visual elements summary

The visual elements are listed in each row with the camera states listed in the right most columns. There is an X in the cell if the visual element is displayed when the condition exists and the camera is in the corresponding state. There are more camera states than listed below, but they are not visible via the web user interface. The group column indicates where in the web user interface the visual element is displayed. The status box lists only the highest priority text message - other status conditions may exist as well.

Element Group Visual Priority Camera State
Calibrating Running
Filling
pre-trigger
buffer
Running Triggered Saving
Calibration preview Preview window Calibration-no-labels.png X
Live preview Preview window Pre-trigger-full-labeled.png X X X
Save preview Preview window Save-labeled.png X
Saving text Status box Saving video 1 X
Flushing text Status box Writing to memory card 2 X
No genlock text Status box Slave not receiving
genlock signal
3 X X X
Genlock configuration
error text
Status box Genlock configuration error 4 X X X
Memory card bad text Status box Memory card unusable 5 X X X
Memory card missing text Status box Insert memory card 6 X X X
Memory card full text Status box Memory card full 7 X X X
Calibration text Status box Calibrating camera 8 X
Filling pre-trigger buffer text Status box Pre-trigger fill 9 X
Filling post-trigger buffer text Status box Post-trigger fill 10 X
Truncating video text Status box Truncating Video 11 X
Buffer fill bar Progress bar Buffer-fill-bar.png X X X X
Saving bar Progress bar Save bar.png X
Playback button Button Playback button 20150518222117.png A A
Download button Button Download button 20150518222117.png A A
Settings button Button Settings button 20150518222117.png X X
Eject button Button Eject button 20150518222117.png X X
Help button Button Help button 20150518222117.png X X X X
Trigger button Button Trigger 20150518222117.png X X
Cancel button Big button Cancel Button 20150518222117.png X
Trim Big button Trim button 20150518222117.png X

Note A: Playback and download buttons only shown if the removable storage device contains at least one movie file.

Web user interface event handling

The following table documents all event sources and how the javascript handles those events.

Event Affected
visual
element
Action
Mouse movement Button box If the button box is not shown, moving the mouse causes it to be displayed again.
Inactivity timeout Button box If no high priority message is displayed, then the button box is hidden. The inactivity timeout value can be set in the settings -> tools -> set menu timeout dialog box.
Resize browser window Preview window The preview window is rescaled to keep the display aspect ratio accurate.
Hide browser window All No change in handling
Show browser window All No change in handling
Click on button Varies See section describing each button
Lost connection to camera All
Change in camera state Varies See sections on camera state handling and camera status handling
Personal tools