A video output picture configuration method, electronic equipment and storage medium
Patent Information
- Application Number
- CN202111639278.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-29
- Publication Date
- 2026-08-21
- Estimated Expiration
- 2041-12-29
AI Technical Summary
但由于监控领域产品解码资源的有限性,客户使用监控产品的过程中,当大屏窗口较多且实况分辨率较高时,会出现解码资源不足导致大屏部分实况无法正常观看的问题,影响产品使用效果
Smart Images

Figure CN116418939B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to, but is not limited to, the field of video surveillance, and particularly to a method for configuring video output images, an electronic device, and a storage medium. Background Technology
[0002] With the continuous development of video surveillance technology, large-screen images have evolved from 1080P to 4K or higher resolutions, and large-screen windows also support a greater number. However, due to the limited decoding resources of surveillance products, when customers use surveillance products and there are many large-screen windows with high live resolution, insufficient decoding resources may occur, causing some live content on the large screen to be unviewable, thus affecting the product's performance.
[0003] During system use, how to automatically adapt to changes in application scenarios, maximize the use of decoding resources while meeting the requirements for the number of windows, ensure the availability of business functions, and improve image quality is a research direction for improving the intelligence level of video surveillance system solutions. Summary of the Invention
[0004] This disclosure provides a method for configuring video output images, an electronic device, and a storage medium that automatically adapt to changes in the number / configuration of output windows in a video output system, maximizes the utilization of decoding resources, improves the intelligent configuration level of the video output system, and enhances the image quality of video output while meeting basic requirements for the number of output windows.
[0005] On one hand, embodiments of this disclosure provide a method for configuring video output screens, including:
[0006] Obtain the number of output windows corresponding to the video output VO port and the bitstream configuration type of each output window;
[0007] The decoding bitstream type of each output window is determined based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream channels of the VO port.
[0008] The VO port is controlled to decode and output the decoded bitstream to each output window according to the determined decoding bitstream type of each output window;
[0009] The bitstream configuration type includes: adaptive bitstream; the decoded bitstream type indicates the resolution of the encoded bitstream.
[0010] On the other hand, embodiments of this disclosure also provide an electronic device, including:
[0011] One or more processors;
[0012] Storage device for storing one or more programs.
[0013] When the one or more programs are executed by the one or more processors, the one or more processors implement the video output screen configuration method as described in any embodiment of this disclosure.
[0014] On the other hand, embodiments of this disclosure also provide a computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements a method for configuring video output screens as described in any embodiment of this disclosure.
[0015] After reading and understanding the accompanying diagrams and detailed descriptions, other aspects can be understood. Attached Figure Description
[0016] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the structures shown in these drawings without creative effort.
[0017] Figure 1 This is a flowchart of a method for configuring a video output screen according to an embodiment of the present invention;
[0018] Figure 2 This is a schematic diagram illustrating a video output screen configuration according to an embodiment of the present invention;
[0019] Figure 3 This is a schematic diagram illustrating another video output screen configuration provided in an embodiment of the present invention;
[0020] Figure 4 This is a schematic diagram illustrating another video output screen configuration provided in an embodiment of the present invention;
[0021] Figure 5 This is a schematic diagram illustrating another video output screen configuration provided in an embodiment of the present invention;
[0022] Figure 6 This is a schematic diagram illustrating another video output screen configuration provided in an embodiment of the present invention;
[0023] Figure 7 This is a flowchart of another method for configuring video output screen provided in an embodiment of the present invention.
[0024] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0025] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present invention.
[0026] It should be noted that all directional indications (such as up, down, left, right, front, back, etc.) in the embodiments of the present invention are only used to explain the relative positional relationship and movement of each component in a certain specific posture (as shown in the figure). If the specific posture changes, the directional indication will also change accordingly.
[0027] Furthermore, in this invention, descriptions involving "first," "second," etc., are for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this invention, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0028] In this invention, unless otherwise explicitly specified and limited, the terms "connection," "fixed," etc., should be interpreted broadly. For example, "fixed" can mean a fixed connection, a detachable connection, or an integral part; it can mean a mechanical connection or an electrical connection; it can mean a direct connection or an indirect connection through an intermediate medium; it can mean the internal communication of two components or the interaction between two components, unless otherwise explicitly limited. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0029] Furthermore, the technical solutions of the various embodiments of the present invention can be combined with each other, but only if they are feasible for those skilled in the art. If the combination of technical solutions is contradictory or cannot be implemented, it should be considered that such combination of technical solutions does not exist and is not within the scope of protection claimed by the present invention.
[0030] In video surveillance applications, with the increasing demands for video output, more and more large-screen displays are being introduced, and their corresponding display resolutions have evolved from 1080P to 4K or higher. As monitoring becomes more sophisticated, the number of large-screen windows is also increasing. During this process, due to limited video decoding resources, when there are many large-screen windows and high-resolution live video, insufficient decoding resources can lead to some windows being unviewable, severely impacting the product's usability. For situations involving numerous video data sources, video decoding resources, and corresponding output windows, while a pre-calculated and matched configuration scheme can fix the allocation of relevant decoding resources, the flexible and varied nature of business scenarios means that a fixed decoding resource allocation scheme cannot fully utilize video decoding resources in all situations. Therefore, to effectively improve the full utilization of video decoding resources in the video output system, this disclosure proposes an adaptive video resource allocation scheme. Based on the actual video output needs of the application scenario, the decoding bitstream type of the video output VO port is adaptively determined to maximize the utilization of VO port decoding resources while meeting the window quantity requirements, thereby improving the overall video output quality and system intelligence.
[0031] Before describing the relevant embodiments in this disclosure, the following concepts are introduced:
[0032] IPC: IP camera (network camera);
[0033] NVR: Network Video Recorder, is the storage and forwarding part of a network video surveillance system. The NVR works in conjunction with video encoders or network cameras to complete the functions of video recording, storage and forwarding.
[0034] Main stream: refers to the stream that IPC / NVR can display with the best effect, but it consumes more bandwidth. When bandwidth is sufficient, this is the best stream for monitoring and displaying on the wall, and is also called the mainstream.
[0035] Secondary stream: refers to a stream that can be displayed by IPC / NVR with average quality, but occupies less bandwidth. If the bandwidth is small, the effect will be smoother when using the secondary stream, which is also called the secondary stream.
[0036] Third stream: refers to the stream that IPC / NVR can display with a lower quality, and has a lower encoding and decoding resolution than the secondary stream.
[0037] From an encoding perspective, IPCs / NVRs generally support multiple stream types, with each stream type indicating the resolution of the encoded stream. In some exemplary embodiments, stream types include: main stream, secondary stream, and / or third stream, also referred to as: main stream, secondary stream, and third stream. The main stream, secondary stream, and third stream each indicate a different resolution. The resolution corresponding to the main stream / secondary stream / third stream of different devices is determined independently by each device. For example, the main stream of a certain IPC model corresponds to a resolution of 1080P, the secondary stream to a resolution of 720P, and the third stream to a resolution of 480P; another IPC model has a main stream corresponding to a resolution of 720P, the secondary stream to a resolution of 600P, and the third stream to a resolution of 480P. In some exemplary embodiments, stream types may also include other types, where the resolution indicated by each type corresponds to the encoding resolution of the video data source, and is not limited to the aspects exemplified in the embodiments of this disclosure.
[0038] VO: Video Output, also known as a VO port, connects to a video data source (IPC / NVR) to decode the video stream and output it to the display device. The decoding capability of a VO port can be expressed by the maximum number of supported decoding channels and the resolution of each channel. For example, a VO port can support up to 4 channels of 1080P, meaning it can simultaneously decode a maximum of 4 1080P video streams. The maximum decoding capability of this VO port is described as 4 * 1080P. If each stream has a resolution of 540P, then this VO port can simultaneously support a maximum of 8 540P video streams. In video surveillance / display systems, a decoder includes one or more VO ports; for example, a decoder may have 6, 9, 12, or 18 VO ports.
[0039] It should be noted that when the video output system outputs live video data, the decoding bitstream type of the VO port and the encoding bitstream type of the video data source must correspond consistently, and this must be determined through negotiation between both parties before the bitstream encoding and transmission. The specific configuration or negotiation process is implemented according to the relevant video encoding and decoding scheme, and specific aspects are not discussed in this application.
[0040] The video output window, also known as the video output screen, is considered as one output window in this application unless otherwise specified. The number of output windows is also called the number of displays on the wall, and the display of video output to the display window is also called display on the wall. It will be understood by those skilled in the art that "display on the wall" is a common term for displaying live images on a screen, and is not limited to display devices mounted on a wall, but may also include desktop display devices or handheld display devices, etc.
[0041] This disclosure provides a video output screen configuration scheme. Based on the principle of maximizing the use of VO port decoding resources, the decoding bitstream type of each output window is adaptively adjusted according to the change in the number of video output windows. While meeting the number of users displaying content on the wall, the device's decoding resources are utilized to the maximum extent, thereby improving screen resolution and enhancing the product experience.
[0042] This disclosure provides a method for configuring video output screens, such as... Figure 1 As shown, it includes:
[0043] Step 110: Obtain the number of output windows corresponding to the video output VO port and the bitstream configuration type of each output window;
[0044] Step 120: Determine the decoding bitstream type of each output window based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream channels of the VO port;
[0045] Step 130: Control the VO port to decode and output the decoded bitstream to each output window according to the determined decoding bitstream type of each output window;
[0046] The bitstream configuration type includes: adaptive bitstream; the decoded bitstream type indicates the resolution of the encoded bitstream.
[0047] In some exemplary embodiments, the decoded bitstream type includes: a main bitstream, a secondary bitstream, and / or a third bitstream. That is, it corresponds to the main stream coding resolution, the secondary stream coding resolution, and / or the third stream coding resolution.
[0048] It is understandable that after executing step 130, the VO port will operate according to the new bitstream configuration parameters of each window.
[0049] In some exemplary embodiments, the bitstream configuration type further includes: specifying a primary bitstream, specifying a secondary bitstream, or specifying a third bitstream.
[0050] It should be noted that when the bitstream configuration type of a window is specified as a primary bitstream, a secondary bitstream, or a third bitstream, it is also referred to as a non-adaptive bitstream in this disclosure. This indicates that the decoding bitstream type corresponding to the window cannot be adaptively adjusted, and the video data source can only be accessed and decoded and output according to the specified primary bitstream, secondary bitstream, or third bitstream. When the bitstream configuration type of a window is adaptive bitstream, it indicates that the decoding bitstream type corresponding to the window can be adaptively adjusted, dynamically changing in accordance with the corresponding accessed video data source. It can use a primary bitstream or a secondary bitstream; in some exemplary embodiments, a third bitstream can also be used. The specific encoding and decoding resolution of the primary bitstream, secondary bitstream, and third bitstream is determined by the accessed video data source (IPC / NVR).
[0051] In some exemplary embodiments, the maximum number of main streams of the VO port = the maximum decoding capability of the VO port / the resolution of the main stream of the accessed video data source.
[0052] For example, if a VO port has a maximum decoding capability of 4*1080P, and the main stream resolution of the connected IPC is 1080P (1920*1080), then the maximum number of main stream channels for this VO port is (4*1080P) / 1080P, which equals 4. If the main stream resolution of the connected IPC is 720P, then the maximum number of main stream channels for this VO port is (4*1080P) / 720P, which equals 6. The " / " sign indicates division rounded down; 8 / 3 = 2, 16 / 5 = 3. The maximum number of main stream channels indicates the maximum number of main stream decoding channels that the VO port can support.
[0053] In some exemplary embodiments, obtaining the number of output windows corresponding to the video output VO port and the bitstream configuration type of each output window includes:
[0054] When the reconfiguration trigger event occurs, obtain the number of target output windows corresponding to the video output VO port and the bitstream configuration type of each output window;
[0055] The reconfiguration triggering event includes at least one of the following:
[0056] (1) The number of output windows corresponding to the VO port changes;
[0057] (2) The number of output windows with adaptive bitstream configuration type in the output window corresponding to the VO port changes;
[0058] (3) The bitstream configuration parameters of any output window corresponding to the VO port change, and the bitstream configuration parameters include: bitstream configuration type and / or the resolution indicated by the corresponding decoding bitstream type;
[0059] (4) The resolution of the main stream of the video data source accessed by the VO port changes.
[0060] In some exemplary embodiments, the method further includes:
[0061] Step 100: Determine whether a reconfiguration trigger event has occurred. If it has, proceed to step 110.
[0062] It is understood that when any of the events (1)-(4) above occur, steps 110-130 are triggered to reallocate the VO video decoding resources in the video output / monitoring system in order to maximize the utilization of the decoding resources of the VO port.
[0063] In some exemplary embodiments, the number of output windows corresponding to the VO port increases, for example, from 3 to 5, or decreases, for example, from 5 to 2. Then, the first type of reconfiguration trigger event occurs, triggering the execution of subsequent steps to reallocate the decoding resources of the VO port.
[0064] In some exemplary embodiments, the output windows corresponding to the VO port are 5, of which 4 output windows are configured as adaptive bitstreams and 1 output window is configured as an auxiliary bitstream. After the change, the total number of output windows is still 5, but one adaptive bitstream window is closed, becoming 3, and one auxiliary bitstream window is added, becoming 2. Then the (2) type of reconfiguration trigger event occurs, triggering the execution of subsequent steps to redistribute the decoding resources of the VO port.
[0065] In some exemplary embodiments, operator actions such as opening and closing windows, switching between split screens, and roaming windows may cause a reconfiguration trigger event of type (1) or (2).
[0066] In some exemplary embodiments, there are three output windows corresponding to the VO port, and their bitstream configuration types are all main bitstream. If the bitstream configuration type of one of the windows is changed to adaptive bitstream, then the third type of reconfiguration trigger event occurs, triggering the execution of subsequent steps to redistribute the decoding resources of the VO port.
[0067] In some exemplary embodiments, the operator may modify the configuration parameters of an already opened window, which may cause a reconfiguration trigger event of type (3).
[0068] In some exemplary embodiments, the IPCs corresponding to the two output windows of the VO port are replaced. The main stream resolution of the IPC before replacement is 1080P, and the main stream resolution of the IPC after replacement is 720P. Then, the reconfiguration trigger event of type (4) occurs, triggering the execution of subsequent steps to redistribute the decoding resources of the VO port.
[0069] In some exemplary embodiments, the output window corresponding to the VO port includes multiple IPCs. If the main stream resolutions of the multiple IPCs are different, the main stream resolution with the larger proportion can be selected, or the lowest or highest main stream resolution can be selected to determine the maximum number of main stream paths of the VO port in step 120.
[0070] Based on the above examples, those skilled in the art can infer many other specific reconfiguration trigger events, which will not be listed here.
[0071] In some exemplary embodiments, step 120 includes:
[0072] When the number of output windows is greater than the maximum number of main bitstreams of the VO port, the decoding bitstream type of each output window with the bitstream configuration type of adaptive bitstream is determined as an auxiliary bitstream;
[0073] When the number of output windows is less than or equal to the maximum number of main bitstreams of the VO port, the decoding bitstream type of each output window with the bitstream configuration type of adaptive bitstream is determined as the main bitstream.
[0074] It should be noted that, in some exemplary embodiments, the number of output windows and the bitstream configuration type of each output window obtained in step 110 are obtained when (or after) the reconfiguration trigger event occurs, representing the number of output windows and the bitstream configuration type of each output window after the relevant changes have occurred. Correspondingly, the maximum number of bitstream channels for the VO port in step 120 is also determined based on the maximum decoding capability of the VO port and the changed main bitstream resolution.
[0075] In some exemplary embodiments, such as Figure 2 As shown, the two VO ports, VO1 and VO2, each have a maximum decoding capability of 4*1080P. The main stream decoding resolution corresponds to the IPC's main stream resolution of 1080P. Therefore, the maximum number of main stream paths for VO1 and VO2 is (4*1080) / 1080 = 4. The number of output windows for VO1 is 2, and the bitstream configuration type for these two output windows is adaptive bitstream. In step 120, since 2 is less than 4, the decoding bitstream type for these two output windows must be configured as main bitstream. The number of output windows for VO2 is 5, and the bitstream configuration type for these five output windows is adaptive bitstream. In step 120, since 5 is greater than 4, the decoding bitstream type for these five output windows must be configured as auxiliary bitstream.
[0076] For example, such as Figure 3 As shown, VO1 originally had two adaptive bitstream output windows, both configured as primary bitstreams. If three more adaptive bitstream output windows are added to VO1, resulting in a total of five adaptive bitstream output windows, the number of windows changes. Since five is greater than four, these five output windows must be configured as secondary bitstreams. Specifically, the original two output windows adaptively become secondary bitstreams. It can be understood that, to meet the requirement of five display windows, the resolution of the output windows is adaptively reduced under the constraint of VO1's limited decoding resources.
[0077] For example, such as Figure 3As shown, VO2 originally had 5 adaptive bitstream output windows, all configured as secondary bitstreams. If the output windows on VO2 are closed, only 2 adaptive bitstream output windows remain. The number of windows changes; 2 is less than 4, so these 2 output windows must be configured as primary bitstreams. The 2 remaining output windows that were not closed adaptively become primary bitstreams. This can be understood as follows: after the number of output windows corresponding to VO2 decreases, the decoding resources previously occupied by the closed output windows are released. To fully utilize VO2's decoding resources, after reconfiguration, the 2 remaining output windows will adaptively increase their resolution, thus improving the image quality of these 2 output windows.
[0078] In some exemplary embodiments, step 120, which involves reconfiguring the decoding bitstream type of each output window based on the number of output windows, the bitstream configuration type of each target output window, and the maximum number of main bitstream paths of the VO port, further includes:
[0079] For each output window with a non-adaptive bitstream configuration type, the decoding bitstream type set in each bitstream configuration type remains unchanged.
[0080] As can be seen in some exemplary embodiments, for output windows of non-adaptive bitstreams (such as designated primary bitstream, designated secondary bitstream, or designated third bitstream) corresponding to the VO port, the corresponding primary bitstream, secondary bitstream, or third bitstream remains unchanged when the decoding resources of the VO port are reallocated. That is, in this embodiment, the window range affected by the adaptive bitstream configuration scheme can be effectively controlled according to the bitstream configuration type of the output window. For example, if a certain output window is of high importance and is set to the designated primary bitstream configuration type, then when the overall decoding resources are reconfigured according to step 120, this window still maintains the primary bitstream type, and only the output windows of other adaptive bitstream types are adaptively adjusted. It can be understood that this scheme combining adaptive bitstream and designated bitstream can fully meet the flexible needs of actual business operations.
[0081] For example, such as Figure 4 As shown, the VO port initially corresponds to 2 output windows, with the bitstream configuration types being: adaptive bitstream and specified main bitstream. After switching to 5 output windows (adding 3 output windows of the adaptive bitstream type), 5 is greater than 4. The decoding bitstream type of the 4 adaptive bitstream output windows needs to be configured as auxiliary bitstream, while the output windows of the specified main bitstream maintain the main bitstream.
[0082] For example, such as Figure 5As shown, the VO port initially corresponds to 5 output windows, and the bitstream configuration types are: adaptive bitstream and specified auxiliary bitstream. After closing one adaptive bitstream output window, the output windows of the 3 adaptive bitstreams are reconfigured as the main bitstream, while the bitstream type (resolution) of the output windows of the specified auxiliary bitstream remains unchanged.
[0083] In some exemplary embodiments, obtaining the number of output windows corresponding to the VO port in step 110 includes:
[0084] (a) If all output windows corresponding to the VO port are single VO windows, the total number of the corresponding single VO windows shall be taken as the number of output windows corresponding to the VO port.
[0085] (b) If the output window corresponding to the VO port includes at least one cross-VO window, determine the multiple VO ports associated with each cross-VO window, and take the maximum number of output windows corresponding to the multiple VO ports as the number of output windows corresponding to the VO port.
[0086] In this context, a single VO window refers to an output window whose output screen only includes the decoded bitstream from one VO port, such as... Figure 2-5 As shown, the bitstream of each output window corresponding to a VO port comes from only one VO port; these output windows are all single VO windows. Cross-VO window refers to an output window whose output screen includes decoded bitstreams from at least two VO ports. For example, Figure 6 As shown, the 3x3 video wall includes 3x3 = 9 VO ports (1-9), currently displaying 7 output windows (1-11). Output window 1 outputs only the stream from VO1, which is a single VO window; output window 2 outputs streams from VO2 and VO3, which is a cross-VO window; output window 3 outputs only the stream from VO3, which is a single VO window; output window 4 outputs only the stream from VO4, which is a single VO window; output window 5 outputs streams from VO4 and VO5, which is a cross-VO window; output window 6 outputs only the stream from VO5, which is a single VO window; output window 7 outputs streams from VO5 and VO8, which is a cross-VO window; output window 8 outputs streams from VO6 and VO9, which is a cross-VO window; output windows 9-11 output only the stream from VO9, which is a single VO window.
[0087] For example, Figure 2 If the output windows 1-1 and 1-2 corresponding to VO1 are both single VO windows, then the number of output windows corresponding to VO1 is equal to 2. If the output windows 2-1, 2-2, 2-3, 2-4, and 2-5 corresponding to VO2 are all single VO windows, then the number of output windows corresponding to VO2 is equal to 5.
[0088] For example, Figure 6In the diagram, the output window corresponding to VO1 is window 1; the output window corresponding to VO2 is window 2; and the output windows corresponding to VO3 are windows 2 and 3. Window 1 is a single VO window, window 2 is a cross-VO window (associating two VOs—VO2 and VO3), and window 3 is a single VO window.
[0089] VO1 corresponds to a single VO window, so the number of output windows for VO1 is determined to be 1. VO2 corresponds to a cross-VO window (i.e., the output windows for VO2 include one cross-VO window). The two VOs associated with window 2—VO2 and VO3—are determined. VO2 has 1 output window, and VO3 has 2 output windows; therefore, the larger number of windows, 2, is taken as the number of output windows for VO2. VO3 corresponds to two windows—window 2 and window 3—including one cross-VO window 2. Therefore, the two VOs associated with this cross-VO2 window 2—VO2 and VO3—are further determined. VO2 has 1 output window, and VO3 has 2 output windows; therefore, the larger number of windows, 2, is taken as the number of output windows for VO3.
[0090] For example, Figure 6 In the diagram, VO4 has two output windows: windows 4 and 5; VO5 has three output windows: windows 5, 6, and 7; and VO8 has one output window: window 7. Windows 4 and 6 are single VO windows, while windows 5 and 7 are cross-VO windows. Window 5 is associated with VO4 and 5, and window 7 is associated with VO5 and 8.
[0091] Therefore, for VO4, its corresponding window includes a cross-VO window 5. Following scheme (b), the two VO ports VO4 and VO5 associated with window 5 are determined, with a maximum number of 3 as the number of output windows corresponding to VO4. For VO5, its corresponding window includes two cross-VO windows 5 and 7. The VO ports VO4, VO5, and VO8 associated with windows 5 and 7 are determined, with a maximum number of 3 as the number of output windows corresponding to VO5. For VO8, its corresponding window includes a cross-VO window 7. The VO ports VO5 and VO8 associated with window 7 are determined, with a maximum number of 3 as the number of output windows corresponding to VO8. That is, the final determined number of output windows for VO4, VO5, and VO8 is 3 each.
[0092] For example, Figure 6 In the diagram, VO6 corresponds to output window 8, which is one window in total; VO9 corresponds to output windows 8, 9, 10, and 11, which are four windows in total. Windows 9-11 are single VO windows, while window 8 is a cross-VO window, where window 8 is associated with VO6 and 9.
[0093] Therefore, for VO6, its corresponding window includes a cross-VO window 8. According to scheme (b), the two VO ports VO6 and VO9 associated with window 8 are determined, and the maximum number of 4 is taken as the number of output windows corresponding to VO6. For VO9, the corresponding window includes a cross-VO window 8. The VO ports VO6 and VO9 associated with window 8 are determined, and the maximum number of 4 is taken as the number of output windows corresponding to VO9.
[0094] As can be seen, in case (b), when a VO determines its own output window count, it uses the largest number of windows among the multiple VO ports associated with each cross-VO window as its corresponding output window count. Subsequent decoding resource reconfiguration based on this count avoids inconsistencies in the decoding bitstream type configuration for the same window among associated VOs caused by adjusting the adaptive bitstream type solely based on its own window count. Simultaneously, it avoids overloading decoding resource requirements on VO ports with a large number of output windows under adaptive bitstream mode, ensuring that VO ports with a large number of output windows can decode and output video images normally.
[0095] For example, considering only the total number of windows corresponding to each window, VO4 has 2 windows and VO5 has 3 windows. With a maximum of 2 main stream paths for both VO4 and VO5, and all windows being adaptive streams, windows 4 and 5 corresponding to VO4 are determined to be adaptive main stream windows (2=2), and windows 5, 6, and 7 corresponding to VO5 are determined to be adaptive secondary stream windows (3>2). This results in inconsistency for window 5. According to the scheme of embodiment (b) of this disclosure, the number of windows corresponding to VO4 and VO5 is determined to be 3 each, windows 4 and 5 corresponding to VO4 are determined to be adaptive secondary stream windows (3>2), and windows 5, 6, and 7 corresponding to VO5 are determined to be adaptive secondary stream windows (3>2); it can be seen that the adaptive streams of each window reconfigured according to the scheme of this disclosure can remain consistent.
[0096] In some exemplary embodiments, step 130 includes:
[0097] The maximum number of main stream channels for the VO port = the maximum decoding capability of the VO port / the resolution of the main stream of the accessed video data source.
[0098] This disclosure also provides a method for configuring video output screens, such as... Figure 7 As shown, it includes:
[0099] Step 710: Record the identifier of each output window corresponding to the VO port, the bitstream configuration type of each output window, and the decoding bitstream type of each output window, and record them as the initial window information;
[0100] Step 720: When the reconfiguration trigger event occurs, obtain the window information of the VO port and record it as the target window information;
[0101] Step 730: Obtain the number of output windows based on the target window information;
[0102] Step 740: Determine the decoding bitstream type of each output window in the target window information based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream channels of the VO port.
[0103] Step 750: Control the VO port to decode and output the decoded bitstream to each output window according to the determined decoding bitstream type of each output window.
[0104] In some exemplary embodiments, step 750 includes:
[0105] For each window included in the target window information, perform the following steps:
[0106] If the window already exists before the reconfiguration trigger event occurs, determine whether the newly determined decoding bitstream type of the window has changed. If it has changed, re-establish the bitstream connection with the corresponding video data source according to the newly determined decoding bitstream type, perform decoding, and output the decoded bitstream to the window; if it has not changed, do not re-establish the bitstream connection.
[0107] If this window is a newly added window after the reconfiguration trigger event occurs, establish a bitstream connection with the corresponding video data source according to the newly determined decoding bitstream type of this window, perform decoding, and output the decoded bitstream to this window.
[0108] The determination of relevant changes is based on the initial window information and target window information recorded in steps 710 and 720. The initial window information and target window information include: the identifier of each output window, the bitstream configuration type of each output window, and the decoding bitstream type of each output window.
[0109] It should be noted that the resolution indicated by the newly determined decoding bitstream type in each window in step 740 may be the resolution indicated by the new decoding bitstream type determined by the window with the bitstream configuration type of adaptive bitstream according to the adaptive scheme proposed in this disclosure for switching between the main and auxiliary streams, or it may be the resolution corresponding to the bitstream type corresponding to the bitstream configuration type specified by the operator in the reconfiguration trigger event of type (3), or the resolution reset by the decoding bitstream type.
[0110] This disclosure also provides a configuration device for video output screens, including:
[0111] The acquisition module is configured to acquire the number of output windows corresponding to the video output VO port and the bitstream configuration type of each output window;
[0112] The parameter determination module is configured to determine the decoding bitstream type of each output window based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream channels of the VO port.
[0113] The control module is configured to control the VO port to decode and output the decoded bitstream to each output window according to the determined decoded bitstream type of each output window;
[0114] The bitstream configuration type includes: adaptive bitstream; the decoded bitstream type indicates the resolution of the encoded bitstream.
[0115] This disclosure also provides a monitoring device, including:
[0116] The video output screen configuration device and video decoder described in any embodiment of this disclosure;
[0117] The video decoder includes one or more VO ports.
[0118] This disclosure also provides a monitoring system, including:
[0119] Monitoring equipment, video data source equipment, and display equipment;
[0120] The monitoring device is configured to establish a connection with the video data source device and acquire the video stream;
[0121] The monitoring device is further configured to execute the video output screen configuration method described in any embodiment of this disclosure, and output the acquired video stream to one or more windows on the display device.
[0122] This disclosure also provides an electronic device, including:
[0123] One or more processors;
[0124] Storage device for storing one or more programs.
[0125] When the one or more programs are executed by the one or more processors, the one or more processors implement the video output screen configuration method as described in any embodiment of this disclosure.
[0126] This disclosure also provides a computer-readable storage medium having a computer program stored thereon, the program being implemented by a processor as a method for configuring video output screens as described in any embodiment of this disclosure.
[0127] As can be seen, the video output configuration method provided in this embodiment introduces an adaptive bitstream window decoding bitstream configuration type, and performs main / auxiliary stream control of the adaptive bitstream window based on the number of output windows. Under the condition that the decoding resources of the monitoring equipment are limited, it greatly improves the utilization rate of decoding resources and ensures the number of users' live video feeds and the quality of the live video feeds.
[0128] It will be understood by those skilled in the art that all or some of the steps, systems, or apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned above does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all components may be implemented as software executed by a processor, such as a digital signal processor or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software may be distributed on a computer-readable medium, which may include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, it is well known to those skilled in the art that communication media typically contain computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0129] The above description is only a preferred embodiment of the present invention and does not limit the patent scope of the present invention. All equivalent structural transformations made under the concept of the present invention using the contents of the present invention specification and drawings, or direct / indirect applications in other related technical fields, are included within the patent protection scope of the present invention.
Claims
1. A method for configuring video output screen, characterized in that, include: Obtain the number of output windows corresponding to the video output VO port and the bitstream configuration type of each output window; The decoding bitstream type of each output window is determined based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream channels of the VO port. The VO port is controlled to decode and output the decoded bitstream to each output window according to the determined decoding bitstream type of each output window; The bitstream configuration type includes: adaptive bitstream; the decoded bitstream type indicates the resolution of the encoded bitstream; The step of determining the decoding bitstream type of each output window based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream channels of the VO port includes: When the number of output windows is greater than the maximum number of main bitstreams of the VO port, the decoding bitstream type of each output window with the bitstream configuration type of adaptive bitstream is determined as an auxiliary bitstream; When the number of output windows is less than or equal to the maximum number of main bitstreams of the VO port, the decoding bitstream type of each output window with the bitstream configuration type of adaptive bitstream is determined as the main bitstream.
2. The method as described in claim 1, characterized in that, The bitstream configuration types also include: specifying a primary bitstream, specifying a secondary bitstream, or specifying a third bitstream.
3. The method as described in claim 1 or 2, characterized in that, The acquisition of the number of output windows corresponding to the video output VO port and the bitstream configuration type of each output window includes: When the reconfiguration trigger event occurs, obtain the number of target output windows corresponding to the video output VO port and the bitstream configuration type of each output window; The reconfiguration triggering event includes at least one of the following: The number of output windows corresponding to the VO port changes; The number of output windows with adaptive bitstream configuration type in the output window corresponding to the VO port changes; The bitstream configuration parameters of any output window corresponding to the VO port change, and the bitstream configuration parameters include: bitstream configuration type and / or the resolution indicated by the corresponding decoded bitstream type; The resolution of the main stream of the video data source accessed via the VO port changes.
4. The method as described in claim 1 or 2, characterized in that, The maximum number of main stream channels for the VO port = the maximum decoding capability of the VO port / the resolution of the main stream of the accessed video data source.
5. The method as described in claim 2, characterized in that, The step of determining the decoding bitstream type of each output window based on the number of output windows, the bitstream configuration type of each output window, and the maximum number of main bitstream paths of the VO port further includes: For each output window with a non-adaptive bitstream configuration type, the decoding bitstream type set in each bitstream configuration type remains unchanged.
6. The method as described in claim 1 or 2, characterized in that, The acquisition of the number of output windows corresponding to the video output VO port includes: When all output windows corresponding to the VO port are single VO windows, the total number of corresponding single VO windows shall be taken as the number of output windows corresponding to the VO port. If the output window corresponding to the VO port includes at least one cross-VO window, determine the multiple VO ports associated with each cross-VO window, and take the maximum number of output windows corresponding to the multiple VO ports as the number of output windows corresponding to the VO port.
7. The method as described in claim 1 or 2, characterized in that, The control of the VO port to decode and output the decoded bitstream to each output window according to the determined decoded bitstream type includes: According to the decoding bitstream type of each output window of the VO port, media stream negotiation is performed with the corresponding accessed video data source, and the decoded output is sent to the corresponding window.
8. An electronic device, characterized in that, include: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method for configuring the video output screen as described in any one of claims 1-7.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method for configuring the video output screen as described in any one of claims 1-7.
Citation Information
Patent Citations
Method and device of video preview in digital video recorder
CN105554375A
Network video recorder data processing method and system
CN106231225A