Ansible is an automation mechanism for various IT tasks, such as preparing and configuring cloud infrastructure. Ansible is an open-source tool that interacts with multiple software modules through an SSH connection, PowerShell scripts, or various APIs.
API (Application Programming Interface) is a software intermediary that allows two applications to interact with each other.
Archive. Multimedia data saved on a hard drive in a format suitable for subsequent reading and delivery to clients.
Artificial Intelligence (AI) is an intelligence displayed by machines (computers). In computer science, the field of AI defines itself as the study of so-called «intelligent agents» (devices that perceive their environment and take actions to increase the likelihood of achieving a certain goal). In everyday usage, the term «artificial intelligence» means that a machine imitates cognitive functions such as «learning» and «problem-solving» traditionally attributed to human reasoning.
Aspect ratio is the ratio of the width of an image to its height. The standard aspect ratio for television screens and computer monitors is 4:3. In high-definition television (HDTV), the aspect ratio used is 16:9.
AF (Autofocus) is a system that allows a camera lens to automatically focus on a selected part of the observed object.
Back-end is the software «engine» to which the user does not have direct access. This mechanism receives requests from the user interface and performs certain operations, including loading and saving data in a database, etc.
Bare-metal is a case where the software is installed on physical devices (hard disks), bypassing the virtualization layer.
Bitmap (Raster image) is a data file that represents a rectangular grid of pixels. It defines the location and color of each pixel (or bit) on the screen. This type of image is also called raster graphics. GIF and JPEG formats are examples of file types that contain raster images.
Bitrate is the number of bits used to transmit/process data per unit of time. Bitrate is commonly used to measure the effective data transfer rate through a channel, i.e. the minimum channel size that can pass this stream without delays.
CCTV (Closed Circuit Television, Video Surveillance System) is a closed circuit television system in which the video stream is not broadcast to public sources, but is strictly closed to a clearly defined number of «receivers», which can be either enterprise employees or software and hardware complexes (analog and digital) for long-term storage and processing of video information.
CI/CD (Continuous Integration/Continuous Delivery) is the foundation of modern DevOps culture. CI ensures that new code is pushed to a centralized code repository multiple times a day to undergo automatic module tests and speed up the building of new software. If the tests are successfully passed, CD ensures that the new version of the application is automatically sent to intermediate and production environments without service downtime. The CI/CD workflow ensures that all errors will be found and fixed early on, and the product will be available at any time.
A codec (encoder/decoder) is an algorithm that implements compression/decompression of multimedia data. Compression can be lossy or lossless. Most codecs, such as H264 and H265, use reference frames (I-frames) and difference frames (P-frames) to achieve the maximum compression ratio.
Computer Vision is a scientific field whose main goal is to endow a computer (machine) with vision similar to or even surpassing that of humans. In computer vision systems, useful information contained in a single image or a sequence of images is extracted, analyzed, and interpreted.
Deep Learning is the use of artificial neural networks containing more than one hidden layer to solve learning tasks. Deep learning has already become part of advanced systems in various fields. In particular, it is used in computer vision and automatic speech recognition tasks.
DHCP (Dynamic Host Configuration Protocol) is a protocol that allows network administrators to automate the assignment of IP addresses to network devices and centrally manage this process. DHCP uses the principle of «leasing» or a specific time period during which an IP address will be valid for a computer. This time can vary depending on how long the user requires network connectivity at a particular point.
Digital Video Recording
Digital Video Recording (DVR) is a functionality designed to record archives for subsequent storage and playback.
DNS (Domain Name System) is a service designed to detect and translate internet domain names into IP addresses. A domain name is a significant and easily memorable name for an internet address.
Docker is an open-source platform for creating, delivering, and running application containers. Docker is the foundation of modern cloud computing because it allows for the most efficient use of cloud resources, providing a ubiquitous level for building cloud infrastructure.
Docker Swarm is a container orchestration engine developed by Docker. It is a built-in Docker tool for clustering and scheduling containers that can run thousands of containers simultaneously.
A Dockerfile is a text description of the process of building a Docker container, containing all the necessary commands. Dockerfiles allow for easy and efficient configuration and management of container creation and execution.
ElasticSearch is a RESTful, distributed search and analytics engine built on Apache Lucene. As the core of the Elastic stack, Elasticsearch allows for storing and processing data from multiple cloud monitoring and logging tools.
An environment is all the server resources (OS, libraries, APIs, tools, and platforms, etc.) required to run software at different stages of its life cycle (development, testing, preparation, production).
Executable File (Analytics Executable) is a separate module designed to execute neural network and analytical algorithms. It serves as a scaling unit within the video analytics platform. It receives tasks from the video analytics platform and sends the execution results to the platform and other data consumers.
A Firewall is a barrier between networks, such as a local network and the global Internet. It provides access from one network to another only to authorized users.
A frame is a single complete image. In the interlaced scan format 2:1 of the RS-170 and CCIR standards, a frame is composed of two separate fields with 262.5 or 312.5 lines, alternating at a frequency of 60 or 50 Hz, allowing for the formation of a full frame at a frequency of 30 or 25 Hz. In video cameras with progressive scanning function, each frame is unfolded line by line and does not alternate.
Frame rate per second
Frame rate per second (FPS) is the speed at which images (frames), one after the other, are displayed on a screen, creating the effect of a moving picture.
GOV length is the length of a group of images (VOP) in the MPEG-4 format.
GOV structure describes the composite parts of a video stream in the MPEG-4 format, which includes images (I-VOP or P-VOP) and their internal layout order.
Grafana is a free software system for data visualization focused on IT monitoring data. It is implemented as a web application with dashboards, charts, graphs, tables, and alerts.
Group of Pictures
Group of Pictures (GOP) is an ordered sequence of images following each other in a coded video stream. Frames are grouped for interframe compression purposes, without which streaming video over a network would consume a huge amount of time and traffic.
H.264, also known as MPEG-4 Part 10, is a video compression standard that provides higher video resolution than Motion JPEG or MPEG-4 at the same bit rate and bandwidth, or higher video quality at a lower transfer speed.
H.265 or HEVC (High Efficiency Video Coding) is a video compression format that utilizes more efficient algorithms compared to H.264/MPEG-4 AVC.
HLS (HTTP Live Streaming) is a communication protocol for streaming media based on HTTP. It works by dividing a stream into small fragments that are downloaded sequentially via HTTP.
HTTPS (Hypertext Transfer Protocol over SSL) is a protocol for transmitting hypertext securely over the internet. It is used by browsers and web servers to encrypt and decrypt requests for pages sent by users and pages returned by servers. Encrypted data exchange is done by using an HTTPS certificate (issued by a certification authority) that guarantees the authenticity of the server.
Hybrid Cloud is a solution that combines at least one private and public cloud, connected by technology that supports data and application portability. This allows enterprises to easily scale their on-premises infrastructure to a public cloud to handle any overload.
InfluxDB is an open-source database for processing time-series events. It is written in Go and used for infrastructure monitoring, high availability data storage, and real-time analytics.
Infrastructure is the entire complex of equipment, software, and processes necessary to launch applications, as well as for data collection, management, and storage.
IP (Internet Protocol) is a method for transmitting data over a network. The data is divided into separate, completely independent packets. Each computer (or node) on the internet has at least one address that identifies it among other computers, and each data packet contains the sender and recipient addresses.
An IP address is an address in an IP network that is used by connected computers and devices. An IP address allows all connected computers and devices to find each other and exchange data.
IP camera, also known as a network camera or internet camera, is a device that combines a computer and a camera.
Jenkins is an open-source Java server that allows for the automation of software delivery. Working in Jenkins involves processes such as code compilation, running modular tests, generating code quality metrics, deploying new versions of applications in a production environment, and more.
Kubernetes is an open-source container management platform from Google. Kubernetes and Docker are the foundation for running modern workloads in the cloud.
A MAC address (Media Access Control address) is a unique identifier corresponding to a specific component of network equipment or, more specifically, its interface in a network environment. For example, a computer's network card has its own MAC address.
Machine Learning (ML) is a subfield of artificial intelligence that involves building algorithms capable of learning without human intervention.
Mediaserver is server software developed for capturing RTSP streams from video cameras or other devices, creating and storing archives, and delivering multimedia content to clients.
Microservices Architecture is a way of developing software as a interconnected system of several independent modular services that interact with each other. Each of the microservices is responsible for a separate task and can be modified.
Motion JPEG is a simple technology for compressing and unpacking network video material. It provides low latency and stable image quality regardless of its dynamics and complexity. Image quality is determined by the compression level, which, in turn, determines file size and transmission speed.
MP4 (MPEG-4) is a media container format (not a codec) used to package digital video and audio streams, subtitles, posters, and metadata defined by the MPEG group of experts.
MPEG (Moving Picture Experts Group) is a group of experts in cinematography who develop standards for compressing digital video and audio. It is a subdivision of the International Organization for Standardization (ISO).
Multicast is a technology for optimizing bandwidth usage based on simultaneously delivering a single stream of data to multiple network users. See also «unicast».
Multimedia Data Compression
Multimedia data compression is the transformation of a media stream frame by a multimedia codec, resulting in a reduction in the size of the source data with the ability to reverse the transformation to obtain the original or a close-to-original frame.
A neural network is a mathematical model, as well as its software or hardware implementation, built on the principle of the organization and functioning of biological neural networks, the nerve cells of a living organism. The implementation of neural networks usually consists of a system of interacting simple processors (artificial neurons) that perform atomic operations. Neural networks are used for practical purposes: in forecasting tasks, for pattern recognition, in control tasks, and others.
Nexus is a release management platform from Sonatype created to consolidate input signals from multiple open-source modules to provide a fast, secure, and efficient software delivery lifecycle.
Nginx is an HTTP server software compatible with Unix systems that is open source. Its areas of application range from HTTP caching to creating an inverted proxy server.
Orchestration is the practice of automating IT tasks (in particular, container management and infrastructure configuration) in the context of SOA, virtualization, and environment provisioning.
A pixel is one of the many tiny dots that make up a digital image. The color and brightness of each pixel characterize the smallest area of the entire image.
Power-over-Ethernet (PoE) is a technology that provides power to a network device through the cable that connects it to the computer network. This is a significant advantage when using applications for remote and IP surveillance in places where it is difficult or expensive to provide device power.
Prometheus is an open-source cloud monitoring solution with a powerful query language, time-series database, measurement data model, and intelligent alerting capabilities.
A protocol is a set of specific rules that regulate data exchange between two objects. Protocols are used at many levels of data exchange and are divided into hardware and software protocols.
Resolution of an image is a parameter that determines how detailed a digital image is. The higher the resolution, the higher the level of detail displayed. Resolution is characterized by the ratio of the number of pixels horizontally (width) to the number of pixels vertically (height), for example, 320 x 240.
Real-time Transport Protocol (RTP) is an application-level network protocol used for real-time traffic transmission.
Real-time Streaming Protocol (RTSP) is a real-time streaming protocol. It is a command application protocol designed for use in systems that work with multimedia data and is a subset of the HTTP protocol.
S3 (Amazon Simple Storage Service) is a cloud computing service for storing any data objects necessary for the stable operation of your applications.
SDK (Software Development Kit) is a set of software libraries and interfaces that allows developers to create applications for a specific package of software, hardware platform or operating system and other platforms. SDK, using the advantages and functionality of each platform, as well as including code examples and technical documentation, significantly reduces the integration time between systems.
SDP (Session Description Protocol) is a network application layer protocol designed to describe a session for transmitting streaming multimedia data such as telephony (POTS and VoIP), SIP, internet radio, multimedia applications, and others.
Snapshot is a command to create a static copy of the contents of your EC2 instance for backup and recovery purposes.
Sockets are the methods of data exchange between client and server programs over a network. A socket is a so-called «endpoint of connection». Sockets are created and used with a set of software requests or «socket function calls», sometimes called a socket application programming interface (API).
Software-as-a-Service (SaaS) is a self-service model for cloud computing in which users are provided access to application software maintained by the provider.
SSL/TLS (Secure Socket Layer/Transport Layer Security), two of these protocols (SSL is followed by TLS) are cryptographic protocols that provide secure data exchange over a network. Usually, the SSL protocol is used in conjunction with HTTP, resulting in the HTTPS protocol.
Staging environment (Stage) is a controlled copy of your production environment that closely resembles it. This allows you to test new versions of software to find errors before releasing them into production.
TCP (Transmission Control Protocol) is a protocol used in conjunction with the IP protocol to transmit data packets between computers on a network. While the IP protocol provides direct delivery of packets, TCP tracks the path of individual packets that make up a data block (such as a file of a requested web page) and assembles them into a file after delivery to the destination. TCP is a connection-oriented protocol, meaning that it is responsible for establishing and maintaining a connection between two endpoints until a successful data exchange occurs between the communicating applications.
UDP (User Datagram Protocol) is a data exchange protocol with limitations on the data forwarded across a network using the IP protocol. The UDP protocol is an alternative to the TCP protocol. The advantage of the UDP protocol is that it does not require delivery of all data, and some packets can be skipped if the network is overloaded.
Unicast is data exchange between a single sender and a single receiver on a network. A new connection is established for each new user.
Video Camera is a network device (IP camera) designed to convert optical images and audio signals into a digital stream of video-audio data. It can distribute multiple streams of different quality and image resolution, in turn, the stream may contain video, audio, metadata, and other channels.
A virtual machine (VM) is a program or operating system running with the use of virtualization technology. This approach reduces the need for physical machines, lowers costs, and helps test different software configurations.
VOP (Video Object Plane) is a single frame of an MPEG-4 video stream. There are several types of VOP.
P-VOP encodes the difference between images as long as it is feasible. Otherwise, it encodes the entire image, which can also be a completely different image
I-VOP is a full image frame