Frame rate adjustment method and device, electronic equipment and storage medium

Event-triggered monitoring and dynamic frame rate adjustment of IPC through NVR solves the problem of bandwidth, hardware performance and storage space limitations of existing NVR, and realizes saving bandwidth and hard disk space, improving video quality and balancing monitoring quality and maintenance costs. effect.

CN119484843APending Publication Date: 2025-02-18E SURFING VISION TECHNOLOGY CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411657511.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

Existing NVRs are limited by bandwidth, hardware performance and storage space when managing IPC and data forwarding, resulting in increased hardware costs, reduced stability and increased management complexity.

Method used

Event-triggered monitoring of IPCs is performed through NVR, dynamically adjust the frame rates of each IPC, and make full use of NVR's bandwidth resources. The specific method includes responding to the trigger event instruction of the IPC, determining the frame rate based on the current bandwidth and the device parameters of the IPC, and sending the frame rate adjustment instruction.

Benefits of technology

It realizes reducing the frame rate of IPC when there is no event trigger, saving network bandwidth and hard disk space, improving video quality, balancing monitoring quality and maintenance costs, and allowing NVR to access more IPCs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119484843A_ABST
    Figure CN119484843A_ABST
Patent Text Reader

Abstract

The invention discloses a frame rate adjusting method, which is characterized in that an NVR (Network Video Recorder) is driven by an event, and adaptively adjusts the frame rate of each IPC according to the event content of each IPC so as to adjust a code stream, and specifically comprises the following steps: when an IPC is triggered by the event, adjusting the frame rate of the IPC according to the current bandwidth and the equipment parameters of the IPC, and reducing the frame rates of other IPCs which are not triggered by the event for a long time; the video quality is improved by adaptively reducing the frame rate of the IPC when no event is triggered and improving the frame rate when the event is triggered, so that the network bandwidth and the hard disk space are saved, each IPC runs at a lower frame rate when no event is triggered, more IPCs can be accessed to the NVR on the basis of the original maximum bandwidth, and the monitoring quality and the maintenance cost are balanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to video processing technology, and in particular to a frame rate adjustment method, device, electronic equipment and storage medium. Background Art

[0002] NVR (Network Video Recorder) is the storage and forwarding part of the network video surveillance system. Its core function is to capture, store, manage and forward network video streams. NVR and network cameras (IPC) transmit data through network connections. IPC transmits the real-time captured video stream to NVR. NVR is responsible for receiving, processing and storing these data. Through NVR, you can watch, browse, play back, manage and store the camera data of multiple IPCs at the same time.

[0003] Currently, most NVRs are limited in IPC management and data forwarding due to NVR bandwidth, hardware performance, storage space and other conditions. As the number of IPCs increases, it is necessary to add NVRs, or perform bandwidth management, storage expansion, and load balancing on the existing NVRs, which increases hardware costs, may reduce the stability of NVR equipment, and increase the complexity of management. Summary of the invention

[0004] Based on this, the present invention aims to provide a frame rate adjustment method, device, electronic device and storage medium, wherein the NVR performs event triggering monitoring on the IPC, thereby dynamically adjusting the frame rate of each connected IPC and making full use of the bandwidth resources of the NVR.

[0005] In a first aspect, the present invention provides a frame rate adjustment method, which is executed at an NVR, and the NVR is connected to an IPC, comprising:

[0006] Responding to the trigger event instruction of the first IPC;

[0007] Determine a frame rate of the first IPC according to the current bandwidth and device parameters of the first IPC;

[0008] Send a frame rate adjustment instruction to the first IPC.

[0009] Further, determining the frame rate of the first IPC according to the current bandwidth and the device parameters of the first IPC includes:

[0010] Get the current remaining bandwidth. When the current remaining bandwidth is greater than the first bandwidth threshold, adjust the frame rate of the first IPC to its maximum frame rate, and set the first IPC to run at the maximum frame rate for a set period of time. Otherwise, determine the second IPC that has been connected for the longest time without being triggered by an event, adjust the frame rate of the second IPC to its minimum frame rate, and adjust the frame rate of the first IPC to its maximum frame rate, and set the first IPC to run at the maximum frame rate for a set period of time.

[0011] Furthermore, the above method also includes:

[0012] When all connected IPCs except the first IPC are running at their respective lowest frame rates, the frame rate of the first IPC is not adjusted.

[0013] Further, determining the second IPC that has been connected for the longest time without being triggered by an event includes:

[0014] The LRU algorithm is used to determine the second IPC that has not been triggered by an event for the longest time.

[0015] Furthermore, obtaining the current remaining bandwidth includes:

[0016] Request the network monitoring module for current remaining bandwidth information;

[0017] The current remaining bandwidth returned by the receiving network detection module.

[0018] Furthermore, the above method also includes:

[0019] Responding to an access request from a third IPC, where the access request carries device parameters of the third IPC;

[0020] Determine an initial frame rate of the third IPC according to the current bandwidth and device parameters of the third IPC;

[0021] An initial frame rate setting instruction is sent to the third IPC.

[0022] Further, determining the initial frame rate of the third IPC according to the current bandwidth and the device parameters of the third IPC includes:

[0023] Get the current remaining bandwidth. When the current remaining bandwidth is greater than the second bandwidth threshold, determine the initial frame rate of the third IPC to be 1 / 2 of its maximum frame rate. Otherwise, determine the fourth IPC that has been connected for the longest time without being triggered by an event, adjust the frame rate of the fourth IPC to its minimum frame rate, and adjust the initial frame rate of the third IPC to 1 / 2 of its maximum frame rate.

[0024] Furthermore, the above method also includes:

[0025] When the current remaining bandwidth is less than the third bandwidth threshold, access to the third IPC is denied.

[0026] Furthermore, obtaining the current remaining bandwidth includes:

[0027] Request the network monitoring module for current remaining bandwidth information;

[0028] Receive the test file from the network detection module and return the test response information to the network detection module;

[0029] The current remaining bandwidth returned by the receiving network detection module.

[0030] In a second aspect, the present invention provides a frame rate adjustment device, which is arranged at an NVR, and the device comprises:

[0031] An instruction response module, used to respond to the trigger event instruction of the first IPC;

[0032] A first frame rate determination module, used to determine the frame rate of the first IPC according to the current bandwidth and the device parameters of the first IPC;

[0033] The frame rate instruction sending module is used to send a frame rate adjustment instruction to the first IPC.

[0034] Furthermore, the above device also includes:

[0035] An access response module, used to respond to an access request from a third IPC, where the access request carries device parameters of the third IPC;

[0036] The second frame rate determination module is used to determine the initial frame rate of the third IPC according to the current bandwidth and the device parameters of the third IPC.

[0037] In a third aspect, the present invention provides an electronic device, comprising a memory storing computer executable instructions and a processor, wherein when the computer executable instructions are executed by the processor, the device executes each step of the frame rate adjustment method provided in the first aspect.

[0038] In a fourth aspect, the present invention provides a readable storage medium storing a computer executable program, which, when executed, can implement the various steps of the frame rate adjustment method provided in the first aspect.

[0039] It can be seen from the above technical solutions that the present invention has the following beneficial effects:

[0040] The present invention provides a frame rate adjustment method. The NVR is driven by events and adaptively adjusts the frame rate of each IPC according to the event content of each IPC, thereby adjusting the code stream. Specifically, when an IPC is triggered by an event, its frame rate is adjusted according to the current bandwidth and the device parameters of the IPC, and the frame rates of other IPCs that have not been triggered by events for a long time are reduced, so as to adaptively reduce the frame rate of the IPC when there is no event triggering, and increase the frame rate when there is an event triggering to improve the video quality, thereby saving network bandwidth and hard disk space. Each IPC runs at a lower frame rate when there is no event triggering, so that the NVR can access more IPCs on the basis of the original maximum bandwidth, and balance the monitoring quality and maintenance cost. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.

[0042] Figure 1 is a flow chart of a frame rate adjustment method provided by an embodiment of the present invention;

[0043] Figure 2 This is an interactive schematic diagram of an NVR adjusting a frame rate when an IPC is triggered by an event provided by an embodiment of the present invention;

[0044] Figure 3 This is a flow chart of NVR adjusting the frame rate when an IPC is triggered by an event provided by an embodiment of the present invention;

[0045] Figure 4 is a flowchart of another frame rate adjustment method provided by an embodiment of the present invention;

[0046] Figure 5 This is an interactive schematic diagram of an NVR adjusting a frame rate when an IPC requests access provided by an embodiment of the present invention;

[0047] Figure 6 This is a flow chart of NVR adjusting frame rate when IPC requests access provided by an embodiment of the present invention;

[0048] Figure 7 is a structural schematic diagram of a frame rate adjustment device provided by an embodiment of the present invention;

[0049] Figure 8 This is a diagram of the electronic device architecture provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0050] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0051] When the NVR manages the connected IPC, the frame rate allocation is an important consideration because the frame rate directly affects the video fluency, bandwidth consumption and storage space usage.

[0052] NVRs usually support dynamic frame rate adjustment based on events. For example, when the IPC detects movement or specific events (such as face recognition, intrusion alarm), the NVR can adjust the frame rate of the IPC to record clear picture details. When the event is over, the NVR can restore the frame rate to a lower level to reduce bandwidth and storage pressure. When the network bandwidth is limited or unstable, the NVR can dynamically reduce the frame rate of the IPC to ensure smooth video transmission. Especially in the case of remote access or multi-device access, the NVR can prioritize the high frame rate of key channels, reduce the frame rate of other channels, and reasonably allocate bandwidth resources.

[0053] In view of this idea, the following embodiments of the present invention provide a frame rate adjustment method, device, electronic device and storage medium, wherein the NVR performs event triggering monitoring on the IPC, thereby dynamically adjusting the frame rate of each connected IPC and making full use of the bandwidth resources of the NVR.

[0054] See also Figure 1 An embodiment of the present invention provides a frame rate adjustment method, which is executed at an NVR, and the NVR is connected to an IPC, including the following steps:

[0055] Step S110: Respond to the trigger event instruction of the first IPC.

[0056] In this step, the first IPC is a network camera that is triggered by a specific event and connected to the NVR. It is normally at a low frame rate. When triggered by a trigger event set by the user, it will send a trigger event instruction to the NVR through the network communication protocol, so that the NVR adjusts its frame rate. The trigger event can be customized by the user, such as motion detection, crossing the boundary, or the user requests to view the monitoring screen of a certain IPC through the interactive interface. The spontaneous detection behavior of the IPC can be recorded as a detection event, and the user's behavior of viewing the IPC screen can be recorded as a playback event.

[0057] Step S120: Determine the frame rate of the first IPC according to the current bandwidth and the device parameters of the first IPC.

[0058] Step S130: Send a frame rate adjustment instruction to the first IPC.

[0059] Specifically, the NVR will check the current total network bandwidth usage, including the real-time transmission requirements of other connected IPCs and the bandwidth usage of other network devices, calculate the current available bandwidth, and ensure that after adjusting the frame rate, the total frame rate of all IPCs will not exceed the bandwidth limit, resulting in video transmission delays or frame losses; the NVR will obtain the maximum and minimum supported frame rate ranges from the device parameters of the first IPC. Some IPCs may support higher frame rates (such as 30fps), while some IPCs may support lower upper limits.

[0060] Furthermore, in order to prevent instantaneous peak bit rates from causing system instability, the total frame rate of all connected IPCs can be set not to exceed a certain percentage of the maximum bandwidth of the NVR, such as 80% or 90%.

[0061] NVR can also set a default frame rate (such as 20fps) for trigger events to maximize the smoothness of the picture without affecting the bandwidth. Based on the current remaining bandwidth and the upper frame rate limit of the first IPC, the frame rate of the first IPC is dynamically adjusted. For example, if the bandwidth is sufficient, set a higher frame rate (such as 20-30fps), and if the bandwidth is limited, set a lower frame rate (such as 10-15fps) to ensure that the video data can be transmitted stably.

[0062] After determining the latest frame rate, the NVR sends an adjusted frame rate instruction to the first IPC, so that the IPC can instantly adjust and send a video stream that meets the current frame rate setting.

[0063] In a further embodiment, the process of the NVR adjusting the first IPC frame rate includes:

[0064] Get the current remaining bandwidth. When the current remaining bandwidth is greater than the first bandwidth threshold, adjust the frame rate of the first IPC to its maximum frame rate, and set the first IPC to run at the maximum frame rate for a set period of time. Otherwise, determine the second IPC that has been connected for the longest time without being triggered by an event, adjust the frame rate of the second IPC to its minimum frame rate, and adjust the frame rate of the first IPC to its maximum frame rate, and set the first IPC to run at the maximum frame rate for a set period of time.

[0065] Specifically, in order to make full use of the bandwidth resources of the NVR and avoid all IPCs running at a high frame rate for a long time and affecting the smoothness, the NVR will set the first IPC to run at the maximum frame rate for only a certain period of time. If no new event is triggered within the set period of time, the first IPC will switch back to the original frame rate. If a new event is triggered within the set period of time, it will continue to run at the maximum frame rate for the set period of time from the time the new event is triggered.

[0066] After receiving the frame rate adjustment instruction, IPC will first give a key frame (I frame) to ensure smooth frame rate switching.

[0067] In a further embodiment, after the NVR traverses the connected IPCs, if all the connected IPCs except the first IPC are running at their respective lowest frame rates, the frame rate of the first IPC is not adjusted. The fact that all IPCs are running at the lowest frame rate means that the bandwidth of the NVR is currently saturated, there are too many connected devices or the network is poor, and the maximum bandwidth of the NVR cannot support a higher frame rate adjustment of the IPC.

[0068] In a further embodiment, a LRU algorithm may be used to determine the second IPC that has not been triggered by an event for the longest time.

[0069] In a further embodiment, the NVR obtains the current remaining bandwidth including the following steps:

[0070] Step S121. Request the network monitoring module for current remaining bandwidth information;

[0071] Step S122: Receive the current remaining bandwidth returned by the network detection module.

[0072] Specifically, when the NVR receives the trigger event instruction from the first IPC, it first evaluates the current network status. At this time, the NVR sends a request to the network monitoring module to obtain the current remaining bandwidth information. The bandwidth request usually contains parameters such as the type of request and the monitoring time period, so that the network monitoring module can provide accurate data. The network monitoring module can collect the current bandwidth occupancy by real-time monitoring the network interface of the switch and router, calculate the current bandwidth usage, and return the remaining bandwidth information to the NVR. The returned data may include available remaining bandwidth, bandwidth occupancy information, data refresh frequency, etc.

[0073] In the case of no IPC access, the NVR has no video stream for calculation. The network detection module can send a large file to the NVR for bandwidth testing and obtain the real-time available remaining bandwidth by calculating the time consumption.

[0074] For example, Figure 2 and Figure 3 A frame rate adjustment situation provided by an embodiment of the present invention is illustrated, and the specific adjustment process is as follows:

[0075] IPC1 is triggered by a motion detection event, and sends a trigger event command to the NVR through the ONVIF protocol. The NVR queries the network monitoring module for available remaining bandwidth. If the available remaining bandwidth is ≥ 20%, it is considered that the bandwidth is sufficient. The frame rate is directly set to the maximum frame rate allowed by IPC1 according to the device parameters reported when IPC1 is connected. If it is less than 20%, it is considered that the bandwidth is insufficient and the frame rates of other IPCs need to be adjusted. Specifically, the IPC that has not had an event triggered for the longest time is queried. If there is a query result, assuming it is IPC2, which is not currently running at its lowest frame rate, the frame rate of IPC2 is set to its lowest frame rate allowed, and at the same time, according to the device parameters reported when IPC1 was connected, its frame rate is set to the maximum frame rate allowed by IPC1; if all IPCs are already running at their respective lowest frame rates, the frame rate of IPC1 will not be adjusted, and a prompt will be given that there are too many connected devices or the network is poor.

[0076] In a further embodiment, an embodiment of the present invention also provides a frame rate setting process for a new IPC access, see Figure 4 , including the following steps:

[0077] Step S410: Respond to the access request of the third IPC, where the access request carries the device parameters of the third IPC.

[0078] In this step, the IPC can report device parameters to the NVR through the network communication protocol when requesting access. Common device parameters include the maximum supported resolution, maximum frame rate, bit rate range, video encoding format, etc.

[0079] Step S420: Determine the initial frame rate of the third IPC according to the current bandwidth and the device parameters of the third IPC.

[0080] In this step, the NVR will check the current total network bandwidth usage, including the real-time transmission requirements of other connected IPCs and the bandwidth usage of other network devices, and calculate the current available bandwidth in order to reasonably allocate bandwidth to the third IPC. Specifically, the NVR can send a request to the network monitoring module to query the remaining bandwidth of the current network. The NVR combines the information returned by the network monitoring module with the device parameters of the third IPC to determine the initial frame rate of the IPC.

[0081] Usually, the NVR will set a suitable frame rate value according to the highest frame rate supported by the third IPC. If the parameters of the third IPC support high frame rates but the bandwidth is limited, the NVR can set a lower frame rate to adapt to the network situation. For example, assuming that the current remaining bandwidth is 5Mbps, the resolution supported by the third IPC is 1080p, the recommended bit rate is 2Mbps, and the maximum frame rate is 30fps, the NVR may set the initial frame rate of the third IPC to 15fps to balance image quality and bandwidth.

[0082] In a further embodiment, step S420 includes the following steps:

[0083] Get the current remaining bandwidth. When the current remaining bandwidth is greater than the second bandwidth threshold, determine the initial frame rate of the third IPC to be 1 / 2 of its maximum frame rate. Otherwise, determine the fourth IPC that has been connected for the longest time without being triggered by an event, adjust the frame rate of the fourth IPC to its minimum frame rate, and adjust the initial frame rate of the third IPC to 1 / 2 of its maximum frame rate.

[0084] If the remaining bandwidth is lower than a certain value and cannot support the access of the new IPC, for example, when the current remaining bandwidth is lower than the third bandwidth threshold, the NVR may reject the access of the third IPC.

[0085] After setting the initial frame rate, the NVR still needs to monitor bandwidth usage. As other IPCs or network conditions change, the NVR can dynamically adjust the frame rate of the third IPC. For example, if the bandwidth drops further, the NVR can send a new frame rate adjustment instruction to reduce the frame rate of the third IPC to maintain the overall smoothness of the system.

[0086] Step S430: Send an initial frame rate setting instruction to the third IPC.

[0087] The NVR generates an initial frame rate setting instruction, which includes a frame rate value (such as 15fps), and sends it to the third IPC through a communication protocol (such as ONVIF, RTSP). After receiving the instruction, the third IPC starts sending the video stream according to the set initial frame rate.

[0088] The access frame rate adjustment mechanism proposed in this embodiment can ensure that the third IPC can access the system smoothly without affecting the overall bandwidth allocation and system stability.

[0089] For example, Figure 5 and Figure 6 The frame rate adjustment situation for a new IPC request access provided by an embodiment of the present invention is illustrated, and the specific adjustment process is as follows:

[0090] IPC3 requests to access NVR and sends an access request to NVR through ONVIF protocol. The access request carries device parameters, including maximum resolution, maximum frame rate, bit rate range, video encoding format, etc. NVR queries the network monitoring module for available remaining bandwidth. If the available remaining bandwidth is ≥ 20%, it is considered that the bandwidth is sufficient. The frame rate is directly set to 1 / 2 of the maximum frame rate allowed by IPC2 according to the device parameters reported when IPC3 is accessed. When the remaining bandwidth is between 10% and 20%, it is considered that the bandwidth is insufficient and the frame rates of other IPCs need to be adjusted. Specifically, the IPC that has not triggered an event for the longest time is queried. If there is a query result, assuming it is IPC4, and it is not currently running at its lowest frame rate, the frame rate of IPC4 is set to its lowest frame rate allowed. At the same time, according to the device parameters reported when IPC3 is accessed, its frame rate is set to 1 / 2 of the maximum frame rate allowed by IPC3. If all IPCs are already running at their respective lowest frame rates, or the remaining bandwidth is less than 10%, it can be considered that there are too many devices connected or the network is poor, and the access of IPC3 is rejected.

[0091] The above embodiments provide a frame rate adjustment method, in which the NVR is driven by events and adaptively adjusts the frame rate of each IPC according to the event content of each IPC, thereby adjusting the code stream. Specifically, when an IPC is triggered by an event, its frame rate is adjusted according to the current bandwidth and device parameters of the IPC, and the frame rate of other IPCs that have not been triggered by events for a long time is reduced, so as to adaptively reduce the frame rate of the IPC when there is no event triggering, and increase the frame rate when an event is triggered to improve the video quality, thereby saving network bandwidth and hard disk space. Each IPC runs at a lower frame rate when there is no event triggering, which enables the NVR to access more IPCs based on the original maximum bandwidth, and balance monitoring quality and maintenance costs.

[0092] The above method disclosed can be implemented by using various forms of equipment, so the present invention also discloses a frame rate adjustment device corresponding to the above method, and a specific embodiment is given below for detailed description.

[0093] like Figure 7 As shown, an embodiment of the present invention provides a frame rate adjustment device, which is arranged at an NVR, and the device includes:

[0094] The instruction response module 702 is used to respond to the trigger event instruction of the first IPC;

[0095] A first frame rate determination module 704, configured to determine a frame rate of the first IPC according to a current bandwidth and a device parameter of the first IPC;

[0096] The frame rate instruction sending module 706 is used to send a frame rate adjustment instruction to the first IPC.

[0097] In a further embodiment, the above device further comprises:

[0098] An access response module 708, configured to respond to an access request from a third IPC, where the access request carries device parameters of the third IPC;

[0099] The second frame rate determining module 710 is used to determine the initial frame rate of the third IPC according to the current bandwidth and the device parameters of the third IPC.

[0100] It can be understood that the first frame rate determination module 704 and the second frame rate determination module 708 can be two independent modules, or two units integrated into one module, or one integrated frame rate determination module.

[0101] The implementation principle and technical effects of the device provided in the embodiments of the present application are the same as those of the aforementioned method embodiments. For the sake of brief description, for matters not mentioned in the device embodiment, reference may be made to the corresponding contents in the aforementioned method embodiments.

[0102] The methods and related devices mentioned in the above embodiments are described with reference to the method flow charts and / or structural diagrams provided in the embodiments of the present application. Specifically, each process and / or block in the method flow charts and / or structural diagrams, as well as the combination of processes and / or blocks in the flow charts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the process in the process. Figure 1 A process or multiple processes and / or structures Figure 1 These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing device to work in a specific way, so that the instructions stored in the computer-readable memory produce a product including an instruction device, which implements the functions specified in the process. Figure 1 A process or multiple processes and / or structures Figure 1 These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide for implementing the process in the process. Figure 1 A flow or multiple flows and / or structures illustrate the steps of the functions specified in one block or multiple blocks.

[0103] The following embodiments are described by taking the method applied to a computer device as an example. It can be understood that the computer device can be any device with computing and processing functions, and can be but not limited to a server or a personal laptop computer, etc. In one embodiment, the computer device can be an application server, and the application server can be a server for running an application to be tested.

[0104] See also Figure 8 , which shows a hardware block diagram of an electronic device, the electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present application described and / or required herein.

[0105] like Figure 8 As shown, the electronic device includes: at least one processor 1, at least one communication interface 2, at least one memory 3 and at least one communication bus 4;

[0106] In the embodiment of the present application, the number of the processor 1, the communication interface 2, the memory 3, and the communication bus 4 is at least one, and the processor 1, the communication interface 2, and the memory 3 communicate with each other through the communication bus 4;

[0107] The processor 1 may be a central processing unit CPU, or an application-specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of the present invention, etc.;

[0108] The memory 3 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), etc., such as at least one disk memory;

[0109] The memory stores a program, and the processor can call the program stored in the memory, wherein the program is used to implement each processing flow of the aforementioned frame rate adjustment solution.

[0110] An embodiment of the present invention further provides a readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the processing flow of the frame rate adjustment solution provided in the above embodiment and / or any possible implementation method in combination with the embodiment is implemented.

[0111] The above-mentioned embodiments have described the present invention in particular detail with respect to possible scenarios, and those skilled in the art will recognize that the present invention can be practiced through other embodiments. The specific naming of components, the capitalization of terms, attributes, data structures, or any other programming or structural aspects are not mandatory or important, and the mechanisms or features of the present invention may have different names, forms, or procedures. The system may be implemented by a combination of hardware and software (as described), entirely by hardware elements, or entirely by software elements. The specific division of functions between the various system components described herein is exemplary only and not mandatory; on the contrary, the functions performed by a single system component may be performed by multiple components, or the functions performed by multiple components may be performed by a single component.

[0112] Those skilled in the art should understand that the various steps of the above disclosed method can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, optionally, they can be implemented with program codes executable by the computing device, so that they can be stored in a storage device and executed by the computing device, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the embodiments of the present invention are not limited to any specific combination of hardware and software.

[0113] These computing device executable programs (also referred to as programs, software, software applications, or code) include machine instructions for programmable processors, and these computing programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, device, and / or device (e.g., disk, optical disk, memory, programmable logic device (PLD)) for providing machine instructions and / or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal for providing machine instructions and / or data to a programmable processor.

[0114] Certain aspects of the present invention include process steps and instructions described herein in the form of algorithms. It should be noted that the process steps and instructions of the present invention can be implemented in software, firmware and / or hardware, and when implemented by software, it can be downloaded, stored on different platforms used by various operating systems and operated from the platforms.

[0115] Those skilled in the art will understand that the structures shown in the accompanying drawings are merely block diagrams of partial structures related to the scheme of the present application, and do not constitute a limitation on the terminal device to which the scheme of the present application is applied. The specific terminal device may include more or fewer components than shown in the figures, or combine certain components, or have a different arrangement of components.

[0116] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "possible design" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.

[0117] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0118] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features thereof may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A frame rate adjustment method, characterized in that: The method is performed at an NVR, and the NVR is connected to an IPC, and includes: Responding to the trigger event instruction of the first IPC; Determine a frame rate of the first IPC according to the current bandwidth and device parameters of the first IPC; Send a frame rate adjustment instruction to the first IPC.

2. The method according to claim 1, characterized in that The determining the frame rate of the first IPC according to the current bandwidth and the device parameters of the first IPC includes: The current remaining bandwidth is obtained. When the current remaining bandwidth is greater than a first bandwidth threshold, the frame rate of the first IPC is adjusted to its maximum frame rate, and the first IPC is set to run for a set period of time at the maximum frame rate. Otherwise, a second IPC that has been connected for the longest time without being triggered by an event is determined, the frame rate of the second IPC is adjusted to its minimum frame rate, and the frame rate of the first IPC is adjusted to its maximum frame rate, and the first IPC is set to run for a set period of time at the maximum frame rate.

3. The method according to claim 2, characterized in that The method further comprises: When all connected IPCs except the first IPC are running at their respective lowest frame rates, the frame rate of the first IPC is not adjusted.

4. The method according to claim 2, characterized in that: Determining the second IPC which has been connected for the longest time without being triggered by an event includes: The LRU algorithm is used to determine the second IPC that has not been triggered by an event for the longest time.

5. The method according to claim 2, characterized in that: The obtaining of the current remaining bandwidth includes: Request the network monitoring module for current remaining bandwidth information; Receive the current remaining bandwidth returned by the network detection module.

6. The method according to claim 1, characterized in that The method further comprises: Responding to an access request from a third IPC, where the access request carries device parameters of the third IPC; Determine an initial frame rate of the third IPC according to the current bandwidth and the device parameters of the third IPC; An initial frame rate setting instruction is sent to the third IPC.

7. The method according to claim 6, characterized in that Determining the initial frame rate of the third IPC according to the current bandwidth and the device parameters of the third IPC includes: The current remaining bandwidth is obtained. When the current remaining bandwidth is greater than the second bandwidth threshold, the initial frame rate of the third IPC is determined to be 1 / 2 of its maximum frame rate. Otherwise, the fourth IPC that has been connected for the longest time without being triggered by an event is determined, the frame rate of the fourth IPC is adjusted to its minimum frame rate, and the initial frame rate of the third IPC is adjusted to 1 / 2 of its maximum frame rate.

8. A frame rate adjustment device, characterized in that: The device is arranged at the NVR and includes: An instruction response module, used to respond to the trigger event instruction of the first IPC; A first frame rate determination module, used to determine the frame rate of the first IPC according to the current bandwidth and the device parameters of the first IPC; The frame rate instruction sending module is used to send a frame rate adjustment instruction to the first IPC.

9. An electronic device, characterized in that: The device comprises a memory storing computer executable instructions and a processor, and when the computer executable instructions are executed by the processor, the device executes the frame rate adjustment method as described in any one of claims 1 to 7.

10. A readable storage medium, characterized in that: A computer executable program is stored, and when the program is executed, the frame rate adjustment method as described in any one of claims 1 to 7 can be implemented.

Citation Information

Cited By

  • Intelligent advertising system and method for advertising space

    CN119815123A