SDK - Detailed information about your captured high speed video
← |
⌂ Home |
→ Lighttpd Access Control Allow Origin |
Metadata
Each time a captured video is saved, an associated file, called the metadata file, is also saved, using the same filename but with the extension .txt. The metadata file contains all available captured video related information. Other information, such as the lens used, the lens settings, a user assigned experiment identifier, and any other text information can be added by the user in the Notes field. The Notes field can be viewed or modified by clicking on the wrench in the button box, then selecting the Overlay tab. If you overlay the note on each video frame, the note may be truncated, depending on length, but the entire note (up to 128 characters) will be included in the metadata file.
Example medatadata file
Below is the metadata file for the three martini lunch video created for the introduction of the SC1/SC2 model edgertronic camera.
Camera time: Wed Jan 26 19:40:09 2022 Model: SC1 Color 8 GB Camera Name: test camera Sensitivity: 10000 ISO Shutter: 1/200 Seconds Pre-trigger Frame Rate: 10 Frames/Second Post-trigger 1 Frame Rate: 60 Frames/Second Post-trigger 2 Frame Rate: 10 Frames/Second Horizontal: 640 Pixels Vertical: 480 Pixels Horizontal Offset: 0 Pixels Vertical Offset: 0 Pixels Sub-sampling: On sub-sample Pre-trigger Duration: 0 Seconds Post-trigger 1 Duration: 20 Seconds Post-trigger 2 Duration: 0 Seconds Overclock: 4 level Extended Dynamic Range: 4 level Genlock: Off genlock Force monochrome: On color sensor will generate monochrome images Multishot Buffers: 4 buffers External trigger debounce: Off Camera triggers on falling edge of external trigger signal Gamma correction: Off gamma correction disabled Save mode: Review Review before save Notes: &a testing Overlay notes: On enabled Overlay logo: On enabled Overlay settings: On enabled Overlay frame number: On enabled Active pipeline: DEFAULT:pipelines_custom.txt configuration Encode frame rate: 30/1 fps Filename pattern: &D_&d_&T_&T_&c_&m_&n_&s_&e_&b_&a_&D may include subdirectories and wildcards Save view: On enabled Auto exposure: Average mode Pipeline description: H.264 very high encode quality MOV file Multishot buffer: 1 number Frame count: 1200 frames Pre-trigger frames: 0 frames Post-trigger 1 frames: 1200 frames Post-trigger 2 frames: 0 frames Trigger time: 1643223640 (sec since 1970) Trigger delay: 0.005610532 sec (time from trigger input to start of triggered frame) First saved frame: 0 where frame zero is the trigger frame Last saved frame: 1199 where frame zero is the trigger frame Save frame rate: 32 fps Playback framerate: 30 frames/sec Genlock locked: NA FPGA temp: 36 C FPGA temp at last calibration: 36 C Sensor temp: 34 C Sensor temp at last calibration: 34 C Time since dark frame: 21 minutes, 41 seconds Time since power on: 1 hour, 1 minute Model number: 0x0001 Serial number: 0x0008 Hardware revision: 0x0003 Hardware configuration: 0x8C0008 Build date: 20130605 (YYYYMMDD) IR filter: True IR filter is installed Sensor type: Color sensor DDR3 memory size: 8 GB Ethernet MAC address: 00:1B:C5:09:60:08 FPGA version: 120 Wed Jan 12 16:37:45 2022 0x4F38 Software build date: 20220122125309 (YYYYMMDDhhmmss) Software version: v2.5.2rc27 release Previous software version: v2.5.2rc27 release NVRAM write count: 2687 writes Total power on time: 4251 minutes Total power cycles: 379 cycles Total videos saved: 251 videos IS minimum temperature: 27 C IS maximum temperature: 37 C FPGA minimum temperature: 28 C FPGA maximum temperature: 39 C DDR3 minimum temperature: 30 C DDR3 maximum temperature: 30 C Total calibration count: 581 calibrations Interrupted calibration count: 0 attempts
Metadata fields
Host CAMAPI supports a method to fetch a metadata file from the camera and parse the file contents into a dictionary. The table below lists both the metadata file and the Host CAMAPI dictionary key, plus a description.
Metadata file row title |
Host CAMAPI dictionary key |
Description |
---|---|---|
Camera time | camera_time | Human readable time when metadata file was created. Not the same as the trigger time. |
Model | model_string | Human readable camera model description |
Sensitivity | iso | ISO sensitivity. |
Shutter | 1 /exposure | Shutter speed (1/exposure time) of each frame. |
Frame Rate | frame_rate | Frames per second capture rate. |
Horizontal | horizontal | Horizontal resolution in pixels. |
Vertical | vertical | Vertical resolution in pixels. |
Sub-sampling | subsample | Skips every other pixel and and every other line when the resolution is 1/4 or smaller of the maximum resolution. SC1 only. |
Duration | duration | Captured video duration, including pre and post trigger times. Trimming the video during save or using CAMAPI selective_save() does not effect the capture duration. |
Pre-trigger | pretrigger | Percentage of the saved video that occurred before the trigger event. Trimming the video during save or using CAMAPI selective_save() does not effect the pre-trigger capture percentage, nor does triggering before the pretrigger buffer has filled. |
Overclock | overclock | A selection of overclock amounts from Off (0 value) being operating within the CMOS sensor's documented capabilities, and clock rate increasing A (1), B (2), C (3), and D (4) for higher levels of overclocking, ranging approximately 10% to 40% faster. SC1 only. |
Extended Dynamic Range | edr | 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. Off (0), increasing A (1), B (2), C (3), and D (4) for larger non-linear transfer function curve. SC1 only. |
Genlock | genlock | Multi-camera interconnect setting. Off, Source, Receiver, or External. |
Force monochrome | force_monochrome | For color camera, can be set to On to only save captured videos using the luminance value, otherwise set to Off. |
Multishot Buffers | multishot_count | Maximum number of videos that can be captured before the captured data is either saved or discarded. |
External trigger debounce | trigger_debounce | |
Notes | notes | User supplied text string. |
Overlay notes | overlay_notes | |
Overlay logo | overlay_logo | |
Overlay settings | overlay_settings | |
Overlay frame number | overlay_frame_number | |
Active pipeline | pipeline | Section and filename for the GStreamer pipelines used for live preview and video save. |
Pipeline description | pipeline_description | Description string for the active pipeline. |
Multishot buffer | multishot_buffer | Capture index when multishot count is greater than one, zero otherwise. |
Frame count | captured_frames | The number of captured frames. This is typically (frame_rate * duration), but if you trigger before the pre-trigger buffer is full, then the frame count will be less. Trimming the video during save or using CAMAPI selective_save() does not effect the number of frames captured, just the number of frames saved in the video file. |
Pre-trigger frames | pretrigger_frames | Number of frames captured before frame zero, the trigger frame. This is typically (frame_rate * duration * pre_trigger), if you trigger before the pre-trigger buffer is full, then the pre-trigger frame count will be less. Trimming the video during save or using CAMAPI selective_save() does not effect the number of captured pre-trigger frames, but may effect the number of pre-trigger frames saved in the video file. If you have enabled frame number overlay, then frames with a negative number indicate the frame occurred before the trigger event. |
Trigger time | trigger_time | Time in seconds since 1970 (the epoch) when the trigger occurred. The value is intended to assist in associating the captured video with other captured event data. The value will be off a few seconds depending if you enabled NTP, how the clocks on the other captured devices are set, etc. |
Trigger delay | trigger_to_exposure_delay | Time, in seconds, from trigger event to start of exposure on the triggered frame. |
First saved frame | first_saved_frame | Captured frame number of the first frame in the video file. Frame 0 is the trigger frame, with pre-trigger frames having negative numbers. This value can be effected by trimming the video during save or using CAMAPI selective_save(). |
Last saved frame | last_saved_frame | Captured frame number of the last frame in the video file. Frame 0 is the trigger frame, with pre-trigger frames having negative numbers. This value can be effected by trimming the video during save or using CAMAPI selective_save(). |
Genlock locked | genlocked_locked | NA if genlock is not set to slave mode. Other set to True if genlock was locked for entire capture duration otherwise False. |
DACVREFADC | dacvrefadc | SC1 only. |
FPGA temp | fpga_temp | |
Sensor temp | is_temp | |
DDR3 temp | ddr3_temp | Optional, some cameras do not have access to the DDR3 temperature |
Time since dark frame | time_since_dark_frame | Human readable text containing the approximate elasped time since the last drark frame was taken. |
Time since power on | uptime | Human readable text containing the approximate elasped time since the camera was powered on. |
Model number | model_number | Set to 0x0001 for model SC1, 0x0002 for models SC2/SC2+, and 0x0003 for model SC2X. |
Serial number | serial_number | If you have more than one edgertronic camera, you can use the last 3 hexadecimal digits of the ethernet MAC address, which is also the camera's serial number, to determine which video was captured by which camera. |
Hardware revision | hardware_revision | Version of the printed circuit board in the camera. |
Hardware configuration | hardware_configuration | Very goofy number used by nerdy engineers. Normal people tend to use the IR filter, sensor type, and other human readable values instead. |
Build date | build_date | The date your glorious camera was assembled. |
IR filter | ir_filter_installed | True if the IR filter is installed, False otherwise. |
Sensor type | sensor_type | Color or Monochrome |
DDR3 memory size | memory_size | Number, in gigabytes, of the DDR3 memory used to hold captured videos. |
Ethernet MAC address | ethernet_mac_address | Factory assigned ethernet MAC address. |
FPGA version | fpga_verson | Code version loaded into the FPGA. |
Software build date | software_build_date | Date, in YYYYMMDDhhmmss ordering, when the software in your camera was built. |
Software version | software_version | Somewhat human readable text string describing the version of software running in your camera. |
Metadata file format
The file format is designed to be both human readable and computer readable. All line that start with a pound sign or hash symbol (#) are ignored. All other lines should have three columns which are divided by tab characters, meaning there are two tabs in each line and the line ends with a newline character. The first column is the field name and ends in a colon character. The next column is the value. The third field is most often documents the value's units (such as seconds or pixels).
Software version details
Version 2.2.0 and older
The duration, genlock locked and frame count values were based on the number of frames saved in the video file. Specifically, these value could change when the video was trimmed during save (meaning CAMAPI save_stop()was called).
Version 2.2.1 and newer
The duration, genlock locked and frame count values are based on what was captured. Two new fields, first saved frame and last saved frame indicate which of the captured frames were saved in the video file. Only first saved frame and last saved frame are effected by trim (e.g. CAMAPI save_stop()) and selective save (e.g. CAMAPI selective_save()).
← |
⌂ Home |
→ Lighttpd Access Control Allow Origin |