The present invention relates generally to video systems. More particularly, the present invention relates to systems and methods for adjusting the frame rate of transmitted video based on the level of motion in the video.
Known video systems in the surveillance industry include a plurality of video sources, encoders, recorders, streamers, cloud server devices, and client devices, such as web applications, mobile applications, desktop applications, and the like. Known video flow includes capturing a scene, then encoding video of the captured scene, and then streaming or recording the encoded video. The video can be transmitted over a plurality of different channels, such as a LAN, a WAN, or the Internet. However, the size of the video data is critical when accessing the video from the Internet, where bandwidth is both limited and valuable.
For example, when streaming or recording video, the challenge always exists to provide adequate and enough details about the captured scene, without providing more or less than is necessary. Indeed, when streaming or recording video of a static scene, providing more or extra frames will not provide any advantages to a user viewing the video. Conversely, when streaming or recording video of a dynamic or high motion scene, providing fewer frames will cause the video to be jerky. Indeed, a user may want to utilize all available bandwidth when a captured scene includes motion so that the user can view each and every movement.
Notwithstanding the above, some known video systems in the surveillance industry are configured with a low and constant frame rate, resulting in jerky video when streaming and recording video of a dynamic or high motion scene, and resulting in missing video details when movements in a dynamic or high motion scene are quick. Conversely, some known video systems in the surveillance industry are configured with a high and constant frame rate, resulting in video that includes more information about a captured scene than is necessary, and resulting in wasted bandwidth and other limited and valuable resources. Indeed, known video systems that are configured with a constant frame rate, such that the same number of frames is streamed in every situation, inefficiently use bandwidth. Furthermore, known video systems that are configured with a constant frame rate, such that the same number of frames is stored in ever situation, inefficiently use storage space, for example, by storing a high number of frames or a high amount of video information, which can include useless information when captured motion is static or low.
In view of the above, there is a continuing, ongoing need for improved systems and methods.
While this invention is susceptible of an embodiment in many different forms, there are shown in the drawings and will be described herein in detail specific embodiments thereof with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention. It is not intended to limit the invention to the specific illustrated embodiments.
Embodiments disclosed herein can include systems and methods for adjusting the frame rate of transmitted video based on the level of motion in the video. For example, in some embodiments, systems and methods disclosed herein can identify or determine the motion sensitivity level in video of a captured scene and, based thereon, derive a frame rate for processing the video of the captured scene, for example, transmitting, streaming, rendering, or recording the video. Because the motion sensitivity level in the video can change over time, the frame rate for transmitting, streaming, rendering, and recording the video can be dynamic.
In accordance with disclosed embodiments, systems and methods disclosed herein can receive video from a video source such that the received video can have a frame rate that includes a maximum number of frames per second (fps) that the video source is capable of capturing. Systems and methods can process one or more frames of the received video at a periodic or regular interval, for example, one frame per second, to identify or determine the motion sensitivity level of the scene in the video frame and, based thereon, identify a frame rate for a respective frame. For example, in some embodiments, systems and methods disclosed herein can map the identified motion sensitivity level, or a range thereof, to an fps value, and, in some embodiments, such mapping can be proportional or based on a predetermined configuration. However, even though the frame rate is adaptive, in some embodiments, systems and methods disclosed herein do not require user input to identify or configure the frame rate for a frame of the received video as the respective frame is processed.
Once a frame rate is identified in accordance with disclosed embodiments, systems and methods disclosed herein can consume or process the video at the identified frame rate for transmitting, streaming, rendering, or recording the video. Because the frame rate can be dynamic and change from frame to frame in the video, systems and methods disclosed herein can utilize bandwidth efficiently so as to not waste bandwidth on unnecessary frames and so as to consume enough bandwidth to transmit, stream, render, or record the appropriate level of detail in the video.
In some embodiments, systems and methods disclosed herein can be used in connection with streaming video via the Internet, when bandwidth efficiency is necessary. Indeed, streaming video over the Internet presents a challenge due to limited and expensive bandwidth, and systems and methods disclosed herein can utilize the appropriate and necessary amount of bandwidth (no more and no less) for the level of motion in the video, rather than consuming a constant bandwidth and wasting or underutilizing available bandwidth. For example, when scenes that include a high level of motion are captured, systems and methods disclosed herein can be used to track every movement, but can avoid losing movement because of a constant bandwidth that is too low for the level of motion. Similarly, when scenes that are static or include no or a low level of motion, systems and methods disclosed herein can be used to transmit the necessary information, but can avoid transmitting useless video data or frames that do not include additional information.
In some embodiments, systems and methods disclosed herein can be used in connection with saving and recording video and can optimize system resources, such as processing power and memory space, by processing, encoding, decoding, compressing, and saving the appropriate and necessary number of frames (no more and no less) for the level of motion in the video. Similarly, when video clips are created, archived, and exported, systems and methods disclosed herein can optimize system resources by creating, archiving, and exporting video clips with the appropriate and necessary number of frames (no more and no less) for the level of motion in the video.
In some embodiments, systems and methods disclosed herein can be used in connection with a variable group of pictures (GOP). For example, systems and methods disclosed herein can identify a GOP value based on the level of motion in associated video. When the level of motion is zero or low, the GOP value can be high, and when the level of motion is high, the GOP value can be low.
In some embodiments, systems and methods disclosed herein can be used in connection with PTZ cameras. For example, systems and methods disclosed herein can dynamically identify a frame rate to be used in connection with PTZ operations such that the frame rate is based on the level of motion in video captured by a PTZ camera. Furthermore, systems and methods disclosed herein can dynamically identify a frame rate to be used in connection with PTZ operations such that the frame rate is based on the speed of a PTZ camera, for example, the PTZ camera speed identified in a PTZ command.
In some embodiments, systems and methods disclosed herein can be used in connection with uncompressed or unencoded video to identify an adaptive frame rate of the video. Accordingly, systems and methods disclosed herein can be used in connection with video systems independently of a codec used therein.
As seen in
For example, in some embodiments, the transceiver device 322 can receive the video data stream captured by the video source 310, and the control circuitry 328, programmable processor 328a, and control software 328b can analyze the received video data stream to identify and determine the motion sensitivity level in one or more frames of the video data stream at a periodic or regular interval, for example, one frame per second, and, based thereon, identify a frame rate for a respective frame. In some embodiments, the memory device 326 can store a map of motion sensitivity levels, or ranges thereof, to fps values, and the control circuitry 328, programmable processor 328a, and control software 328b can access the map in the memory device 326 to identify a frame rate for a frame based on the identified motion sensitivity level of the respective frame. Furthermore, in some embodiments, the control circuitry 328, programmable processor 328a, and control software 328b can compress the video data stream in accordance with the identified frame rate for a respective video frame, and the transceiver device 324 can transmit, to the storage device 330 or the client device 340, the video data stream at the identified frame rates for the respective frames of the video data stream.
Although a few embodiments have been described in detail above, other modifications are possible. For example, the logic flows described above do not require the particular order described, or sequential order, to achieve desirable results. Other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Other embodiments may be within the scope of the invention.
From the foregoing, it will be observed that numerous variations and modifications may be effected without departing from the spirit and scope of the invention. It is to be understood that no limitation with respect to the specific system or method described herein is intended or should be inferred. It is, of course, intended to cover all such modifications as fall within the spirit and scope of the invention.