CN108881956B - Live stream transmission method and device and related equipment - Google Patents

Live stream transmission method and device and related equipment Download PDF

Info

Publication number
CN108881956B
CN108881956B CN201810582762.5A CN201810582762A CN108881956B CN 108881956 B CN108881956 B CN 108881956B CN 201810582762 A CN201810582762 A CN 201810582762A CN 108881956 B CN108881956 B CN 108881956B
Authority
CN
China
Prior art keywords
live
service data
stream
private
live stream
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.)
Active
Application number
CN201810582762.5A
Other languages
Chinese (zh)
Other versions
CN108881956A (en
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810582762.5A priority Critical patent/CN108881956B/en
Publication of CN108881956A publication Critical patent/CN108881956A/en
Application granted granted Critical
Publication of CN108881956B publication Critical patent/CN108881956B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • 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
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams

Abstract

The embodiment of the invention provides a live stream transmission method, a live stream transmission device and related equipment, wherein the method comprises the following steps: acquiring a live stream; acquiring service data, wherein the service data corresponds to display time; processing the live stream to obtain a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data; and outputting the target live stream so that the terminal controls and displays the service data according to the display time when playing the acquired target live stream. The embodiment of the invention can reduce the concurrency of the service data and reduce the load of the server; and further, synchronous display of the service data and the associated live broadcast content can be realized, and the display accuracy of the service data is improved.

Description

Live stream transmission method and device and related equipment
Technical Field
The invention relates to the technical field of data processing, in particular to a live stream transmission method, a live stream transmission device and related equipment.
Background
Live broadcast is a technology for transmitting live broadcast contents such as voice, video and the like to a user in a streaming form through a network by a streaming media technology; to scenes using live streaming, such as video live broadcasts, voice broadcasts, etc.
In the process of live stream transmission, besides transmitting live streams to users, the method also has the requirement of sending live related service data to the users; for example, in a live video scene, in addition to transmitting live video content to a user, there is a need to send service data such as the number of people currently watching the live video to the user.
Currently, a live stream and service data are separately transmitted to a user, for example, the live stream is transmitted to the user through one communication channel, and the service data is transmitted to the user through another communication channel, so that the live stream is played and the service data is displayed at a terminal of the user; the problem faced by this approach is that when more users request the service data, a larger amount of service data concurrency is faced, and the server load is higher.
Disclosure of Invention
In view of this, embodiments of the present invention provide a live streaming method, a live streaming device, and related apparatuses, so as to reduce the amount of concurrent service data and reduce the load of a server.
In order to achieve the above purpose, the embodiments of the present invention provide the following technical solutions:
a live streaming transmission method is applied to a streaming server, and comprises the following steps:
acquiring a live stream;
acquiring service data, wherein the service data corresponds to display time;
processing the live stream to obtain a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data;
and outputting the target live stream so that the terminal controls and displays the service data according to the display time when playing the acquired target live stream.
The embodiment of the invention also provides a live stream transmission method which is applied to a terminal and comprises the following steps:
acquiring a live broadcast stream carrying service data;
analyzing the live broadcast stream carrying the service data, and determining live broadcast content, the service data and display time of the service data;
playing the live broadcast content;
and controlling and displaying the service data according to the display time in the process of playing the live broadcast content.
The embodiment of the invention also provides a live streaming transmission device, which is applied to a streaming processing server, and the device comprises:
the first acquisition module of the live stream is used for acquiring the live stream;
the service data acquisition module is used for acquiring service data, and the service data corresponds to the display time;
the target live stream acquisition module is used for processing the live stream to acquire a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data;
and the output module is used for outputting the target live stream so as to control and display the service data according to the display time when the terminal plays the acquired target live stream.
The embodiment of the invention also provides a live streaming transmission device, which is applied to a terminal and comprises the following components:
the second live stream acquisition module is used for acquiring a live stream carrying service data;
the analysis module is used for analyzing the live stream carrying the service data and determining live content, the service data and the display time of the service data;
the playing module is used for playing the live broadcast content;
and the display control module is used for controlling and displaying the service data according to the display time in the process of playing the live broadcast content.
An embodiment of the present invention further provides a stream processing server, including: the system comprises at least one memory and at least one processing chip, wherein the memory stores a program, and the processing chip calls the program to realize the steps of the live streaming transmission method executed by the streaming processing server.
An embodiment of the present invention further provides a terminal, including: the terminal comprises at least one memory and at least one processing chip, wherein the memory stores a program, and the processing chip calls the program to realize the steps of the live streaming transmission method executed by the terminal.
An embodiment of the present invention further provides a storage medium, where the storage medium stores a program suitable for being executed by a processing chip, so as to implement the steps of the live streaming method executed by the streaming server, or implement the steps of the live streaming method executed by the terminal.
Based on the above technical solution, in the live stream transmission method provided by the embodiment of the present invention, the stream processing server may process the live stream after acquiring the live stream provided by the video source to acquire a target live stream, so as to carry service data in the target live stream, and associate live content corresponding to the presentation time in the target live stream with the service data; therefore, after the stream processing server outputs the target live stream, the terminal can control and display the service data according to the display time when playing the target live stream. The embodiment of the invention can realize synchronous issuing of the live stream and the service data to the terminal, greatly reduce the concurrency of the service data under the condition of independent issuing of the live stream and the service data, and reduce the load of the server; and further, synchronous display of the service data and the associated live broadcast content can be realized, and the display accuracy of the service data is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a processing schematic diagram of a live streaming transmission method according to an embodiment of the present invention in a live question-answering scenario;
FIG. 2 is a terminal interface presentation of a live question answering;
fig. 3 is a signaling flowchart of a live streaming transmission method according to an embodiment of the present invention;
fig. 4 is a schematic processing diagram of converting a live stream into a private flv live stream according to an embodiment of the present invention;
fig. 5 is a schematic processing diagram of converting a private flv live stream block into a private hls live stream slice according to an embodiment of the present invention;
fig. 6 is an application example diagram of a live streaming method according to an embodiment of the present invention;
fig. 7 is a signaling flowchart of another alternative of a live streaming transmission method according to an embodiment of the present invention;
fig. 8 is a flowchart of a live streaming method according to an embodiment of the present invention;
fig. 9 is a block diagram of a live streaming apparatus according to an embodiment of the present invention;
fig. 10 is a block diagram of a stream processing server according to an embodiment of the present invention;
fig. 11 is another block diagram of a live streaming apparatus according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Taking a live question-answering scene as an example, a system architecture for realizing live stream transmission in the embodiment of the present invention is shown in fig. 1, and includes: the system comprises a video source 10, a stream processing server 20, a service data server 30, a live stream distribution server 40 and a terminal 50.
The video source 10 may be an electronic device that acquires a live broadcast signal and generates a live stream corresponding to the live broadcast signal; the video source 10 may have at least video capture capability and data processing capability, for example, the video source 10 may have at least a camera for capturing video and an encoder for encoding video (the encoder may be in software or hardware); as an example, in a live video scene, the video source 10 may be a mobile phone with a camera (e.g. suitable for a live personal scene) used by a main broadcast, or may be a camera or the like;
as shown in fig. 1, optionally, when performing live question answering, the video source 10 may capture a live signal (e.g., capture a live image corresponding to a live scene of a host) during live broadcasting of the host, and encode the live signal to generate a live stream.
The stream processing server 20 is a service device for processing a live stream according to the embodiment of the present invention, and relates to protocol conversion and the like of a live stream; in the embodiment of the present invention, the stream processing server 20 may insert the service data into the live stream, so as to implement synchronous transmission of the service data to the terminal 50 along with the live stream; furthermore, the method has the protocol requirements of a live streaming transmission system architecture, and the stream processing server 20 can also have the transcoding service capability of live streaming and the like;
the stream processing server 20 may be implemented by a single service device, or may be implemented by a server group composed of a plurality of servers;
as shown in fig. 1, optionally, when performing live question answering, the stream processing server 20 may process (e.g., convert a protocol, etc.) a live stream provided by the video source 10 to obtain a live stream carrying question answering information.
The service data server 30 may be a service device for acquiring service data, and the service data server 30 may send the service data to the stream processing server 20;
as shown in fig. 1, optionally, when performing live question answering, the service data server 30 may be instructed by a background worker to obtain question answering information (which may be input by the background worker or called from the question answering information stored in the service data server 30), and send the obtained question answering information to the stream processing server 20.
The live streaming server 40 is a service device that issues a live streaming (as shown in fig. 1, in a live question and answer scenario, a live streaming carrying question and answer information) carrying service data to the terminal 50, for example, the live streaming server 40 may be implemented by a Content Delivery Network (CDN) server. The live stream carrying the service data and sent by the live stream sending server 40 may be a live stream output by the stream processing server 20, or a live stream obtained by further performing protocol conversion on the live stream output by the stream processing server 20;
the terminal 50 may be a user device used by a user, including but not limited to: mobile phones, tablet computers, notebook computers, and the like;
after acquiring the live stream carrying the service data, the terminal 50 may parse the service data and the live content from the live stream carrying the service data, and display the service data according to the display time of the service data when playing the live content, or display the service data in real time;
as shown in fig. 1, optionally, when performing live question answering, the terminal 50 may parse a live stream carrying service data to obtain question answering information and live content; when the live content is played, the display of the question and answer information is controlled according to the display time of the question and answer information (namely whether the question and answer information is displayed or not can be determined according to the display time of the question and answer information).
It should be noted that live question-answering is a question answering interaction based on live video, and in a live question-answering scene, an optional display schematic of the terminal 50 shown in fig. 1 can be as shown in fig. 2, with reference to fig. 2, in a live video process, a terminal of a user plays a live stream of live video; when a host asks questions in the live broadcasting process, question and answer information (question and answer information such as question information, answer information and the like; the question and answer information can be considered as an optional form of service data) is issued to a user and is displayed at a terminal of the user; the user must submit an answer within a specified time; users who answer the questions correctly, or users who use the revival card can continue to answer when the host asks the next question; users who do not participate in interaction and answer wrong questions or users who cannot use the revival card cannot continuously participate in answering questions; after continuously answering a certain question, the user can obtain a certain reward; the revival card is a virtual prop, and when the user answers the question wrongly or in a missed way, the user can continue to answer the question by using the prop.
Therefore, the live stream transmission scheme provided by the embodiment of the invention can insert the service data into the live stream, realize synchronous transmission of the live stream and the service data to the terminal, greatly reduce the concurrency of the service data under the condition of independent transmission of the live stream and the service data, and reduce the load of the server.
As an alternative implementation, a live broadcast service provider (such as a provider of a video live broadcast service) may have its own private streaming protocol (private live streaming protocol), so that the streaming server may process a live stream provided by a video source according to its own private streaming protocol; when the stream processing server is connected with the live stream delivery server, the live stream delivery server may have a standard stream protocol requirement (for example, the CDN server sends the live stream of the standard stream protocol to the terminal according to a special standard stream protocol; the standard stream protocol may be considered as a standard live stream protocol); at this time, the live streaming forwarding server relates to the process of converting the live streaming of the private streaming protocol into the standard streaming protocol;
based on this situation, taking the private stream protocol of the stream processing server as the first private protocol, the standard stream protocol of the live stream issuing server as the second standard protocol, and the protocol in which the stream processing server is docked with the live stream issuing server as the second private protocol (the second private protocol may be the private stream protocol corresponding to the second standard protocol in which the stream processing server is docked); optionally, fig. 3 illustrates an optional signaling flow of the live streaming transmission method provided by the embodiment of the present invention, where the video source shown in fig. 3 may be the video source 10 shown in fig. 1, the streaming processing server shown in fig. 3 may be the streaming processing server 20 shown in fig. 1, the service data server shown in fig. 3 may be the service data server 30 shown in fig. 1, the live streaming delivery server shown in fig. 3 may be the live streaming delivery server 40 shown in fig. 1, and the terminal shown in fig. 3 may be the terminal 50 shown in fig. 1; wherein, the stream processing server shown in fig. 3 may include a stream relay service and a stream transcoding service;
referring to fig. 3, an optional procedure of the live streaming method may include:
and step S10, the video source transmits the live stream to the receiving and transferring service.
It should be noted that the stream relay service and the stream transcoding service shown in fig. 3 are two services provided by the stream processing server, and may be implemented by different servers, or may be implemented by two service programs of the same server.
Optionally, the step S10 may be executed as a continuous process, for example, the video source may continuously transmit the live stream generated by acquiring the live signal to the relay service until the live stream is terminated.
Correspondingly, the stream processing server can obtain the live stream.
And step S11, the service data server transmits the service data to the flow receiving transfer service, wherein the service data corresponds to the display time.
Optionally, the service data may be controlled by a background worker, or the service data may be transmitted to the flow receiving relay service according to a preset time.
Optionally, the service data may correspond to a display time, where the display time may be indicated when the service server transmits the service data to the flow transfer service; or the service data server may continuously transmit the service data to the flow receiving relay service, and the duration of the service data server continuously transmitting the service data may correspond to the duration of the presentation time.
Step S12, the streaming relay service converts the live stream into a first private live stream, where the first private live stream includes: and the first private live streaming blocks corresponding to the display time in the plurality of first private live streaming blocks carry service data.
Optionally, the first private live stream may be a live stream corresponding to the first private protocol; the first proprietary protocol may be a proprietary protocol that embodies live content in data blocks (e.g., a proprietary flv protocol);
optionally, after the direct stream relay service obtains the direct stream provided by the video source, the direct stream relay service may block the direct stream according to a predetermined data size, so as to block the direct stream into a plurality of first private direct stream blocks (the first private direct stream blocks may be regarded as data blocks of the direct content in the case of a first private protocol); therefore, based on the display time of the service data, the service data can be inserted into the first private live streaming block corresponding to the display time, and a timestamp is printed on the first private live streaming block into which the service data is inserted, so that a first private live streaming is obtained.
Optionally, in the embodiment of the present invention, a private field may be constructed in the first private live streaming block, and service data may be inserted into the private field; correspondingly, in the embodiment of the present invention, private fields are respectively constructed in each first private live streaming block corresponding to the duration of the service data, starting from the first private live streaming block corresponding to the acquisition start time; and inserting the service data into the private field constructed in each first private live streaming block.
For convenience of understanding, taking the first private protocol as a private flv (FLASH VIDEO, streaming media format) protocol as an example, in an optional implementation, as shown in fig. 4, after the live stream is acquired by the stream relay service shown in fig. 3, the live stream may be divided into a plurality of private flv live stream blocks according to a predetermined data size of the private flv live stream block required by the private flv protocol; when the service data is acquired, determining a private flv live streaming block with a blocking time corresponding to the acquisition starting time based on the acquisition starting time of the service data; starting from the private flv live stream block corresponding to the acquisition starting time, constructing a private field in the private flv live stream block corresponding to the duration of the service data, inserting the service data into the private field, and stamping a timestamp on the private flv live stream block into which the service data is inserted, so that a private flv live stream (an optional form of a first private live stream) can be obtained.
And step S13, the stream receiving transfer service transfers the first private live stream to the stream transcoding service.
Step S14, the stream transcoding service converts the first private live stream into a second private live stream, where the second private live stream includes: the system comprises a plurality of second private live stream segments and a first index file, wherein the first index file carries service data and indicates the display time of the service data in the corresponding second private live stream segments.
Optionally, the second private live stream may be a live stream corresponding to the second private protocol; the second private protocol may be a private protocol that embodies live content in data fragments (e.g., a private hls protocol);
optionally, after obtaining the first private live stream, the stream transcoding service may combine, according to a predetermined time, the first private live stream chunks in the first private live stream to obtain a plurality of second private live stream slices; a second private live stream slice may be a combination of blocks of the first private live stream corresponding to a predetermined period of time;
in the process of combining to obtain the second private live stream segment, the service data inserted in the first private live stream block can be extracted and inserted into the first index file of the second private live stream; meanwhile, the display time of the service data in the corresponding second private live streaming segment (for example, the playing time of the second private live streaming segment obtained by combining the first private live streaming block carrying the service data) can be determined based on the timestamp of the first private live streaming block carrying the service data.
Optionally, in the embodiment of the present invention, the service data may be stored in a private tag of the first index file (the private tag may be an extended field constructed by the first index file), and the private tag indicates the presentation time of the service data in the corresponding second private live stream segment.
For convenience of understanding, taking the first private protocol as a private flv protocol and the second private protocol as a private hls (HTTP Live Streaming, Apple dynamic bitrate adaptive technology) protocol as an example, in an optional implementation, as shown in fig. 5, after the stream transcoding server shown in fig. 3 acquires a private flv Live stream (an optional form of the first private Live stream), the private flv Live stream blocks at a predetermined time may be combined according to a predetermined time to obtain a hls Live stream slice.
Meanwhile, inserting the service data in the private flv live stream block in the first m3u8 file (an optional form of the first index file) of the private hls live stream (the service data may be inserted in the extension field of the first m3u8 file); and indicating in a first m3u8 file that a private flv live stream block of the service data is inserted, and obtaining presentation time of the service data in a corresponding private hls live stream slice at the playing time corresponding to the private hls live stream slice obtained by combination (for example, it can be determined which private hls live stream slice starts to be presented in the second of which and which private hls live stream slice ends to be presented in the second of which), thereby indicating the presentation time in the first m3u8 file.
And step S15, the stream transcoding service sends the second private live stream to the live stream distribution server.
Step S16, the live stream issuing server converts the second private live stream into a second standard live stream; the second standard live stream includes: a plurality of second standard live stream fragments and second index files; the second index file carries the service data, and the second index file indicates the display time of the service data in the corresponding second standard live stream segment.
Optionally, the second standard live stream may be a live stream corresponding to a second standard protocol; the second standard protocol may be a standard protocol (such as standard hls protocol) for embodying live content in data fragments;
optionally, the manner in which the second private live stream is converted into the second standard live stream may be determined according to an actual situation, and the embodiment of the present invention is not limited. Based on the second private protocol being a private protocol that interfaces with the second standard protocol, the content forms of the live streams of the second private protocol and the second standard protocol may be substantially identical, e.g., both in ts-fragmented form, with the difference in the specific use of the protocols.
And step S17, the live stream issuing server sends the second standard live stream to the terminal.
Optionally, the live stream delivery server may be implemented by using a CDN server.
Further, the terminal shown in fig. 3 may play a second standard live streaming segment, and control to display the service data according to the display time of the service data in the corresponding second standard live streaming segment indicated by the second index file.
Optionally, after the terminal acquires the second standard live stream, the acquired content may be divided into a second standard live stream segment and a second index file (the private label of the second index file may store the service data and indicate the presentation time of the service data in the corresponding second standard live stream segment), so that the terminal may play the second standard live stream segment, and in the process of playing the second standard live stream segment, if the playing time of the second standard live stream segment corresponds to the presentation time indicated by the second index file, the terminal may present the service data until the playing time of the second standard live stream segment does not correspond to the presentation time.
Optionally, taking the first private protocol as a private flv protocol, the second private protocol as a private hls protocol, and the second standard protocol as a standard hls protocol as an example, fig. 6 shows an application example of the live streaming method provided in the embodiment of the present invention; it should be noted that the private flv protocol is only one optional form of the first private protocol referred to in the embodiment of the present invention, the embodiment of the present invention may also support other forms of first private protocols, the private hls protocol is only one optional form of the second private protocol referred to in the embodiment of the present invention, the embodiment of the present invention may also support other forms of second private protocols, the standard hls protocol is only one optional form of the second standard protocol referred to in the embodiment of the present invention, and the embodiment of the present invention may also support other forms of second standard protocols;
in fig. 6, the video source shown in fig. 6 may be the video source 10 shown in fig. 1, the stream processing server shown in fig. 6 may be the stream processing server 20 shown in fig. 1, the stream processing server shown in fig. 6 may include the stream relay service and the stream transcoding service shown in fig. 3, the service data server shown in fig. 6 may be the service data server 30 shown in fig. 1, the CDN server shown in fig. 6 may be an alternative form of the live stream delivery server 40 shown in fig. 1, and the terminal shown in fig. 6 may be the terminal 50 shown in fig. 1;
referring to fig. 6, in a live question-answering scenario, a processing schematic of the live stream transmission method provided in the embodiment of the present invention may include:
after a video source collects a live broadcast signal corresponding to a host during live broadcast, a live broadcast stream can be generated by encoding and transmitted to a stream receiving transfer service;
when the staff need to issue the question and answer information, the staff can transmit the question and answer information to the flow switching service through the service data server and indicate the duration of transmitting the question and answer information; for example, when the host starts answering, the staff can transmit the question information to the relay service of the interface flow through the service data server and indicate the duration of transmitting the question information; for another example, when the host broadcasts the published answer, the staff may transmit the answer information to the relay service through the service data server, and indicate the duration of transmitting the answer information;
after the stream receiving relay service obtains the live stream, the private flv live stream carrying the question and answer information is obtained by processing according to the illustration in fig. 4 and is transmitted to the stream transcoding service;
after the stream transcoding service acquires the private flv live stream carrying the question and answer information, processing to obtain a private hls live stream (containing the question and answer information) according to the illustration in fig. 5, and transmitting the private flv live stream to the CDN server;
the CDN server converts the private hls live stream into a standard hls live stream and sends the standard hls live stream to the terminal;
after receiving the standard hls live stream, the terminal can play a standard hls live stream slice in the standard hls live stream and identify the display time indicated by the second m3u8 file in the standard hls live stream; when the time of the played standard hls live stream slice corresponds to the display time, displaying question and answer information inserted in a second m3u8 file; further, after the question and answer information is presented, if the time of the live streaming of the played standard hls does not correspond to the presentation time, the question and answer information may be cancelled.
As an optional implementation, fig. 7 illustrates another optional signaling flow of the live streaming transmission method provided in the embodiment of the present invention, where the video source, the stream processing server, the service data server, the live streaming server, and the terminal illustrated in fig. 7 may be consistent with those illustrated in fig. 3;
referring to fig. 7, the process may include:
and step S20, the video source transmits the live stream to the receiving and transferring service.
Step S21, the service data server transmits the service data to the flow relay service, where the service data indicates a transmission duration.
Step S22, the streaming relay service divides the live streaming into a plurality of first private live streaming blocks according to the preset data size.
Optionally, the data size of one first private live stream block corresponds to a predetermined data size.
Step S23, the flow receiving relay service determines a first private live streaming block whose blocking time corresponds to the acquisition start time according to the acquisition start time of the service data.
Step S24, starting from the first private live streaming block corresponding to the acquisition starting time, the stream receiving transit service respectively constructs private fields in each first private live streaming block corresponding to the duration time of the service data; and inserting service data into the private field constructed by each first private live broadcast stream block, and stamping a timestamp on the first private live broadcast stream block into which the service data is inserted to obtain a first private live broadcast stream.
Optionally, the timestamp may correspond to a start acquisition time of the first private live stream block.
Optionally, steps S22 to S24 may be regarded as an optional manner of converting the live stream into a first private live stream, where the first private live stream includes: and the first private live streaming blocks corresponding to the display time in the plurality of first private live streaming blocks carry service data.
And step S25, the stream receiving transfer service transmits the first private live stream to the stream transcoding service.
Optionally, the first private live broadcast stream may include a plurality of first private live broadcast stream blocks, where the plurality of first private live broadcast stream blocks include a first private live broadcast stream carrying service data, and the first private live broadcast stream carrying service data corresponds to a time stamp.
Step S26, the stream transcoding service combines the first private live stream block according to the preset time to obtain a plurality of second private live stream slices; a second private live stream segment is a combination of blocks of the first private live stream corresponding to a predetermined period of time.
Step S27, in the process of combining the first private live streaming block, the stream transcoding service inserts the service data in the first private live streaming block into the first index file, and indicates, in the first index file, the presentation time of the service data in the corresponding second private live streaming segment to obtain the second private live streaming.
Optionally, steps S26 to S27 may be regarded as an optional manner of converting the first private live stream into a second private live stream, where the second private live stream includes: the system comprises a plurality of second private live stream segments and a first index file, wherein the first index file carries service data and indicates the display time of the service data in the corresponding second private live stream segments.
And step S28, the stream transcoding service sends the second private live stream to the live stream distribution server.
And step S29, the live stream issuing server converts the second private live stream into a second standard live stream and issues the second standard live stream to the terminal.
Optionally, the second standard live stream includes: the second index file carries service data and indicates the display time of the service data in the corresponding second standard live broadcast stream slice.
Optionally, the terminal may analyze the second standard live stream to obtain a second standard live stream segment and a second index file;
furthermore, the terminal can play a second standard live stream segment, and display the service data when the playing time of the currently played second standard live stream segment corresponds to the display time indicated by the second index file.
Optionally, the second index file may indicate that the service data starts to display the corresponding start second standard live streaming segment and start time, and ends to display the corresponding end second standard live streaming segment and end time;
the terminal plays the second standard live broadcast stream slice, and can display the service data at the starting time; and the terminal plays the second standard live stream segment until the second standard live stream segment is finished, and can finish displaying the service data at the finishing time.
It should be noted that, in the embodiment of the present invention, in addition to sending the second standard live stream to the terminal as described above, and performing live stream playing and service data display by the terminal, in a case that the terminal supports a private protocol, the embodiment of the present invention may also support sending the first private live stream to the terminal, and may also support sending the second private live stream to the terminal. The method for switching the live stream provided by the video source into the first private live stream by the stream transfer service is only optional, the first private live stream is switched into the second private live stream by the stream transcoding service, the second private live stream is switched into the second standard live stream by the live stream forwarding server, and the second standard live stream is forwarded to the terminal.
Standing at the angle of the stream processing server, the stream processing server may output a target live stream carrying service data, where the target live stream may be the indicated first private live stream or the indicated second private live stream; optionally, fig. 8 shows a flowchart of a live streaming method provided in an embodiment of the present invention, where the flowchart is applicable to the streaming server 20 shown in fig. 1, and referring to fig. 8, the flowchart may include:
and S100, acquiring a live stream.
The stream processing server can acquire a live stream transmitted by a video source.
Step S110, obtaining service data, wherein the service data corresponds to display time.
The service data may be sent by the service data server to the stream processing server.
Step S120, processing the live stream to obtain a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data.
Optionally, in a processing case, the target live stream may be a second private live stream; the live stream is converted into a first private live stream, and then the first private live stream is converted into a second private live stream; in the process, the live broadcast content of the target live broadcast stream can be a second private live broadcast stream slice, business data can be inserted through a first index file in the target live broadcast stream, and the display time of the business data in the corresponding second private live broadcast stream slice is indicated;
in another processing case, the target live stream may also be the first private live stream; if the terminal supports the first private protocol, the first private live stream can be used as a target live stream and is sent to the terminal for processing through a live stream sending server.
And step S130, outputting the target live stream, so that when the terminal plays the acquired target live stream, the service data is controlled and displayed according to the display time.
Optionally, the stream processing server may send the target live stream to the live stream distribution server, and the live stream distribution server sends the target live stream to the terminal, so that the terminal may control to display the service data according to the display time when playing the target live stream.
In one processing case, the target live stream acquired by the terminal may be a second standard live stream; the second standard live stream can be obtained by converting a second private live stream output by the stream processing server into a second standard live stream by the live stream issuing server;
under another processing condition, if the terminal supports a second private protocol, the target live stream acquired by the terminal can be a second private live stream, and correspondingly, the stream processing server can output the second private live stream and send the second private live stream to the terminal by the live stream issuing server;
in another processing case, if the terminal supports the first private protocol, the target live stream acquired by the terminal may be a first private live stream, and correspondingly, the stream processing server may output the first private live stream, and the live stream delivery server may send the first private live stream to the terminal.
The live stream transmission method provided by the embodiment of the invention can process the live stream provided by a video source, so that the live stream carrying service data is issued to a terminal, the synchronous issuing of the live stream and the service data to the terminal is realized, the concurrency of the service data under the condition that the live stream and the service data are issued independently can be greatly reduced, and the load of a server is reduced; and the synchronization of service data display and live stream play can be realized, so that the time for displaying the service data by the terminal is more accurate.
Furthermore, the service data can be live online people number and the like, live online people can be inserted into the live stream periodically, the insertion processing mode is consistent with the previous mode, when a user plays the live stream at a terminal, the player can analyze the live stream in real time, the service data such as the live people number and the like can be displayed at the display time, and the requests of the user to service are reduced.
In the following, the live streaming apparatus provided in the embodiment of the present invention is introduced, and the live streaming apparatus described below may be considered as a program module that is required by the stream processing server 20 shown in fig. 1 to implement the live streaming method provided in the embodiment of the present invention; the contents of the live streaming apparatus described below may be referred to in correspondence with the contents of the live streaming method described above.
Fig. 9 is a block diagram of a live streaming apparatus according to an embodiment of the present invention, where the live streaming apparatus may be applied to the streaming server 20 shown in fig. 1, and referring to fig. 9, the apparatus may include:
a live stream first obtaining module 100, configured to obtain a live stream;
a service data obtaining module 110, configured to obtain service data, where the service data corresponds to a display time;
a target live stream acquiring module 120, configured to process the live stream to acquire a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data;
and the output module 130 is configured to output the target live stream, so that when the terminal plays the acquired target live stream, the service data is controlled to be displayed according to the display time.
Optionally, the target live stream acquiring module 120 is configured to process the live stream to acquire a target live stream, and specifically includes:
and carrying out protocol conversion on the live stream, inserting the service data in the protocol conversion process, and associating the live content corresponding to the display time with the service data to obtain a target live stream.
Optionally, the target live stream obtaining module 120 is configured to perform protocol conversion on the live stream, insert the service data in a protocol conversion process, and associate the live content corresponding to the presentation time with the service data to obtain the target live stream, and specifically includes:
converting the live stream into a first private live stream; the first private live stream includes: a plurality of first private live streaming blocks, wherein the first private live streaming block corresponding to the display time in the plurality of first private live streaming blocks carries service data;
and acquiring a target live stream according to the first private live stream.
Optionally, the target live stream obtaining module 120 is configured to convert the live stream into a first private live stream, and specifically includes:
according to the preset data size, dividing the live broadcast stream into a plurality of first private live broadcast stream blocks;
determining a first private live broadcast stream block corresponding to the acquisition starting time according to the acquisition starting time of the service data;
and inserting the service data into the first private live streaming block corresponding to the duration of the service data from the first private live streaming block corresponding to the acquisition starting time, and stamping a time stamp on the first private live streaming block into which the service data is inserted to acquire a first private live streaming.
Optionally, the target live streaming acquiring module 120 is configured to insert service data into the first private live streaming block corresponding to the duration of the service data from the first private live streaming block corresponding to the acquisition start time, and specifically includes:
respectively constructing private fields in each first private live streaming block corresponding to the duration of the service data from the first private live streaming block corresponding to the acquisition starting time;
and inserting the service data into the private field constructed in each first private live streaming block.
Optionally, the target live stream obtaining module 120 is configured to obtain the target live stream according to the first private live stream, and specifically includes:
converting the first private live stream into a second private live stream to obtain a target live stream; wherein the second private live stream comprises: the system comprises a plurality of second private live stream segments and a first index file, wherein the first index file carries service data and indicates the display time of the service data in the corresponding second private live stream segments.
Optionally, the target live stream obtaining module 120 is configured to convert the first private live stream into a second private live stream, and specifically includes:
combining the first private live streaming blocks according to preset time to obtain a plurality of second private live streaming slices; a second private live stream slice is a combination of the first private live stream blocks corresponding to a predetermined period of time;
extracting service data from a first private live stream block carrying the service data, inserting the extracted service data into a first index file, indicating the display time of the service data in a corresponding second private live stream slice in the first index file, and acquiring a second private live stream.
Optionally, the target live stream obtaining module 120 is configured to insert the extracted service data into the first index file, and specifically includes:
storing the business data in the private label in the first index file;
the step of indicating the display time of the service data in the corresponding second private live stream segment in the first index file comprises the following steps:
and indicating the display time of the service data in the corresponding second private live streaming segment in the private label.
Optionally, the target live streaming acquiring module 120 is configured to indicate, in the first index file, display time of the service data in the corresponding second private live streaming segment, and acquire the second private live streaming, and specifically includes:
determining a first private live broadcast stream block carrying business data, and determining the playing time of the business data in the corresponding second private live broadcast stream slice obtained by combination so as to determine the display time of the business data in the corresponding second private live broadcast stream slice;
and indicating the display time of the service data in the corresponding second private live stream segment in the first index file.
Optionally, the output module 130 is configured to output the target live stream, and specifically includes:
transmitting a second private live stream to a live stream issuing server, so that the live stream issuing server converts the second private live stream into a second standard live stream and then transmits the second standard live stream to a terminal;
wherein the second standard live stream comprises: the second index file carries service data and indicates the display time of the service data in the corresponding second standard live broadcast stream slice.
The embodiment of the invention also provides a stream processing server, and the stream processing server can load the live stream transmission device applied to the flow processing server in a program form. Alternatively, an alternative hardware structure of the stream processing server 20 shown in fig. 1 may be as shown in fig. 10, and referring to fig. 10, the stream processing server may include: at least one processing chip 1, at least one communication interface 2, at least one memory 3 and at least one communication bus 4;
in the embodiment of the present invention, the number of the processing chip 1, the communication interface 2, the memory 3, and the communication bus 4 is at least one, and the processing chip 1, the communication interface 2, and the memory 3 complete mutual communication through the communication bus 4;
the processing chip 1 may be a central processing unit CPU or an application Specific Integrated circuit asic or one or more Integrated circuits configured to implement embodiments of the present invention.
The memory 3 may comprise a high-speed RAM memory and may also comprise a non-volatile memory, such as at least one disk memory.
Wherein, the memory 3 stores programs, and the processing chip 1 calls the programs stored in the memory 3 to realize the steps of the live streaming transmission method executed by the streaming server.
The embodiment of the invention also provides a storage medium, wherein the storage medium stores a program suitable for being executed by a processing chip so as to realize the steps of the live streaming transmission method executed by the streaming processing server.
Optionally, the above procedure is mainly used for:
acquiring a live stream;
acquiring service data, wherein the service data corresponds to display time;
processing the live stream to obtain a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data;
and outputting the target live stream so that the terminal controls and displays the service data according to the display time when playing the acquired target live stream.
The detailed function and the extended function of the program can refer to the description of the corresponding parts, and are not described herein again.
In the following, the station introduces the live streaming apparatus provided in the embodiment of the present invention from the perspective of the terminal 50 shown in fig. 1, and the live streaming apparatus described below may be considered as a program module that is required by the terminal to implement the live streaming method provided in the embodiment of the present invention; the contents of the live streaming apparatus described below may be referred to in correspondence with the contents of the live streaming method described above.
Fig. 11 is a block diagram of another structure of a live streaming apparatus according to an embodiment of the present invention, where the live streaming apparatus is applicable to the terminal 50 shown in fig. 1, and referring to fig. 11, the apparatus may include:
a second live stream acquiring module 200, configured to acquire a live stream carrying service data;
the parsing module 210 is configured to parse the live stream carrying the service data, and determine live content, the service data, and display time of the service data;
a playing module 220, configured to play the live content;
and a display control module 230, configured to control to display the service data according to the display time in the process of playing the live content.
Optionally, the live stream carrying the service data acquired by the terminal may be the second standard live stream; correspondingly, the parsing module 210 is configured to parse the live stream carrying the service data, and determine live content, the service data, and display time of the service data, and specifically includes:
analyzing the second standard live broadcast stream to obtain a plurality of second standard live broadcast stream fragments and a second index file, wherein the second index file carries service data and indicates the display time of the service data in the corresponding second standard live broadcast stream fragments;
the display control module 230 is configured to control to display the service data according to the display time in the process of playing the live content, and specifically includes:
displaying the service data when the playing time of the played second standard live stream slice corresponds to the displaying time;
and canceling the display of the service data when the playing time of the played second standard live stream slice does not correspond to the display time.
Optionally, the live stream carrying the service data acquired by the terminal may be the first private live stream; correspondingly, the parsing module 210 is configured to parse the live stream carrying the service data, and determine live content, the service data, and display time of the service data, and specifically includes:
analyzing the first private live broadcast stream to obtain a plurality of first private live broadcast stream blocks, wherein the first private live broadcast stream blocks corresponding to the display time in the plurality of first private live broadcast stream blocks carry service data;
the display control module 230 is configured to control to display the service data according to the display time in the process of playing the live content, and specifically includes:
in the process of playing the first private live broadcast stream block, if the first private live broadcast stream block carrying the service data is played, the service data is displayed;
and canceling the display of the service data if the played first private live streaming block does not carry the service data.
Optionally, the live stream carrying the service data acquired by the terminal may be the second private live stream; correspondingly, the parsing module 210 is configured to parse the live stream carrying the service data, and determine live content, the service data, and display time of the service data, and specifically includes:
analyzing the second private live broadcast stream to obtain a plurality of second private live broadcast stream slices and a first index file, wherein the first index file carries service data and indicates the display time of the service data in the corresponding second private live broadcast stream slices;
the display control module 230 is configured to control to display the service data according to the display time in the process of playing the live content, and specifically includes:
displaying the service data when the playing time of the played second private live stream slice corresponds to the displaying time;
and canceling the display of the service data when the playing time of the played second private live stream segment does not correspond to the display time.
The embodiment of the invention also provides a terminal, and the terminal can load the live streaming transmission device applied to the terminal in a program form. Optionally, an optional hardware structure of the terminal 50 shown in fig. 1 may be as shown in fig. 10, where the optional hardware structure includes at least one memory and at least one processing chip, where the memory stores a program, and the processing chip calls the program to implement the steps of the live streaming method executed by the terminal.
The embodiment of the invention also provides a storage medium, wherein the storage medium stores a program suitable for being executed by a processing chip so as to realize the steps of the live streaming transmission method executed by the terminal.
Optionally, the above procedure is mainly used for:
acquiring a live stream carrying service data;
analyzing the live broadcast stream carrying the service data, and determining live broadcast content, the service data and display time of the service data;
playing the live broadcast content;
and controlling and displaying the service data according to the display time in the process of playing the live broadcast content.
The detailed function and the extended function of the program can refer to the description of the corresponding parts, and are not described herein again.
An embodiment of the present invention further provides a live streaming system, where a structure of the system may be as shown in fig. 1, and the system includes: a video source 10, a stream processing server 20, a service data server 30, a live stream distribution server 40 and a terminal 50;
the video source 10 is configured to acquire a live broadcast signal and output a corresponding live broadcast stream;
a stream processing server 20 for acquiring a live stream; acquiring service data, wherein the service data corresponds to display time; processing the live stream to obtain a target live stream, wherein the target live stream carries the service data, and the live content corresponding to the display time in the target live stream is associated with the service data; outputting a target live stream;
a service data server 30 for transmitting service data to the stream processing server 20;
a live stream distribution server 40, configured to receive a target live stream output by the stream processing server 20, and send the live stream carrying service data to the terminal 50 according to the target live stream;
a terminal 50, configured to obtain a live stream carrying service data; analyzing the live broadcast stream carrying the service data, and determining live broadcast content, the service data and display time of the service data; playing the live broadcast content; and controlling and displaying the service data according to the display time in the process of playing the live broadcast content.
The embodiment of the invention can insert the service data into the live stream and indicate the display time of the service data, thereby realizing synchronous transmission of the live stream and the service data to the terminal, and controlling the display of the service data according to the display time when the terminal plays the live stream. The embodiment of the invention can greatly reduce the concurrency of the service data under the condition that the live stream and the service data are independently issued, and reduce the load of the server; and further, synchronous display of the service data and the associated live broadcast content can be realized, the display accuracy of the service data is improved, and synchronous display of the question and answer information of the terminal can be realized when the question and answer video of a host is played by the terminal in a live broadcast question and answer scene.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description. Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention. The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processing chip, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (13)

1. A live streaming method, applied to a streaming server, the method comprising:
acquiring a live stream;
acquiring service data, wherein the service data corresponds to display time;
processing the live stream to obtain a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data;
outputting a target live stream so that the terminal controls and displays the service data according to the display time when playing the acquired target live stream; when the terminal plays the acquired target live stream, controlling and displaying the service data according to the display time comprises the following steps: when the display time of the service data corresponds to the playing time of the target live stream, displaying the service data;
the processing the live stream to obtain a target live stream includes: performing protocol conversion on the live stream, inserting the service data in the protocol conversion process, and associating the live content corresponding to the display time with the service data to obtain a target live stream;
the performing protocol conversion on the live stream, inserting the service data in a protocol conversion process, and associating the live content corresponding to the presentation time with the service data to obtain a target live stream includes: converting the live stream into a first private live stream; the first private live stream includes: a plurality of first private live streaming blocks, wherein the first private live streaming block corresponding to the display time in the plurality of first private live streaming blocks carries service data; and acquiring a target live stream according to the first private live stream.
2. The live streaming method of claim 1, wherein the converting the live stream into a first private live stream comprises:
according to the preset data size, dividing the live broadcast stream into a plurality of first private live broadcast stream blocks;
determining a first private live broadcast stream block corresponding to the acquisition starting time according to the acquisition starting time of the service data;
and inserting the service data into the first private live streaming block corresponding to the duration of the service data from the first private live streaming block corresponding to the acquisition starting time, and stamping a time stamp on the first private live streaming block into which the service data is inserted to acquire a first private live streaming.
3. The live streaming method according to claim 2, wherein inserting the service data in the first private live streaming block corresponding to the duration of the service data, starting from the first private live streaming block corresponding to the acquisition start time, comprises:
respectively constructing private fields in each first private live streaming block corresponding to the duration of the service data from the first private live streaming block corresponding to the acquisition starting time;
and inserting the service data into the private field constructed in each first private live streaming block.
4. The live streaming method according to any one of claims 1-3, wherein the obtaining a target live stream according to the first private live stream comprises:
converting the first private live stream into a second private live stream to obtain a target live stream; wherein the second private live stream comprises: the system comprises a plurality of second private live stream segments and a first index file, wherein the first index file carries service data and indicates the display time of the service data in the corresponding second private live stream segments.
5. The live streaming method of claim 4, wherein the converting the first private live stream into a second private live stream comprises:
combining the first private live streaming blocks according to preset time to obtain a plurality of second private live streaming slices; a second private live stream slice is a combination of the first private live stream blocks corresponding to a predetermined period of time;
extracting service data from a first private live stream block carrying the service data, inserting the extracted service data into a first index file, indicating the display time of the service data in a corresponding second private live stream slice in the first index file, and acquiring a second private live stream.
6. The live streaming method of claim 5, wherein the inserting the extracted service data into the first index file comprises:
storing the service data in the private label of the first index file;
the step of indicating the display time of the service data in the corresponding second private live stream segment in the first index file comprises the following steps:
and indicating the display time of the service data in the corresponding second private live streaming segment in the private label.
7. The live streaming method according to claim 5, wherein the obtaining the second private live stream includes, when the first index file indicates a presentation time of the service data in a corresponding second private live stream segment:
determining a first private live broadcast stream block carrying business data, and determining the playing time of the business data in the corresponding second private live broadcast stream slice obtained by combination so as to determine the display time of the business data in the corresponding second private live broadcast stream slice;
and indicating the display time of the service data in the corresponding second private live stream segment in the first index file.
8. The live streaming method according to any one of claims 5 to 7, wherein outputting the target live stream includes:
transmitting a second private live stream to a live stream issuing server, so that the live stream issuing server converts the second private live stream into a second standard live stream and then transmits the second standard live stream to a terminal;
wherein the second standard live stream comprises: the second index file carries service data and indicates the display time of the service data in the corresponding second standard live broadcast stream slice.
9. A live streaming transmission method is applied to a terminal, and comprises the following steps:
acquiring a target live stream carrying service data, wherein the target live stream is acquired by a stream processing server in the following way: the stream processing server carries out protocol conversion on a live stream output by a video source, inserts the service data in the protocol conversion process, and associates the live content corresponding to the display time with the service data to obtain a target live stream;
performing protocol conversion on the live stream, inserting the service data in the protocol conversion process, and associating the live content corresponding to the display time with the service data to acquire a target live stream, including: converting the live stream into a first private live stream; the first private live stream includes: a plurality of first private live streaming blocks, wherein the first private live streaming block corresponding to the display time in the plurality of first private live streaming blocks carries service data; acquiring a target live stream according to the first private live stream;
analyzing the target live broadcast stream carrying the service data, and determining live broadcast content, the service data and display time of the service data;
playing the live broadcast content;
in the process of playing the live broadcast content, controlling and displaying the service data according to the display time; in the process of playing the live content, controlling and displaying the service data according to the display time comprises: and when the display time of the service data corresponds to the playing time of the target live stream, displaying the service data.
10. The live streaming method according to claim 9, wherein the target live stream carrying the service data is a second standard live stream; the analyzing the live broadcast stream carrying the service data and determining the live broadcast content, the service data and the display time of the service data comprises:
analyzing the second standard live broadcast stream to obtain a plurality of second standard live broadcast stream fragments and a second index file, wherein the second index file carries service data and indicates the display time of the service data in the corresponding second standard live broadcast stream fragments;
in the process of playing the live content, controlling and displaying the service data according to the display time comprises:
displaying the service data when the playing time of the played second standard live stream slice corresponds to the displaying time;
and canceling the display of the service data when the playing time of the played second standard live stream slice does not correspond to the display time.
11. A live streaming apparatus, applied to a streaming server, the apparatus comprising:
the first acquisition module of the live stream is used for acquiring the live stream;
the service data acquisition module is used for acquiring service data, and the service data corresponds to the display time;
the target live stream acquisition module is used for processing the live stream to acquire a target live stream; the target live broadcast stream carries the service data, and live broadcast content corresponding to the display time in the target live broadcast stream is associated with the service data;
the processing the live stream to obtain a target live stream includes: performing protocol conversion on the live stream, inserting the service data in the protocol conversion process, and associating the live content corresponding to the display time with the service data to obtain a target live stream;
the performing protocol conversion on the live stream, inserting the service data in a protocol conversion process, and associating the live content corresponding to the presentation time with the service data to obtain a target live stream includes: converting the live stream into a first private live stream; the first private live stream includes: a plurality of first private live streaming blocks, wherein the first private live streaming block corresponding to the display time in the plurality of first private live streaming blocks carries service data; acquiring a target live stream according to the first private live stream;
the output module is used for outputting the target live stream so that the terminal can control and display the service data according to the display time when playing the acquired target live stream; when the terminal plays the acquired target live stream, the business data is displayed according to the display time control, namely when the display time of the business data corresponds to the playing time of the target live stream, the business data is displayed.
12. A live streaming device, applied to a terminal, the device comprising:
a second live stream acquisition module, configured to acquire a target live stream carrying service data, where the target live stream is acquired by a stream processing server in the following manner: the stream processing server carries out protocol conversion on a live stream output by a video source, inserts the service data in the protocol conversion process, and associates the live content corresponding to the display time with the service data to obtain a target live stream;
performing protocol conversion on the live stream, inserting the service data in the protocol conversion process, and associating the live content corresponding to the display time with the service data to acquire a target live stream, including: converting the live stream into a first private live stream; the first private live stream includes: a plurality of first private live streaming blocks, wherein the first private live streaming block corresponding to the display time in the plurality of first private live streaming blocks carries service data; acquiring a target live stream according to the first private live stream;
the analysis module is used for analyzing the target live stream carrying the service data and determining live content, the service data and the display time of the service data;
the playing module is used for playing the live broadcast content;
the display control module is used for controlling and displaying the service data according to the display time in the process of playing the live broadcast content; and in the process of playing the live broadcast content, controlling and displaying the service data according to the display time, namely displaying the service data when the display time of the service data corresponds to the playing time of the target live broadcast stream.
13. A storage medium, characterized in that it stores a program adapted to be executed by a processing chip to implement the steps of the live streaming method of any of claims 1-8 or to implement the steps of the live streaming method of any of claims 9-10.
CN201810582762.5A 2018-06-07 2018-06-07 Live stream transmission method and device and related equipment Active CN108881956B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810582762.5A CN108881956B (en) 2018-06-07 2018-06-07 Live stream transmission method and device and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810582762.5A CN108881956B (en) 2018-06-07 2018-06-07 Live stream transmission method and device and related equipment

Publications (2)

Publication Number Publication Date
CN108881956A CN108881956A (en) 2018-11-23
CN108881956B true CN108881956B (en) 2022-01-04

Family

ID=64338561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810582762.5A Active CN108881956B (en) 2018-06-07 2018-06-07 Live stream transmission method and device and related equipment

Country Status (1)

Country Link
CN (1) CN108881956B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819300A (en) * 2019-01-03 2019-05-28 北京潘达互娱科技有限公司 A kind of message content methods of exhibiting, sending method, device, terminal and system
CN112995759A (en) * 2019-12-13 2021-06-18 腾讯科技(北京)有限公司 Interactive service processing method, system, device, equipment and storage medium
CN112969093B (en) * 2019-12-13 2023-09-08 腾讯科技(北京)有限公司 Interactive service processing method, device, equipment and storage medium
CN111770373B (en) * 2020-07-09 2022-09-02 北京达佳互联信息技术有限公司 Content synchronization method, device and equipment based on live broadcast and storage medium
CN114900727A (en) * 2022-05-11 2022-08-12 上海哔哩哔哩科技有限公司 Video stream processing method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101420621A (en) * 2007-10-24 2009-04-29 深圳华为通信技术有限公司 Transmission equipment, system and method for interactive television message
WO2014019062A1 (en) * 2012-07-30 2014-02-06 Mdialog Corporation Method and system for dynamically inserting content into streaming media
CN105120355A (en) * 2015-08-24 2015-12-02 天脉聚源(北京)科技有限公司 Television interactive system interactive information detection method
CN105187930A (en) * 2015-09-18 2015-12-23 广州酷狗计算机科技有限公司 Video live broadcasting-based interaction method and device
CN106254898A (en) * 2016-08-15 2016-12-21 杭州当虹科技有限公司 A kind of TS bag inserts the method for interactive advertisement
CN106341695A (en) * 2016-08-31 2017-01-18 腾讯数码(天津)有限公司 Interaction method, device and system of live streaming room
CN106534954A (en) * 2016-12-19 2017-03-22 广州虎牙信息科技有限公司 Information interaction method and device based on live broadcast video streams and terminal device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170034237A1 (en) * 2015-07-28 2017-02-02 Giga Entertainment Media Inc. Interactive Content Streaming Over Live Media Content

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101420621A (en) * 2007-10-24 2009-04-29 深圳华为通信技术有限公司 Transmission equipment, system and method for interactive television message
WO2014019062A1 (en) * 2012-07-30 2014-02-06 Mdialog Corporation Method and system for dynamically inserting content into streaming media
CN105120355A (en) * 2015-08-24 2015-12-02 天脉聚源(北京)科技有限公司 Television interactive system interactive information detection method
CN105187930A (en) * 2015-09-18 2015-12-23 广州酷狗计算机科技有限公司 Video live broadcasting-based interaction method and device
CN106254898A (en) * 2016-08-15 2016-12-21 杭州当虹科技有限公司 A kind of TS bag inserts the method for interactive advertisement
CN106341695A (en) * 2016-08-31 2017-01-18 腾讯数码(天津)有限公司 Interaction method, device and system of live streaming room
CN106534954A (en) * 2016-12-19 2017-03-22 广州虎牙信息科技有限公司 Information interaction method and device based on live broadcast video streams and terminal device

Also Published As

Publication number Publication date
CN108881956A (en) 2018-11-23

Similar Documents

Publication Publication Date Title
CN108881956B (en) Live stream transmission method and device and related equipment
US11627351B2 (en) Synchronizing playback of segmented video content across multiple video playback devices
KR102280134B1 (en) Video playback methods, devices and systems
CN108566558B (en) Video stream processing method and device, computer equipment and storage medium
US20180199082A1 (en) Providing low and high quality streams
CN103096128B (en) A kind of realize the method for video interactive, server, terminal and system
DK2180652T3 (en) Method and system for transmitting media information
EP2924998A1 (en) Method, apparatus and system for acquiring playback data stream of real-time video communication
CN109714622B (en) Video data processing method and device and electronic equipment
US11540028B2 (en) Information presenting method, terminal device, server and system
CN111432284B (en) Bullet screen interaction method of multimedia terminal and multimedia terminal
CN109756744B (en) Data processing method, electronic device and computer storage medium
CN112291502B (en) Information interaction method, device and system and electronic equipment
JP2009038420A (en) Content evaluation software and service providing system
CN114257572B (en) Data processing method, device, computer readable medium and electronic equipment
CN112153401B (en) Video processing method, communication device and readable storage medium
CN102710967A (en) Cloud television system and method
CN111385590A (en) Live broadcast data processing method and device and terminal
CN112565799B (en) Video data processing method and device
CN107040820B (en) Method and device for acquiring program information and video conversion device
CN113973215A (en) Data deduplication method and device and storage medium
CN113852853A (en) Set-top box and method for continuously playing programs
CN114125358A (en) Cloud conference subtitle display method, system, device, electronic equipment and storage medium
JP2020109895A (en) Video distribution system
CN107852523B (en) Method, terminal and equipment for synchronizing media rendering between terminals

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
GR01 Patent grant
GR01 Patent grant