CN113365099A - Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium - Google Patents

Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113365099A
CN113365099A CN202110600924.5A CN202110600924A CN113365099A CN 113365099 A CN113365099 A CN 113365099A CN 202110600924 A CN202110600924 A CN 202110600924A CN 113365099 A CN113365099 A CN 113365099A
Authority
CN
China
Prior art keywords
bullet screen
bullet
client
query time
time period
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.)
Granted
Application number
CN202110600924.5A
Other languages
Chinese (zh)
Other versions
CN113365099B (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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information 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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202110600924.5A priority Critical patent/CN113365099B/en
Publication of CN113365099A publication Critical patent/CN113365099A/en
Priority to PCT/CN2021/143887 priority patent/WO2022252610A1/en
Application granted granted Critical
Publication of CN113365099B publication Critical patent/CN113365099B/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/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The disclosure relates to a bullet screen issuing method, a bullet screen receiving device, electronic equipment, a storage medium and a program product, wherein a first issuing request carrying a video identifier and an inquiry time period is received, and the inquiry time period is obtained by dividing the playing time of a video file; searching in a bullet screen database according to the video identification and the query time period to obtain a corresponding bullet screen set; therefore, the target bullet screen is obtained from the bullet screen set and returned to the client, the number of the bullet screens issued at each time is reduced, the occupation of the bullet screens to be played on the memory of the client is reduced, the occupation of the network bandwidth of the server is reduced, and the real-time performance of bullet screen playing is improved.

Description

Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a bullet screen issuing method, a bullet screen receiving method, an apparatus, an electronic device, a storage medium, and a program product.
Background
With the development of internet video technology, a video player has a barrage function. The video barrage is also called a movie horse race lamp and is a special function of some video sharing websites. By using the barrage function, when a video file is played to a certain time point, a viewer can make a comment of the viewer, and the comment is displayed on a video picture at the time point, for example, in a sliding and caption mode. In the related art, the client requests the server to pull the bullet screen, and the server issues the bullet screen to the client, which results in the waste of network bandwidth.
Disclosure of Invention
The present disclosure provides a bullet screen issuing method, a bullet screen receiving device, an electronic device, a storage medium, and a program product, which at least solve the problem of network bandwidth waste caused when a server issues a bullet screen to a client in the related art. The technical scheme of the disclosure is as follows:
according to a first aspect of the embodiments of the present disclosure, a bullet screen issuing method is provided, including:
receiving a first sending request sent by a client, wherein the first sending request carries a video identifier of a video file being played by the client and a query time quantum to which a current playing progress belongs, and the query time quantum is obtained by dividing playing time of the video file;
searching in a bullet screen database according to the video identification and the query time period to obtain a bullet screen set corresponding to the video identification and the query time period, wherein the bullet screen database comprises the corresponding relation of the video identification, the query time period and the bullet screen;
and acquiring a target bullet screen from the bullet screen set, and returning the target bullet screen to the client, wherein the target bullet screen is a plurality of bullet screens needing to be returned to the client.
In one embodiment, the obtaining a target bullet screen from the bullet screen set and returning the target bullet screen to the client includes:
when the number of the bullet screens in the bullet screen set is greater than a preset bullet screen return upper limit, acquiring target bullet screens of which the number is equal to the bullet screen return upper limit from the bullet screen set, and assigning a page turning field as a first result value, wherein the first result value is used for informing the client that the bullet screens to be issued are also contained in the bullet screen set;
and returning the target barrage and the first result value to the client, wherein the first result value is also used for indicating the client to send a second issuing request.
In one embodiment, each bullet screen in the bullet screens to be issued has an identifier; the method further comprises the following steps:
when the video playing progress of the target barrage when the playing is finished still belongs to the query time period, receiving the second issuing request, wherein the second issuing request carries the query time period, the video identifier and the first result value, and the first result value is used for representing the identifier of the target barrage returned to the client;
searching in the bullet screen database according to the video identification and the query time period to obtain the bullet screen set;
screening from the bullet screen set according to the first result value to obtain the bullet screen to be issued;
and sequentially acquiring new target bullet screens from the bullet screens to be issued according to the identification of each bullet screen, and returning the new target bullet screens to the client.
In one embodiment, the obtaining a target bullet screen from the bullet screen set and returning the target bullet screen to the client includes:
when the number of the bullet screens in the bullet screen set is not more than the preset bullet screen return upper limit, acquiring all the bullet screens from the bullet screen set as the target bullet screens, and assigning the page turning field as a second result value;
and returning the bullet screen set and the second result value to the client, wherein the second result value is used for informing the client that all bullet screens in the bullet screen set have been returned to the client.
In one embodiment, when the video playing progress of the bullet screen set after the playing still belongs to the query time period, the second result value is further used for indicating that the client does not send a second issuing request.
In one embodiment, the method further comprises:
and when the video playing progress of the target bullet screen after being played does not belong to the query time period any more, receiving a third issuing request sent by the client, wherein the third issuing request carries a new query time period.
In one embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
According to a second aspect of the embodiments of the present disclosure, there is provided a bullet screen receiving method, including:
sending a first sending request to a server, wherein the first sending request carries a video identifier of a video file being played by a client and a query time quantum to which a current playing progress belongs, and the query time quantum is obtained by dividing the playing time of the video file;
receiving a target barrage returned by the server, wherein the target barrage is a plurality of barrages acquired by the server from a barrage set, the barrage set is a set formed by the barrage corresponding to the video identification and the query time period, which is searched in a barrage database by the server according to the video identification and the query time period, and the barrage database comprises the corresponding relation of the video identification, the query time period and the barrage.
In one embodiment, the receiving the target barrage returned by the server includes:
receiving a target bullet screen and a first result value returned by the server; when the number of the bullet screens in the bullet screen set is greater than a preset bullet screen return upper limit, the target bullet screen is a plurality of bullet screens of which the number is equal to the bullet screen return upper limit and which are acquired by the server from the bullet screen set, the first result value is an assignment of the server to a page turning field, and the first result value is used for representing that the bullet screens to be issued are also included in the bullet screen set;
and sending a second issuing request to the server according to the first result value.
In one embodiment, each bullet screen in the bullet screens to be delivered has an identifier, and the first result value is further used for representing the identifier of a target bullet screen which has been returned to the client; the method further comprises the following steps:
when the video playing progress of the target barrage when the playing is finished still belongs to the query time period, sending a second issuing request to the server according to the first result value, wherein the second issuing request carries the query time period, the video identification and the first result value;
receiving a new target bullet screen returned by the server, wherein the new target bullet screen is obtained by the server according to the video identification and the query time period, searching in the bullet screen database to obtain the bullet screen set, screening in the bullet screen set according to the first result value to obtain the bullet screens to be issued, and sequentially obtaining the bullet screens with the preset bullet screen quantity obtained from the bullet screens to be issued according to the identification of each bullet screen. In one embodiment, the receiving the target barrage returned by the server includes:
receiving a target bullet screen and a second result value returned by the server; when the number of the bullet screens in the bullet screen set is not greater than a preset bullet screen return upper limit, the target bullet screens are all the bullet screens acquired by the server from the bullet screen set, the second result value is the assignment of the server to the page turning field, and the second result value is used for representing that all the bullet screens in the bullet screen set have been returned to the client.
In one embodiment, the method further comprises:
and when the video playing progress of the bullet screen set when the playing is finished still belongs to the query time period, not sending a second issuing request to the server according to the second result value.
In one embodiment, the method further comprises:
and when the video playing progress of the target bullet screen after being played does not belong to the query time period any more, sending a third issuing request to the server, wherein the third issuing request carries a new query time period.
In one embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
According to a third aspect of the embodiments of the present disclosure, there is provided a bullet screen issuing device, including:
the system comprises a first receiving module, a first sending module and a second receiving module, wherein the first receiving module is configured to execute and receive a first sending request sent by a client, the first sending request carries a video identifier of a video file being played by the client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing playing time of the video file;
the first searching module is configured to search in a bullet screen database according to the video identifier and the query time period to obtain a bullet screen set corresponding to the video identifier and the query time period, wherein the bullet screen database comprises a corresponding relation of the video identifier, the query time period and the bullet screen;
the first bullet screen returning module is configured to execute the steps of obtaining a target bullet screen from the bullet screen set and returning the target bullet screen to the client, wherein the target bullet screen is a plurality of bullet screens which need to be returned to the client.
In one embodiment, the first bullet screen returning module is further configured to execute, when the number of bullet screens in the bullet screen set is greater than a preset bullet screen returning upper limit, acquiring, from the bullet screen set, target bullet screens whose number is equal to the bullet screen returning upper limit, and assigning a page turning field to be a first result value, where the first result value is used to inform the client that a bullet screen to be delivered is further included in the bullet screen set; and returning the target barrage and the first result value to the client, wherein the first result value is also used for indicating the client to send a second issuing request.
In one embodiment, each bullet screen in the bullet screens to be issued has an identifier; when the video playing progress of the target barrage when the target barrage finishes playing still belongs to the query time period, the device further comprises:
a second receiving module, configured to execute receiving of the second issuing request, where the second issuing request carries the query time period, the video identifier, and the first result value is used to represent an identifier of a target barrage that has been returned to the client;
the second searching module is configured to perform searching in the bullet screen database according to the video identifier and the query time period to obtain the bullet screen set;
the bullet screen set screening module is configured to perform screening from the bullet screen set according to the first result value to obtain the bullet screen to be issued;
and the second bullet screen returning module is configured to execute the steps of sequentially obtaining new target bullet screens from the bullet screens to be issued according to the identification of each bullet screen and returning the new target bullet screens to the client.
In one embodiment, the first bullet screen returning module is further configured to execute, when the number of bullet screens in the bullet screen set is not greater than a preset bullet screen returning upper limit, acquiring all bullet screens from the bullet screen set as the target bullet screens, and assigning the page turning field to a second result value; and returning the bullet screen set and the second result value to the client, wherein the second result value is used for informing the client that all bullet screens in the bullet screen set have been returned to the client.
In one embodiment, when the video playing progress of the bullet screen set after the playing still belongs to the query time period, the second result value is further used for indicating that the client does not send a second issuing request.
In one embodiment, the apparatus further comprises:
and the third receiving module is configured to receive a third issuing request sent by the client when the video playing progress of the target barrage after playing does not belong to the query time period any more, wherein the third issuing request carries a new query time period.
In one embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
According to a fourth aspect of the embodiments of the present disclosure, there is provided a bullet screen receiving device, including:
the system comprises a first sending module, a second sending module and a third sending module, wherein the first sending module is configured to execute sending of a first sending request to a server, the first sending request carries a video identifier of a video file being played by a client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing playing time of the video file;
the first receiving module is configured to execute receiving of a target barrage returned by the server, the target barrage is a plurality of barrages acquired by the server from a barrage set, the barrage set is a set formed by the barrage corresponding to the video identifier and the query time period, which is obtained by searching in a barrage database by the server according to the video identifier and the query time period, and the barrage database comprises the corresponding relation of the video identifier, the query time period and the barrage.
In one embodiment, the first receiving module is further configured to receive a target barrage returned by the server and a first result value; when the number of the bullet screens in the bullet screen set is greater than a preset bullet screen return upper limit, the target bullet screen is a plurality of bullet screens of which the number is equal to the bullet screen return upper limit and acquired by the server from the bullet screen set, the first result value is the assignment of the server to the page turning field, the first result value is used for representing that the bullet screens to be issued are further contained in the bullet screen set, and the first result value is also used for indicating the client to send a second issuing request.
In one embodiment, each bullet screen in the bullet screens to be delivered has an identifier, and the first result value is further used for representing the identifier of a target bullet screen which has been returned to the client; the bullet screen receiving arrangement still includes:
a second sending module, configured to send the second issuing request to the server when the video playing progress of the target barrage after playing still belongs to the query time period, where the second issuing request carries the query time period, the video identifier, and the first result value;
and the second receiving module is configured to execute receiving of a new target bullet screen returned by the server, wherein the new target bullet screen is obtained by the server according to the video identifier and the query time period, searching is performed in the bullet screen database to obtain the bullet screen set, the bullet screens are screened from the bullet screen set according to the first result value to obtain the bullet screens to be issued, and the bullet screens with preset bullet screen quantity are obtained from the bullet screens to be issued according to the identifiers of the bullet screens.
In one embodiment, the first receiving module is further configured to receive a target barrage returned by the server and a second result value; when the number of the bullet screens in the bullet screen set is not greater than a preset bullet screen return upper limit, the target bullet screens are all the bullet screens acquired by the server from the bullet screen set, the second result value is the assignment of the server to the page turning field, and the second result value is used for representing that all the bullet screens in the bullet screen set have been returned to the client.
In one embodiment, the barrage receiving apparatus further includes a third sending module, configured to execute not sending a second issuing request to the server according to the second result value when the video playing progress of the barrage collection after the playing still belongs to the query time period.
In one embodiment, the bullet screen receiving apparatus further includes a fourth sending module, configured to send a third issuing request to the server when the video playing progress of the target bullet screen after the playing does not belong to the query time period any more, where the third issuing request carries a new query time period.
In one embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
According to a fifth aspect of embodiments of the present disclosure, there is provided an electronic apparatus including:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the bullet screen issuing method or the bullet screen receiving method.
According to a sixth aspect of the embodiments of the present disclosure, there is provided a computer-readable storage medium, where instructions of the computer-readable storage medium, when executed by a processor of an electronic device, enable the electronic device to execute the bullet screen issuing method or the bullet screen receiving method as described above.
According to a seventh aspect of the embodiments of the present disclosure, a computer program product is provided, which includes a computer program, and when the computer program is executed by a processor, the bullet screen issuing method or the bullet screen receiving method described above is implemented.
The technical scheme provided by the embodiment of the disclosure at least brings the following beneficial effects:
the method comprises the steps that a first issuing request carrying a video identifier and a query time period is received, and the query time period is obtained by dividing the playing time of a video file; searching in a bullet screen database according to the video identification and the query time period to obtain a corresponding bullet screen set; therefore, the target bullet screen is obtained from the bullet screen set and returned to the client, the number of the bullet screens issued at each time is reduced, the occupation of the bullet screens to be played on the memory of the client is reduced, the occupation of the network bandwidth of the server is reduced, and the real-time performance of bullet screen playing is improved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
Fig. 1 is an application environment diagram illustrating a bullet screen issuing method according to an exemplary embodiment.
Fig. 2 is a flowchart illustrating a bullet screen issuing method according to an exemplary embodiment.
Fig. 3 is a flowchart illustrating step S230 according to an exemplary embodiment.
Fig. 4 is a flowchart illustrating a bullet screen issuing method according to an exemplary embodiment.
Fig. 5 is a flowchart illustrating a bullet screen issuing method according to an exemplary embodiment.
Fig. 6 is a flowchart illustrating a bullet screen issuing method according to an exemplary embodiment.
Fig. 7 is a flowchart illustrating a bullet screen receiving method according to an exemplary embodiment.
Fig. 8 is a flowchart illustrating a bullet screen receiving method according to an exemplary embodiment.
Fig. 9 is a timing diagram illustrating a bullet screen receiving method according to an exemplary embodiment.
Fig. 10 is a block diagram illustrating a bullet screen issuing device according to an exemplary embodiment.
Fig. 11 is a block diagram illustrating a bullet screen receiving device according to an exemplary embodiment.
FIG. 12 is a block diagram illustrating an electronic device in accordance with an example embodiment.
FIG. 13 is a block diagram illustrating a server in accordance with an exemplary embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
In the related art, the server issues the barrage in a full-time mode. When the client requests the barrage, the first N barrages are issued according to the sequencing result of the current barrage, the Nth barrage is displayed by the client, and the client requests the next group of barrages. For example, the user watches a video with a duration of 5 minutes from the beginning, and then the first N barrages are issued according to the barrage sorting result. The analysis shows that: the client displays the previous N barrages, and if the playing progress corresponding to the nth barrage is 5 minutes, the client requests the barrage from the server again, and the client is about to complete video playing, then if the barrages published by other users exist in the previous 5 minutes, the client cannot display the barrages, namely, the user of the client cannot view the barrages published by other users in the previous 5 minutes. Further, because the barrage is delivered in a full-time mode, the N barrages delivered each time may include some barrages whose playing progress is very late, and if the user interrupts the playing for some reason during the playing process, some barrages delivered to the memory of the client are not played, which results in unnecessary performance overhead at the client side. For example, the playing time of a certain video is 10 minutes, there are no barrages in the first 5 minutes, and there are 200 barrages in the last 5 minutes, assuming that the number of barrages requested each time is limited to 200, when starting playing, the client requests the barrages, and the client receives 200 barrages. When the video is played for 3 minutes, the user stops playing, only part of the 200 barrages are played at this time, and the rest barrages are not played but are sent to the memory of the client through the network, so that resources such as the memory of the client and the network bandwidth of the server are wasted.
Based on this, the bullet screen issuing method provided by the present disclosure may be applied to the application environment shown in fig. 1. Wherein the client 110 interacts with the server 120 through the network. The server 120 may be an electronic device with strong data storage and computation capability, for example, the server 120 may be implemented by an independent server or a server cluster composed of a plurality of servers. The client 110 may be, but is not limited to, various personal computers, laptops, smartphones, tablets, and portable wearable devices. The client 110 has an application with a video playing function installed and running, such as at least one of a browser, a social application, a live application, a shopping application, or a payment application. The video file is provided with a video identifier, and the video file has a playing time length, such as 1 minute, 3 minutes or 5 minutes or even longer. And carrying out time length division on the playing time length of the video file to obtain a plurality of query time periods. Each query time period includes a query time starting point time and a query time ending point time. And the query time end point time is equal to the sum of the query time start point time and a preset query duration threshold. For example, a 2-minute video file, the 2-minute video file is divided, and the query duration threshold may be 30 seconds, then the obtained time period may include: 0 to 30 seconds, 31 seconds to 60 seconds, 61 seconds to 90 seconds, 91 seconds to 120 seconds. It should be noted that the preset query duration threshold may be a query duration limited according to actual situations, for example, 30 seconds to 60 seconds, or 30 seconds, or 45 seconds, or 60 seconds is taken. The server 120 is deployed with a barrage database, where the barrage database includes a video identifier, an inquiry time period, and a corresponding relationship of barrages.
When the client 110 plays the video file, a first request for issuing a barrage is sent to the server 120, where the first request carries the video identifier of the video file being played by the client and the query time period to which the current playing progress belongs. The server 120 receives the first issuing request, and the server 120 searches in the bullet screen database according to the video identifier and the query time period to obtain a bullet screen set corresponding to the video identifier and the query time period, and obtains a target bullet screen from the bullet screen set, where the target bullet screen is a plurality of bullet screens that need to be returned to the client. The server 120 returns the target barrage to the client 110, and the client 110 plays the target barrage.
Fig. 2 is a flowchart illustrating a bullet screen issuing method according to an exemplary embodiment, where as shown in fig. 2, the bullet screen issuing method is used in the server 120 in fig. 1, and includes the following steps:
in step S210, a first transmission request sent by the client is received.
The first issuing request carries a video identifier of a video file being played by a client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing the playing time of the video file. The video file may have a bullet screen, which may be distributed at any play progress of the video file. The current playing progress of the video file played by the client can be understood as a playing time point, and the playing time point belongs to one of a plurality of query time periods of the video file. For example, a video file of 1 minute is divided, and if the query duration threshold may be 20 seconds, a plurality of query time periods are obtained, including: 0 to 20 seconds, 21 seconds to 40 seconds, 41 seconds to 60 seconds. If the video file is played for 45 seconds, the current playing progress is 45 seconds, and the current playing progress belongs to the query time period of 41 seconds to 60 seconds. Specifically, the client plays a video file, and if the video file has a bullet screen, the client sends a first issuance request of the bullet screen to the server, and in order to obtain the bullet screen issued at the current playing progress by the user from the server, the first issuance request not only needs to carry a video identifier of the video file being played, but also needs to carry an inquiry time period to which the current playing progress belongs.
In step S220, according to the video identifier and the query time period, a bullet screen database is searched to obtain a bullet screen set corresponding to the video identifier and the query time period.
The bullet screen database can be deployed at a server, and the table structure of the bullet screen database can comprise video identification, bullet screen position, bullet screen identification, bullet screen content and the like. The bullet screen position can be understood as the position of bullet screen on the video playback progress, that is to say the bullet screen that the user published when this video playback progress was played to the video, and bullet screen database stores the bullet screen content that the user published and the video playback progress that this bullet screen corresponds (promptly bullet screen position). The bullet screen content can be understood as information such as characters, pictures, expression packets and the like corresponding to the bullet screen, for example, "is two war of Thiessen and Douglas", "Ladek is also a hard Chinese character, and the live broadcast of the game at that time" and the like. Specifically, the server searches in the bullet screen database according to the video identifier and the query time period, and determines a bullet screen set in the query time period from the bullet screens corresponding to the video identifier. For example, if the current playing progress belongs to the query time period of 41 seconds to 60 seconds, the found bullet screen set may be a bullet screen set within the query time period of 41 seconds to 60 seconds, and may be understood as a set formed by the published bullet screens when any user watches the video content of the video file for 41 seconds to 60 seconds.
In step S230, a target bullet screen is obtained from the bullet screen set, and the target bullet screen is returned to the client.
The target barrage is a plurality of barrages needing to be returned to the client, and the client is used for playing the target barrage. Specifically, a bullet screen set corresponding to the query time period to which the current playing progress belongs is found from the bullet screen database, in order to ensure real-time property of bullet screen display (namely, see bullet screens published by other users in real time), a part of bullet screens or all bullet screens can be acquired from the bullet screen set to serve as target bullet screens, the target bullet screens are issued to the client, the client plays the target bullet screens, and the current user watching the video at the client can see the target bullet screens in the query time period. Illustratively, for example, the duration of each query time period is about 30 seconds, when the video is played for the 15 th second, a barrage of 0 to 30 seconds issued by the server is received, if the video content of the video after 30 seconds is watched by other users at that time, the barrage is issued at the playing progress, and when the current user watches the playing progress after 30 seconds (for example, 45 seconds, belonging to the query time period of 31 seconds to 60 seconds), the server issues the barrage issued by other users in the query time period to which the playing progress belongs in real time.
The bullet screen issuing method comprises the steps that a first issuing request carrying a video identifier and a query time period is received, and the query time period is obtained by dividing the playing time of a video file; searching in a bullet screen database according to the video identification and the query time period to obtain a corresponding bullet screen set; therefore, the target bullet screen is obtained from the bullet screen set and returned to the client, the number of the bullet screens issued at each time is reduced, the occupation of the bullet screens to be played on the memory of the client is reduced, the occupation of the network bandwidth of the server is reduced, and the real-time performance of bullet screen playing is improved.
In an exemplary embodiment, as shown in fig. 3, in step S230, a target barrage is obtained from the barrage set, and the target barrage is returned to the client, which may specifically be implemented by the following steps:
in step S310, when the number of the bullet screens in the bullet screen set is greater than the preset bullet screen return upper limit, target bullet screens whose number is equal to the bullet screen return upper limit are obtained from the bullet screen set, and the page turning field is assigned as the first result value.
The bullet screen return upper limit may be the maximum number of bullet screens issued by the server to the client each time, and may be set in combination with actual conditions such as performance parameters of the client and performance parameters of the server. If the upper limit of the bullet screen return is 200, the server side issues 200 bullet screens to the client side at most each time. Specifically, a bullet screen set corresponding to the query time period to which the current playing progress belongs is searched and obtained from a bullet screen database, the bullet screens of the bullet screen set have a certain number, and the number of the bullet screens in the bullet screen set is compared with a preset bullet screen return upper limit. The bullet screen quantity in the bullet screen set can be greater than predetermined bullet screen and return the upper limit, and the bullet screen quantity in the bullet screen set can equal to predetermined bullet screen and return the upper limit, and the bullet screen quantity in the bullet screen set can be less than predetermined bullet screen and return the upper limit.
If the number of the bullet screens in the bullet screen set is greater than the bullet screen return upper limit, it is indicated that the bullet screens in the bullet screen set cannot be all issued to the client at one time, and therefore page turning fields need to be set. And utilizing the page turning field to represent whether residual barrages (which serve as barrages to be delivered) exist in the barrage set besides the target barrages returned to the client. The page turn field may be understood as a field returned by the server to the client interface. And assigning values to the page turning fields according to the comparison result of the number of the bullet screens in the bullet screen set and the preset bullet screen return upper limit. And if the number of the bullet screens in the bullet screen set is larger than the bullet screen return upper limit, assigning the page turning field as a first result value. The first result value is used for representing that the bullet screens are still to be issued in the bullet screen set except the target bullet screen returned to the client.
In order to reduce the occupation of the memory of the client and limit the number of the barrages which are issued to the client by the server, the target barrages can be obtained from the barrage set corresponding to the query time period to which the current playing progress belongs according to the order of the barrage identifications, and the number of the target barrages is equal to the barrage return upper limit.
In step S320, the target bullet screen and the first result value are returned to the client.
And the first result value is also used for indicating the client to send a second issuing request. Specifically, the server searches for a bullet screen set in a bullet screen database, and obtains a target bullet screen from the bullet screen set. And if the number of the bullet screens in the bullet screen set is larger than the bullet screen return upper limit, the server assigns the page turning field to be a first result value. The server returns the target bullet screen and the first result value to the client, the client receives and plays the target bullet screen, and when the target bullet screen is played, the client is informed of the bullet screen to be issued in the bullet screen set except the target bullet screen returned to the client due to the first result value, so that the client can send a second issuing request to the server to pull the bullet screen to be issued.
In this implementation, through setting up the page turning field to the page turning field is assigned according to the bullet screen quantity in the bullet screen set and the comparison result that the preset bullet screen returns the upper limit, ensures that the client can draw the bullet screen to the server again, realizes the paging broadcast of bullet screen, plays the bullet screen as much as possible, strengthens the interactivity between with the user. And the upper limit is returned by setting the bullet screen, so that the influence on the performance of the client is reduced.
In an exemplary embodiment, each bullet screen in the bullet screens to be issued has an identifier. As shown in fig. 4, when the video playing progress of the target barrage after finishing playing still belongs to the query time period, the method further includes:
in step S410, a second issue request is received.
In step S420, the barrage database is still searched according to the video identifier and the query time period, so as to obtain a barrage set.
The second issuing request carries a query time period, a video identifier and a first result value, and the first result value is used for representing the identifier of the target barrage returned to the client. Specifically, if the number of the bullet screens in the bullet screen set is greater than the bullet screen return upper limit, the page turning field is assigned as the first result value. And after the server returns the target bullet screen and the first result value to the client, the client receives and plays the target bullet screen. When the target barrage is played, the client side is informed of the barrage waiting to be delivered in the barrage set except the target barrage returned to the client side by the first result value, so that the client side can send a second delivery request to the server side, and the server side receives the second delivery request. The second issuing request carries the first result value, the query time period and the video identifier. And the server searches in the bullet screen database according to the video identification and the query time period to obtain a bullet screen set corresponding to the video identification and the query time period.
In step S430, a bullet screen to be delivered is obtained by screening from the bullet screen set according to the first result value.
And the rest barrage is other barrages except the target barrage returned to the client in the barrage set. Specifically, the first result value may inform the server of which bullet screens the target bullet screens returned to the client are, so that the target bullet screens returned to the client are filtered according to the first result value, and a bullet screen set formed by the rest bullet screens is obtained.
In step S440, new target barrages are sequentially obtained from the barrages to be delivered according to the identifiers of the respective barrages, and the new target barrages are returned to the client.
The number of the bullet screens to be issued can be greater than the bullet screen return upper limit and can be smaller than the bullet screen return upper limit. Specifically, the bullet screens in the bullet screen database may be stored according to a preset sequence (for example, the bullet screen sending time), and similarly, the bullet screens in the bullet screens to be delivered may be stored according to the preset sequence. And each bullet screen in the bullet screens to be issued is provided with an identifier, and a new target bullet screen is obtained from the bullet screens to be issued according to the identifier of each bullet screen. And if the number of the bullet screens to be issued is larger than the bullet screen return upper limit, the server acquires the bullet screens with the number equal to the bullet screen return upper limit from the bullet screens to be issued as new target bullet screens. And if the number of the bullet screens to be issued is less than the bullet screen return upper limit, the server takes the bullet screens to be issued as new target bullet screens. And the server returns the new target bullet screen to the client, the client receives the new target bullet screen, and further the client can play the new target bullet screen.
In this embodiment, if the number of the bullet screens in the bullet screen set is greater than the bullet screen return upper limit, after the target bullet screen is returned to the client, the bullet screens are screened from the bullet screen set according to the first result value to obtain the bullet screen to be issued; and sequentially acquiring new target bullet screens from the bullet screens to be issued according to the identification of each bullet screen, and returning the new target bullet screens to the client. Therefore, the embodiment realizes that the searched bullet screen set is delivered to the client in multiple pages, and on the premise of reducing the performance overhead of the client, the client is ensured to play more bullet screens, so that the interactivity with the user is enhanced.
In an exemplary embodiment, as shown in fig. 5, acquiring a target bullet screen from a bullet screen set and returning the target bullet screen to a client includes the following steps:
in step S510, when the number of bullet screens in the bullet screen set is not greater than the preset bullet screen return upper limit, all bullet screens are acquired from the bullet screen set as target bullet screens, and the page turning field is assigned as the second result value.
In step S520, the bullet screen set and the second result value are returned to the client.
And the second result value is used for informing the client that all the bullet screens in the bullet screen set have been returned to the client. Specifically, the server compares the number of the bullet screens in the bullet screen set with a preset bullet screen return upper limit, and if the number of the bullet screens in the bullet screen set is not greater than the bullet screen return upper limit, it is indicated that each bullet screen in the bullet screen set can be issued to the client, and all bullet screens are acquired from the bullet screen set and serve as target bullet screens. And setting a value of the page turning field to represent that no other barrage exists in the barrage set except the target barrage returned to the client, namely assigning the page turning field as a second result value to inform the client that all the barrages in the barrage set have been returned to the client through the second result value.
In this embodiment, if the number of the bullet screens in the bullet screen set is not greater than the bullet screen return upper limit, the page turning field is assigned as the second result value, and the bullet screen set and the second result value are returned to the client. And informing the client that the second issuing request is not sent to the server any more through the second result value, so that the client is prevented from sending the issuing request to the server under the condition that the server issues all the barrages in the query time period, and the occupation of bandwidth resources of the server is further reduced.
In an exemplary embodiment, if the video playing progress of the bullet screen set when the playing is completed still belongs to the query time period, the second result value is further used to indicate that the client does not send the second issuing request.
Specifically, the server returns the bullet screen set and the second result value to the client, and the client receives the bullet screen set and plays the bullet screen set. And when the bullet screen set is played, judging whether the video playing progress of the client belongs to the query time period, if so, if not, the client does not send a second issuing request to the server according to a second result value when the bullet screen set is played. For example, the second result value may be a preset value, such as 0. And if the client detects that the assignment of the page turning field is 0, the client does not send a second issuing request to the server any more when the bullet screen set is played.
In this embodiment, if the video playing progress when the bullet screen set finishes playing still belongs to the query time period, the client is instructed not to send the second issuing request through the second result value, so that not only is the occupation of bandwidth resources of the server reduced, but also the performance overhead of the client is further reduced, and the smoothness of the operation of the client is ensured.
In an exemplary embodiment, the method further comprises: and when the video playing progress of the target bullet screen after playing does not belong to the query time period any more, receiving a third issuing request sent by the client, wherein the third issuing request carries a new query time period.
The client receives and plays the target barrage, judges whether the video playing progress of the target barrage when the target barrage is played belongs to the query time period used by the last query or not when the target barrage is played, and if not, the client can pull the barrage corresponding to the new query time period from the server. Specifically, if the video playing progress of the target bullet screen after playing does not belong to the query time period any more, the client sends a third issuing request to the server, and the server receives the third issuing request, where the third issuing request carries a new query time period to which the video playing progress belongs and the video identifier. The server can search in the bullet screen database according to the new query time period and the video identification to obtain a new bullet screen set. The bullet screen position of the new bullet screen set is located in the new query time period. The target bullet screen in the new query time period can be obtained from the new bullet screen set, and the client receives and plays the target bullet screen in the new query time period.
In this embodiment, if the video playing progress of the target barrage when the playing is completed does not belong to the query time period any more, the third issuing request sent by the client is received, so that it is ensured that the barrage released by other users is pulled in real time when the user views the subsequent playing progress, and the fitting performance of the playing state of the barrage and the video playing progress and the real-time performance of the barrage are improved.
In an exemplary embodiment, when the video playing progress of the target barrage when the playing is completed does not belong to the query time period any more, if an unplayed barrage still exists in the barrage set corresponding to the query time period, the unplayed barrage is not issued to the client, so that the correspondence between the played barrage and the video playing progress can be ensured, and the user experience is improved.
In an exemplary embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
The video file has playing duration, the playing duration of the video file is divided to obtain a plurality of query time periods, and the query time periods correspond to the playing progress of the video file. As mentioned above, the query duration threshold may be set according to actual conditions. Specifically, the query time period includes a query time starting point time and a query time ending point time, and the query time starting point time (posinfromincrement) may correspond to a play progress at a first time point in the video file, as a starting point of the query time period. The query time end time (position to include) may correspond to the playing progress at a second time point in the video file, and the first time point is earlier than the second time point as the end point of the query time period. And the query time end point time is equal to the sum of the query time start point time and a preset query duration threshold.
In the embodiment, the playing time of the video file is divided to obtain a plurality of query time periods, the query time end point time is equal to the sum of the query time starting point time and a preset query time threshold, the corresponding relation between the query time periods and the video playing progress is established, accurate control of drawing the bullet screen from the server side is achieved, and the real-time performance of bullet screen playing is ensured. Further, compared with a full-time mode in the related art, the number of bullet screens in the query time period is small in the embodiment, and occupation of the bullet screens on the memory of the client can be reduced.
Fig. 6 is a flowchart illustrating a bullet screen issuing method according to an exemplary embodiment, where as shown in fig. 6, the bullet screen issuing method is used in the server 120 in fig. 1, and the method includes the following steps:
in step S602, a first transmission request sent by the client is received.
The first issuing request carries a video identifier of a video file being played by the client and a query time period to which the current playing progress belongs. The query time period is obtained by dividing the playing time of the video file. The query time period comprises a query time starting point moment and a query time ending point moment, and the query time ending point moment is equal to the sum of the query time starting point moment and a preset query duration threshold.
In step S604, according to the video identifier and the query time period, a bullet screen database is searched to obtain a bullet screen set corresponding to the video identifier and the query time period.
In step S606, the number of bullet screens in the bullet screen set is compared with a preset bullet screen return upper limit.
In step S608, if the number of the bullet screens in the bullet screen set is greater than the bullet screen return upper limit, the page turning field is assigned as the first result value.
The first result value is used for informing the client that the bullet screen set also comprises bullet screens to be issued.
In step S610, from the set of bullet screens, target bullet screens whose number is equal to the bullet screen return upper limit are acquired.
In step S612, the target bullet screen and the first result value are returned to the client.
The client is used for sending a second issuing request when the target barrage is played, and the second issuing request carries the first result value.
In step S614, a second issuing request sent by the client is received when the video playing progress of the target barrage after playing still belongs to the query time period.
The second issuing request carries a query time period, a video identifier and a first result value, and the first result value is used for representing the identifier of the target barrage returned to the client.
In step S616, the barrage database is still searched according to the video identifier and the query time period, so as to obtain a barrage set.
In step S618, a bullet screen to be delivered is obtained by screening from the bullet screen set according to the first result value.
In step S620, new target bullet screens are sequentially obtained from the bullet screens to be delivered according to the identifier of each bullet screen, and the new target bullet screens are returned to the client.
And the client is also used for playing a new target bullet screen.
In step S622, when the number of bullet screens in the bullet screen set is not greater than the preset bullet screen return upper limit, all bullet screens are acquired from the bullet screen set as target bullet screens, and the page turning field is assigned as the second result value.
And the second result value is used for informing the client that all the bullet screens in the bullet screen set have been returned to the client.
In step S624, the bullet screen set and the second result value are returned to the client.
If the video playing progress of the target bullet screen when the playing is finished still belongs to the query time period, the client does not send the second issuing request according to the second result value when the playing of the bullet screen set is finished.
In step S626, when the video playing progress of the target bullet screen after finishing playing does not belong to the query time period, a third issuing request sent by the client is received.
The video playing progress of the client when the target barrage is played belongs to a new query time period, and the third issuing request carries the new query time period and the video identification.
In this embodiment, a plurality of query time periods are obtained by dividing the playing duration of a video file, a target bullet screen corresponding to a video identifier and the query time periods is obtained from a bullet screen set, the target bullet screen is returned to a client, the delivery of each bullet screen in the bullet screen set at a server is realized, the number of bullet screens delivered at each time is reduced, the occupation of network bandwidth of the server is reduced, the playing of the bullet screens at the client is realized, the bullet screens are played as many as possible, the occupation of the bullet screens to be played on the memory of the client is reduced, and the real-time performance of bullet screen playing is improved.
Fig. 7 is a flowchart illustrating a bullet screen receiving method according to an exemplary embodiment, where as shown in fig. 7, the bullet screen receiving method is used in the client 110 in fig. 1, and includes the following steps:
in step S710, a first request to send is sent to the server.
In step S720, a target bullet screen returned by the server is received.
The first issuing request carries a video identifier of a video file being played by a client and an inquiry time period to which a current playing progress belongs, the inquiry time period is obtained by dividing the playing duration of the video file, a target barrage is a plurality of barrages acquired by a server from a barrage set, the barrage set is a set formed by barrages which are searched in a barrage database by the server according to the video identifier and the inquiry time period and correspond to the video identifier and the inquiry time period, and the barrage database comprises corresponding relations of the video identifier, the inquiry time period and the barrage.
Specifically, the client plays the video file, and if the video file has a bullet screen, the client sends a first issuing request of the bullet screen to the server. And the server searches in the bullet screen database according to the video identification and the query time period, and determines a bullet screen set in the query time period in the bullet screen corresponding to the video identification. In order to ensure the real-time property of bullet screen display (namely, see the bullet screens released by other users in real time), the server acquires part of bullet screens or all bullet screens from the bullet screen set as target bullet screens. And the server returns the query result to the client, and the client receives the query result, wherein the query result comprises the target bullet screen of the query time period. Further, the client may play the target barrage, and a current user watching the video at the client side may see the target barrage of the query time period in real time.
In the bullet screen receiving method, the client can play the target bullet screen by sending the first sending request to the server and receiving the target bullet screen returned by the server. The method and the device can reduce the occupation of the bullet screen to be played on the memory of the client, save the bandwidth resource occupied by the server when issuing the bullet screen, and improve the real-time performance of bullet screen playing.
In an exemplary embodiment, receiving a target barrage returned by a server includes: and receiving the target bullet screen and the first result value returned by the server.
When the number of the bullet screens in the bullet screen set is greater than the preset bullet screen return upper limit, the target bullet screen is a plurality of bullet screens of which the number is equal to the bullet screen return upper limit and acquired from the bullet screen set by the server, the first result value is assigned to the page turning field by the server, the first result value is used for representing that the bullet screens to be issued are further included in the bullet screen set, and the first result value is also used for indicating the client to send a second issuing request.
Specifically, the bullet screens of the bullet screen set have a certain number, and the number of the bullet screens in the bullet screen set is compared with a preset bullet screen return upper limit. The bullet screen quantity in the bullet screen set can be greater than predetermined bullet screen and return the upper limit, and the bullet screen quantity in the bullet screen set can equal to predetermined bullet screen and return the upper limit, and the bullet screen quantity in the bullet screen set can be less than predetermined bullet screen and return the upper limit. If the number of the bullet screens in the bullet screen set is greater than the bullet screen return upper limit, it is indicated that the bullet screens in the bullet screen set cannot be all issued to the client at one time, and the bullet screens in the bullet screen set need to be issued for multiple times, so that a page turning field needs to be set. And utilizing the page turning field to represent whether other barrages exist in the barrage set besides the target barrage returned to the client. It should be noted that the page turning field can be understood as a field provided by the server to the client interface for returning. And if the number of the bullet screens in the bullet screen set is larger than the bullet screen return upper limit, the server assigns the page turning field to be a first result value.
The server returns the target barrage and the first result value to the client, the client can receive and play the target barrage, and the client can send a second sending request to the server according to the first result value to pull the barrage to be sent as the first result value informs the client that other barrages to be sent are available in the barrage set besides the target barrage returned to the client.
In the implementation, the page turning field is set, the page turning field is assigned according to the comparison result of the number of the bullet screens in the bullet screen set and the preset bullet screen return upper limit, and the value of the page turning field indicates whether the client sends the request to the server again to pull the bullet screen, so that the page turning playing of the bullet screens in the bullet screen set is realized, the bullet screens are played as much as possible, and the interactivity between the bullet screen set and the user is enhanced. And the upper limit is returned by setting the bullet screen, so that the influence of the bullet screen on the performance of the client is reduced.
In an exemplary embodiment, each bullet screen in the bullet screens to be delivered has an identifier, and the first result value is further used for representing the identifier of the target bullet screen which has been returned to the client. The method further comprises the following steps: and when the video playing progress of the target bullet screen after being played still belongs to the query time period, sending a second issuing request to the server, and receiving a new target bullet screen returned by the server.
The second issuing request carries an inquiry time period, a video identifier and a first result value, the new target barrage is obtained by searching in a barrage database according to the video identifier and the inquiry time period by the server, a barrage set is obtained, the barrages to be issued are obtained by screening from the barrage set according to the first result value, and the barrages with the preset number of the barrages are obtained from the barrages to be issued in sequence according to the identifiers of the barrages.
Specifically, if the number of the bullet screens in the bullet screen set is greater than the bullet screen return upper limit, the page turning field is assigned as the first result value. And the server returns the target bullet screen and the first result value to the client, and the client receives and plays the target bullet screen. The client side can judge whether the video playing progress belongs to the query time period or not when the target barrage finishes playing, and if the video playing progress belongs to the query time period, the client side sends a second issuing request to the server side. The second issuing request carries the first result value, the query time period and the video identifier. Therefore, the server searches in the bullet screen database according to the video identification and the query time period, and determines a bullet screen set in the query time period in the bullet screen corresponding to the video identification. And the first result value is used for representing the identifier of the target barrage returned to the client, that is, the first result value can inform the server of which barrages the target barrages returned to the client are, so that the server screens the barrage set according to the first result value, filters the target barrages returned to the client, and obtains the barrages to be delivered, which are formed by other barrages again. The bullet screen to be issued can be understood as other bullet screens in the bullet screen set except for the target bullet screen returned to the client.
It should be noted that, if the number of the bullet screens to be delivered is greater than the bullet screen return upper limit, the server obtains the target bullet screens whose number is equal to the bullet screen return upper limit from the bullet screens to be delivered. And if the number of the bullet screens to be issued is less than the bullet screen return upper limit, the server takes the bullet screens to be issued as new target bullet screens. And then, the server returns the new target bullet screen to the client, and the client receives and plays the new target bullet screen.
In an exemplary embodiment, receiving a target barrage returned by a server includes: and receiving the target bullet screen and the second result value returned by the server.
When the number of the bullet screens in the bullet screen set is not greater than the preset bullet screen return upper limit, the target bullet screen is all the bullet screens acquired by the server from the bullet screen set, the second result value is the assignment of the server to the page turning field, and the second result value is used for representing that all the bullet screens in the bullet screen set have been returned to the client.
Specifically, the server compares the number of the bullet screens in the bullet screen set with a preset bullet screen return upper limit, and if the number of the bullet screens in the bullet screen set is not greater than the bullet screen return upper limit, it is indicated that each bullet screen in the bullet screen set can be issued to the client, and all bullet screens are acquired from the bullet screen set and serve as target bullet screens. And setting a value of the page turning field to represent that no other barrage exists in the barrage set except the target barrage returned to the client, namely assigning the page turning field as a second result value to inform the client that all the barrages in the barrage set have been returned to the client through the second result value. Therefore, the server returns the target bullet screen and the second result value to the client, and the client receives the target bullet screen and the second result value.
In this embodiment, if the number of the bullet screens in the bullet screen set is not greater than the bullet screen return upper limit, the server assigns the page turning field to be the second result value, and returns the second result value to the client. And informing the client that the second issuing request is not sent to the server any more through the second result value, so that the client is prevented from sending the issuing request to the server under the condition that the server issues all the barrages in the query time period, and the occupation of bandwidth resources of the server is further reduced.
In an exemplary embodiment, when the video playing progress of the bullet screen set after the bullet screen set finishes playing still belongs to the query time period, a second issuing request is not sent to the server according to a second result value.
And the second result value is used for representing that no bullet screen to be issued is left in the bullet screen set except the target bullet screen returned to the client, and the bullet screen set is the target bullet screen. Specifically, if the number of the bullet screens in the bullet screen set is not greater than the bullet screen return upper limit, it is indicated that all the bullet screens in the bullet screen set have been delivered to the client. And setting a page turning field as a second result value. The server takes the bullet screen set as a target bullet screen, returns the bullet screen set and the second result value to the client, and receives the bullet screen set and the second result value. The client side judges whether the video playing progress of the bullet screen set when the bullet screen set is played belongs to the query time period, if so, the client side does not send a second issuing request to the server side any more according to a second result value when the bullet screen set is played because the second result value shows that no bullet screen to be issued exists in the query time.
In this embodiment, if the number of the bullet screens in the bullet screen set is not greater than the bullet screen return upper limit, the client receives the bullet screen set returned by the server, and when the video playing progress of the bullet screen set when the playing is completed still belongs to the query time period, the client does not send the second issuing request to the server any more, thereby further reducing the occupation of bandwidth resources of the server, reducing the performance overhead of the client, and ensuring the smoothness of the operation of the client.
In an exemplary embodiment, the method further comprises: and when the video playing progress of the target bullet screen after playing does not belong to the query time period any more, sending a third issuing request to the server, wherein the third issuing request carries a new query time period.
Specifically, the client receives and plays the target barrage, and when the target barrage is played, whether the video playing progress of the target barrage in the playing process belongs to the query time period used by the last query is judged, and if the video playing progress does not belong to the query time period, the video playing progress is shown to belong to a new query time period, and the client can pull the barrage corresponding to the new query time period to the server. And the client sends a third issuing request to the server, and the server receives the third issuing request, wherein the third issuing request carries a new query time period and a video identifier to which the video playing progress belongs. The server can search in the bullet screen database according to the new query time period and the video identification to obtain a new bullet screen set. The bullet screen position of the new bullet screen set is located in the new query time period.
In this embodiment, if the video playing progress of the target barrage after playing does not belong to the query time period any more, the third issuing request is sent to the server, so as to ensure that the barrage released by other users is pulled in real time when the user views the subsequent playing progress.
In an exemplary embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
The video file has playing duration, the playing duration of the video file is divided to obtain a plurality of query time periods, and the query time periods correspond to the playing progress of the video file. As mentioned above, the query duration threshold may be set according to actual conditions. Specifically, the query time period includes a query time starting point time and a query time ending point time, and the query time starting point time (posinfromincrement) may correspond to a play progress at a first time point in the video file, as a starting point of the query time period. The query time end time (position to include) may correspond to the playing progress at a second time point in the video file, and the first time point is earlier than the second time point as the end point of the query time period. And the query time end point time is equal to the sum of the query time start point time and a preset query duration threshold.
In the embodiment, the playing time of the video file is divided to obtain a plurality of query time periods, the query time end point time is equal to the sum of the query time starting point time and a preset query time threshold, the corresponding relation between the query time periods and the video playing progress is established, accurate control of drawing the bullet screen from the server side is achieved, and the real-time performance of bullet screen playing is ensured. Further, compared with a full-time mode in the related art, the number of bullet screens in the query time period is small in the embodiment, and occupation of the bullet screens on the memory of the client can be reduced.
Fig. 8 is a flowchart illustrating a bullet screen receiving method according to an exemplary embodiment, where as shown in fig. 8, the bullet screen receiving method is used in the client 110 in fig. 1, and includes the following steps:
in step S802, a first request to send is sent to the server.
The first issuing request carries a video identifier of a video file being played by a client and a query time period to which a current playing progress belongs, the query time period is obtained by dividing the playing duration of the video file, the bullet screen set is a set formed by bullet screens corresponding to the video identifier and the query time period, which are searched in a bullet screen database by a server according to the video identifier and the query time period, and the bullet screen database comprises the corresponding relation of the video identifier, the query time period and the bullet screens.
In step S804, the target bullet screen and the first result value returned by the server are received.
When the number of the bullet screens in the bullet screen set is larger than the preset bullet screen return upper limit, the target bullet screen is a plurality of bullet screens, the number of which is equal to the bullet screen return upper limit, acquired by the server from the bullet screen set. The first result value is the assignment of the server to the page turning field, and the first result value is used for representing that the bullet screen set also comprises bullet screens to be issued; each bullet screen in the bullet screens to be issued has an identifier, and the first result value is also used for representing the identifier of the target bullet screen returned to the client.
In step S806, when the video playing progress of the target barrage after the target barrage finishes playing still belongs to the query time period, a second issuing request is sent to the server according to the first result value.
The second issuing request carries the query time period, the video identifier and the first result value.
In step S808, a new target barrage returned by the server is received.
The new target barrage is that the server side still searches in the barrage database according to the video identification and the query time period to obtain the barrage set, the barrage set is screened according to the first result value to obtain the barrage to be issued, and the barrages with preset barrage quantity are obtained from the barrages to be issued according to the identifications of the barrages.
In step S810, a target bullet screen and a second result value returned by the server are received.
When the number of the bullet screens in the bullet screen set is not greater than the preset bullet screen return upper limit, the target bullet screen is all the bullet screens acquired by the server from the bullet screen set, the second result value is the assignment of the server to the page turning field, and the second result value is used for representing that all the bullet screens in the bullet screen set have been returned to the client.
In step S812, when the video playing progress of the bullet screen set when the playing is completed still belongs to the query time period, a second issuing request is not sent to the server according to the second result value.
In step S814, when the video playing progress of the target barrage after playing does not belong to the query time period any more, a third issuing request is sent to the server, where the third issuing request carries a new query time period.
In this embodiment, a plurality of query time periods are obtained by dividing the playing duration of a video file, a target bullet screen corresponding to a video identifier and the query time periods is obtained from a bullet screen set, the target bullet screen is returned to a client, the delivery of each bullet screen in the bullet screen set at a server is realized, the number of bullet screens delivered at each time is reduced, the occupation of network bandwidth of the server is reduced, the playing of the bullet screens at the client is realized, the bullet screens are played as many as possible, the occupation of the bullet screens to be played on the memory of the client is reduced, and the real-time performance of bullet screen playing is improved.
Fig. 9 is a timing diagram illustrating a bullet screen receiving method according to an exemplary embodiment, as shown in fig. 9, including the following steps:
in step S902, the client sends a first request to the server.
The first issuing request carries a video identifier of a video file being played by a client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing the playing time of the video file.
In step S904, the server searches in the bullet screen database according to the video identifier and the query time period, and obtains a bullet screen set corresponding to the video identifier and the query time period.
In step S906, the server acquires a target bullet screen from the bullet screen set.
Specifically, the number of bullet screens in the bullet screen set is compared with a preset bullet screen return upper limit. And if the number of the bullet screens in the bullet screen set is larger than the bullet screen return upper limit, assigning the page turning field as a first result value. And acquiring target bullet screens with the quantity equal to the bullet screen return upper limit from the bullet screen set.
In step S908, the server returns the client query result.
And the query result comprises a target bullet screen and a first result value.
In step S910, the client plays the target bullet screen.
In step S912, it is determined whether the video playing progress when the target barrage finishes playing belongs to the query time period;
in step S914, if the video playing progress still belongs to the query time period, a second issuing request is sent to the server when the target barrage finishes playing.
The second issuing request also carries a query time period and a video identifier.
In step S916, the server still searches in the bullet screen database according to the video identifier and the query time period, so as to obtain a bullet screen set.
In step S918, the server filters the bullet screen set according to the first result value to obtain a bullet screen to be delivered.
And the bullet screens to be issued are other bullet screens in the bullet screen set except the target bullet screen returned to the client.
In step S920, the server obtains a new target bullet screen from the bullet screens to be delivered.
Specifically, new target bullet screens are sequentially obtained from bullet screens to be issued according to the identification of each bullet screen, and the new target bullet screens are returned to the client. And if the number of the bullet screens in the bullet screens to be issued is greater than the bullet screen return upper limit, acquiring target bullet screens with the number equal to the bullet screen return upper limit from the bullet screens to be issued, and taking the target bullet screens as new target bullet screens. And if the number of the bullet screens in the bullet screen to be issued is less than the bullet screen return upper limit, taking the bullet screen to be issued as a new target bullet screen.
In step S922, the server returns the new target barrage to the client.
In step S924, the client plays the new target barrage.
In this embodiment, a plurality of query time periods are obtained by dividing the playing duration of a video file, a target bullet screen corresponding to a video identifier and the query time periods is obtained from a bullet screen set, the target bullet screen is returned to a client, the delivery of each bullet screen in the bullet screen set at a server is realized, the number of bullet screens delivered at each time is reduced, the occupation of network bandwidth of the server is reduced, the playing of the bullet screens at the client is realized, the bullet screens are played as many as possible, the occupation of the bullet screens to be played on the memory of the client is reduced, and the real-time performance of bullet screen playing is improved.
It should be understood that, although the steps in the above-described flowcharts are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a part of the steps in the above-mentioned flowcharts may include a plurality of steps or a plurality of stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of performing the steps or the stages is not necessarily performed in sequence, but may be performed alternately or alternately with other steps or at least a part of the steps or the stages in other steps.
Fig. 10 is a block diagram illustrating a bullet screen issuing device according to an exemplary embodiment. Referring to fig. 10, the query apparatus 1000 includes a first receiving module 1002, a first searching module 1004 and a first bullet screen returning module 1006.
A first receiving module 1002, configured to execute receiving a first sending request sent by a client, where the first sending request carries a video identifier of a video file being played by the client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing playing time lengths of the video file;
a first search module 1004 configured to perform search in a bullet screen database according to the video identifier and the query time period to obtain a bullet screen set corresponding to the video identifier and the query time period, where the bullet screen database includes a correspondence relationship between the video identifier, the query time period, and a bullet screen;
a first bullet screen returning module 1006, configured to execute obtaining a target bullet screen from the bullet screen set, and return the target bullet screen to the client, where the target bullet screen is a plurality of bullet screens that need to be returned to the client.
In an exemplary embodiment, the first bullet screen returning module is further configured to execute, when the number of bullet screens in the bullet screen set is greater than a preset bullet screen returning upper limit, acquiring, from the bullet screen set, target bullet screens whose number is equal to the bullet screen returning upper limit, and assigning a page turning field as a first result value, where the first result value is used to inform that the client further includes a bullet screen to be delivered in the bullet screen set; and returning the target barrage and the first result value to the client, wherein the first result value is also used for indicating the client to send a second issuing request.
In an exemplary embodiment, each bullet screen in the bullet screens to be issued has an identifier; when the video playing progress of the target barrage when the target barrage finishes playing still belongs to the query time period, the device further comprises:
a second receiving module, configured to execute receiving of the second issuing request, where the second issuing request carries the query time period, the video identifier, and the first result value is used to represent an identifier of a target barrage that has been returned to the client;
the second searching module is configured to perform searching in the bullet screen database according to the video identifier and the query time period to obtain the bullet screen set;
the bullet screen set screening module is configured to perform screening from the bullet screen set according to the first result value to obtain the bullet screen to be issued;
and the second bullet screen returning module is configured to execute the steps of sequentially obtaining new target bullet screens from the bullet screens to be issued according to the identification of each bullet screen and returning the new target bullet screens to the client.
In an exemplary embodiment, the first bullet screen returning module is further configured to execute, when the number of bullet screens in the bullet screen set is not greater than a preset bullet screen returning upper limit, acquiring all bullet screens from the bullet screen set as the target bullet screens, and assigning the page turning field to a second result value; and returning the bullet screen set and the second result value to the client, wherein the second result value is used for informing the client that all bullet screens in the bullet screen set have been returned to the client.
In an exemplary embodiment, when the video playing progress of the bullet screen set when the playing is completed still belongs to the query time period, the second result value is further used to indicate that the client does not send a second issuing request.
In an exemplary embodiment, the apparatus further comprises:
and the third receiving module is configured to receive a third issuing request sent by the client when the video playing progress of the target barrage after playing does not belong to the query time period any more, wherein the third issuing request carries a new query time period.
In an exemplary embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
Fig. 11 is a block diagram illustrating a bullet screen receiving device according to an exemplary embodiment. Referring to fig. 11, the receiving apparatus 1100 includes a first transmitting module 1102 and a first receiving module 1104.
A first sending module 1102, configured to execute sending a first sending request to a server, where the first sending request carries a video identifier of a video file being played by a client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing playing time lengths of the video file;
the first receiving module 1104 is configured to execute receiving of a target barrage returned by the server, where the target barrage is a plurality of barrages acquired by the server from a barrage set, the barrage set is a set formed by barrages which are searched in a barrage database by the server according to the video identifier and the query time period, and the barrage database includes a corresponding relationship between the video identifier, the query time period, and the barrage.
In an exemplary embodiment, the first receiving module is further configured to perform receiving a target barrage returned by the server and a first result value; when the number of the bullet screens in the bullet screen set is greater than a preset bullet screen return upper limit, the target bullet screen is a plurality of bullet screens of which the number is equal to the bullet screen return upper limit and acquired by the server from the bullet screen set, the first result value is the assignment of the server to the page turning field, the first result value is used for representing that the bullet screens to be issued are further contained in the bullet screen set, and the first result value is also used for indicating the client to send a second issuing request.
In an exemplary embodiment, each bullet screen in the bullet screens to be delivered has an identifier, and the first result value is further used for representing the identifier of a target bullet screen that has been returned to the client; the bullet screen receiving arrangement still includes:
a second sending module, configured to send the second issuing request to the server when the video playing progress of the target barrage after playing still belongs to the query time period, where the second issuing request carries the query time period, the video identifier, and the first result value;
and the second receiving module is configured to execute receiving of a new target bullet screen returned by the server, wherein the new target bullet screen is obtained by the server according to the video identifier and the query time period, searching is performed in the bullet screen database to obtain the bullet screen set, the bullet screens are screened from the bullet screen set according to the first result value to obtain the bullet screens to be issued, and the bullet screens with preset bullet screen quantity are obtained from the bullet screens to be issued according to the identifiers of the bullet screens.
In an exemplary embodiment, the first receiving module is further configured to perform receiving a target barrage and a second result value returned by the server; when the number of the bullet screens in the bullet screen set is not greater than a preset bullet screen return upper limit, the target bullet screens are all the bullet screens acquired by the server from the bullet screen set, the second result value is the assignment of the server to the page turning field, and the second result value is used for representing that all the bullet screens in the bullet screen set have been returned to the client.
In an exemplary embodiment, the barrage receiving apparatus further includes a third sending module, configured to execute not sending a second issuing request to the server according to the second result value when the video playing progress of the barrage collection after the playing still belongs to the query time period.
In an exemplary embodiment, the barrage receiving apparatus further includes a fourth sending module, configured to send a third delivery request to the server when the video playing progress of the target barrage after the target barrage finishes playing does not belong to the query time period any more, where the third delivery request carries a new query time period.
In an exemplary embodiment, the query time period includes a query time starting time and a query time ending time, and the query time ending time is equal to the sum of the query time starting time and a preset query time duration threshold.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Fig. 12 is a block diagram illustrating an apparatus 1200 for barrage reception, according to an example embodiment. For example, the device 1200 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a gaming console, a tablet device, a medical device, a fitness device, a personal digital assistant, and so forth.
Referring to fig. 12, device 1200 may include one or more of the following components: processing component 1202, memory 1204, power component 1206, multimedia component 1208, audio component 1210, input/output (I/O) interface 1212, sensor component 1214, and communications component 1216.
The processing component 1202 generally controls overall operation of the device 1200, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing components 1202 may include one or more processors 1220 to execute instructions to perform all or a portion of the steps of the methods described above. Further, the processing component 1202 can include one or more modules that facilitate interaction between the processing component 1202 and other components. For example, the processing component 1202 can include a multimedia module to facilitate interaction between the multimedia component 1208 and the processing component 1202.
The memory 1204 is configured to store various types of data to support operation at the device 1200. Examples of such data include instructions for any application or method operating on device 1200, contact data, phonebook data, messages, pictures, videos, and so forth. The memory 1204 may be implemented by any type or combination of volatile or non-volatile storage devices such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks.
A power supply component 1206 provides power to the various components of the device 1200. Power components 1206 may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for device 1200.
The multimedia components 1208 include a screen that provides an output interface between the device 1200 and a user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 1208 includes a front facing camera and/or a rear facing camera. The front camera and/or the rear camera may receive external multimedia data when the device 1200 is in an operating mode, such as a shooting mode or a video mode. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
Audio component 1210 is configured to output and/or input audio signals. For example, audio assembly 1210 includes a Microphone (MIC) configured to receive external audio signals when device 1200 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals may further be stored in the memory 1204 or transmitted via the communication component 1216. In some embodiments, audio assembly 1210 further includes a speaker for outputting audio signals.
The I/O interface 1212 provides an interface between the processing component 1202 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor assembly 1214 includes one or more sensors for providing various aspects of state assessment for the device 1200. For example, the sensor assembly 1214 may detect an open/closed state of the device 1200, the relative positioning of the components, such as a display and keypad of the device 1200, the sensor assembly 1214 may also detect a change in the position of the device 1200 or a component of the device 1200, the presence or absence of user contact with the device 1200, orientation or acceleration/deceleration of the device 1200, and a change in the temperature of the device 1200. The sensor assembly 1214 may include a proximity sensor configured to detect the presence of a nearby object in the absence of any physical contact. The sensor assembly 1214 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 1214 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
Communications component 1216 is configured to facilitate communications between device 1200 and other devices in a wired or wireless manner. The device 1200 may access a wireless network based on a communication standard, such as WiFi, an operator network (such as 2G, 3G, 4G, or 5G), or a combination thereof. In an exemplary embodiment, the communication component 1216 receives the broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communications component 1216 further includes a Near Field Communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on Radio Frequency Identification (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the device 1200 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors or other electronic components for performing the above-described methods.
In an exemplary embodiment, a computer-readable storage medium comprising instructions, such as the memory 1204 comprising instructions, executable by the processor 1220 of the device 1200 to perform the above-described method is also provided. For example, the computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
In an exemplary embodiment, a computer program product is also provided, which comprises a computer program that when executed by a processor implements the bullet screen receiving method described above.
Fig. 13 is a block diagram illustrating an apparatus 1300 for bullet screen delivery, according to an example embodiment. For example, the device 1300 may be a server. Referring to fig. 13, device 1300 includes a processing component 1320 that further includes one or more processors and memory resources, represented by memory 1322, for storing instructions, such as application programs, that are executable by processing component 1320. The application programs stored in memory 1322 may include one or more modules each corresponding to a set of instructions. In addition, the processing component 1320 is configured to execute the instructions to perform the method of bullet screen delivery described above.
The device 1300 may also include a power component 1324 configured to perform power management for the device 1300, a wired or wireless network interface 1326 configured to connect the device 1300 to a network, and an input-output (I/O) interface 1328. The device 1300 may operate based on an operating system stored in the memory 1322, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, or the like.
In an exemplary embodiment, a computer-readable storage medium comprising instructions, such as memory 1322 comprising instructions, executable by a processor of device 1300 to perform the bullet screen delivery method described above is also provided. The storage medium may be a computer-readable storage medium, which may be, for example, a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
In an exemplary embodiment, a computer program product is further provided, which includes a computer program that when executed by a processor implements the bullet screen issuing method described above.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (10)

1. A bullet screen issuing method is characterized by comprising the following steps:
receiving a first sending request sent by a client, wherein the first sending request carries a video identifier of a video file being played by the client and a query time quantum to which a current playing progress belongs, and the query time quantum is obtained by dividing playing time of the video file;
searching in a bullet screen database according to the video identification and the query time period to obtain a bullet screen set corresponding to the video identification and the query time period, wherein the bullet screen database comprises the corresponding relation of the video identification, the query time period and the bullet screen;
and acquiring a target bullet screen from the bullet screen set, and returning the target bullet screen to the client, wherein the target bullet screen is a plurality of bullet screens needing to be returned to the client.
2. The bullet screen issuing method according to claim 1, wherein the obtaining of the target bullet screen from the bullet screen set and the returning of the target bullet screen to the client comprises:
when the number of the bullet screens in the bullet screen set is greater than a preset bullet screen return upper limit, acquiring target bullet screens of which the number is equal to the bullet screen return upper limit from the bullet screen set, and assigning a page turning field as a first result value, wherein the first result value is used for informing the client that the bullet screens to be issued are also contained in the bullet screen set;
and returning the target barrage and the first result value to the client, wherein the first result value is also used for indicating the client to send a second issuing request.
3. The bullet screen issuing method according to claim 2, wherein each bullet screen in the bullet screens to be issued has an identifier; the method further comprises the following steps:
when the video playing progress of the target barrage when the playing is finished still belongs to the query time period, receiving the second issuing request, wherein the second issuing request carries the query time period, the video identifier and the first result value, and the first result value is used for representing the identifier of the target barrage returned to the client;
searching in the bullet screen database according to the video identification and the query time period to obtain the bullet screen set;
screening from the bullet screen set according to the first result value to obtain the bullet screen to be issued;
and sequentially acquiring new target bullet screens from the bullet screens to be issued according to the identification of each bullet screen, and returning the new target bullet screens to the client.
4. The bullet screen issuing method according to claim 1, wherein the obtaining of the target bullet screen from the bullet screen set and the returning of the target bullet screen to the client comprises:
when the number of the bullet screens in the bullet screen set is not more than the preset bullet screen return upper limit, acquiring all the bullet screens from the bullet screen set as the target bullet screens, and assigning the page turning field as a second result value;
and returning the bullet screen set and the second result value to the client, wherein the second result value is used for informing the client that all bullet screens in the bullet screen set have been returned to the client.
5. A bullet screen receiving method, comprising:
sending a first sending request to a server, wherein the first sending request carries a video identifier of a video file being played by a client and a query time quantum to which a current playing progress belongs, and the query time quantum is obtained by dividing the playing time of the video file;
receiving a target barrage returned by the server, wherein the target barrage is a plurality of barrages acquired by the server from a barrage set, the barrage set is a set formed by the barrage corresponding to the video identification and the query time period, which is searched in a barrage database by the server according to the video identification and the query time period, and the barrage database comprises the corresponding relation of the video identification, the query time period and the barrage.
6. A bullet screen issuing device is characterized by comprising:
the system comprises a first receiving module, a first sending module and a second receiving module, wherein the first receiving module is configured to execute and receive a first sending request sent by a client, the first sending request carries a video identifier of a video file being played by the client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing playing time of the video file;
the first searching module is configured to search in a bullet screen database according to the video identifier and the query time period to obtain a bullet screen set corresponding to the video identifier and the query time period, wherein the bullet screen database comprises a corresponding relation of the video identifier, the query time period and the bullet screen;
the first bullet screen returning module is configured to execute the steps of obtaining a target bullet screen from the bullet screen set and returning the target bullet screen to the client, wherein the target bullet screen is a plurality of bullet screens which need to be returned to the client.
7. A bullet screen receiving arrangement, comprising:
the system comprises a first sending module, a second sending module and a third sending module, wherein the first sending module is configured to execute sending of a first sending request to a server, the first sending request carries a video identifier of a video file being played by a client and a query time period to which a current playing progress belongs, and the query time period is obtained by dividing playing time of the video file;
the first receiving module is configured to execute receiving of a target barrage returned by the server, the target barrage is a plurality of barrages acquired by the server from a barrage set, the barrage set is a set formed by the barrage corresponding to the video identifier and the query time period, which is obtained by searching in a barrage database by the server according to the video identifier and the query time period, and the barrage database comprises the corresponding relation of the video identifier, the query time period and the barrage.
8. An electronic device, comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the bullet screen issuing method according to any one of claims 1 to 4 or the bullet screen receiving method according to 5.
9. A computer-readable storage medium, wherein instructions in the computer-readable storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the bullet screen issuing method according to any one of claims 1 to 4 or the bullet screen receiving method according to any one of claims 5.
10. A computer program product comprising a computer program, wherein the computer program when executed by a processor implements the bullet screen delivery method of any one of claims 1 to 4 or the bullet screen receiving method of any one of claims 5.
CN202110600924.5A 2021-05-31 2021-05-31 Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium Active CN113365099B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110600924.5A CN113365099B (en) 2021-05-31 2021-05-31 Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium
PCT/CN2021/143887 WO2022252610A1 (en) 2021-05-31 2021-12-31 Bullet screen comment issuing method and bullet screen comment receiving method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110600924.5A CN113365099B (en) 2021-05-31 2021-05-31 Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113365099A true CN113365099A (en) 2021-09-07
CN113365099B CN113365099B (en) 2022-12-27

Family

ID=77530412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110600924.5A Active CN113365099B (en) 2021-05-31 2021-05-31 Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium

Country Status (2)

Country Link
CN (1) CN113365099B (en)
WO (1) WO2022252610A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174958A (en) * 2022-06-27 2022-10-11 杭州海康威视数字技术股份有限公司 Video query method, video query device, logistics monitoring system, logistics monitoring equipment and program product
WO2022252610A1 (en) * 2021-05-31 2022-12-08 北京达佳互联信息技术有限公司 Bullet screen comment issuing method and bullet screen comment receiving method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140189052A1 (en) * 2012-12-28 2014-07-03 Qualcomm Incorporated Device timing adjustments and methods for supporting dash over broadcast
CN104967876A (en) * 2014-09-30 2015-10-07 腾讯科技(深圳)有限公司 Pop-up information processing method and apparatus, and pop-up information display method and apparatus
CN105578209A (en) * 2015-12-16 2016-05-11 广州酷狗计算机科技有限公司 Pop-up screen display method and apparatus
CN108668158A (en) * 2017-03-31 2018-10-16 武汉斗鱼网络科技有限公司 A kind of barrage synchronous method, client and barrage server
CN110121083A (en) * 2018-02-06 2019-08-13 上海全土豆文化传播有限公司 The generation method and device of barrage
CN112188225A (en) * 2020-09-29 2021-01-05 上海哔哩哔哩科技有限公司 Bullet screen issuing method for live broadcast playback and live broadcast video bullet screen playback method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3982459B2 (en) * 2003-06-06 2007-09-26 日本電信電話株式会社 Content-linked comment display method, comment display system, server device, comment display device, and comment display program
CN105245960A (en) * 2014-07-07 2016-01-13 乐视网信息技术(北京)股份有限公司 Live comment display method and device for videos
CN105916057A (en) * 2016-04-18 2016-08-31 乐视控股(北京)有限公司 Video barrage display method and device
CN113365099B (en) * 2021-05-31 2022-12-27 北京达佳互联信息技术有限公司 Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140189052A1 (en) * 2012-12-28 2014-07-03 Qualcomm Incorporated Device timing adjustments and methods for supporting dash over broadcast
CN104967876A (en) * 2014-09-30 2015-10-07 腾讯科技(深圳)有限公司 Pop-up information processing method and apparatus, and pop-up information display method and apparatus
CN105578209A (en) * 2015-12-16 2016-05-11 广州酷狗计算机科技有限公司 Pop-up screen display method and apparatus
CN108668158A (en) * 2017-03-31 2018-10-16 武汉斗鱼网络科技有限公司 A kind of barrage synchronous method, client and barrage server
CN110121083A (en) * 2018-02-06 2019-08-13 上海全土豆文化传播有限公司 The generation method and device of barrage
CN112188225A (en) * 2020-09-29 2021-01-05 上海哔哩哔哩科技有限公司 Bullet screen issuing method for live broadcast playback and live broadcast video bullet screen playback method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022252610A1 (en) * 2021-05-31 2022-12-08 北京达佳互联信息技术有限公司 Bullet screen comment issuing method and bullet screen comment receiving method
CN115174958A (en) * 2022-06-27 2022-10-11 杭州海康威视数字技术股份有限公司 Video query method, video query device, logistics monitoring system, logistics monitoring equipment and program product
CN115174958B (en) * 2022-06-27 2023-09-08 杭州海康威视数字技术股份有限公司 Video query method, device, logistics monitoring system, equipment and program product

Also Published As

Publication number Publication date
CN113365099B (en) 2022-12-27
WO2022252610A1 (en) 2022-12-08

Similar Documents

Publication Publication Date Title
US20220303605A1 (en) Method for switching live-streaming rooms and electronic device
CN111783001B (en) Page display method, page display device, electronic equipment and storage medium
US20170155958A1 (en) Method, Apparatus and System for Playing Multimedia Data, and Storage Medium
CN106897937B (en) Method and device for displaying social sharing information
CN111343476A (en) Video sharing method and device, electronic equipment and storage medium
CN113365099B (en) Bullet screen issuing method, bullet screen receiving method, bullet screen issuing device, electronic equipment and storage medium
CN112153396B (en) Page display method, device, system and storage medium
CN110691268A (en) Message sending method, device, server, mobile terminal and storage medium
CN113727200A (en) Video abstract information determination method and device, electronic equipment and storage medium
CN112291631A (en) Information acquisition method, device, terminal and storage medium
CN110740373B (en) Method and related device for buffering audio/video file
CN107402767B (en) Method and device for displaying push message
CN112131466A (en) Group display method, device, system and storage medium
CN110636318A (en) Message display method, message display device, client device, server and storage medium
CN112685599B (en) Video recommendation method and device
CN113901241A (en) Page display method and device, electronic equipment and storage medium
CN107247794B (en) Topic guiding method in live broadcast, live broadcast device and terminal equipment
CN111246255B (en) Video recommendation method and device, storage medium, terminal and server
CN112256890A (en) Information display method and device, electronic equipment and storage medium
CN106851418B (en) Video recommendation method and device
CN110769282A (en) Short video generation method, terminal and server
CN113709571B (en) Video display method and device, electronic equipment and readable storage medium
US11284127B2 (en) Method and apparatus for pushing information in live broadcast room
CN110866147B (en) Method, apparatus and storage medium for classifying live broadcast application
CN112291581B (en) Server, terminal equipment, information processing method and device

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