A method and system for synchronous display of multiple images
By encoding the tail frame data when a preset number of frame data is collected in the multi-channel screen display system, the problem of out-of-synchronization caused by inconsistent frame numbers in the multi-channel screen display is solved, and the synchronous display effect is achieved.
Patent Information
- Application Number
- CN202210790244.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-06
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2042-07-06
AI Technical Summary
During the multi-channel screen display process, the number of frames retained after the frame drops on the original screen of different channels is inconsistent, resulting in the problem of out-synchronization of the display screen.
The first device and the second device respectively start the encoding program when collecting a preset number of frame data, encode the tail frame data, and use the encoded data to synchronize the display of multiple screens.
The synchronous display of multiple channels is realized, and the display out-synchronization problem is solved due to inconsistent frame counts after the original screen of different channels is reduced.
Smart Images

Figure CN115190218B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of multimedia technology, and in particular to a method and system for synchronously displaying multiple images. Background Art
[0002] With the development of information technology, the demand for information visualization has expanded rapidly, and multi-channel image display has been widely used.
[0003] When displaying multiple channels of images, to ensure the best display and viewing experience, the multiple channels should be displayed synchronously. Generally speaking, the multiple channels of images to be displayed are obtained by frame-reducing the multiple original channels of images. However, when frame-reducing the original channels of images, if the number of frames retained after frame reduction is inconsistent, the final displayed images will inevitably be out of sync. Summary of the Invention
[0004] The present application provides a method and system for synchronous display of multiple screens, which solves the existing technical problem that in the process of frame reduction of multiple display screens, if the number of frames retained after frame reduction of different original screens is inconsistent, the display of the screens will be out of sync.
[0005] In view of this, the first aspect of the present application provides a method for synchronously displaying multiple images, comprising:
[0006] When the first device outputs an encoding start signal, a first encoding program is started, wherein the first encoding program is used to encode the first tail frame data every time a preset number of first frame data are collected;
[0007] The second device starts a second encoding program when receiving the encoding start signal, and the second encoding program is used to encode the second tail frame data every time a preset number of second frame data are collected;
[0008] The display device uses the encoded first tail frame data and the encoded second tail frame data to synchronously display multiple pictures.
[0009] Optionally, starting the first encoding program when the first device outputs the encoding start signal specifically includes:
[0010] When the first device collects a preset number of first frame data for the first time, an encoding start signal is triggered and a first encoding program is started.
[0011] Optionally, the first encoding program is further configured to delete non-first tail frame data each time a preset number of first frame data are collected.
[0012] Optionally, the second encoding program is further configured to delete non-second tail frame data each time a preset number of second frame data are collected.
[0013] Optionally, the calculation formula corresponding to the preset number includes:
[0014] d = f1 / f2;
[0015] Where d is the preset number, f1 is the original frame rate of the original picture, and f2 is the display frame rate after frame reduction.
[0016] Optionally, the display frame rate is 5, 10, 12, 15, 20 or 30.
[0017] Optionally, the first device sends the encoding start signal to the second device via multicast.
[0018] A second aspect of the present application provides a system for synchronously displaying multiple images, comprising: a first device, a second device, and a display apparatus;
[0019] The first device is configured to start a first encoding program when outputting an encoding start signal, wherein the first encoding program is configured to encode the first tail frame data each time a preset number of first frame data are collected;
[0020] The second device is configured to start a second encoding program upon receiving the encoding start signal, wherein the second encoding program is configured to encode the second tail frame data each time a preset number of second frame data are collected;
[0021] The display device is used for synchronously displaying multiple channels of images using the encoded first tail frame data and the encoded second tail frame data.
[0022] Optionally, starting the first encoding program when the first device outputs the encoding start signal specifically includes:
[0023] When the first device collects a preset number of first frame data for the first time, an encoding start signal is triggered and a first encoding program is started.
[0024] Optionally, the calculation formula corresponding to the preset number includes:
[0025] d = f1 / f2;
[0026] Where d is the preset number, f1 is the original frame rate of the original picture, and f2 is the display frame rate after correction.
[0027] It can be seen from the above technical solutions that this application has the following advantages:
[0028] The method for synchronous display of multiple screens provided in the present application includes: starting a first encoding program when a first device outputs an encoding start signal, and the first encoding program is used to encode the first tail frame data each time a preset number of first frame data are collected; starting a second encoding program when a second device receives an encoding start signal, and the second encoding program is used to encode the second tail frame data each time a preset number of second frame data are collected; and a display device uses the encoded first tail frame data and the encoded second tail frame data to synchronously display multiple screens.
[0029] When the first device in the present application encodes the frame data for display (i.e., the first frame data), it encodes the first tail frame data every time a preset number of first frame data is collected. Similarly, when the second device encodes the frame data for display (i.e., the second frame data), it encodes the second tail frame data every time a preset number of second frame data is collected. Since both are preset numbers and the encoded frames are the last frame in the preset number, the data encoded by the first device and the second device are synchronized, and thus the displayed display images are also synchronized, which solves the existing technical problem that in the process of frame reduction of multiple display images, if the number of frames retained after frame reduction of different original images is inconsistent, the display of the display images will be out of sync. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] In order to more clearly illustrate the technical methods in the embodiments of the present application, the following will briefly introduce the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0031] Figure 1 A flowchart of a method for synchronously displaying multiple images according to an embodiment of the present application is provided;
[0032] Figure 2 A schematic diagram of an application example of a method for synchronously displaying multiple images in an embodiment of the present application;
[0033] Figure 3 This is a structural diagram of an embodiment of a system for synchronously displaying multiple images in an embodiment of the present application. DETAILED DESCRIPTION
[0034] The present application designs a method and system for synchronous display of multiple images, which solves the existing technical problem that in the process of frame reduction of multiple display images, if the number of frames retained after frame reduction of different original images is inconsistent, the display of the images will be out of sync.
[0035] In order to help those skilled in the art better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. 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 those skilled in the art without creative work are within the scope of protection of this application.
[0036] For easier understanding, see Figure 1 , Figure 1 This is a flow chart of an embodiment of a method for synchronously displaying multiple images in an embodiment of the present application.
[0037] In this embodiment, a method for synchronously displaying multiple images is provided. Figure 1 As shown, the method in this embodiment specifically includes:
[0038] Step 101: A first encoding program is started when a first device outputs an encoding start signal. The first encoding program is used to encode a first tail frame of data every time a preset number of first frames of data are collected.
[0039] When displaying multiple original images, the frame rate of the final display image may differ from the original image. Therefore, the original images must first be downscaled, i.e., the number of frames must be reduced. For example, if the frame rate of the original images is 60, and the frame rate of the final display image is 30, then the 60-frame original images must be downscaled to a 30-frame display image.
[0040] It can be understood that in one application scenario, the multi-screen synchronous display method in this embodiment is applied to the echo of the splicing screen, that is, the display screen of the splicing screen (i.e., multiple original screens) is frame-reduced and then echoed on the PC side to ensure that the display of the splicing screen is correct. In this scenario, the first device can be any splicing node among the multiple splicing nodes of the splicing screen, and the second device is the splicing node among all the splicing nodes except the first device. There are multiple display units in the splicing screen, each display unit corresponds to a splicing node. During the process of multi-screen display of the splicing screen, each splicing node encodes the original screen and transmits it to the corresponding display unit, which performs the corresponding display. All display units constitute the splicing screen, and one display unit corresponds to one original screen, so that all the original screens constitute a complete display screen. During the display process, each splicing node encodes the corresponding original screen after frame reduction to obtain the corresponding encoded data. After each splicing node sends the encoded data to the display device, the display device can splice these encoded data to obtain the display screen of the display screen, thereby completing the display of the display screen.
[0041] In another application scenario, the multi-image synchronous display method of this embodiment is applied to the encoded display of multiple images. In this scenario, the multiple original images to be displayed are encoded and then displayed normally. In this scenario, the multiple original images correspond to multiple encoding devices, with one encoding device corresponding to each original image. After each encoding device encodes the corresponding original image, the encoded data is transmitted to a display device, which then displays the multiple display images. In this case, the first device can be any encoding device among the multiple encoding devices, and the second device can be any encoding device among the multiple encoding devices except the first device.
[0042] It should be noted that the data collected by the first device is the original image corresponding to the first device, that is, the first frame data is the original image corresponding to the first device. The first encoding program is configured to encode the first last frame data each time a preset number of first frames of data are collected. That is, each time a preset number of first frames of data are collected, the last frame of data is encoded. For example, when five frames of data are collected, the fifth frame of data is encoded.
[0043] Furthermore, the first encoding program and the second encoding program in this embodiment simultaneously encode the tail frame data (first tail frame data / second tail frame data) in a preset number of frame data (first frame data / second frame data), that is, the encoded frame data is synchronized.
[0044] It should be noted that, in one embodiment, starting the first encoding program when the first device outputs the encoding start signal specifically includes:
[0045] When the first device collects a preset number of first frame data for the first time, an encoding start signal is triggered and a first encoding program is started.
[0046] In this embodiment, the first and second encoding procedures are triggered by an encoding start signal, which is triggered when the first device first collects a preset number of first frames of data. Since both the first and second devices process the frame data immediately after collection, i.e., immediately determine whether to discard or encode it after collection, when the first device first collects the preset number of first frames of data and sends the encoding start signal, the second device also first collects the preset number of second frames of data. However, since the transmission of the encoding start signal takes time, by the time the second device receives the encoding start signal, the second last frame of the first preset number of second frames of data may have already been discarded. Therefore, the second encoding procedure is triggered only after the encoding start signal is triggered.
[0047] When the start time of the frame data collected by the second device is not synchronized with the start time of the first device, but the original picture is synchronized, the frame data collected by the first device and the second device are also synchronized, but it is uncertain whether the number of collected frame data is the same. Therefore, the preset number of first frame data collected by the first splicing triggers the encoding start signal, and the encoding timing of the first device and the second device is pre-aligned.
[0048] It can be understood that the first device and the second device in this embodiment can be any splicing node in the splicing screen.
[0049] In this embodiment, the first encoding program is further configured to delete non-first last frame data every time a preset number of first frame data are collected.
[0050] Specifically, the calculation formula corresponding to the preset quantity includes:
[0051] d = f1 / f2;
[0052] Where d is the preset number, f1 is the original frame rate of the original picture, and f2 is the display frame rate after frame reduction.
[0053] It is understandable that the display frame rate can be: 5, 10, 12, 15, 20 or 30.
[0054] Furthermore, the first device sends the coding start signal to the second device via multicast. It is understandable that the first device may also send the coding start signal to each second device individually.
[0055] Step 102: The second device starts a second encoding program upon receiving an encoding start signal. The second encoding program is used to encode the second tail frame data every time a preset number of second frame data are collected.
[0056] As mentioned above, in this embodiment, the encoding timing of the first device and the second device is pre-aligned through the encoding start signal. Although the transmission of the encoding start signal takes time, which results in the time when the first device sends the encoding start signal and the time when the second device receives the encoding start signal being different, which in turn results in the start time of the first encoding program and the second encoding program being not exactly the same. However, the transmission time of the above-mentioned encoding start signal is less than the two adjacent frames of original images, that is, less than the two adjacent frames of first frame data and less than the two adjacent frames of second frame data. That is, when the first encoding program is started, the first device has not yet collected a new frame of data, and the second device has not collected a new frame of data. Both are in the stage where the previous round of collection has just ended and a new round of collection is about to start. Therefore, at this time, the first frame data and the second frame data encoded by the first encoding program and the second encoding program are completely synchronized.
[0057] Step 103: The display device uses the encoded first last frame data and the encoded second last frame data to synchronously display multiple channels of images.
[0058] It is understandable that the display device is a video terminal with a display function, and may be of various existing structures, which is not specifically limited in this embodiment.
[0059] In the method for synchronous display of multiple screens in this embodiment, when the first device encodes the frame data for display (i.e., the first frame data), it encodes the first tail frame data every time a preset number of first frame data is collected. Similarly, when the second device encodes the frame data for display (i.e., the second frame data), it encodes the second tail frame data every time a preset number of second frame data is collected. Since both are preset numbers and the encoded frames are the last frame in the preset number, the data encoded by the first device and the second device are synchronized, and thus the displayed screens are also synchronized, which solves the existing technical problem that in the process of frame reduction of multiple display screens, if the number of frames retained after the frame reduction of different original screens is inconsistent, the display of the screens will be asynchronous.
[0060] The above is an embodiment of a method for synchronously displaying multiple screens provided in an embodiment of the present application. The following is an application example of a method for synchronously displaying multiple screens provided in an embodiment of the present application.
[0061] In this application example, a method for synchronously displaying multiple images is used to display an image on a spliced screen. The frame rate of the original image is 60, and the frame rate of the displayed image is 5. The method specifically includes:
[0062] S1: Select one of the multiple splicing nodes as the first device, and the others as the second devices;
[0063] S2: When the first device collects the first frame of data, after the first N collection operations are completed, it sends an encoding start signal to other splicing nodes and starts the first encoding program, where N is 12.
[0064] S3: The first device uses the first encoding program to discard the first frame data collected by the first 11 acquisition operations in every 12 acquisition operations, and encode the first frame data collected by the 12th acquisition operation to obtain the first data, that is, after retaining one frame, the subsequent 11 frames are discarded, and then one frame is retained and 11 frames are discarded (such as Figure 2 Data filled with medium grey indicates discarding, while data without filling indicates retaining the code).
[0065] S4: The second device starts the second encoding program after receiving the encoding start signal. Similarly, in every 12 acquisition operations of the second device, the second frame data collected by the first 11 acquisition operations are discarded, and the second frame data collected by the 12th acquisition operation is encoded to obtain the second data. That is, after retaining one frame, the subsequent 11 frames are discarded, and then one frame is retained, and then 11 frames are discarded.
[0066] S5: Displaying a display screen using the first data and the second data.
[0067] It can be understood that the first frame data collected by the first device in the first N collection operations is not used for encoding but is only used for pre-alignment of encoding timings of the first device and the second device.
[0068] In the method for synchronous display of multiple screens in this embodiment, when the first device encodes the frame data for display (i.e., the first frame data), it encodes the first tail frame data every time a preset number of first frame data is collected. Similarly, when the second device encodes the frame data for display (i.e., the second frame data), it encodes the second tail frame data every time a preset number of second frame data is collected. Since both are preset numbers and the encoded frames are the last frame in the preset number, the data encoded by the first device and the second device are synchronized, and thus the displayed screens are also synchronized, which solves the existing technical problem that in the process of frame reduction of multiple display screens, if the number of frames retained after frame reduction of different original screens is inconsistent, the display of the screens will be asynchronous.
[0069] The above is an embodiment of a method for synchronous display of multiple images provided in an embodiment of the present application. The following is an embodiment of a system for synchronous display of multiple images provided in an embodiment of the present application.
[0070] See also Figure 3 , Figure 3 This is a structural diagram of an embodiment of a system for synchronously displaying multiple images in an embodiment of the present application.
[0071] The system for synchronously displaying multiple images in this embodiment includes: a first device, a second device, and a display apparatus;
[0072] The first device is configured to start a first encoding program when outputting an encoding start signal, wherein the first encoding program is configured to encode the first tail frame data each time a preset number of first frame data are collected;
[0073] The second device is configured to start a second encoding program upon receiving an encoding start signal, wherein the second encoding program is configured to encode the second tail frame data each time a preset number of second frame data are collected;
[0074] The display device is used for synchronously displaying multiple channels of images by using the encoded first tail frame data and the encoded second tail frame data.
[0075] Optionally, starting the first encoding program when the first device outputs the encoding start signal specifically includes:
[0076] When the first device collects a preset number of first frame data for the first time, an encoding start signal is triggered and a first encoding program is started.
[0077] Optionally, the calculation formula corresponding to the preset quantity includes:
[0078] d = f1 / f2;
[0079] Where d is the preset number, f1 is the original frame rate of the original picture, and f2 is the display frame rate after frame reduction.
[0080] In the system for synchronous display of multiple screens in this embodiment, when the first device encodes the frame data for display (i.e., the first data), it encodes the first last frame data every time a preset number of first frame data is collected. Similarly, when the second device encodes the frame data for display (i.e., the second data), it encodes the second last frame data every time a preset number of second frame data is collected. Since both are preset numbers and the encoded frames are the last frame in the preset number, the data encoded by the first device and the second device are synchronized, and thus the displayed screens are also synchronized, which solves the existing technical problem that in the process of frame reduction of multiple display screens, if the number of frames retained after frame reduction of different original screens is inconsistent, the display of the screens will be out of sync.
[0081] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0082] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can, for example, be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0083] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.
[0084] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0085] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0086] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0087] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (English full name: Read-Only Memory, English abbreviation: ROM), random access memory (English full name: Random Access Memory, English abbreviation: RAM), magnetic disk or optical disk and other media that can store program code.
[0088] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or make equivalent replacements for some of the technical features therein. 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 application.
Claims
1. A method for synchronously displaying multiple images, characterized in that: include: When the first device outputs an encoding start signal, a first encoding program is started, wherein the first encoding program is used to encode the first tail frame data every time a preset number of first frame data are collected; The second device starts a second encoding program upon receiving the encoding start signal, the second encoding program being configured to encode the second last frame data each time a preset number of second frame data are collected; the display device uses the encoded first last frame data and the encoded second last frame data to synchronously display multiple images, wherein the transmission time of the encoding start signal is less than the time interval between two adjacent frames of the first frame data and less than the time interval between two adjacent frames of the second frame data; The frame data collected by the first device and the second device are synchronized; When the first device outputs the encoding start signal, the first encoding program is started, specifically including: When the first device collects a preset number of first frame data for the first time, an encoding start signal is triggered and a first encoding program is started.
2. The method for synchronously displaying multiple images according to claim 1, wherein: The first encoding program is further configured to delete non-first tail frame data each time a preset number of first frame data are collected.
3. The method for synchronously displaying multiple images according to claim 1, wherein: The second encoding program is further configured to delete non-second tail frame data each time a preset number of second frame data are collected.
4. The method for synchronously displaying multiple images according to claim 1, wherein: The calculation formula corresponding to the preset number include: d = f 1 / f 2; Where, d is the preset quantity, f 1 is the original frame rate of the original picture, f 2 is the display frame rate after frame reduction.
5. The method for synchronously displaying multiple images according to claim 4, wherein: The display frame rate can be: 5, 10, 12, 15, 20 or 30.
6. The method for synchronously displaying multiple images according to claim 1, wherein: The first device sends the encoding start signal to the second device through multicast.
7. A system for synchronously displaying multiple images, characterized in that: include: a first device, a second device, and a display apparatus; The first device is configured to start a first encoding program when outputting an encoding start signal, wherein the first encoding program is configured to encode the first tail frame data each time a preset number of first frame data are collected; The second device is configured to start a second encoding program upon receiving the encoding start signal, wherein the second encoding program is configured to encode the second tail frame data each time a preset number of second frame data are collected; The display device is used to synchronously display multiple images using the encoded first last frame data and the encoded second last frame data, wherein the transmission time of the encoding start signal is less than the time interval between two adjacent frames of the first frame data and less than the time interval between two adjacent frames of the second frame data; The frame data collected by the first device and the second device are synchronized; When the first device outputs the encoding start signal, the first encoding program is started, specifically including: When the first device collects a preset number of first frame data for the first time, an encoding start signal is triggered and a first encoding program is started.
8. The system for synchronously displaying multiple images according to claim 7, wherein: The calculation formula corresponding to the preset number include: d = f 1 / f 2; Where, d is the preset quantity, f 1 is the original frame rate of the original picture, f 2 is the display frame rate after frame reduction.
Citation Information
Patent Citations
Any-frame-rate video file splicing method
CN112019880A
Frame synchronizing method
JP2004266524A