[go: up one dir, main page]

CN117834954A - Remote preview system, method, device, electronic device and storage medium - Google Patents

Remote preview system, method, device, electronic device and storage medium Download PDF

Info

Publication number
CN117834954A
CN117834954A CN202311850124.4A CN202311850124A CN117834954A CN 117834954 A CN117834954 A CN 117834954A CN 202311850124 A CN202311850124 A CN 202311850124A CN 117834954 A CN117834954 A CN 117834954A
Authority
CN
China
Prior art keywords
target
streaming
media service
streaming media
preview
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311850124.4A
Other languages
Chinese (zh)
Inventor
刘欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN202311850124.4A priority Critical patent/CN117834954A/en
Publication of CN117834954A publication Critical patent/CN117834954A/en
Priority to PCT/CN2024/121171 priority patent/WO2025139128A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The embodiment of the application provides a remote preview system, a method, a device, electronic equipment and a storage medium, and relates to the technical field of display, wherein the remote preview system comprises: the system comprises a target streaming media service, a remote preview end and various control ends; each control end can determine a target pushing moment shared by each control end, when the target pushing moment is reached, the code stream corresponding to the control end is actively pushed to a target streaming media service, the target streaming media service can receive the code streams pushed by each control end, the code streams received are combined to obtain target code streams, the target code streams are pushed to a remote preview end, and the remote preview end can respond to the received target code streams and preview and display pictures aiming at a target screen wall based on the target code streams. It can be seen that this scheme can realize effectively multiplexing stream for remote preview.

Description

Remote preview system, method, device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of display technologies, and in particular, to a remote preview system, a remote preview method, a remote preview device, an electronic device, and a storage medium.
Background
With the development of the age, the screen wall can be applied to various scenes, and the screen wall can be used for playing videos or pictures on the outer side wall of a market by way of example. The screen wall can generally consist of a plurality of screen units, namely, the screen units are spliced together to form the screen wall; also, the screen wall may be managed by at least one control terminal, in particular, each control terminal may manage one or more screen units of the screen wall, and each screen unit is managed by one control terminal.
In the related art, when remote previewing is required for the content displayed on the screen wall, the management platform generally directly fetches streams from each control end corresponding to the screen wall, and then sends the data streams to the remote previewing end so as to preview through the remote previewing end.
However, the number of the current taking channels of each control end in the screen wall is limited, so when a plurality of remote previewing ends simultaneously remotely previews the same screen wall, that is, when each control end of the same screen wall simultaneously carries out multi-channel current taking, the situation that the playing stability of the screen wall is affected may occur, and the number of the remote previewing ends may also be greater than the number of the current taking channels. For remote previewing, a loss of taking occurs, so that multiple streams cannot be effectively taken for remote previewing, that is, multiple remote previewing ends cannot effectively preview in parallel for the same screen wall.
Disclosure of Invention
An objective of the embodiments of the present application is to provide a remote preview system, a method, an apparatus, an electronic device, and a storage medium, so as to achieve efficient multiplexing streaming for remote preview. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present application provides a remote preview system, including a target streaming media service, a remote preview end, and respective control ends, where the control ends are configured to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two;
each control end is used for responding to the first triggering condition, determining the target pushing moment shared by each control end, and actively pushing the code stream corresponding to the control end to the target streaming media service when the target pushing moment is reached; the first triggering condition is a triggering condition for pushing a target streaming media service, the code stream corresponding to the control end is a code stream generated based on target picture data, and the target picture data is picture data displayed by a screen unit controlled by the control end;
the target streaming media service is used for receiving the code stream pushed by each control end; carrying out code stream combination on each received code stream to obtain a target code stream; the target code stream is pushed to the remote preview end in response to the second trigger condition being met; the target code stream comprises each frame of picture data displayed by the target screen wall, and the second triggering condition is a preview triggering condition of the remote preview end on the target screen wall;
And the remote preview end is used for responding to the received target code stream and performing preview display of the picture of the target screen wall based on the target code stream.
In a second aspect, an embodiment of the present application provides a remote preview method, which is applied to a target streaming media service included in a remote preview system, where the remote preview system further includes a remote preview end, and each control end, where the control end is configured to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two; the method comprises the following steps:
receiving code streams pushed by each control end; the code stream pushed by each control end is as follows: the control end responds to the condition that a first trigger condition is met, and after the target pushing moment shared by all the control ends is determined and the target pushing moment is reached, the control end actively pushes the code stream to the target streaming media service, wherein the first trigger condition is a trigger condition for pushing the target streaming media service;
carrying out code stream combination on each received code stream to obtain a target code stream; the target code stream comprises all frames of picture data displayed by the target screen wall;
Pushing the target code stream to the remote preview end in response to the second trigger condition being met, so that the remote preview end performs preview display of the picture of the target screen wall based on the target code stream in response to receiving the target code stream; the second triggering condition is a preview triggering condition of the remote preview end for the target screen wall.
In a third aspect, an embodiment of the present application provides a remote preview method, which is applied to any one of control ends included in a remote preview system; the remote preview system further comprises a target streaming media service and remote preview ends, wherein each control end is used for managing screen units contained in a target screen wall, and the number of the screen units contained in the target screen wall is at least two; the method comprises the following steps:
determining a target plug flow time shared by each control end in response to the first trigger condition being met; the first triggering condition is a triggering condition for pushing a target streaming media service;
when the target pushing moment is reached, actively pushing the code stream corresponding to the control end to the target streaming media service so that the target streaming media service performs code stream combination on each received code stream to obtain a target code stream, pushing the target code stream to the remote previewing end in response to the second triggering condition being met, so that the remote previewing end is used for previewing and displaying pictures aiming at the target screen wall based on the target code stream in response to receiving the target code stream;
The code stream corresponding to the control end is a code stream generated based on target picture data, the target picture data is picture data displayed by a screen unit controlled by the control end, the second triggering condition is a preview triggering condition of the remote preview end on the target screen wall, and the target code stream comprises all frame picture data displayed by the target screen wall.
In a fourth aspect, an embodiment of the present application provides a remote preview device, which is applied to a target streaming media service included in a remote preview system, where the remote preview system further includes a remote preview end, and each control end, where the control end is configured to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two; the device comprises:
the receiving module is used for receiving the code stream pushed by each control end; the code stream pushed by each control end is as follows: the control end responds to the condition that a first trigger condition is met, and after the target pushing moment shared by all the control ends is determined and the target pushing moment is reached, the control end actively pushes the code stream to the target streaming media service, wherein the first trigger condition is a trigger condition for pushing the target streaming media service;
The code stream combining module is used for carrying out code stream combination on each received code stream to obtain a target code stream; the target code stream comprises all frames of picture data displayed by the target screen wall;
the first pushing module is used for pushing the target code stream to the remote preview end in response to the second triggering condition, so that the remote preview end can conduct preview display of pictures of the target screen wall based on the target code stream in response to the target code stream; the second triggering condition is a preview triggering condition of the remote preview end for the target screen wall.
In a fifth aspect, an embodiment of the present application provides a remote preview device, which is applied to any one of control ends included in a remote preview system; the remote preview system further comprises a target streaming media service and remote preview ends, wherein each control end is used for managing screen units contained in a target screen wall, and the number of the screen units contained in the target screen wall is at least two; the device comprises:
the first determining module is used for determining the target plug flow time shared by each control end in response to the first trigger condition; the first triggering condition is a triggering condition for pushing a target streaming media service;
The second pushing module is used for actively pushing the code stream corresponding to the control end to the target streaming media service when the target pushing moment is reached, so that the target streaming media service performs code stream combination on each received code stream to obtain a target code stream, and pushing the target code stream to the remote previewing end in response to the second triggering condition being met, so that the remote previewing end is used for performing previewing display on pictures of the target screen wall based on the target code stream in response to receiving the target code stream;
the code stream corresponding to the control end is a code stream generated based on target picture data, the target picture data is picture data displayed by a screen unit controlled by the control end, and the second triggering condition is a preview triggering condition of the remote preview end on the target screen wall.
In a sixth aspect, an embodiment of the present application provides an electronic device, including:
a memory for storing a computer program;
and the processor is used for realizing any one of the remote preview methods when executing the programs stored in the memory.
In a seventh aspect, embodiments of the present application provide a computer readable storage medium having a computer program stored therein, which when executed by a processor, implements any of the above-described remote preview methods.
The beneficial effects of the embodiment of the application are that:
the remote preview system provided by the embodiment of the application may include a target streaming media service, a remote preview end, and each control end, where the control end is configured to manage screen units included in a target screen wall, the number of screen units included in the target screen wall is at least two, each control end may determine a target pushing moment shared by each control end in response to satisfaction of a first trigger condition, and when the target pushing moment is reached, actively push a code stream corresponding to the control end to the target streaming media service, where the target streaming media service may perform code stream merging on each received code stream to obtain a target code stream, and in response to satisfaction of a second trigger condition, push the target code stream to the remote preview end, where the remote preview end may perform preview display based on the target code stream after receiving the target code stream. It can be seen that, in the embodiment of the present application, each control end may actively push a corresponding code stream to a target streaming media service, and the target streaming media service may determine a target code stream based on the code streams pushed by each control end, and when there are multiple remote preview ends, the target streaming media service may also push the target code stream to multiple remote preview ends, so as to implement multiple paths of remote preview. Compared with the related art, when one or more remote previewing ends have previewing requirements, multipath streaming is not needed to be carried out on each control end of the target screen wall, so that the situation that the playing stability of the target screen wall is affected can be avoided, the situation that streaming loss is avoided because the number of the remote previewing ends is more than that of streaming channels of the control ends can be avoided, and therefore the embodiment of the application can effectively realize multipath streaming to carry out remote previewing. In addition, the number of the screen units contained in the target screen wall is at least two, so that a plurality of screen units can be remotely previewed at a remote previewing end.
And the target pushing moment of pushing the target streaming media service and the previewing moment of the remote previewing end on the target screen wall can be set before the target screen wall displays the frame image data, so that the scheme can also realize that the remote previewing end previews the frame image data displayed by the target screen wall in advance, thereby avoiding playing bad videos and causing play accidents, and further improving the playing efficiency of the control end.
Of course, not all of the above-described advantages need be achieved simultaneously in practicing any one of the products or methods of the present application.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following description will briefly introduce the drawings that are required to be used in the embodiments or the description of the prior art, and it is obvious that the drawings in the following description are only some embodiments of the present application, and other embodiments may also be obtained according to these drawings to those skilled in the art.
Fig. 1 is a schematic structural diagram of a remote preview system according to an embodiment of the present application;
FIG. 2 is a schematic diagram of another remote preview system according to an embodiment of the present application;
Fig. 3 is a flow chart of a remote preview method according to an embodiment of the present application;
fig. 4 is a schematic flow chart of establishing a binding relationship between each control end and a target streaming media service according to an embodiment of the present application;
fig. 5 is a schematic diagram of an effect of a one-screen preview according to an embodiment of the present application;
fig. 6 is a schematic flow chart of a one-screen preview according to an embodiment of the present application;
fig. 7 is a flowchart of a remote preview method according to an embodiment of the present application;
FIG. 8 is a flowchart illustrating another remote preview method according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a remote preview device according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of another remote preview device according to an embodiment of the present application;
fig. 11 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. Based on the embodiments herein, a person of ordinary skill in the art would be able to obtain all other embodiments based on the disclosure herein, which are within the scope of the disclosure herein.
For a better understanding of the embodiments of the present application, the following briefly describes a remote preview system and its drawbacks in the related art:
in the related art, the remote preview system may include a management platform, remote preview terminals, and respective control terminals for managing screen units included in the target screen wall. The device on which the management platform operates may be directly connected to each control end, and the device on which the management platform operates may be a central server or other devices. For the remote preview, in one implementation, the control end may screen the corresponding screen unit, and send the screen data obtained by screen capture to the management platform, and then the management platform sends the screen data to the remote preview end for display through the network, but the management platform has network delay in the process of sending the screen data to the remote preview end, so that the real-time performance of the remote preview process is poor. And when previewing the target screen wall, previewing the screen unit corresponding to the single control end, namely, previewing the target screen wall in a split screen manner, wherein when previewing the target screen wall, the remote previewing end needs to take time to splice pictures, so that picture delay occurs when previewing the target screen wall.
In addition, the device where the management platform operates is directly connected with each control end, so that the physical distance between the device and each control end cannot be too far, and cross-domain preview cannot be realized, for example: the target screen wall is arranged on the outer side wall of the market, the control end is also arranged near the target screen wall, the management platform is arranged outside 10 km away from the control end, and the situation is not suitable for direct connection, so that cross-domain preview cannot be realized.
In other related art, when remote previewing is required for the content displayed on the screen wall, the management platform generally directly fetches streams from each control end corresponding to the screen wall, and then sends the data streams to the remote previewing end so as to preview the content through the remote previewing end. However, the number of the stream taking channels of each control end in the screen wall is limited, when a plurality of remote previewing ends simultaneously perform remote previewing on the same screen wall, that is, when each control end of the same screen wall is simultaneously performing multi-channel stream taking, the condition that the playing stability of the screen wall is affected may occur, and the number of the remote previewing ends may also be greater than the number of the stream taking channels, so that the condition of stream taking loss is caused, and therefore, multiple channels of stream taking cannot be effectively performed for remote previewing, that is, multiple remote previewing ends cannot effectively perform parallel previewing on the same screen wall.
Based on the problems of the related art, in order to achieve efficient multi-streaming for remote previewing, the embodiments of the present application provide a remote previewing system, method, apparatus, electronic device and storage medium.
The following first describes a remote preview system provided in an embodiment of the present application.
The remote preview system provided by the embodiment of the application may include a target streaming media service, a remote preview end and each control end, where the control end is configured to manage screens included in a target screen wall, and the number of screen units included in the target screen wall is at least two;
each control end is used for responding to the first triggering condition, determining the target pushing moment shared by each control end, and actively pushing the code stream corresponding to the control end to the target streaming media service when the target pushing moment is reached; the first triggering condition is a triggering condition for pushing a target streaming media service, the code stream corresponding to the control end is a code stream generated based on target picture data, and the target picture data is picture data displayed by a screen unit controlled by the control end;
The target streaming media service is used for receiving the code stream pushed by each control end; carrying out code stream combination on each received code stream to obtain a target code stream; the target code stream is pushed to the remote preview end in response to the second trigger condition being met; the target code stream comprises each frame of picture data displayed by the target screen wall, and the second triggering condition is a preview triggering condition of the remote preview end on the target screen wall;
and the remote preview end is used for responding to the received target code stream and performing preview display of the picture of the target screen wall based on the target code stream.
It may be understood that the target streaming media service in the remote preview system may be a software process, where the software process may be executed in a server or a terminal, and the target streaming media service may be one of multiple streaming media services, and the embodiment of the present application does not specifically limit the target streaming media service. The remote preview terminal may be a preview terminal running in the remote preview device, and in an exemplary implementation manner, the form of the preview terminal may be a web terminal form, and at this time, a browser based on the remote preview device may log in to the preview terminal, so that a plug-in-free remote preview based on the browser may be implemented; in another implementation, the remote preview may be a client running in the remote preview device, based on which the remote preview may be implemented. The embodiment of the application does not specifically limit the specific form of the remote preview terminal, and the remote preview device may be a personal computer PC or a mobile device such as a mobile phone, which is not specifically limited in the embodiment of the application. In addition, each control end in the remote preview system may manage a screen unit included in the target screen wall, each control end may manage one or more screen units of the screen wall, and each screen unit is managed by one control end, which may be understood that the control end may manage one screen unit or may manage multiple screen units, which is not limited in this embodiment of the present application. For example, the target curtain wall is a curtain wall with 2 x 2 total of 4 screen units, and then the 4 screen units can correspond to 1 control end, and can also correspond to 2, 3 or 4 control ends, which is reasonable. It should be emphasized that the camera is built in the target screen wall, so that a live-action picture near the target screen wall can be shot in real time. And, the management platform may be a background server of a remote preview end, a control end, etc.
Moreover, the remote preview system of the embodiment of the present application may be applicable to various scenarios, such as: the embodiment of the present application is not limited to the scene with high real-time requirement for remote preview, the scene where multiple remote previewing ends perform remote preview, and the like. For example, a screen wall can be used to play video or pictures on the outer side wall of a market, so that the screen wall can be previewed in real time/previewed in advance to avoid bad information, and the screen wall can be controlled to stop playing in time when the bad information is likely to occur. In addition, when the target screen wall is used for playing advertisements, any control end and the screen unit managed by the control end can be called an advertisement machine, that is, any advertisement machine can comprise a control end and the screen unit managed by the control end.
It can be seen that, in the embodiment of the present application, each control end may actively push a corresponding code stream to a target streaming media service, and the target streaming media service may determine a target code stream based on the code streams pushed by each control end, and when there are multiple remote preview ends, the target streaming media service may also push the target code stream to multiple remote preview ends, so as to implement multiple paths of remote preview. Compared with the related art, when one or more remote previewing ends have previewing requirements, multipath streaming is not needed to be carried out on each control end of the target screen wall, so that the situation that the playing stability of the target screen wall is affected can be avoided, the situation that streaming loss is avoided because the number of the remote previewing ends is more than that of streaming channels of the control ends can be avoided, and therefore the embodiment of the application can effectively realize multipath streaming to carry out remote previewing. In addition, the number of the screen units contained in the target screen wall is at least two, so that a plurality of screen units can be remotely previewed at a remote previewing end.
And the target pushing moment of pushing the target streaming media service and the previewing moment of the remote previewing end for the target screen wall can be set before the target screen wall displays the frame picture data, so that the scheme can also realize that the remote previewing end previews the frame picture data displayed by the target screen wall in advance, thereby avoiding playing bad videos and causing playing accidents, and further improving the playing efficiency of the control end.
In addition, in the embodiment of the application, the target streaming media service pushes the target code stream to the remote preview end, so that cross-domain preview can be realized; the target streaming media service can also carry out code stream combination on the received code streams to obtain target code streams containing frame picture data for display of the target screen wall, so that the remote preview end can preview and display pictures aiming at the target screen wall; and in the embodiment of the application, the picture which is previewed by the remote previewing end and aims at the target screen wall is not obtained by screenshot, but is pushed by the target streaming media service, and the real-time performance of the application aiming at the remote previewing is better.
The remote preview system provided in the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
As shown in fig. 1, the embodiment of the present application provides a remote preview system, which may include a target streaming media service 120, a remote preview end 130, and respective control ends 110, where the control ends 110 are configured to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two;
each control end 110 is configured to determine, in response to satisfaction of a first trigger condition, a target push time shared by each control end 110, and actively push, when the target push time is reached, a code stream corresponding to the control end 110 to the target streaming media service 120; the first trigger condition is a trigger condition for pushing a target streaming media service 120, the code stream corresponding to the control end 110 is a code stream generated based on target picture data, and the target picture data is picture data displayed by a screen unit controlled by the control end 110;
the target streaming media service 120 is configured to receive the code streams pushed by each control end 110; carrying out code stream combination on each received code stream to obtain a target code stream; and pushing the target code stream to the remote preview end 130 in response to the second trigger condition being satisfied; the target code stream includes each frame of picture data displayed by the target screen wall, and the second triggering condition is a preview triggering condition of the remote preview end 130 on the target screen wall;
The remote preview end 130 is configured to, in response to receiving the target code stream, perform preview display of a picture of the target screen wall based on the target code stream.
It should be emphasized that the target streaming media service 120, the remote preview end 130 and the control end 110 in the present application may be software, and specific aspects have been described above, so that they are not described herein.
It may be appreciated that, in response to the first trigger condition being met, each control terminal 110 may determine the target push time shared by each control terminal 110, and then each control terminal 110 has the same target push time; further, when the target pushing moment is reached, the corresponding code stream is actively pushed to the target streaming media service 120 at the same time, so that each control end 110 can push to the target streaming media service 120 at the same time according to the determination of the target pushing moment. The first trigger condition may include, for example: a request or instruction to push the target streaming media service 120 is obtained, and the request or instruction may be manually sent or sent by other senders, etc.; alternatively, the first trigger condition may include detecting that the specified time for pushing the target streaming media service 120 is reached, and the specific condition content of the first trigger condition is not specifically limited in this application.
And, for each control end 110, the code stream corresponding to the control end 110 is a code stream generated based on target picture data, where the target picture data is picture data displayed by a screen unit controlled by the control end 110, and the target screen wall includes a plurality of screen units, where the control end 1 can control a screen unit in an upper half of the target screen wall, and the control end 2 can control a screen unit in a lower half of the target screen wall, and then the code stream corresponding to the control end 1 is: for the picture data displayed by the screen unit of the upper half part controlled by the control end 1, the code stream obtained after the coding processing is carried out, and the code stream corresponding to the control end 2 is: a code stream obtained after coding processing is carried out on the picture data displayed by the screen unit of the lower half part controlled by the control end 2; or, the target screen wall includes a plurality of screen units, and the number of control ends is the same as the number of the plurality of screen units, and at this time, each control end controls one screen unit, then the code stream corresponding to each control end is: and aiming at the picture data displayed by the screen unit controlled by the control end, carrying out coding processing to obtain a code stream.
It may be understood that, the target streaming media service 120 receives the code streams pushed by each control end 110, and may perform code stream merging on each received code stream, where the process of code stream merging may be considered as decoding processing on the code streams pushed by each control end 110 to obtain the picture data displayed by the screen unit corresponding to each control end 110, then selecting the picture data belonging to the same video frame from the displayed picture data, then splicing the picture data belonging to the same video frame according to the layout manner of the target screen wall, and re-performing coding processing on the spliced picture data of each frame, so as to finally obtain the target code stream including the picture data of each frame used for displaying the target screen wall. It should be emphasized that the above-mentioned process of merging the code streams is a process of previewing the video data, when the target screen wall continuously displays the single image data, it is unnecessary to determine the picture data belonging to the same video frame, and only the single image data needs to be spliced according to the layout mode of the target screen wall. It should be noted that, the target streaming media service 120 may receive the code stream pushed by each control end 110 through a caching mechanism; in addition, the time stamps of the control terminals 110 are set in advance to be in a synchronous state, that is, the control terminals 110 are clocked, when the picture data are spliced, the picture data with the same time stamp in different code streams can be spliced according to the layout relationship between the screen units controlled by the control terminals 110, which is obtained in advance, so as to obtain the target code stream, wherein the layout relationship can represent the position relationship of each screen unit in the target screen wall, and the specific mode of the picture splicing is not specifically limited in the application.
The target screen wall continuously displays a puppy image, the target streaming media service can receive code streams pushed by each control end about the puppy image, decode each received code stream to obtain partial puppy images displayed by screen units corresponding to each control end, and splice the partial puppy images displayed by each screen unit controlled by each control end according to the layout mode of the target screen wall, so that a complete puppy image displayed by the target screen wall can be obtained; similarly, the target screen wall displays a section of advertisement video, the target streaming media service can receive the code stream pushed by each control end about the advertisement video, decode each received code stream to obtain each frame of advertisement picture data of the advertisement video displayed by the screen unit corresponding to each control end, select advertisement picture data belonging to the same video frame from each frame of advertisement picture data, splice the advertisement picture data displayed by each screen unit controlled by each control end according to the layout mode of the target screen wall, and obtain each frame of advertisement picture data displayed by the target screen wall.
And, the target streaming media service 120 may push the target code stream to the remote preview end 130 in response to meeting the second trigger condition, where the second trigger condition is a preview trigger condition of the remote preview end 130 for the target curtain wall, that is, when the preview trigger condition of the remote preview end 130 for the target curtain wall is met, the target code stream may be pushed to the remote preview end 130. The second trigger condition may include, for example: acquiring a request or an instruction of the remote previewing end 130 for previewing the target curtain wall, wherein the request or the instruction can be sent manually or by other senders, and the senders can be the remote previewing end 130; alternatively, the second triggering condition may include detecting that the preset time when the remote previewing end 130 previews the target curtain wall is reached, and the specific condition content of the second triggering condition is not specifically limited in this application.
It is understood that the number of remote previews 130 may be one or more; in addition, the remote previewing end 130 may respond to receiving the target code stream, decode the target code stream to obtain the picture data displayed by the target screen wall, and preview and display based on the picture data displayed by the target screen wall, where the foregoing has introduced that the remote previewing end 130 may be a web-shaped previewing end in the remote previewing device, and then the picture data displayed by the target screen wall may be previewed and displayed on a web interface of the previewing end, and of course, the remote previewing end 130 may also be a client, and then the previewing and displaying may be performed on the client.
It should be emphasized that in an alternative implementation, the binding relationship between each control end 110 and the target streaming media service 120 may be manually configured, where the website of the target streaming media service is manually configured; the codes sent to the control terminals are written with the website or service identification of the target streaming media service in advance. The embodiment of the present application is not particularly limited thereto. It should be emphasized that this embodiment is a remote preview system that is not management platform dependent, and in other embodiments a remote preview system that is management platform dependent will be described.
Therefore, each control end in the embodiment of the application can actively push the corresponding code stream to the target streaming media service, the target streaming media service can determine the target code stream based on the code stream pushed by each control end, and when the number of remote preview ends is multiple, the target streaming media service can push the target code stream to the multiple remote preview ends so as to realize multiple paths of remote preview. And, the embodiment of the application can preview the frame image data displayed by the target screen wall in advance at the remote preview end, so that bad video playing can be avoided, play accidents are avoided, and the play efficiency of the control end is improved. In addition, the number of the screen units contained in the target screen wall is at least two, so that a plurality of screen units can be remotely previewed at a remote previewing end.
In addition, in the embodiment of the application, the target streaming media service pushes the target code stream to the remote preview end, so that cross-domain preview can be realized; the target streaming media service can also carry out code stream combination on the received code streams to obtain target code streams containing frame picture data for display of the target screen wall, so that the remote preview end can preview and display pictures aiming at the target screen wall; and in the embodiment of the application, the picture which is previewed by the remote previewing end and aims at the target screen wall is not obtained by screenshot, but is pushed by the target streaming media service, and the real-time performance of the application aiming at the remote previewing is better.
Optionally, in another embodiment of the present application, as shown in fig. 2, the remote preview system further includes a management platform 140;
the management platform 140 is configured to establish a binding relationship between each control end 110 and the target streaming media service 120 in response to the registration of each control end 110, and issue an access address of the target streaming media service 120 to each control end 110 in response to the establishment of the binding relationship;
each control end 110 is further configured to receive the access address issued by the management platform 140;
each control end 110 pushes the code stream corresponding to the control end 110 to the target streaming media service 120, including:
Based on the access address, pushing the code stream corresponding to the control end 110 to the target streaming media service 120.
It should be emphasized that the management platform 140 may be communicatively connected to the target streaming media service 120, the remote previewing end 130, and the respective control ends 110, and that the management platform 140 may macroscopically manage the target streaming media service 120, the remote previewing end 130, and the respective control ends 110, and that the specific form of the management platform 140 may be a software platform in a central server, which is not specifically limited in this application. And, each control end 110 may be registered in advance in the management platform 140, since each control end 110 belonging to the same target curtain wall corresponds to a target streaming media service 120, the management platform 140 may pre-establish a binding relationship between each control end 110 and the target streaming media service 120, and issue an access address of the target streaming media service 120 to each control end 110, each control end 110 receives the access address issued by the management platform 140, and based on the access address, pushes a code stream corresponding to the control end 110 to the target streaming media service 120. For the sake of clear layout, a specific process of establishing the binding relationship between each control end 110 and the target streaming media service 120 will be described in the following embodiments, which will not be described herein.
Of course, the management platform 140 may also manage streaming media services of some non-target streaming media services, such as streaming media service 1 and streaming media service 2.
It can be seen that the remote preview system in the embodiment of the present application may further include a management platform, where the management platform may pre-establish a binding relationship between each control end and the target streaming media service, so as to facilitate the implementation of efficient multi-path streaming in the subsequent steps for remote preview.
Optionally, in another embodiment of the present application, the type of any control terminal 110 is a master type or a slave type;
each control terminal 110 determines, in response to the first trigger condition being satisfied, a target push time shared by each control terminal 110, and may include steps A1-A2:
step A1, in the case that the type of the control end 110 is the host type, responding to a specified push request, and determining the push time of the control end 110 for push based on the specified push request as a target push time; wherein the specified push request is a request for indicating to push for the target streaming media service 120;
step A2, in the case that the type of the control end 110 is the slave type, determining a push time based on the current time and the target delay time in response to receiving a push instruction and the target delay time sent by the control end 110 of the master type, and obtaining the target push time; the target delay time length is as follows: a time length difference between a first time and a second time, wherein the first time is a sending time of the push command, and the second time is a push time determined by the control end 110 of the host type;
Correspondingly, each control end 110 is further configured to, when the type of the control end 110 is the master type, determine, based on the specified push request, a push time when the control end 110 performs push, as a target push time, and then send the push instruction and a target delay duration to the control end 110 of the slave type.
It should be emphasized that the number of the target screen walls may be multiple, so that the number of the target screen walls may correspond to multiple master control ends 110, and the multiple master control ends 110 may be divided into a master control end 110 and a slave control end 110, where the master control end 110 may determine the target plug flow time and push the target plug flow time to the slave control end 110, so as to implement previewing of multiple target screen walls. For the control end 110 of the host type, the first trigger condition is satisfied when the specified push flow request is obtained, and for the control end 110 of the slave type, the push flow instruction and the target delay time length sent by the control end 110 of the host type are received, that is, the first trigger condition is satisfied.
It will be appreciated that in an alternative implementation, the type of each control terminal 110 may be manually selected, and any control terminal 110 may be set to be a master type, and it should be emphasized that only one control terminal 110 in each control terminal 110 is of a master type, and the other control terminals 110 are of slave types, and the control terminal 110 of the master type may send a push command to the control terminal 110 of the slave type. It should be understood that, for any control terminal 110, the control terminal 110 may also be referred to as a master in the case where the type of the control terminal 110 is a master type, and the control terminal 110 may also be referred to as a slave in the case where the type of the control terminal 110 is a slave type, for convenience of description, the description will be given hereinafter with reference to the master and the slave as representatives, which is not limiting to the present application. It should be emphasized that the separation of the control ends 110 into a master machine and a slave machine is a preferred implementation manner, and is not limited to this application, and of course, the specified push request may be directly sent to each control end 110 without setting the master machine, so as to implement remote preview.
It will be appreciated that, in an alternative implementation, the specified push request may be sent by the remote preview end 130, or may be manually sent through an operation interface, which is not specifically limited in the embodiments of the present application. Then, in response to the specified push request, the host may be considered to be responsive to the first trigger condition being satisfied, i.e., the host is responsive to the trigger condition for pushing against the target streaming media service 120; further, the host determines, based on the specified push request, a push time when the control end 110 performs push, and takes the push time as a target push time, and then the second trigger condition, that is, the preview trigger condition of the remote preview end 130 for the target screen wall is: arrival of the target push time.
It will be appreciated that after the host determines the target push time, the host may send a push command to the slave type control terminal 110, that is, to the slave, and the target delay time is a time difference between a first time and a second time, where the first time is a sending time of the push command, and the second time is a push time determined by the host type control terminal 110.
Of course, the foregoing description is merely an implementation manner, and the host may directly send the determined target pushing moment and the determined pushing instruction to the slave, so that the host and the slave may push the target streaming media service 120 when the target pushing moment arrives, which is not limited in this embodiment of the present application.
It should be emphasized that, the clocks of the master and the slave are synchronous, which may default to no delay between the two, but the network delay may exist when the master sends the push command to the slave, so the target delay duration may be set, so as to ensure that each control end 110 has the same target push time.
It can be understood that after the slave receives the push command and the target delay time sent by the host, the slave can calculate the time of adding the target delay time to the current time, determine the push time, and obtain the target push time. By way of example, the current 10-hour 20-minute 9-second 500 milliseconds, the target delay period is 600 milliseconds, and the target push time may be determined to be 10-hour 20-minute 10-second 100 milliseconds. It should be emphasized that the target push time determined by the master and the slave are consistent, so that each control end 110 performs push to the target streaming media service 120 at the same time.
It can be seen that, in the embodiment of the present invention, a control end of a host type responds to an acquisition-specified push request, so as to determine a target push time, and then the control end of the host type calculates a target delay time, and sends the target delay time and a push instruction to a control end of a slave type, so that each control end can reach the target push time and push to a target streaming media service, thereby ensuring that remote previewing of a target screen wall can be achieved in a subsequent step.
Optionally, in another embodiment of the present application, the remote preview system further includes a management platform 140, and the specified push request is a request sent by the management platform 140 to the control end 110 of the host type;
the specified push request carries a first timestamp and a second timestamp; wherein the first timestamp is used to characterize: the remote previewing end 130 waits for a preview time of the preview, and the second timestamp is used for representing: the sending time of the specified push request;
accordingly, step A1, based on the specified push request, determines a push time when the control end 110 performs push, as a target push time, may include steps a11-a12:
step a11, determining a network delay duration when the management platform 140 performs data transmission with the control end 110 as a reference network delay based on the second timestamp carried by the specified push request and the time information of the control end 110 receiving the specified push request;
it will be appreciated that in this embodiment, the type of each control terminal 110 may be pre-selected by the management platform 140, and the specified push request may be a request sent by the management platform 140 to the host type control terminal 110. It is emphasized that, by way of example, the scene of this embodiment may be a scene previewed in advance.
It will be appreciated that this step is specific to any control terminal 110 of the host type, that is, to the host, and then the host responds to a specified push request sent by the management platform 140 for pushing the target streaming media service 120, where the specified push request includes a first timestamp and a second timestamp, and in this case the specified push request may also be referred to as play information.
It will be appreciated that, based on the second timestamp and the time information of the host receiving the specified push request, the network delay time of the management platform 140 for data transmission to the host may be determined, that is, the difference between the sending time of the specified push request sent by the management platform 140 and the receiving time information of the specified push request received by the host is calculated, so as to obtain the network delay time of the data transmission between the two, and the reference network delay is calculated as a reference network delay, so that the time between the host and the management platform 140 is synchronized. For example, the second timestamp carried by the specified push request represents 10 hours, 20 minutes, 10 seconds and 500 milliseconds, and the time information representing that the host receives the specified push request represents 10 hours, 20 minutes, 10 seconds and 800 milliseconds, then the network delay duration when the management platform 140 and the host perform data transmission is 300ms, and the network delay duration is taken as the reference network delay.
Step a12, subtracting the reference network delay from the time represented by the first timestamp, and determining a push time when the control end 110 performs push as a target push time.
It may be understood that, the first timestamp may also represent a future time when the remote previewing end 130 previews, the host may calculate a time represented by the first timestamp and subtract the reference network delay, so as to determine a pushing time when the host pushes the stream, as a target pushing time, and after the host sends the target delay duration and the pushing instruction to each slave, each control end 110 may push the stream to the target streaming media service 120 when reaching the target pushing time, so as to ensure that the remote previewing end 130 may preview and display when reaching the time represented by the first timestamp. Of course, the foregoing is only one implementation manner of determining the target push current time, and other implementations may determine the target push current time, which is not limited in this application. For example, when the network delay time of the management platform and the host computer for data transmission is 300ms, the first time stamp is 10 hours 20 minutes 12 seconds 400 milliseconds, and at this time, the push time of the host computer for push can be calculated to be 10 hours 20 minutes 12 seconds 100 milliseconds, and the push time is taken as the target push time.
Therefore, when the target pushing moment is calculated, the reference network delay is also considered, so that the remote preview terminal can be ensured to preview and display when the moment represented by the first timestamp arrives, and the real-time performance of the remote preview is ensured.
Optionally, in another embodiment of the present application, the remote preview system further includes a management platform 140, designating the push request as a request for indicating periodic preview;
accordingly, determining, based on the specified push request, a push time when the control end 110 performs push as a target push time may include step B1:
step B1, in response to entering each period, determining a pushing moment of pushing by the control end 110 based on a preset local pushing delay time and a current time, wherein the pushing moment is taken as a target pushing moment;
it can be understood that, in this step, when the host registers in the management platform 140, the management platform 140 may send a local push delay duration to the host, and after entering each period, the host may actively add a predetermined local push delay duration to the current time, so as to determine a push time when the control end 110 performs push, as a target push time, where the host may continuously perform push to the target streaming media service 120 under a period of every 5 minutes or less, so as to implement continuous remote preview; in this case, the specified streaming request issued by the management platform 140 for streaming to the target streaming service 120 may be a local streaming delay period sent in advance by the management platform 140.
It should be emphasized that each period may be a specified time of day, or may be a day of week, for example: each period may be 10 points per day or monday per week, which is not specifically limited in this application; similarly, the local push delay duration is preset by the management platform 140, and may be 1 second or 100 milliseconds, which is not limited in this application.
For example, when each period is 10 hours per day, then, in response to entering each period, based on the predetermined local push delay time period of 1 second, the push time when the host performs push may be determined to be 10 hours 1 second, which is taken as the target push time.
After entering each period, the host can reserve the local plug flow delay time and the current time to determine the target plug flow time, and the process is considered as the initiation of the host to remotely preview at the initiative timing, so that the persistence of the remote preview can be ensured.
Optionally, in another embodiment of the present application, the remote preview end 130 is further configured to:
in response to a target control operation for a preview screen of a preview presentation, determining coordinates of a desired control position in the preview screen indicated by the target control operation as desired control coordinates;
Converting the expected control coordinates into screen coordinates according to a preset coordinate conversion formula; the coordinate conversion formula is used for converting coordinates in the preview picture into coordinates on the target screen wall;
determining a target control end of expected control based on the screen coordinates, and performing reverse control processing based on the determined target control end, wherein the reverse control processing is as follows: and a process for instructing the target control terminal to perform a specified control operation, wherein the specified control operation is a control operation for the controlled screen unit that matches the target control operation.
It should be emphasized that the target control operation is essentially a control terminal 110 corresponding to a screen unit that controls the desired control position, and therefore, when the desired control position is the entire preview screen, each control terminal 110 corresponding to the target screen wall needs to be controlled, and when the desired control position is a portion of the preview screen, each control terminal 110 needs to be controlled, and when the desired control position is the entire preview screen, each control terminal 110 can be directly controlled without performing coordinate transformation. Of course, it is also possible to select the positions of the desired controls in the preview screen in batches, which are all possible in the embodiment of the present application, for example: the partial region may be selected for control using a mouse box.
And, for the target control operation of the preview screen of the preview presentation, the coordinates of the desired control position in the preview screen indicated by the target control operation may be determined, and since the desired control position may be for one region or one position point, the desired control coordinate may characterize one region or one position point, and the desired control coordinate is a coordinate in the screen coordinate system set for the preview screen. By way of example, the desired control coordinates may be characterized by a four-dimensional coordinate which may be (x, y, w, h), wherein w and h may be 0 when the desired control position is a position point, and (x, y) is the coordinates of the position point, and (x, y) is the coordinates of a reference point of a region when the desired control position is the region, w and h being offset distances with respect to the width direction and the height direction of the reference point, for example: x may be an abscissa of a point at the upper left corner of the region, y is an ordinate of a point at the upper left corner of the region, w is a width of the region, and h is a height of the region.
It will be appreciated that the desired control coordinates may be converted into screen coordinates according to a predetermined coordinate conversion formula, the screen coordinates may represent coordinates on the target screen wall corresponding to the desired control position, the coordinates may also be a four-dimensional coordinate, and may be represented as (x ', y', w ', h'), and, similarly to the aforementioned desired control coordinates, (x ', y', w ', h') may represent a region or a position point, specifically, when the desired control position is a position point, the values of w 'and h' may be 0, and (x ', y') is the coordinates of the position point corresponding to the position point on the target screen wall, and when the desired control position is a region, (x ', y') is the coordinates of the position point corresponding to a reference point of the region on the target screen wall, w 'and h' are the offset distances of the target screen wall with respect to the width direction and the height direction.
For example, in one implementation, the coordinate transformation formula may be as follows:
x’=x*Sx;y’=y*Sy;w’=(x+w)*Sx–x*Sx=w*Sx;y’=(y+h)*Sy–y*Sy=h*Sy;
Sx=W/bw;
Sy=H/bh。
in the above formula, bw and bh may represent the width and the height of the preview screen, (bw, bh) may be referred to as specified reference coordinate information or reference coordinate information of the preview screen, and the unit may be um, mm or cm, which is not specifically limited in the embodiments of the present application; w and H can represent the resolution of the width direction and the height direction of the target screen wall, and (W, H) can be called designated base coordinate information or reference information of the target screen wall; sx and Sy represent the scaling of the target curtain wall and preview screen in the width direction and the height direction, respectively.
It will be appreciated that the coordinate conversion relationship in the width direction can be calculated based on bw and W, and the coordinate conversion relationship in the longitudinal direction can be calculated based on bh and H, and it should be emphasized that bw and bh may be multiplied by an amplification factor, for example, 100, to enhance the degree of refinement when determining them. Exemplary: the bw and bh of the preview screen are both 960mm, and can be multiplied by 100 to obtain (bw, bh) = (96000 ), and of course, the preview screen may not be multiplied by 100, and the present application is not limited to this.
For example, the specified reference coordinate information of the preview screen is (96000), the desired control coordinate (x, y, W, H) = (48000, 48000, 48000, 48000), the resolution of the entire target video wall is (W, H) = (3840, 2160), sx=0.04, sy=0.0225 can be calculated, and then, based on the above-described calculation formula, the screen coordinate (x ', y', W ', H')= (1920, 1080, 1920) can be calculated.
Of course, the above implementation manner only calculates one implementation manner of the screen coordinates, and may also calculate the screen coordinates based on other manners to implement coordinate conversion, which is not limited in particular in the embodiment of the present application.
In addition, if the preview screen displayed for the preview is the preview screen displayed by the remote preview terminal 130, the target control operation may be to adjust the brightness, contrast, resolution, etc. of the preview screen, which is not limited in this embodiment of the present application. After determining the screen coordinates, since the positional relationship of each screen unit of the target screen wall is predicted, and the coordinate area of each screen unit in the target screen wall can be predicted, then the screen area to which the determined screen coordinates belong can be identified, and the control end 110 corresponding to the screen unit to which the identified screen area belongs is used as the target control end.
It will be understood that, after determining the target control end of the desired control, the target control end may be subjected to a reverse control process, which is a process for instructing the target control end to perform a specified control operation, wherein the specified control operation is matched with the target control operation, for example: when the target control operation is to adjust the brightness of the preview picture, the designated control operation is to control the target control end to adjust the brightness of the corresponding screen unit. It is to be understood that the embodiment of the present application does not specifically limit the reverse control process. In addition, optionally, in an implementation manner, the remote preview terminal 130 may have access addresses of the control terminals 110 recorded in advance, and then, based on the determined target control terminal, the implementation process of performing the reverse control process by the remote preview terminal 130 may include: and sending a specified control instruction to the target control end so that the target control end responds to the specified control instruction to execute specified control operation.
Optionally, in another embodiment of the present application, the remote preview system further includes a management platform 140;
the remote preview terminal 130 performs reverse control processing based on the determined target control terminal, including:
sending a reverse control instruction for the target control end to the management platform 140, so that the management platform 140 instructs the target control end to perform the specified control operation based on the reverse control instruction;
wherein the control operation indicated by the reverse control instruction matches the target control operation.
It may be appreciated that, after determining the target control end of the desired control, the remote preview end 130 may send a reverse control instruction for the target control end to the management platform 140, so that the management platform 140 instructs the target control ticket to perform the specified control operation based on the reverse control instruction. Then, in this embodiment, the management platform 140 may perform reverse control on the target control end, and perform a specified control operation. It should be understood that the specific operation procedure has been described in the above embodiments, and will not be described herein.
It can be seen that in this embodiment, the management platform may perform reverse control processing on the target control end, so as to adjust the display effect of the target screen wall, improve the diversity of remote previewing, and also improve the display effect of the target screen wall.
For a better understanding of this part, a brief description will be given with reference to the foregoing and accompanying drawings, as shown in fig. 3:
s301, each control end actively pushes stream to a target streaming media service;
it can be understood that this step is performed by each control end, and each control end may actively push a stream to the target streaming media service, and specific processes have been described above, which are not described herein.
S302, the target streaming media service receives the code stream data by using a storage mechanism;
it will be appreciated that steps S302-S304 are all performed by the target streaming media service, and the target streaming media service may utilize a storage mechanism of the server on which the target streaming media service is running, so as to receive the code stream data, where the code stream data may be stored in the memory of the server on which the target streaming media service is running.
S303, the target streaming media service performs code stream combination on each received code stream to obtain a target code stream containing frame picture data used for display by a target screen wall;
it should be understood that this process is already described in the above embodiments, and thus will not be described herein.
S304, the target streaming media service responds to the second trigger condition, and pushes the target code stream to the web end for preview display;
It should be understood that this process is already described in the above embodiments, and thus will not be described herein.
S305, the web side previews and controls the picture of the target screen wall in the reverse direction.
It will be appreciated that this step is performed by the web side, i.e., the remote preview side, and that the web side may reverse control the control side after previewing the screen of the target curtain wall.
Therefore, the embodiment of the application can reversely control the control end through the remote preview end, so that the display effect of the target screen wall is adjusted, the diversity of remote preview is improved, and the display effect of the target screen wall can be improved.
Optionally, in another embodiment of the present application, the target streaming service 120 is one of a plurality of streaming services; the remote preview system further includes a management platform 140;
the management platform 140 is configured to determine, before each control end 110 actively pushes the code stream corresponding to the control end 110 to the target streaming media service 120, reference index information, where the reference index information includes: one or more of a performance weight value of each streaming media service, the number of each control end 110, and the number of remaining connections of each streaming media service;
And selecting the streaming media service to be allocated to each control end 110 from a plurality of streaming media services based on the reference index information, thereby obtaining the target streaming media service 120.
It may be understood that this section is described in the specification, before each control end 110 actively pushes the code stream corresponding to the control end 110 to the target streaming media service 120, the management platform 140 may determine reference index information, where the reference index information is a performance weight value for each streaming media service and each control end 110, and may include the number of each control end 110 and the number of remaining connections of each streaming media service, where the number of remaining connections of a streaming media service may be the number of connections related to TCP (Transmission Control Protocol ) or the number of connections related to UDP (User Datagram Protocol ). For example, the performance weight value of each streaming media service may be calculated by the cpu number and the memory number of the server where each streaming media service is running, and the greater the available cpu number and memory number of the server where each streaming media service is running, the greater the performance weight value of the streaming media service is illustrated.
It may be appreciated that, based on the reference index information, a streaming service to be allocated to each control terminal 110 may be selected from a plurality of streaming services, so that the target streaming service 120 may be obtained.
In one implementation manner, the management platform 140 selects, from a plurality of streaming media services, a streaming media service to be allocated to each control end 110 based on the reference index information, to obtain the target streaming media service 120, and may include steps C1-C4:
step C1, sequencing each streaming media service according to the order of the performance weight value of each streaming media service from small to large to obtain a target sequence;
it can be understood that, based on the performance weight values of each streaming media service in the reference index information, the performance weight values of each streaming media service are ordered from small to large, so as to obtain the target sequence. For example, the performance weight of the streaming media service 1 is 100, the performance weight of the streaming media service 2 is 120, and the performance weight of the streaming media service 3 is 150, and then the target sequence of the streaming media service 1, the streaming media service 2 and the streaming media service 3 can be obtained by sequencing the performance weights in the order from small to large.
Step C2, determining a current reference weight value corresponding to the target screen wall;
it may be appreciated that, when each control end 110 corresponding to a target curtain wall registers with the management platform 140, an index identifier index corresponding to the target curtain wall may be determined, and the target curtain wall may be determined based on the index identifier.
It may be appreciated that, based on the index identifier, the screen wall corresponding to the control end 110 that needs to establish the binding relationship may be determined, so as to determine the current reference weight value corresponding to the target screen wall, where the current reference weight value may be determined based on each control end 110 corresponding to the target screen wall, and the performance weight value of the selected target streaming media service 120 is greater than the current reference weight value corresponding to the target screen wall.
Step C3, performing traversal analysis on each stream media service in the target sequence, when traversing each stream media service, detecting whether the performance weight value of the stream media service is larger than the current reference weight value and whether the number of the remaining connection of the stream media service is larger than the number of each control end 110, if yes, determining the currently traversed stream media service as the stream media service to be distributed to each control end 110, and obtaining the target stream media service 120;
It may be understood that, the traversing analysis is performed on each streaming media service in the target sequence, the analysis may be performed from the streaming media service with the smallest performance weight value according to the sequence, when each streaming media service is traversed, it is detected whether the performance weight value of the streaming media service is greater than the current reference weight value, and whether the number of remaining connections of the streaming media service is greater than the number of the respective control ends 110, when the above conditions are all satisfied, the currently traversed streaming media service may be determined as the target streaming media service 120, and the above conditions must be satisfied simultaneously, and when the performance weight value of the streaming media service is greater than the current reference weight value, and the number of remaining connections of the streaming media service is greater than the number of the respective control ends 110, it may be determined that the currently traversed streaming media service is the target streaming media service 120. For example, when the current reference weight value is 80, the number of the control ends 110 is 20, the order of the target sequence is streaming media service 1→streaming media service 2→streaming media service 3, and the streaming media service 1 is traversed to the streaming media service 1, the number of the remaining connections of the streaming media service 1 is 30, the performance weight value is 100, the performance weight value of the streaming media service 1 is satisfied to be greater than the current reference weight value, and the number of the remaining connections of the streaming media service 1 is greater than the number of the control ends 110, at this time, it may be determined that the streaming media service 1 is the target streaming media service 120.
And step C4, if not, continuing to traverse the next streaming media service in the target sequence, and if the currently traversed streaming media service is the last service in the target sequence, reducing the current reference weight value according to the preset adjustment amplitude, and returning to the step of performing traversal analysis on each streaming media service in the target sequence.
It can be understood that, when the performance weight of the streaming media service is greater than the current reference weight, but the number of remaining connections of the streaming media service is less than the number of the control terminals 110, the above condition cannot be satisfied, and step C4 is performed, and similarly, when the performance weight of the streaming media service is less than the current reference weight, but the number of remaining connections of the streaming media service is greater than the number of the control terminals 110, the above condition cannot be satisfied, and step C4 is performed.
It may be understood that if the currently traversed streaming media service does not meet the above condition, and when the currently traversed streaming media service is not the last streaming media service in the target sequence, the next streaming media service may be traversed continuously, and the target sequence is, for example, streaming media service 1→streaming media service 2→streaming media service 3, the currently traversed and analyzed streaming media service 1 does not meet the condition that the performance weight value of the streaming media service 1 is greater than the current reference weight value, and the number of remaining connections of the streaming media service 1 is greater than the number of the control ends 110, at this time, the streaming media service 2 may be traversed continuously.
It can be understood that if the currently traversed streaming media service does not meet the above conditions and when the currently traversed streaming media service is the last streaming media service in the target sequence, at this time, the current reference weight may be reduced according to a predetermined adjustment range, where the predetermined adjustment range may be the greatest common divisor of the performance weight values of each streaming media service or may be an empirical value, and then the traversed analysis is performed on each streaming media service in the target sequence again with the reduced current reference value. For example, the current reference weight value is 80, the number of the control terminals 110 is 20, the target sequence is streaming media service 1→streaming media service 2→streaming media service 3, when traversing to streaming media service 3, the residual connection number of streaming media service 3 is 10, the performance weight value is 120, the performance weight value of streaming media service 3 is satisfied to be greater than the current reference weight value, and the residual connection number of streaming media service 3 is less than the number of the control terminals 110, at this time, streaming media service 3 is the last service in the target sequence, at this time, the maximum common divisor of the performance weight value of each streaming media service can be subtracted from the current reference weight value, and the maximum common divisor is 10, at this time, the current reference weight value is 70, and traversing analysis is performed again to each streaming media service in the target sequence.
It should be emphasized that when the current reference weight value is 0, the current reference weight value is reset to the maximum performance weight value in each streaming media service.
Of course, the above-described process of establishing the binding relationship between each control end 110 and the target streaming media service 120 is only one implementation manner of establishing the binding relationship, which is not limited in this application.
For a better understanding of this part, a brief description will be given below with reference to the accompanying drawings, as shown in fig. 4:
s401, adding each streaming media service to a management platform for unified management;
it can be appreciated that the management platform can manage each streaming media service in the same way, so that a binding relationship can be established between the streaming media service and each control end.
S402, determining performance weight values of all streaming media services;
it can be understood that determining the performance weight value of each streaming media service may be based on the number of CPUs and the memory of the server where each streaming media service operates, which is not described in detail.
S403, the control end registers the management platform;
s404, detecting whether a control end belongs to a screen wall;
if not, step S405 is executed, and if so, step S406 is executed.
S405, distributing the streaming media service according to a single screen unit rule to obtain a target streaming media service;
it can be understood that in this case, there is only one screen unit, so there is only one corresponding control end, at this time, the streaming media service with the largest performance weight value can be directly allocated to the corresponding control end as the target streaming media service, and step S407 is continuously performed.
S406, obtaining the number of control ends corresponding to the screen wall, and selecting streaming media services to be distributed to each control end from a plurality of streaming media services to obtain target streaming media services;
it will be appreciated that this portion of the disclosure has been described above, and will not be described in detail herein.
S407, obtaining the access address of the target streaming media service and issuing the access address to the corresponding control end;
it can be understood that the issued Access address of the target streaming media service is not only the issued Access address of the target streaming media service, but also authentication information AK (Access KEY ID, user identifier), SK (Secret Access KEY, secret KEY) can be issued.
And S408, each control end pushes the code stream corresponding to the control end to the target streaming media service based on the access address.
Therefore, the embodiment of the application can adopt a traversal analysis mode to compare the performance weight value of each streaming media service with the reference weight value, so as to determine the target streaming media service, establish the binding relation between each control end and the target streaming media service, and enable each control end to push the corresponding code stream to the target streaming media service, thereby realizing effective multipath stream fetching for remote preview.
Optionally, in one implementation, the management platform 140 is further configured to:
in response to a target remote preview request for each pre-edited data to be displayed, issuing each pre-edited data to the target streaming media service 120; the data to be displayed are the data to be displayed on the same screen of the target screen wall;
the target streaming service 120 is further configured to:
in response to receiving each data to be displayed sent by the management platform 140, splicing each data to be displayed according to a display position relationship among each data to be displayed to obtain combined picture data, and pushing the combined picture data to the remote preview terminal 130 in response to a preview trigger time of the remote preview terminal 130 for each data to be displayed;
the remote preview terminal 130 is further configured to preview the combined picture data in response to receiving the combined picture data.
It may be appreciated that the management platform 140 may send each pre-edited data to be displayed on the same screen to the target streaming media service 120, the target streaming media service 120 may splice the data to be displayed on the same screen according to the display position relationship between each data to be displayed, that is, combine the data to be displayed on the same screen to obtain combined picture data, the display position relationship between each data to be displayed may be preset on the management platform 140, the combined picture data may have a plurality of data to be displayed thereon, the target streaming media service 120 may push the combined picture data to the remote preview end 130, and the remote preview end 130 may preview the combined picture data.
In addition, the process related to pre-editing may also be performed by the management platform 140, and the pre-editing may be editing window coordinates, a content file type, a file storage path, component resource file information, etc., where the window coordinates may be window positions of data to be displayed in the combined screen data, and the file type may be pictures, videos, documents, etc.
For a better understanding of this part, the following description is briefly presented with reference to the accompanying drawings, as shown in fig. 5 and 6:
fig. 5 is an effect diagram of combined screen data in which image data 1 is placed in the upper left corner, image data 2 is placed in the upper right corner, and image data 3 is placed below, thereby realizing the effect of combined display.
Fig. 6 is a schematic flow chart showing each data to be displayed for pre-editing, which may include:
s601, the management platform pre-edits each piece of data to be displayed;
it will be appreciated that the management platform may edit window coordinates, content file types, file storage paths, component resource file information, etc. for each data to be displayed.
S602, recording pre-edited content by a management platform;
it will be appreciated that the management platform may record and save pre-edited content.
S603, sending each piece of pre-edited data to be displayed to a target streaming media service;
s604, the target streaming media service can splice the data to be displayed to obtain combined picture data and send the combined picture data to the web terminal;
s605, the web side previews the combined picture data.
It is to be understood that the steps S603 to S605 are already described above, and are not described herein.
Therefore, the method and the device can realize the function of pre-editing preview based on the target streaming media service, so that the pre-editing effect can be checked in advance, a plurality of pieces of pre-edited data to be displayed can be previewed on the same screen, and the working efficiency is improved.
The following describes a remote preview method provided in an embodiment of the present application with reference to the accompanying drawings.
As shown in fig. 7, the remote preview method provided in the embodiment of the present application is applied to a target streaming media service included in a remote preview system, where the remote preview system further includes a remote preview end, and each control end, where the control end is configured to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two; the method may comprise the steps of:
S701, receiving code streams pushed by each control end;
the code stream pushed by each control end is as follows: the control end responds to the condition that a first trigger condition is met, and after the target pushing moment shared by all the control ends is determined and the target pushing moment is reached, the control end actively pushes the code stream to the target streaming media service, wherein the first trigger condition is a trigger condition for pushing the target streaming media service;
s702, carrying out code stream combination on each received code stream to obtain a target code stream;
the target code stream comprises all frames of picture data displayed by the target screen wall;
s703, pushing the target code stream to the remote preview end in response to the second trigger condition being met, so that the remote preview end performs preview display of the picture of the target screen wall based on the target code stream in response to receiving the target code stream;
the second triggering condition is a preview triggering condition of the remote preview end for the target screen wall.
It may be understood that the foregoing steps are performed for the target streaming media service, and specific implementation manners of each step may refer to descriptions corresponding to the foregoing system embodiments, which are not repeated herein.
Therefore, the target streaming media service in the application can perform code stream combination on each received code stream to obtain target code streams, and when the number of remote preview ends is multiple, the target streaming media service can push the target code streams to the multiple remote preview ends so as to realize multipath remote preview. Compared with the prior art, when one or more remote previewing ends have previewing requirements, multipath streaming is not required to be carried out on each control end of the target screen wall, so that the situation that the playing stability of the target screen wall is influenced can be avoided, the situation that streaming loss is caused by the fact that the number of the remote previewing ends is more than that of streaming channels of the control ends can be avoided, and therefore the embodiment of the application can effectively realize multipath streaming to carry out remote previewing.
Optionally, in another embodiment of the present application, another remote preview method is also provided.
As shown in fig. 8, another remote preview method provided in the embodiment of the present application is applied to any one of the control ends included in the remote preview system; the remote preview system further comprises a target streaming media service and a remote preview end, wherein each control end is used for managing screen units contained in a target screen wall, and the number of the screen units contained in the target screen wall is at least two; the method comprises the following steps:
S801, determining a target plug flow moment shared by all control ends in response to the first trigger condition;
the first triggering condition is a triggering condition for pushing a target streaming media service;
s802, when the target pushing moment is reached, actively pushing the code stream corresponding to the control end to the target streaming media service so that the target streaming media service performs code stream combination on each received code stream to obtain a target code stream, pushing the target code stream to the remote previewing end in response to the second trigger condition being met, so that the remote previewing end is used for previewing and displaying pictures of the target screen wall based on the target code stream in response to receiving the target code stream;
the code stream corresponding to the control end is a code stream generated based on target picture data, the target picture data is picture data displayed by a screen unit controlled by the control end, the second triggering condition is a preview triggering condition of the remote preview end on the target screen wall, and the target code stream comprises all frame picture data displayed by the target screen wall.
Optionally, the type of the control end is a master type or a slave type;
And determining the target plug flow time shared by each control end according to the first trigger condition, wherein the target plug flow time comprises the following steps:
under the condition that the type of the control end is the host type, responding to an appointed push request, and determining the push time of the control end for push based on the appointed push request as a target push time; the specified push request is a request for indicating to push a target streaming media service;
under the condition that the type of the control end is the slave type, responding to a push command and a target delay time sent by the control end of the host type, and determining a push time based on the current time and the target delay time to obtain a target push time; the target delay time length is as follows: the time length difference value between a first time and a second time, wherein the first time is the sending time of the push command, and the second time is the push time determined by a control end of a host type;
in the case that the type of the control end is the host type, the method further includes:
and determining the pushing moment of pushing by the control end based on the specified pushing request, and sending the pushing instruction and the target delay time to the control end of the slave type after the pushing moment is taken as the target pushing moment.
Optionally, the remote preview system further includes a management platform, and the specified push request is a request sent by the management platform to a control end of a host type;
the specified push request carries a first timestamp and a second timestamp; wherein the first timestamp is used to characterize: the remote preview end waits for preview time of preview, and the second timestamp is used for representing: the sending time of the specified push request;
the determining, based on the specified push request, a push time when the control end performs push, as a target push time, includes:
based on a second timestamp carried by the specified push flow request and time information of the specified push flow request received by the control end, determining network delay time length when the management platform and the control end perform data transmission, and taking the network delay time length as reference network delay;
subtracting the reference network delay from the time represented by the first timestamp, and determining the pushing time of pushing by the control end as a target pushing time.
Optionally, the remote preview end is further configured to:
in response to a target control operation for a preview screen of a preview presentation, determining coordinates of a desired control position in the preview screen indicated by the target control operation as desired control coordinates;
Converting the expected control coordinates into screen coordinates according to a preset coordinate conversion formula; the coordinate conversion formula is used for converting coordinates in the preview picture into coordinates on the target screen wall;
determining a target control end of expected control based on the screen coordinates, and performing reverse control processing based on the determined target control end, wherein the reverse control processing is as follows: and a process for instructing the target control terminal to perform a specified control operation, wherein the specified control operation is a control operation for the controlled screen unit that matches the target control operation.
Optionally, the remote preview system further comprises a management platform;
the remote preview terminal performs reverse control processing based on the determined target control terminal, and includes:
sending a reverse control instruction aiming at the target control end to the management platform so that the management platform instructs the target control end to perform the appointed control operation based on the reverse control instruction;
wherein the control operation indicated by the reverse control instruction matches the target control operation.
Optionally, the target streaming media service is one of a plurality of streaming media services; the remote preview system further comprises a management platform;
The management platform is configured to determine reference index information before each control end actively pushes a code stream corresponding to the control end to the target streaming media service, where the reference index information includes: one or more of a performance weight value of each streaming media service, the number of each control end, and the number of remaining connections of each streaming media service;
and selecting the streaming media service to be distributed to each control end from a plurality of streaming media services based on the reference index information to obtain a target streaming media service.
Optionally, the management platform selects, from a plurality of streaming media services, streaming media services to be allocated to each control end based on the reference index information, to obtain a target streaming media service, including:
sequencing each streaming media service according to the order of the performance weight value of each streaming media service from small to large to obtain a target sequence;
determining a current reference weight value corresponding to the target screen wall;
performing traversal analysis on each stream media service in the target sequence, detecting whether the performance weight value of the stream media service is larger than the current reference weight value and whether the residual connection number of the stream media service is larger than the number of each control end when each stream media service is traversed, and determining the currently traversed stream media service as the stream media service to be distributed to each control end if the current reference weight value is satisfied, so as to obtain the target stream media service;
Otherwise, when the current traversed streaming media service is not the last service in the target sequence, continuing to traverse the next streaming media service in the target sequence, and when the current traversed streaming media service is the last service in the target sequence, reducing the current reference weight value according to the preset adjustment amplitude, and returning to the step of performing traversal analysis on each streaming media service in the target sequence.
Optionally, the management platform is further configured to:
responding to a target remote preview request for each piece of pre-edited data to be displayed, and issuing each piece of pre-edited data to be displayed to the target streaming media service; the data to be displayed are the data to be displayed on the same screen of the target screen wall;
the target streaming media service is further configured to:
in response to receiving each piece of data to be displayed sent by the management platform, splicing each piece of data to be displayed according to the display position relation among the pieces of data to be displayed to obtain combined picture data, and pushing the combined picture data to the remote preview end in response to preview triggering time of the remote preview end for each piece of data to be displayed;
The remote preview terminal is further configured to preview the combined picture data in response to receiving the combined picture data.
It can be understood that, for the specific implementation manner of each step, reference may be made to the corresponding description of the foregoing system embodiment, and redundant description is not made here.
It can be seen that, the control end may determine, in response to the first trigger condition being met, a target pushing moment shared by each control end, when the target pushing moment is reached, the code stream corresponding to the control end may be pushed to the target streaming media service, the target streaming media service may perform code stream combination on each received code stream to obtain a target code stream including each frame of picture data used for displaying by the target screen wall, and when the remote previewing ends are multiple, the target streaming media service may also push the target code stream to multiple remote previewing ends, so as to implement multiple paths of remote previewing. Compared with the prior art, when one or more remote previewing ends have previewing requirements, multipath streaming is not required to be carried out on each control end of the target screen wall, so that the situation that the playing stability of the target screen wall is influenced can be avoided, the situation that streaming loss is caused by the fact that the number of the remote previewing ends is more than that of streaming channels of the control ends can be avoided, and therefore the embodiment of the application can effectively realize multipath streaming to carry out remote previewing.
Based on the above method embodiment, as shown in fig. 9, the embodiment of the application provides a remote preview device, which is applied to a target streaming media service included in a remote preview system, where the remote preview system further includes a remote preview end, and each control end, where the control end is configured to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two; the device comprises:
a receiving module 910, configured to receive a code stream pushed by each control end; the code stream pushed by each control end is as follows: the control end responds to the condition that a first trigger condition is met, and after the target pushing moment shared by all the control ends is determined and the target pushing moment is reached, the control end actively pushes the code stream to the target streaming media service, wherein the first trigger condition is a trigger condition for pushing the target streaming media service;
the code stream combining module 920 is configured to combine the received code streams to obtain a target code stream; the target code stream comprises all frames of picture data displayed by the target screen wall;
the first pushing module 930 is configured to push the target code stream to the remote preview end in response to the second trigger condition being satisfied, so that the remote preview end performs preview display on a picture of the target screen wall based on the target code stream in response to receiving the target code stream; the second triggering condition is a preview triggering condition of the remote preview end for the target screen wall.
Based on the above method embodiment, as shown in fig. 10, another remote preview device is provided in the embodiment of the present application, which is applied to any one of the control ends included in the remote preview system; the remote preview system further comprises a target streaming media service and a remote preview end, wherein each control end is used for managing screen units contained in a target screen wall, and the number of the screen units contained in the target screen wall is at least two; the device comprises:
a first determining module 1010, configured to determine, in response to a first trigger condition being met, a target push time shared by each control end; the first triggering condition is a triggering condition for pushing a target streaming media service;
a second pushing module 1020, configured to actively push, when the target pushing moment is reached, a code stream corresponding to the control end to the target streaming media service, so that the target streaming media service performs code stream combination on each received code stream to obtain a target code stream, and push, in response to a second trigger condition being satisfied, the target code stream to the remote preview end, so that the remote preview end is configured to, in response to receiving the target code stream, perform preview display on a picture of the target screen wall based on the target code stream;
The code stream corresponding to the control end is a code stream generated based on target picture data, the target picture data is picture data displayed by a screen unit controlled by the control end, the second triggering condition is a preview triggering condition of the remote preview end on the target screen wall, and the target code stream comprises all frame picture data displayed by the target screen wall.
Optionally, the type of the control end is a master type or a slave type;
the first determining module is specifically configured to:
under the condition that the type of the control end is the host type, responding to an appointed push request, and determining the push time of the control end for push based on the appointed push request as a target push time; the specified push request is a request for indicating to push a target streaming media service;
under the condition that the type of the control end is the slave type, responding to a push command and a target delay time sent by the control end of the host type, and determining a push time based on the current time and the target delay time to obtain a target push time; the target delay time length is as follows: the time length difference value between a first time and a second time, wherein the first time is the sending time of the push command, and the second time is the push time determined by a control end of a host type;
In the case that the type of the control end is the host type, the device further includes:
and the second determining module is used for determining the pushing moment of pushing by the control end based on the specified pushing request, and sending the pushing instruction and the target delay time to the control end of the slave type after the pushing moment is taken as the target pushing moment.
Optionally, the remote preview system further includes a management platform, and the specified push request is a request sent by the management platform to a control end of a host type;
the specified push request carries a first timestamp and a second timestamp; wherein the first timestamp is used to characterize: the remote preview end waits for preview time of preview, and the second timestamp is used for representing: the sending time of the specified push request;
the second determining module includes:
the first determining submodule is used for determining network delay time length when the management platform and the control end perform data transmission as reference network delay based on the second time stamp carried by the specified push request and time information of the specified push request received by the control end;
and the second determining submodule is used for subtracting the reference network delay from the moment represented by the first timestamp and determining the plug-flow moment of the plug-flow by the control end as a target plug-flow moment.
Optionally, the remote preview end is further configured to:
in response to a target control operation for a preview screen of a preview presentation, determining coordinates of a desired control position in the preview screen indicated by the target control operation as desired control coordinates;
converting the expected control coordinates into screen coordinates according to a preset coordinate conversion formula; the coordinate conversion formula is used for converting coordinates in the preview picture into coordinates on the target screen wall;
determining a target control end of expected control based on the screen coordinates, and performing reverse control processing based on the determined target control end, wherein the reverse control processing is as follows: and a process for instructing the target control terminal to perform a specified control operation, wherein the specified control operation is a control operation for the controlled screen unit that matches the target control operation.
Optionally, the remote preview system further comprises a management platform;
the remote preview terminal performs reverse control processing based on the determined target control terminal, and includes:
sending a reverse control instruction aiming at the target control end to the management platform so that the management platform instructs the target control end to perform the appointed control operation based on the reverse control instruction;
Wherein the control operation indicated by the reverse control instruction matches the target control operation.
Optionally, the target streaming media service is one of a plurality of streaming media services; the remote preview system further comprises a management platform;
the management platform is configured to determine reference index information before each control end actively pushes a code stream corresponding to the control end to the target streaming media service, where the reference index information includes: one or more of a performance weight value of each streaming media service, the number of each control end, and the number of remaining connections of each streaming media service;
and selecting the streaming media service to be distributed to each control end from a plurality of streaming media services based on the reference index information to obtain a target streaming media service.
Optionally, the management platform selects, from a plurality of streaming media services, streaming media services to be allocated to each control end based on the reference index information, to obtain a target streaming media service, including:
sequencing each streaming media service according to the order of the performance weight value of each streaming media service from small to large to obtain a target sequence;
determining a current reference weight value corresponding to the target screen wall;
Performing traversal analysis on each stream media service in the target sequence, detecting whether the performance weight value of the stream media service is larger than the current reference weight value and whether the residual connection number of the stream media service is larger than the number of each control end when each stream media service is traversed, and determining the currently traversed stream media service as the stream media service to be distributed to each control end if the current reference weight value is satisfied, so as to obtain the target stream media service;
otherwise, when the current traversed streaming media service is not the last service in the target sequence, continuing to traverse the next streaming media service in the target sequence, and when the current traversed streaming media service is the last service in the target sequence, reducing the current reference weight value according to the preset adjustment amplitude, and returning to the step of performing traversal analysis on each streaming media service in the target sequence.
Optionally, the management platform is further configured to:
responding to a target remote preview request for each piece of pre-edited data to be displayed, and issuing each piece of pre-edited data to be displayed to the target streaming media service; the data to be displayed are the data to be displayed on the same screen of the target screen wall;
The target streaming media service is further configured to:
in response to receiving each piece of data to be displayed sent by the management platform, splicing each piece of data to be displayed according to the display position relation among the pieces of data to be displayed to obtain combined picture data, and pushing the combined picture data to the remote preview end in response to preview triggering time of the remote preview end for each piece of data to be displayed;
the remote preview terminal is further configured to preview the combined picture data in response to receiving the combined picture data.
In the technical scheme of the application, the related operations of acquiring, storing, using, processing, transmitting, providing, disclosing and the like of the personal information of the user are all performed under the condition that the authorization of the user is obtained. The embodiment of the application also provides an electronic device, as shown in fig. 11, including:
a memory 1101 for storing a computer program;
the processor 1102 is configured to implement the remote preview method when executing the program stored in the memory 1101.
And the electronic device may further include a communication bus and/or a communication interface, where the processor 1102, the communication interface, and the memory 1101 may communicate with each other via the communication bus.
The communication bus mentioned above for the electronic devices may be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc. The communication bus may be classified as an address bus, a data bus, a control bus, or the like. For ease of illustration, the figures are shown with only one bold line, but not with only one bus or one type of bus.
The communication interface is used for communication between the electronic device and other devices.
The Memory may include random access Memory (Random Access Memory, RAM) or may include Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the aforementioned processor.
The processor may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU), a network processor (Network Processor, NP), etc.; but also digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), field programmable gate arrays (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
In yet another embodiment provided herein, a computer readable storage medium having a computer program stored therein, which when executed by a processor, implements any of the remote preview methods described above is also provided.
In yet another embodiment provided herein, there is also provided a computer program product containing instructions that, when run on a computer, cause the computer to perform any of the remote preview methods of the above embodiments.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present application, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., a floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a Solid State Disk (SSD), etc.
It is noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
In this specification, each embodiment is described in a related manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for system embodiments, since they are substantially similar to method embodiments, the description is relatively simple, as relevant to see a section of the description of method embodiments.
The foregoing description is only of the preferred embodiments of the present application and is not intended to limit the scope of the present application. Any modifications, equivalent substitutions, improvements, etc. that are within the spirit and principles of the present application are intended to be included within the scope of the present application.

Claims (18)

1.一种远程预览系统,其特征在于,包括目标流媒体服务、远程预览端以及各个控制端,所述控制端用于管理目标屏幕墙所包含的屏幕单元,所述目标屏幕墙所包含的屏幕单元的数量为至少两个;1. A remote preview system, characterized in that it comprises a target streaming media service, a remote preview terminal and various control terminals, wherein the control terminal is used to manage the screen units included in the target screen wall, and the number of the screen units included in the target screen wall is at least two; 每一控制端,用于响应于满足第一触发条件,确定各个控制端所共享的目标推流时刻,在达到所述目标推流时刻时,将该控制端对应的码流主动推送至所述目标流媒体服务;其中,所述第一触发条件为针对目标流媒体服务进行推流的触发条件,该控制端对应的码流为基于目标画面数据生成的码流,所述目标画面数据为该控制端控制的屏幕单元展示的画面数据;Each control terminal is used to determine the target streaming time shared by each control terminal in response to satisfying the first trigger condition, and actively push the code stream corresponding to the control terminal to the target streaming media service when the target streaming time is reached; wherein the first trigger condition is a trigger condition for streaming to the target streaming media service, the code stream corresponding to the control terminal is a code stream generated based on target picture data, and the target picture data is picture data displayed by the screen unit controlled by the control terminal; 所述目标流媒体服务,用于接收各个控制端所推送的码流;对所接收的各个码流进行码流合并,得到目标码流;以及响应于满足第二触发条件,将所述目标码流推送至所述远程预览端;其中,所述目标码流包含有所述目标屏幕墙展示的各帧画面数据,所述第二触发条件为所述远程预览端对于所述目标屏幕墙的预览触发条件;The target streaming media service is used to receive the code streams pushed by each control terminal; merge the received code streams to obtain a target code stream; and push the target code stream to the remote preview terminal in response to satisfying a second trigger condition; wherein the target code stream includes each frame of picture data displayed by the target screen wall, and the second trigger condition is a preview trigger condition of the remote preview terminal for the target screen wall; 所述远程预览端,用于响应于接收到所述目标码流,基于所述目标码流,进行针对所述目标屏幕墙的画面的预览展示。The remote preview end is used for performing a preview display of the pictures of the target screen wall based on the target code stream in response to receiving the target code stream. 2.根据权利要求1所述的系统,其特征在于,任一控制端的类型为主机类型或从机类型;2. The system according to claim 1, characterized in that the type of any control terminal is a host type or a slave type; 每一控制端响应于满足第一触发条件,确定各个控制端所共享的目标推流时刻,包括:In response to satisfying the first trigger condition, each control terminal determines a target streaming time shared by each control terminal, including: 在该控制端的类型为主机类型的情况下,响应于获得指定推流请求,基于所述指定推流请求,确定该控制端进行推流的推流时刻,作为目标推流时刻;其中,所述指定推流请求为用于指示针对目标流媒体服务进行推流的请求;In the case where the type of the control end is a host type, in response to obtaining a designated streaming request, based on the designated streaming request, determining a streaming time for the control end to perform streaming as a target streaming time; wherein the designated streaming request is a request for instructing to perform streaming for a target streaming media service; 在该控制端的类型为从机类型的情况下,响应于接收到主机类型的控制端发送的推流指令以及目标延迟时长,基于当前时刻和目标延迟时长,确定推流时刻,得到目标推流时刻;其中,所述目标延迟时长为:第一时刻和第二时刻之间的时长差值,所述第一时刻为所述推流指令的发送时刻,所述第二时刻为主机类型的控制端确定的推流时刻;In the case where the control end is of a slave type, in response to receiving a streaming instruction and a target delay time sent by a host type control end, a streaming time is determined based on a current time and a target delay time to obtain a target streaming time; wherein the target delay time is: a time difference between a first time and a second time, the first time being a time when the streaming instruction is sent, and the second time being a streaming time determined by the host type control end; 每一控制端,还用于在该控制端的类型为主机类型的情况下,在所述基于所述指定推流请求,确定该控制端进行推流的推流时刻,作为目标推流时刻之后,向从机类型的控制端发送所述推流指令以及目标延迟时长。Each control end is also used to, when the type of the control end is a host type, determine the streaming time for the control end to push the stream based on the specified streaming request, and after using it as the target streaming time, send the streaming instruction and the target delay time to the control end of the slave type. 3.根据权利要求2所述的系统,其特征在于,所述远程预览系统还包括管理平台,所述指定推流请求为所述管理平台向主机类型的控制端所发送的请求;3. The system according to claim 2, characterized in that the remote preview system further comprises a management platform, and the designated streaming request is a request sent by the management platform to the host-type control terminal; 所述指定推流请求中携带有第一时间戳和第二时间戳;其中,所述第一时间戳用于表征:所述远程预览端待进行预览的预览时刻,所述第二时间戳用于表征:所述指定推流请求的发送时间;The specified streaming request carries a first timestamp and a second timestamp; wherein the first timestamp is used to represent: the preview time to be previewed by the remote preview end, and the second timestamp is used to represent: the sending time of the specified streaming request; 所述基于所述指定推流请求,确定该控制端进行推流的推流时刻,作为目标推流时刻,包括:The step of determining, based on the specified streaming request, a streaming time at which the control end performs streaming as a target streaming time includes: 基于所述指定推流请求所携带的第二时间戳,以及该控制端接收到所述指定推流请求的时间信息,确定所述管理平台与该控制端进行数据传输时的网络延迟时长,作为参考网络延迟;Based on the second timestamp carried by the designated streaming request and the time information when the control end receives the designated streaming request, determine the network delay duration when the management platform and the control end perform data transmission as a reference network delay; 将所述第一时间戳所表征时刻减去所述参考网络延迟,确定该控制端进行推流的推流时刻,作为目标推流时刻。The reference network delay is subtracted from the time represented by the first timestamp to determine the streaming time at which the control end performs streaming, which is used as the target streaming time. 4.根据权利要求1-3任一项所述的系统,其特征在于,所述远程预览端还用于:4. The system according to any one of claims 1 to 3, characterized in that the remote preview end is also used for: 响应于针对预览展示的预览画面的目标控制操作,确定所述目标控制操作所指示的、所述预览画面中的期望控制位置的坐标,作为期望控制坐标;In response to a target control operation on a preview screen displayed for preview, determining coordinates of a desired control position in the preview screen indicated by the target control operation as desired control coordinates; 按照预定的坐标转换公式,将所述期望控制坐标转换为屏幕坐标;其中,所述坐标转换公式用于将预览画面中的坐标,转换为所述目标屏幕墙上的坐标;According to a predetermined coordinate conversion formula, the desired control coordinates are converted into screen coordinates; wherein the coordinate conversion formula is used to convert the coordinates in the preview image into the coordinates on the target screen wall; 基于所述屏幕坐标,确定所期望控制的目标控制端,并基于所确定出的目标控制端,进行反向控制处理,所述反向控制处理为:用于指示所述目标控制端进行指定控制操作的处理,其中,所述指定控制操作为针对所控制的屏幕单元的、与所述目标控制操作相匹配的控制操作。Based on the screen coordinates, the target control end desired to be controlled is determined, and based on the determined target control end, reverse control processing is performed, wherein the reverse control processing is used to instruct the target control end to perform a specified control operation, wherein the specified control operation is a control operation for the controlled screen unit that matches the target control operation. 5.根据权利要求4所述的系统,其特征在于,所述远程预览系统还包括管理平台;5. The system according to claim 4, characterized in that the remote preview system also includes a management platform; 所述远程预览端基于所确定出的目标控制端,进行反向控制处理,包括:The remote preview end performs reverse control processing based on the determined target control end, including: 向所述管理平台发送针对所述目标控制端的反向控制指令,以使管理平台基于所述反向控制指令,指示所述目标控制端进行所述指定控制操作;Sending a reverse control instruction for the target control terminal to the management platform, so that the management platform instructs the target control terminal to perform the specified control operation based on the reverse control instruction; 其中,所述反向控制指令所指示的控制操作与所述目标控制操作相匹配。The control operation indicated by the reverse control instruction matches the target control operation. 6.根据权利要求1或2所述的系统,其特征在于,所述目标流媒体服务为多个流媒体服务中的一个;所述远程预览系统还包括管理平台;6. The system according to claim 1 or 2, characterized in that the target streaming media service is one of a plurality of streaming media services; the remote preview system further comprises a management platform; 所述管理平台,用于在每一控制端将该控制端对应的码流主动推送至所述目标流媒体服务之前,确定参考指标信息,所述参考指标信息包括:各个流媒体服务的性能权重值、各个控制端的数量以及每一流媒体服务的剩余连接数中的一个或多个;The management platform is used to determine reference indicator information before each control terminal actively pushes the code stream corresponding to the control terminal to the target streaming media service, wherein the reference indicator information includes: one or more of the performance weight value of each streaming media service, the number of each control terminal, and the number of remaining connections of each streaming media service; 基于所述参考指标信息,从多个流媒体服务中,选取待分配给为各个控制端的流媒体服务,得到目标流媒体服务。Based on the reference indicator information, a streaming media service to be allocated to each control terminal is selected from a plurality of streaming media services to obtain a target streaming media service. 7.根据权利要求6所述的系统,其特征在于,所述管理平台基于所述参考指标信息,从多个流媒体服务中,选取待分配给为各个控制端的流媒体服务,得到目标流媒体服务,包括:7. The system according to claim 6, characterized in that the management platform selects a streaming media service to be allocated to each control terminal from a plurality of streaming media services based on the reference indicator information to obtain a target streaming media service, comprising: 按照各个流媒体服务的性能权重值从小到大的顺序,对各个流媒体服务进行排序,得到目标序列;Sort each streaming media service in ascending order according to its performance weight value to obtain a target sequence; 确定所述目标屏幕墙对应的当前参考权重值;Determine a current reference weight value corresponding to the target screen wall; 对所述目标序列中的各个流媒体服务进行遍历分析,当遍历到每一流媒体服务时,检测该流媒体服务的性能权重值是否大于当前参考权重值且该流媒体服务的剩余连接数是否大于各个控制端的数量,若均满足,则将当前遍历到的流媒体服务确定为待分配至各个控制端的流媒体服务,得到目标流媒体服务;Performing traversal analysis on each streaming media service in the target sequence, when traversing to each streaming media service, detecting whether the performance weight value of the streaming media service is greater than the current reference weight value and whether the number of remaining connections of the streaming media service is greater than the number of each control terminal, if both conditions are satisfied, determining the currently traversed streaming media service as the streaming media service to be allocated to each control terminal, and obtaining the target streaming media service; 否则,在当前遍历到的流媒体服务不为所述目标序列中的最后一个服务时,继续遍历所述目标序列中的下一流媒体服务,在当前遍历到的流媒体服务为所述目标序列中的最后一个服务,按照预定的调整幅度,降低当前参考权重值,并返回所述对所述目标序列中的各个流媒体服务进行遍历分析的步骤。Otherwise, when the currently traversed streaming media service is not the last service in the target sequence, continue to traverse the next streaming media service in the target sequence. When the currently traversed streaming media service is the last service in the target sequence, reduce the current reference weight value according to a predetermined adjustment range, and return to the step of traversing and analyzing each streaming media service in the target sequence. 8.根据权利要求6所述的系统,其特征在于,所述管理平台还用于:8. The system according to claim 6, wherein the management platform is further used for: 响应于针对预编辑的各个待显示数据的目标远程预览请求,将预编辑的各个待显示数据下发至所述目标流媒体服务;其中,各个待显示数据为所述目标屏幕墙待同屏显示的数据;In response to a target remote preview request for each pre-edited data to be displayed, each pre-edited data to be displayed is sent to the target streaming media service; wherein each data to be displayed is data to be displayed on the target screen wall on the same screen; 所述目标流媒体服务还用于:The target streaming service is also used to: 响应于接收到所述管理平台发送的各个待显示数据,按照各个待显示数据之间的显示位置关系,将各个待显示数据进行拼接,得到组合画面数据,并响应于所述远程预览端针对各个待显示数据的预览触发时机,将所述组合画面数据推送至所述远程预览端;In response to receiving the data to be displayed sent by the management platform, splicing the data to be displayed according to the display position relationship between the data to be displayed to obtain combined screen data, and in response to the preview triggering timing of the remote preview end for the data to be displayed, pushing the combined screen data to the remote preview end; 所述远程预览端,还用于响应于接收到所述组合画面数据,对所述组合画面数据进行预览展示。The remote preview end is further used for previewing and displaying the combined screen data in response to receiving the combined screen data. 9.一种远程预览方法,其特征在于,应用于远程预览系统所包括的目标流媒体服务,所述远程预览系统还包括远程预览端,以及各个控制端,所述控制端用于管理目标屏幕墙所包含的屏幕单元,所述目标屏幕墙所包含的屏幕单元的数量为至少两个;所述方法包括:9. A remote preview method, characterized in that it is applied to a target streaming media service included in a remote preview system, the remote preview system also includes a remote preview terminal and various control terminals, the control terminal is used to manage the screen units included in the target screen wall, the number of the screen units included in the target screen wall is at least two; the method comprises: 接收各个控制端推送的码流;其中,每一控制端所推送的码流为:该控制端响应于满足第一触发条件,在确定各个控制端所共享的目标推流时刻后并达到目标推流时刻时,主动推送至所述目标流媒体服务的码流,所述第一触发条件为针对目标流媒体服务进行推流的触发条件;Receive the code stream pushed by each control terminal; wherein the code stream pushed by each control terminal is: in response to satisfying a first trigger condition, after determining the target streaming time shared by each control terminal and reaching the target streaming time, the control terminal actively pushes the code stream to the target streaming media service, wherein the first trigger condition is a trigger condition for streaming to the target streaming media service; 对所接收的各个码流进行码流合并,得到目标码流;其中,所述目标码流包含有所述目标屏幕墙展示的各帧画面数据;Merging the received code streams to obtain a target code stream; wherein the target code stream includes the frame data of each picture displayed on the target screen wall; 响应于满足第二触发条件,将所述目标码流推送至所述远程预览端,以使所述远程预览端响应于接收到所述目标码流,基于所述目标码流,进行针对所述目标屏幕墙的画面的预览展示;其中,所述第二触发条件为所述远程预览端对于所述目标屏幕墙的预览触发条件。In response to satisfying a second trigger condition, the target code stream is pushed to the remote preview end, so that the remote preview end, in response to receiving the target code stream, performs a preview display of the screen of the target screen wall based on the target code stream; wherein the second trigger condition is a preview trigger condition of the remote preview end for the target screen wall. 10.一种远程预览方法,其特征在于,应用于远程预览系统所包括各个控制端中的任一控制端;所述远程预览系统还包括目标流媒体服务以及远程预览端,各个控制端用于管理目标屏幕墙所包含的屏幕单元,所述目标屏幕墙所包含的屏幕单元的数量为至少两个;所述方法包括:10. A remote preview method, characterized in that it is applied to any control terminal among various control terminals included in a remote preview system; the remote preview system also includes a target streaming media service and a remote preview terminal, each control terminal is used to manage screen units included in a target screen wall, and the number of screen units included in the target screen wall is at least two; the method comprises: 响应于满足第一触发条件,确定各个控制端所共享的目标推流时刻;其中,所述第一触发条件为针对目标流媒体服务进行推流的触发条件;In response to satisfying a first trigger condition, determining a target streaming time shared by each control terminal; wherein the first trigger condition is a trigger condition for streaming a target streaming media service; 在达到所述目标推流时刻时,将该控制端对应的码流主动推送至所述目标流媒体服务,以使所述目标媒体服务对所接收的各个码流进行码流合并,得到目标码流,以及响应于满足第二触发条件,将所述目标码流推送至所述远程预览端,使得所述远程预览端,用于响应于接收到所述目标码流,基于所述目标码流,进行针对所述目标屏幕墙的画面的预览展示;When the target streaming time is reached, the code stream corresponding to the control end is actively pushed to the target streaming media service, so that the target media service merges the received code streams to obtain a target code stream, and in response to satisfying a second trigger condition, the target code stream is pushed to the remote preview end, so that the remote preview end is used to preview and display the screen of the target screen wall based on the target code stream in response to receiving the target code stream; 其中,该控制端对应的码流为基于目标画面数据生成的码流,所述目标画面数据为该控制端控制的屏幕单元展示的画面数据,所述第二触发条件为所述远程预览端对于所述目标屏幕墙的预览触发条件,所述目标码流包含有所述目标屏幕墙展示的各帧画面数据。Among them, the code stream corresponding to the control end is a code stream generated based on the target picture data, the target picture data is the picture data displayed by the screen unit controlled by the control end, the second trigger condition is the preview trigger condition of the remote preview end for the target screen wall, and the target code stream contains each frame of picture data displayed by the target screen wall. 11.根据权利要求10所述的方法,其特征在于,该控制端的类型为主机类型或从机类型;11. The method according to claim 10, characterized in that the type of the control end is a host type or a slave type; 响应于满足第一触发条件,确定各个控制端所共享的目标推流时刻,包括:In response to satisfying the first trigger condition, determining a target streaming time shared by each control terminal includes: 在该控制端的类型为主机类型的情况下,响应于获取指定推流请求,基于所述指定推流请求,确定该控制端进行推流的推流时刻,作为目标推流时刻;其中,所述指定推流请求为用于指示针对目标流媒体服务进行推流的请求;In the case where the type of the control end is a host type, in response to obtaining a designated streaming request, based on the designated streaming request, determining a streaming time for the control end to perform streaming as a target streaming time; wherein the designated streaming request is a request for instructing to perform streaming for a target streaming media service; 在该控制端的类型为从机类型的情况下,响应于接收到主机类型的控制端发送的推流指令以及目标延迟时长,基于当前时刻和目标延迟时长,确定推流时刻,得到目标推流时刻;其中,所述目标延迟时长为:第一时刻和第二时刻之间的时长差值,所述第一时刻为所述推流指令的发送时刻,所述第二时刻为主机类型的控制端确定的推流时刻;In the case where the control end is of a slave type, in response to receiving a streaming instruction and a target delay time sent by a host type control end, a streaming time is determined based on a current time and a target delay time to obtain a target streaming time; wherein the target delay time is: a time difference between a first time and a second time, the first time being a time when the streaming instruction is sent, and the second time being a streaming time determined by the host type control end; 在该控制端的类型为主机类型的情况下,所述方法还包括:In the case where the type of the control terminal is a host type, the method further includes: 基于所述指定推流请求,确定该控制端进行推流的推流时刻,作为目标推流时刻之后,向从机类型的控制端发送所述推流指令以及目标延迟时长。Based on the designated streaming request, the streaming time for the control end to perform streaming is determined, and after the target streaming time, the streaming instruction and the target delay time are sent to the slave type control end. 12.根据权利要求11所述的方法,其特征在于,所述远程预览系统还包括管理平台,所述指定推流请求为所述管理平台向主机类型的控制端所发送的请求;12. The method according to claim 11, characterized in that the remote preview system further comprises a management platform, and the designated streaming request is a request sent by the management platform to the host-type control terminal; 所述指定推流请求中携带有第一时间戳和第二时间戳;其中,所述第一时间戳用于表征:所述远程预览端待进行预览的预览时刻,所述第二时间戳用于表征:所述指定推流请求的发送时间;The specified streaming request carries a first timestamp and a second timestamp; wherein the first timestamp is used to represent: the preview time to be previewed by the remote preview end, and the second timestamp is used to represent: the sending time of the specified streaming request; 所述基于所述指定推流请求,确定该控制端进行推流的推流时刻,作为目标推流时刻,包括:The step of determining, based on the specified streaming request, a streaming time at which the control end performs streaming as a target streaming time includes: 基于所述指定推流请求所携带的第二时间戳,以及该控制端接收到所述指定推流请求的时间信息,确定所述管理平台与该控制端进行数据传输时的网络延迟时长,作为参考网络延迟;Based on the second timestamp carried by the designated streaming request and the time information when the control end receives the designated streaming request, determine the network delay duration when the management platform and the control end perform data transmission as a reference network delay; 将所述第一时间戳所表征时刻减去所述参考网络延迟,确定该控制端进行推流的推流时刻,作为目标推流时刻。The reference network delay is subtracted from the time represented by the first timestamp to determine the streaming time at which the control end performs streaming, which is used as the target streaming time. 13.根据权利要求10或11所述的方法,其特征在于,所述目标流媒体服务为多个流媒体服务中的一个;所述远程预览系统还包括管理平台;13. The method according to claim 10 or 11, characterized in that the target streaming media service is one of a plurality of streaming media services; the remote preview system further comprises a management platform; 所述管理平台,用于在每一控制端将该控制端对应的码流主动推送至所述目标流媒体服务之前,确定参考指标信息,所述参考指标信息包括:各个流媒体服务的性能权重值、各个控制端的数量以及每一流媒体服务的剩余连接数中的一个或多个;The management platform is used to determine reference indicator information before each control terminal actively pushes the code stream corresponding to the control terminal to the target streaming media service, wherein the reference indicator information includes: one or more of the performance weight value of each streaming media service, the number of each control terminal, and the number of remaining connections of each streaming media service; 基于所述参考指标信息,从多个流媒体服务中,选取待分配给为各个控制端的流媒体服务,得到目标流媒体服务。Based on the reference indicator information, a streaming media service to be allocated to each control terminal is selected from a plurality of streaming media services to obtain a target streaming media service. 14.根据权利要求13所述的方法,其特征在于,所述管理平台基于所述参考指标信息,从多个流媒体服务中,选取待分配给为各个控制端的流媒体服务,得到目标流媒体服务,包括:14. The method according to claim 13, characterized in that the management platform selects a streaming media service to be allocated to each control terminal from a plurality of streaming media services based on the reference indicator information to obtain a target streaming media service, comprising: 按照各个流媒体服务的性能权重值从小到大的顺序,对各个流媒体服务进行排序,得到目标序列;Sort each streaming media service in ascending order according to its performance weight value to obtain a target sequence; 确定所述目标屏幕墙对应的当前参考权重值;Determine a current reference weight value corresponding to the target screen wall; 对所述目标序列中的各个流媒体服务进行遍历分析,当遍历到每一流媒体服务时,检测该流媒体服务的性能权重值是否大于当前参考权重值且该流媒体服务的剩余连接数是否大于各个控制端的数量,若均满足,则将当前遍历到的流媒体服务确定为待分配至各个控制端的流媒体服务,得到目标流媒体服务;Performing traversal analysis on each streaming media service in the target sequence, when traversing to each streaming media service, detecting whether the performance weight value of the streaming media service is greater than the current reference weight value and whether the number of remaining connections of the streaming media service is greater than the number of each control terminal, if both conditions are satisfied, determining the currently traversed streaming media service as the streaming media service to be allocated to each control terminal, and obtaining the target streaming media service; 否则,在当前遍历到的流媒体服务不为所述目标序列中的最后一个服务时,继续遍历所述目标序列中的下一流媒体服务,在当前遍历到的流媒体服务为所述目标序列中的最后一个服务,按照预定的调整幅度,降低当前参考权重值,并返回所述对所述目标序列中的各个流媒体服务进行遍历分析的步骤。Otherwise, when the currently traversed streaming media service is not the last service in the target sequence, continue to traverse the next streaming media service in the target sequence. When the currently traversed streaming media service is the last service in the target sequence, reduce the current reference weight value according to a predetermined adjustment range, and return to the step of traversing and analyzing each streaming media service in the target sequence. 15.一种远程预览装置,其特征在于,应用于远程预览系统所包括的目标流媒体服务,所述远程预览系统还包括远程预览端,以及各个控制端,所述控制端用于管理目标屏幕墙所包含的屏幕单元,所述目标屏幕墙所包含的屏幕单元的数量为至少两个;所述装置包括:15. A remote preview device, characterized in that it is applied to a target streaming media service included in a remote preview system, the remote preview system also includes a remote preview terminal and various control terminals, the control terminal is used to manage the screen units included in the target screen wall, the number of screen units included in the target screen wall is at least two; the device comprises: 接收模块,用于接收各个控制端推送的码流;其中,每一控制端所推送的码流为:该控制端响应于满足第一触发条件,在确定各个控制端所共享的目标推流时刻后并达到目标推流时刻时,主动推送至所述目标流媒体服务的码流,所述第一触发条件为针对目标流媒体服务进行推流的触发条件;A receiving module, configured to receive the code stream pushed by each control terminal; wherein the code stream pushed by each control terminal is: in response to satisfying a first trigger condition, after determining the target streaming time shared by each control terminal and reaching the target streaming time, the control terminal actively pushes the code stream to the target streaming media service, wherein the first trigger condition is a trigger condition for streaming to the target streaming media service; 码流合并模块,用于对所接收的各个码流进行码流合并,得到目标码流;其中,所述目标码流包含有所述目标屏幕墙展示的各帧画面数据;A code stream merging module, used for merging the received code streams to obtain a target code stream; wherein the target code stream includes the picture data of each frame displayed by the target screen wall; 第一推送模块,用于响应于满足第二触发条件,将所述目标码流推送至所述远程预览端,以使所述远程预览端响应于接收到所述目标码流,基于所述目标码流,进行针对所述目标屏幕墙的画面的预览展示;其中,所述第二触发条件为所述远程预览端对于所述目标屏幕墙的预览触发条件。The first push module is used to push the target code stream to the remote preview end in response to satisfying the second trigger condition, so that the remote preview end, in response to receiving the target code stream, performs a preview display of the screen of the target screen wall based on the target code stream; wherein the second trigger condition is a preview trigger condition of the remote preview end for the target screen wall. 16.一种远程预览装置,其特征在于,应用于远程预览系统所包括各个控制端中的任一控制端;所述远程预览系统还包括目标流媒体服务以及远程预览端,各个控制端为用于管理目标屏幕墙所包含的屏幕单元,所述目标屏幕墙所包含的屏幕单元的数量为至少两个;所述装置包括:16. A remote preview device, characterized in that it is applied to any control terminal of each control terminal included in a remote preview system; the remote preview system also includes a target streaming media service and a remote preview terminal, each control terminal is used to manage the screen units included in the target screen wall, and the number of screen units included in the target screen wall is at least two; the device comprises: 第一确定模块,用于响应于满足第一触发条件,确定各个控制端所共享的目标推流时刻;其中,所述第一触发条件为针对目标流媒体服务进行推流的触发条件;A first determination module is used to determine the target streaming time shared by each control terminal in response to satisfying a first trigger condition; wherein the first trigger condition is a trigger condition for streaming for a target streaming media service; 第二推送模块,用于在达到所述目标推流时刻时,将该控制端对应的码流主动推送至所述目标流媒体服务,以使所述目标媒体服务对所接收的各个码流进行码流合并,得到目标码流,以及响应于满足第二触发条件,将所述目标码流推送至所述远程预览端,使得所述远程预览端,用于响应于接收到所述目标码流,基于所述目标码流,进行针对所述目标屏幕墙的画面的预览展示;The second push module is used to actively push the code stream corresponding to the control end to the target streaming media service when the target streaming time is reached, so that the target media service merges the received code streams to obtain the target code stream, and pushes the target code stream to the remote preview end in response to satisfying the second trigger condition, so that the remote preview end is used to preview and display the picture of the target screen wall based on the target code stream in response to receiving the target code stream; 其中,该控制端对应的码流为基于目标画面数据生成的码流,所述目标画面数据为该控制端控制的屏幕单元展示的画面数据,所述第二触发条件为所述远程预览端对于所述目标屏幕墙的预览触发条件。Among them, the code stream corresponding to the control end is a code stream generated based on the target screen data, the target screen data is the screen data displayed by the screen unit controlled by the control end, and the second trigger condition is the preview trigger condition of the remote preview end for the target screen wall. 17.一种电子设备,其特征在于,包括:17. An electronic device, comprising: 存储器,用于存放计算机程序;Memory, used to store computer programs; 处理器,用于执行存储器上所存放的程序时,实现权利要求9-14任一项所述的方法。A processor, for implementing the method described in any one of claims 9 to 14 when executing a program stored in a memory. 18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求9-14任一项所述的方法。18. A computer-readable storage medium, characterized in that a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method according to any one of claims 9 to 14 is implemented.
CN202311850124.4A 2023-12-28 2023-12-28 Remote preview system, method, device, electronic device and storage medium Pending CN117834954A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202311850124.4A CN117834954A (en) 2023-12-28 2023-12-28 Remote preview system, method, device, electronic device and storage medium
PCT/CN2024/121171 WO2025139128A1 (en) 2023-12-28 2024-09-25 Remote preview system, method and apparatus, and electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311850124.4A CN117834954A (en) 2023-12-28 2023-12-28 Remote preview system, method, device, electronic device and storage medium

Publications (1)

Publication Number Publication Date
CN117834954A true CN117834954A (en) 2024-04-05

Family

ID=90511035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311850124.4A Pending CN117834954A (en) 2023-12-28 2023-12-28 Remote preview system, method, device, electronic device and storage medium

Country Status (2)

Country Link
CN (1) CN117834954A (en)
WO (1) WO2025139128A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025139128A1 (en) * 2023-12-28 2025-07-03 杭州海康威视数字技术股份有限公司 Remote preview system, method and apparatus, and electronic device and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6925606B2 (en) * 1997-11-13 2005-08-02 Tarantella, Inc. Color quality and packet shaping features for displaying an application on a variety of client devices
CN110581962B (en) * 2018-06-07 2021-03-19 杭州海康威视数字技术股份有限公司 Television wall image redisplay method, service board and distributed television wall system
CN110990109B (en) * 2019-12-25 2023-10-31 深圳创维数字技术有限公司 A splicing screen echo method, terminal, system and storage medium
CN111262909A (en) * 2020-01-09 2020-06-09 中国建设银行股份有限公司 Large-screen information display method, device, equipment and storage medium
CN113014964B (en) * 2021-03-04 2023-04-28 深圳市东微智能科技股份有限公司 Method, device and system for generating spliced wall back display code stream and readable storage medium
CN117834954A (en) * 2023-12-28 2024-04-05 杭州海康威视数字技术股份有限公司 Remote preview system, method, device, electronic device and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025139128A1 (en) * 2023-12-28 2025-07-03 杭州海康威视数字技术股份有限公司 Remote preview system, method and apparatus, and electronic device and storage medium

Also Published As

Publication number Publication date
WO2025139128A1 (en) 2025-07-03

Similar Documents

Publication Publication Date Title
US11128894B2 (en) Method and mobile terminal for processing data
EP2795919A1 (en) Aligning videos representing different viewpoints
CN104918105B (en) More screen playing methods, equipment and the system of media file
JP7409963B2 (en) Computing system with trigger feature based on channel change
CN104539977A (en) Live broadcast previewing method and device
WO2021147702A1 (en) Video processing method and apparatus
CN106303663B (en) live broadcast processing method and device and live broadcast server
CN111343415A (en) Data transmission method and device
CN116708867B (en) Live broadcast data processing method, device, equipment and storage medium
HK1203010A1 (en) Processing of video files, server and client thereof
CN105262971B (en) A kind of back method and device of fish eye camera video recording
CN104185040A (en) Application synchronization method, application server and terminal
CN104349221A (en) Communication apparatus that performs streaming distribution, information processing apparatus, and controlling method thereof
WO2023279793A1 (en) Video playing method and apparatus
KR20090075593A (en) Method and system for providing keyword based video service
US20130258043A1 (en) Teleconferencing System and Non-Transitory Computer Readable Medium Storing Program
WO2019149066A1 (en) Video playback method, terminal apparatus, and storage medium
CN112492329A (en) Live broadcasting method and device
US20150026751A1 (en) Information processing apparatus and control method thereof
CN117834954A (en) Remote preview system, method, device, electronic device and storage medium
US20240205033A1 (en) Image pickup apparatus capable of guaranteeing authenticity of content distributed in real time while photographing, content management apparatus, control method for image pickup apparatus, control method for content management apparatus, and storage medium
CN109756744B (en) Data processing method, electronic device and computer storage medium
CN116366890B (en) Method for providing data monitoring service and integrated machine equipment
CN113542896B (en) Video live broadcast method, equipment and medium of free view angle
CN103493498A (en) Detection of graphics added to a video signal

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination