CN115134669A - Video sending method, device, electronic equipment and medium - Google Patents

Video sending method, device, electronic equipment and medium Download PDF

Info

Publication number
CN115134669A
CN115134669A CN202210599592.8A CN202210599592A CN115134669A CN 115134669 A CN115134669 A CN 115134669A CN 202210599592 A CN202210599592 A CN 202210599592A CN 115134669 A CN115134669 A CN 115134669A
Authority
CN
China
Prior art keywords
video
channel
time period
terminal
video channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210599592.8A
Other languages
Chinese (zh)
Inventor
谢文龙
李云鹏
刘韶锋
王艳辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera 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 Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN202210599592.8A priority Critical patent/CN115134669A/en
Publication of CN115134669A publication Critical patent/CN115134669A/en
Pending legal-status Critical Current

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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The embodiment of the invention provides a video sending method, a video sending device, electronic equipment and a storage medium, wherein the video sending method is applied to a server and comprises the following steps: after receiving a request service of a target time interval video, determining whether a first video channel with a coincidence time interval with the target time interval exists; wherein, different video channels are used for pushing videos in different time periods; and if so, transmitting the video of the target time interval by using at least the first video channel. By adopting the video sending method of the embodiment of the application, channel resources can be saved.

Description

Video sending method, video sending device, electronic equipment and medium
Technical Field
The present invention relates to the field of network communication technologies, and in particular, to a video sending method, apparatus, electronic device, and medium.
Background
Currently, with the development of network technology, users are used to watch videos on line, and the videos include videos shot in real time, such as live broadcast and monitoring, and videos recorded, such as movie and television series. Generally, a server sends a video requested by a user to a terminal where the user is located.
In the related art, when providing a video transmission service to a user, a video transmission channel is generally established for each requesting terminal to transmit a related video, however, a large amount of channel resources are required, and in a case where the channel resources are limited, this way results in a low utilization rate of the channel resources.
Disclosure of Invention
In view of the above problems, embodiments of the present invention are proposed to provide a video transmission method, an apparatus, an electronic device, and a storage medium, so as to overcome the above problems or at least partially solve the above problems.
In a first aspect of the embodiments of the present invention, a video sending method is disclosed, where the method includes:
after receiving a request service of a target time interval video, determining whether a first video channel with a coincidence time interval with the target time interval exists; wherein, different video channels are used for pushing videos in different time periods;
and if so, sending the video of the target time interval by using at least the first video channel.
Optionally, transmitting the video of the target period by using at least the first video channel includes:
for a coincidence time period in the target time period, sending a video of the coincidence time period by using a first video channel of the coincidence time period;
and for the rest time interval except the coincidence time interval in the target time interval, newly establishing a second video channel to transmit the video of the rest time interval.
Optionally, the method further comprises:
caching the called video data when the called video data is sent by using the first video channel;
transmitting video of the target time period using at least the first video channel, comprising:
and for the video of the coincidence time period, extracting the video corresponding to the coincidence time period from the cached video, and transmitting the video by utilizing the first video channel.
Optionally, transmitting the video of the target period by using at least the first video channel includes:
acquiring a terminal list corresponding to the first video channel; the watching time period of the terminal in the terminal list is overlapped with the time period corresponding to the first video channel;
and based on the terminal list, sending videos of respective required target time periods to each terminal in the terminal list through the first video channel in turn.
Optionally, the first video channel is a live channel; the method further comprises the following steps:
determining the current live broadcast time of the first video channel;
transmitting video of the target time period using at least the first video channel, comprising:
determining the starting time of the coincidence time period in the target time period;
under the condition that the starting time is before the live broadcast playing time, the live broadcast data which are currently called in real time and the video data which are deviated from the starting time are sent by utilizing the first video channel in turn;
and under the condition that the starting moment is positioned after the live broadcast playing moment, when waiting for the video data of the starting moment to arrive, live broadcasting the video of the superposition time period by using the first video channel.
Optionally, the method further comprises:
for each video channel in the created multiple video channels, if the video channel does not have a video pushing task currently, releasing the video channel;
if the video channel currently has a video pushing task, cleaning the terminal which finishes watching out the video channel; and the terminal which finishes watching is a terminal irrelevant to the video push task.
Optionally, the method further comprises:
and if the first video channel does not exist, creating a new third video channel, and sending the video of the target time period by using the third video channel.
In a second aspect of the embodiments of the present application, there is provided a video transmitting apparatus, which is applied to a server, the apparatus including:
the channel determining module is used for determining whether a first video channel with a coincidence time interval with the target time interval exists after receiving a request service of a target time interval video; wherein, different video channels are used for pushing videos in different time periods;
and the video sending module is used for sending the video of the target time interval by using at least the first video channel under the condition that the first video channel exists.
The embodiment of the invention also provides electronic equipment which comprises a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory complete mutual communication through the communication bus; a memory for storing a computer program; a processor for implementing the steps of the video transmission method according to the first aspect when executing the program stored in the memory.
An embodiment of the present invention further discloses a computer-readable storage medium, which stores a computer program that causes a processor to execute the video sending method according to the first aspect of the embodiment of the present invention.
The embodiment of the invention has the following advantages:
in this embodiment, after receiving a service request of a video in a target time period, it may be determined whether a first video channel having a time period coinciding with the target time period exists; and if so, transmitting the video of the target time interval by using at least a first video channel.
By adopting the technical scheme of the application, different video channels are used for pushing videos in different time periods, so that the videos are sent by taking the time periods as granularity, therefore, for the request service of a new target time period, under the condition that the target time period has a coincidence time period with the time period corresponding to the first video channel, the video can be sent by at least the first video channel, and under the condition that the target time period is the coincidence time period, the video channel corresponding to the request service does not need to be newly established, so that the new request service and the previous request service can share the video channel, thereby saving channel resources and improving the utilization rate of the channel resources.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments of the present application will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without inventive exercise.
Fig. 1 is a diagram of an implementation environment of a video transmission method according to an embodiment of the present invention;
FIG. 2 is a flow chart illustrating steps of a video transmission method according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating an actual scenario of scenario 1 in an embodiment of the present invention;
FIG. 4 is a diagram illustrating an actual scenario of scenario 2 in an embodiment of the present invention;
FIG. 5 is a schematic diagram of transmitting videos of corresponding time periods to different terminals in turn in the same video channel in the embodiment of the present invention;
FIG. 6 is another schematic diagram of transmitting videos of corresponding time periods to different terminals in turn in the same video channel in the embodiment of the present invention;
fig. 7 is a schematic structural diagram of a video transmitting method apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in further detail below.
In the related art, videos watched on line include live videos and recorded videos, generally speaking, the present application is directed to video watching with a demand for a time period, for example, when a user faces a demand for watching videos shot by a camera device, the user calls the videos shot by the camera device, and the called videos are generally performed according to the time period to be called by a terminal, so as to specifically call videos in the corresponding time period. For example, if the user terminal wants to watch the video shot by the camera device in the 15:00-16:00 time period, the video shot in the 15:00-16:00 time period is correspondingly adjusted and sent to the terminal. Of course, the called video may be a video shot by the camera in real time or a video recorded by the camera and stored in the terminal device of the dispatch room according to different watching periods.
Therefore, it has been a difficult problem in the industry to satisfy the requirement of watching videos shot by the camera device in different periods of time in multiple terminals in the scene because:
the current camera device does not support the output of the difference of videos with play time difference in the same time period, so that no matter the videos shot by the camera device in real time or the recorded videos (located in terminal equipment of a scheduling room), the video watching requirements of a plurality of users on a certain time period are generally met by adopting a live broadcast-like mode, or the watching requirements of each user are met by adopting a unicast mode. In the live mode, a plurality of users can synchronously watch videos in the same time period, but cannot play the videos differently. For example, for the video recording of 15:00-16:00 time period by the camera device, after the user 1 requests to view the video recording of 15:00-16:00 time period for ten minutes, the user 2 requests to view the video recording of 15:00-16:00 time period, at this time, the user 1 should view the monitoring screen of 15:10, and the user 2 should view the screen of 15:00, but actually, the user 2 is viewing the screen from 15:10 synchronously with the user 1 at the coming time.
In the unicast mode, a calling request and a new video channel need to be initiated to the camera device for each terminal, so that the video channel is established for each terminal, the video channel resource is wasted, and the video is called again to the scheduling room or the camera device; thus, not only is channel resource wasted but also the load of the terminal equipment of the camera device or the dispatch room is increased.
Therefore, in the scene, channel resources are preferentially met, a live broadcast mode is adopted, and some users are inevitably required to abandon video pictures in a certain time period; or a video channel is established for each terminal, preferably for the user, but this process consumes a lot of network resources and load of the video source (camera and terminal equipment of the studio). Therefore, the problem that the guarantee of the network resources is incompatible with the actual demands of the users occurs.
In view of this, the present applicant proposes a solution that can save channel resources and reduce the load of the terminal device, and its core concept is: when a video of a target time period is provided to a terminal, a video channel having a time period coinciding with the target time period is borrowed and the video of the target time period is transmitted.
Referring to fig. 1, a diagram of an implementation environment of a video transmission method according to an embodiment of the present application is shown, and as shown in fig. 1, the method includes: the system comprises a server, a camera device, a scheduling room and a plurality of terminals; the method includes the steps that the image pickup devices are generally connected to corresponding scheduling rooms, when a server needs to call videos of the image pickup devices, if the videos need to be shot in real time, the videos can be called from the image pickup devices, if the videos are recorded, the videos can be called from terminal equipment of the scheduling rooms, the videos which are recorded by the image pickup devices are generally stored on the terminal equipment of the scheduling rooms, generally, the videos which are shot by the image pickup devices are stored in a day period, for example, the image pickup devices operate from 1 month and 1 day, the current date is 1 month and 3 days, the videos which are shot from 1 month and 2 days are stored in the scheduling rooms, and the videos of 1 month and 3 days are still in the image pickup devices due to the fact that the image pickup devices are shooting.
The plurality of terminals are terminals on the user side and used for requesting the server for the video shot by the camera device and playing the received video.
Since hardware devices of the imaging apparatus have low support for scheduling a large number of videos and the terminal devices in the scheduling room are generally limited in configuration, a large number of video scheduling requests in a short time cannot be handled, and channel resources of a general network are also limited. For example, when data is transmitted in the video network, it is generally necessary to provide a corresponding virtual terminal (hereinafter referred to as a virtual terminal) of the video network for a terminal, where one virtual terminal generally identifies one terminal in the video network, and data is transmitted through the virtual terminal corresponding to the terminal. Thus, when the video cached in the same time period is requested by a plurality of different terminals, a plurality of virtual terminals are required in a manner of establishing a video transmission channel for each terminal, however, the number of virtual terminals in the internet is limited. Therefore, a problem arises in the related art in which the guarantee of network resources is not compatible with the actual needs of users.
Taking the implementation environment described in fig. 1 as an example, the video sending method according to the embodiment of the present application is introduced, but in practical applications, the video sending method may be applied not only to the implementation environment of fig. 1, but also to other video service scenes, such as an application scene for watching a live broadcast of a product, and a scene for watching a movie with an episode (one episode may be considered as one session). Referring to fig. 2, a flowchart illustrating steps of a video transmission method according to an embodiment of the present application is shown, and as shown in fig. 2, the method may be applied to a server, and includes the following steps:
step S201: after receiving a request service for a target period video, determining whether a first video channel having a coincidence period with the target period exists.
Wherein different video channels are used to push video of different time periods.
In this embodiment, when each time a video in a period is initially requested, the video in the period is scheduled to the corresponding terminal through one video channel, so that different video channels can be used for scheduling videos in different periods, that is, different video channels can send videos in different periods to the corresponding terminals. The time periods (hereinafter referred to as channel time periods) corresponding to the video channels may be non-intersecting, so that the videos transmitted by the video channels are separated on the time axis. For example, three video channels correspond to videos in three time periods, which may not intersect each other, e.g., time periods of 15:00-16:00, 14:00-15:00, and 12:00-13:00, respectively. As such, each video channel may be responsible for the transmission of one period of video.
Each video channel can send videos in corresponding time periods to a plurality of terminals in a multicast mode, and therefore one video channel can meet the video watching requirements of the plurality of terminals in the corresponding time periods. As shown in fig. 1, when sending a video at a corresponding time interval through a video channel, if the video is in a recorded and broadcast scene, a server may retrieve the video at the corresponding time interval from a terminal device in a scheduling room, and then multicast the retrieved video to a plurality of terminals, so as to enable the plurality of terminals to watch the recorded video; if the live broadcast scene is achieved, the server can call videos shot by the camera device in real time from the camera device, and then multicast the called videos to the terminals, so that the terminals can watch live broadcast.
When a request service of a video in a target time period is received, it may be determined whether a first video channel overlapping the target time period exists in time periods (channel time periods) corresponding to a plurality of existing video channels, specifically, the target time period may be compared with the plurality of channel time periods, respectively, and if the corresponding channel time period overlaps the target time period, the video channel in the channel time period is used as the first video channel.
Of course, if the span of the target time interval is long and there are coincident time intervals with multiple different channel time intervals, there may be multiple determined first video channels. Illustratively, the target period is 11: 30-16:00, three video channels exist currently, and the corresponding channel time periods are as follows: 15:00-16:00, 14:00-15:00, 12:00-13:00, it can be determined that the target time interval coincides with all of the three time intervals, and all of the three video channels are used as first video channels.
Step S202: and in the case that the first video channel exists, transmitting the video of the target period by using at least the first video channel.
In this embodiment, since the transmitted video of the first video channel having the overlap period with the target period necessarily has the video segment having the overlap period, the video of the overlap period can be directly transmitted by using the first video channel.
Wherein, one implementation of transmitting the video of the target time interval by using at least the first video channel is as follows: the video in the overlapped time period can be transmitted by utilizing the first video channel, and the video in the time period except the overlapped time period in the target time period can be transmitted by newly establishing a video channel. Alternatively, another embodiment is: the video in the coincident time period can be transmitted by using the first video channel, and the video in the time period except the coincident time period in the target time period can also be transmitted by using the first video channel.
In particular, a terminal requesting a service for transmitting a target time interval may be added to the first video channel, and the overlapping time interval is marked, so that the first video channel may transmit a video of the overlapping time interval to the terminal.
Of course, in the case where the first video channel is determined to be plural, that is, to have plural coincidence periods, the video of the coincidence period may be transmitted with the first video channel of the coincidence period for each coincidence period. In the sending process, videos of the coinciding periods can be sent by sequentially utilizing the first video channels according to the time sequence of the coinciding periods in the target period, and for the receiving end, the receiving end can receive the videos of the coinciding periods through the corresponding first video channels and then play the videos according to the time sequence of the coinciding periods in the target period.
Illustratively, the target period is 15:30-16:00, three video channels are provided, and the corresponding time periods are as follows: 15:00-16:00, 14:00-15:00, 12:00-13:00, then 15:30-16:00 without newly building a video channel, thereby saving channel resources.
Because each video channel is responsible for the transmission of the video in a time interval, and the time intervals of the channels responsible for different video channels are not crossed, the covered time intervals are more comprehensive along with the increase of the requested time intervals, so that the subsequent request service of a new target time interval is temporary, the video transmission can be completed by using the existing video channel without newly building a video channel.
Therefore, the video of the target time interval can be sent by utilizing the existing video channel according to the requested target time interval, so that the requested target time interval can share the existing video channel as much as possible without newly building a video channel.
Illustratively, the target period is 12: 30-16:00, three video channels are currently available, and the corresponding time periods are as follows: 15:00-16:00, 14:00-15:00, 12:00-13:00, then it is sufficient to use the existing video channel directly to complete 12: 30-16:00, thereby eliminating the need to newly create a video channel for the newly requested terminal.
By adopting the technical scheme of the embodiment, on one hand, under the condition that the target time interval is the coincidence time interval, a video channel corresponding to the request service does not need to be newly established, so that the new request service and the previous request service can share the first video channel, and channel resources are saved. On the other hand, as shown in fig. 1, in the retrieval scene of the video shot by the camera device, the video in the coincidence period is directly sent by using the first video channel, so that the video in the coincidence period does not need to be requested to the camera device again, thus reducing the load of the terminal equipment or the camera device, saving the network resource for retrieving the video in the coincidence period from the terminal equipment or the camera device, and shortening the video scheduling path because the video in the coincidence period does not need to be requested to be scheduled from the terminal equipment or the camera device, thereby improving the efficiency of sending the video in the target period.
Of course, in one embodiment, if the first video channel does not exist, a new third video channel may be created, and the video of the target period may be transmitted using the third video channel.
In transmitting the video of the target period using the third video channel, the server may request the video of the target period from a video source (a camera or a terminal device of a scheduling room), and then forward the video received from the video source to the terminal requesting the video of the target period through the third video channel.
Of course, under the core technical idea of the present application, the channel time period corresponding to the third video channel is the target time period, so that another new time period has one video channel, thereby expanding the coverage of the time period, and the third video channel can be multiplexed in the subsequent new request service.
Next, a description is given of a procedure of how to transmit a video of a target period using the first video channel.
1.1, transmission of video of a target period.
In one embodiment, for a coincidence period in a target period, transmitting a video of the coincidence period by using a first video channel of the coincidence period; and newly building a second video channel for the residual time interval except the coincident time interval in the target time interval to send the video in the residual time interval.
In this embodiment, when a remaining time period other than the overlapping time period exists in the target time period, the video representing that a part of the target time period is not called by other terminals, in an example, for the video in the remaining time period, the server may request the video in the time period from the video source and send the video to the corresponding terminal, specifically, for the video in the remaining time period, a second video channel corresponding to the remaining time period may be established, so that the video in the remaining time period is sent by using the second video channel.
In another example, when there are multiple coinciding periods, since the video in the target period is sent according to the time sequence of each coinciding period, in the process of sending the video according to the time sequence of each coinciding period, if the remaining period is interspersed between the coinciding periods, or is located after the last coinciding period, when it is time to send the video in the remaining period, it may be determined again whether a fourth video channel including the coinciding period exists currently, and if so, the video in the remaining period is sent directly using the fourth video channel; and if the video does not exist, calling the video in the remaining time period from the video source, and sending the video by using a second video channel.
Illustratively, the target period is 12: 30-14:00, two video channels exist, and the corresponding time periods are respectively as follows: 15:00-16:00, 12:00-13:00, then determining the remaining time period is 13:00-14:00, and firstly transmitting 12: 30-13: 00, after the video is sent, it can be determined whether the current video is added with a video file including 13: and if the newly added video channel (namely the fourth video channel) of 00-14:00 exists, directly sending 13:00-14:00, if not, creating a new video channel (i.e., a second video channel), scheduling 13: and the video of 00-14:00 is sent to the corresponding terminal.
Certainly, under the core technical idea of the present application, after the second video channel corresponding to the remaining time period is established, another new time period is provided with one video channel, so that the coverage of the time period is expanded, and the second video channel can still be multiplexed in a subsequent new request service.
1.2, transmitting video of coincident time period by using first video channel
As described in the above embodiment, each video channel may send videos in corresponding time periods to multiple terminals in a multicast manner, and in specific implementation, the server may retrieve videos in corresponding time periods from a video source (a terminal device or an image capturing apparatus in a scheduling room), and then multicast the videos to the multiple terminals. In this case, the multicast mode may enable different terminals in the same video channel to view the same video frame, that is, different terminals view the same video frame at the same time.
However, since the first video channel needs to transmit the video of the coincidence time period, in some cases, the coincidence time period may be located in the middle or at the back of the channel time period of the first video channel, so that each terminal that needs to join in the first video channel may watch the required video according to the watching requirement, for example, each terminal watches the video from different starting time, that is, the user needs to watch the picture from different time in the same time period.
For example, for the video recording of the camera device 15:00-16:00 time period, the target time period for the user 2 to request to view after the user 1 requests to view for ten minutes is 14:00-15: 30, with a coincidence period of 15:00-15:30 with the channel of user 1, at which time user 2 should start watching video pictures from 15:00 in the coming while user 1 still keeps watching pictures from 15: 10.
Therefore, in order to realize that different users can watch videos from different starting moments, the called video data can be cached, that is, for each video channel, the video data called by the video channel can be cached, so that videos can be extracted from the cached video data and sent to corresponding terminals, where the first video channel is taken as an example and specifically described as follows:
the method comprises the steps that when called video data are sent by utilizing a first video channel, the called video data are cached; then, for the video in the coincidence period, the video corresponding to the coincidence period may be extracted from the buffered video and transmitted using the first video channel.
In some implementation scenarios, since the video of the coincidence period is to be extracted from the buffered video, and the buffered video of the first video channel is buffered based on the video stream called in real time, there exists a video whose buffered video may not have completely buffered the coincidence period, for example, the first video channel is for 15:00-16:00, when the coincidence period is 15:30-16:00, if the current buffer is only 15:40 (not yet buffered). In this case, the buffered video in the coincidence period may be sent first, for example, a part of video data of 15:30 to 15:40 is sent first, then the buffered video data is also perfected as the real-time video stream is continuously called, and then the remaining video data in the coincidence period is sent dynamically, thereby realizing complete sending.
Certainly, when the embodiment is adopted, the first video channel corresponds to a plurality of terminals, so that the required videos of the plurality of terminals added into the first video channel can be obtained as required, channel resources are saved, and the hierarchical playing of the videos can be realized. In order to fully understand the advantages of video transmission in this embodiment, the following description is provided in conjunction with specific application scenarios:
scene 1: a video (called video recording) for recording a video shot by the image pickup device is scheduled from a terminal device in a scheduling room. As described with reference to fig. 3, fig. 3 is a schematic view of an actual scene of scene 1.
When a user 1 requests to watch videos in 15:00-16:00 time intervals, a server pulls a video stream in 15:00-16:00 time intervals from terminal equipment in a scheduling room, a video channel 1 is newly built, and the video is cached while the video channel 1 is used for sending the video to the user 1; after the user 1 watches for 10 minutes, the user 2 sends a request to request the video recording in the time period of 15:00-16:00, the overlapping time period is 15:00-16:00, the video channel 1 is required to be used for sending the video of 15:00-16:00 to the user 2, at the moment, the server determines that the video in the time period is cached, and corresponding video data can be extracted from the cached video of 15:00-16:00 and sent to the user 2. Then, at 15:15 play-out time, user 1 is viewing a 15:15 picture and user 2 is viewing a 15:05 picture.
Therefore, in the scene, the server does not need to pull the video of 15:00-16:00 required by the user 2 to the terminal equipment, and does not need to create a new video channel, and in the video channel 1, the video picture watched by the user 1 and the video picture watched by the user 2 can be different, so that the purpose of meeting the watching requirements of different users by borrowing the same video channel is achieved.
Scene 2: and calling the video shot by the camera in real time from the camera. Referring to fig. 4, fig. 4 is a schematic diagram of an actual scene of scene 1.
The method comprises the steps that a user 1 presets a video shot by a camera device in a period of 15:00-16:00 in real time, when 15:00 arrives, a server starts to pull a video stream from the camera device 1 and buffers the pulled video stream, the user 1 receives a video watching request of a user 2 for the period of 15:00-16:00 after watching for 10 minutes, the superposition period is 15:00-16:00, the user 2 needs to send the video of 15:00-16:00 to the video channel 1, and the buffered video in the period is sent to the user 2.
Under the condition, the user 1 still watches the video called in real time, the user 2 lags behind the watching of the user 1, so that the difference playing of the real-time shooting video is realized, the user 2 does not need to sacrifice the picture of the previous 10 minutes and can not watch the video in the time period of 15:00-16:00 after the recording is finished, therefore, the network channel resource is saved, the watching back and live requirements of different users are met simultaneously in a live broadcast scene, the time-sharing playing of the live broadcast video according to different watching moments is realized, and the problem that the user can only watch the current latest picture in the live broadcast video playing and can not watch the past historical picture according to the self requirement is solved.
By adopting the embodiment, as the terminals requesting the video in the same time interval can share the same video channel to carry out video transmission, and different users can watch video pictures from different moments based on the cached video data, in a video calling scene shot by the camera device, the first video channel is directly used for transmitting the video in the coincident time interval, so that the video in the coincident time interval does not need to be requested to the camera device again, the load of the terminal equipment or the camera device is reduced, the network resource for calling the video in the coincident time interval to the terminal equipment or the camera device is saved, and the video in the coincident time interval does not need to be requested to be scheduled to the terminal equipment or the camera device, therefore, the video scheduling path can be shortened, and the efficiency of transmitting the video in the target time interval is improved.
1.3 procedure for transmitting video to a respective terminal through a first video channel
As described above, for the first video channel, there may be a plurality of terminals joining the first video channel, for which the first video channel can transmit respective desired videos to the terminals joining it in turn.
In specific implementation, a terminal list corresponding to the first video channel can be obtained; on the basis of the terminal list, sending videos of respective required target time periods to each terminal in the terminal list in turn through a first video channel; and the watching time periods of the terminals in the terminal list coincide with the time period corresponding to the first video channel.
When the video is sent to the plurality of terminals through the first video channel, the plurality of terminals can occupy the first video channel in turn to acquire the required video of each terminal. In specific implementation, for each terminal added to the first video channel, the identifier of the terminal may be added to a terminal list, and the viewing time period (channel time period or coincidence time period) corresponding to each terminal may be calibrated.
Of course, since the first video channel is for a fixed channel period, the viewing period designated by the terminal added to the terminal list is either the channel period or a partial period (coincidence period) in the channel period. For example, for 15: the video channel 1 of 00-16:00, the terminals added into the terminal list include terminal a, terminal B and terminal C, wherein the calibrated watching time period of terminal a is 15:00-16:00, the viewing period for which terminal B is calibrated is 15:00-15:30, the viewing period for which terminal C is calibrated is 15: 20-16:00.
In this way, when the required videos are transmitted to the plurality of terminals through the first video channel, the terminals in the terminal list can be circularly traversed based on the terminal list, and for each traversed terminal, the time offset is determined according to the starting time and the current time of the watching period, so that the video data to be transmitted is determined based on the time offset and then transmitted to the terminal.
Referring to fig. 5, which shows a schematic diagram of video data being transmitted to different terminals in turn in the same video channel for corresponding time periods, as shown in fig. 5, the viewing period for which terminal a is calibrated is 15:00-16:00, the calibrated viewing period of terminal B is 15:00-15:30, the calibrated viewing period of terminal C is 15: 20-16: 00; then in the first video channel, 15:00-16:00, sending to terminal B15: 00-15:30, sending 15: 20-16:00 video.
In an embodiment, since the video data called in real time for each video channel may be cached, if the video of the corresponding time period has been cached, the terminal added to the first video channel later may be alternately added to the terminal added later, and the corresponding video data may be extracted from the cached video and sent to the terminal.
For example, the viewing period for which terminal B is calibrated is 15:00-15:30, the viewing period for which terminal C is calibrated is 15: 20-16:00, now cached, may send in turn to terminal B from 15:00, for example, to terminal B from 15:00-15:01, and then sends 15: 20-15: 21, video data; then, the slave terminal 15:02-15:03, and then sends 15: 22-15: 23, and so on.
Of course, there may be videos for which the overlap period may not be completely buffered in the buffered videos of the first video channel, for example, when the overlap period is 15:30-16:00, if the current buffer is only 15:10 (not yet buffered). This is the case, which is relatively common in live mode. In the following, the video transmission in the scene is explained by taking the first video channel as a live channel as an example.
In the scene, when a first video channel is used for sending a video of a superposition time period, the current live broadcast playing time of the first video channel can be determined; therefore, the video in the coincident time period or the video in the live broadcast coincident time period can be watched back by utilizing the first video channel according to the starting time and the live broadcast playing time of the coincident time period.
In specific implementation, when the starting time is located after the live broadcast playing time, when the video data of the starting time arrives, the video of the superposition time interval is live broadcast by using the first video channel; and under the condition that the starting time is before the live broadcast playing time, the live broadcast data which are currently called in real time and the video data which are deviated from the starting time are sent by utilizing the first video channel in turn.
In this embodiment, when a video stream is called, streaming data is transmitted in a network, that is, a video is transmitted in the form of a data packet, so that each time corresponding video data is called, the playing time of the video data in a corresponding time period can be determined, and the playing time is the live playing time.
If the start time of the overlap period is after the live broadcast time, for example, the start time of the overlap period is 15: and 20, the current live broadcast time is 15:10, and the video data which is not cached to the coincidence time interval is represented, so that the video data of the coincidence time interval can be sent in a live mode in the first video channel when the video data of the initial time of the coincidence time arrives.
If the start time of the overlap period is before the live broadcast time, for example, the start time of the overlap period is 15: and 10, the current live broadcast time is 15:20, and the video data cached to the superposition time interval is represented, so that the video data of the superposition time interval can be sent from the initial time of the superposition time interval, and for a terminal needing live broadcast, the video data called in real time can be sent in a first video channel in a live broadcast mode.
Referring to fig. 6, a schematic diagram of transmitting video data of corresponding time periods to different terminals in turn in the same video channel is shown, for example, a first video channel is for videos of 15:00-16:00, a terminal a is a terminal requiring live broadcasting, a time period requested by a terminal B is overlapped with the time period of 15:00-16:00, the overlapped time period is 15:00-15:30, a time period requested by a terminal C is overlapped with the time period of 15:00-16:00, and the overlapped time period is 15:30-16: 00;
the current live broadcast time is 15:10, and before 15:10, a live video is sent to the terminal A; at the live broadcast time of 15:10, firstly sending 15: 10-15:11, sending the video data of 15:00-15:01 to the terminal B, and then starting to send the video data of 15:00-15:01 to the terminal A: 11-15:12, and sending the video data of 15:02-15:03 to the terminal B, and so on; and starting to broadcast 15 to the terminal A and the terminal C in the first video channel until the broadcast playing time of 15:30 comes: 30-16:00, during live broadcast, terminal B is still transmitting 15:20 video from the previous mode.
It should be noted that, the process of sending video data to the corresponding terminal through the first video channel by turns can be executed through one thread in the server, and different threads do not need to be opened for different destination terminals, so that thread overhead is saved in the server. In addition, the process of polling the terminal list, determining the playing offset time of the polled terminal and extracting the corresponding video data by the server is very short in time consumption, so that the time from the time of receiving the last video data to the time of receiving the next video data on the terminal side is very short, the continuous playing of the video on the terminal side is not influenced, and the phenomenon of video blocking hardly exists.
1.4, video caching process.
In this embodiment, when video data of a corresponding time period is cached for one video channel, GOP (Group of Pictures) data may be cached, and then video may be transmitted based on the GOP data. Specifically, the corresponding GOP data may be buffered in the storage queue in the case that the called video frame is an I frame; and constructing a mapping relation between each GOP data and the playing time based on the cached GOP data in the storage queue and the corresponding playing time.
Accordingly, when the video data of the coincidence period is transmitted by using the first video channel, the corresponding target GOP data can be extracted from the storage queue based on the start time of the coincidence period and the mapping relation; and sending the GOP data from the target GOP data to a terminal corresponding to the coincidence period. Of course, the first video channel may correspond to multiple terminals, and different terminals correspond to different coincidence periods, so that when videos of the coincidence periods are sent to the multiple terminals through the first video channel in turn, corresponding target GOP data can be extracted from the storage queue and sent based on the starting time and the mapping relation of the coincidence periods.
In this embodiment, the GOP is a group of pictures, and one GOP is a group of continuous pictures, so generally, one picture needs an I frame (a key frame, which is a frame in which a key change is presented in the picture), in this embodiment, when a video frame of the I frame is called, the I frame can be cached, and a P frame and a B frame after the I frame can be cached correspondingly until a next I frame is received, and the cached video frames such as the I frame, the P frame, the B frame, and the like are saved as one GOP; thus, a plurality of GOP data are buffered in the storage queue, each GOP data corresponds to a group of continuous pictures, and the playing of the pictures is timed, so that each GOP data corresponds to a playing time.
It is understood that the duration of the consecutive pictures corresponding to one GOP data is the interval duration between the I frame in the GOP data and the I frame in the next GOP data.
When the video corresponding to the coincidence period needs to be extracted from the cached video, the target GOP data having the mapping relation with the initial time can be searched in the cache queue based on the initial time of the coincidence period, and then, the subsequent GOP data in the storage queue is sequentially sent to the terminal corresponding to the coincidence period from the target GOP data.
The playing time corresponding to the GOP data may be a time represented by a timestamp corresponding to I frame data in the GOP data, and the playing time may be a time based on a time period corresponding to the first video channel, for example, the time period is 15:00-16:00, the playing time corresponding to the GOP data may be 15: 01.
In an embodiment, the storage queue may be located in a memory cache of the server, and when the number of GOP data in the storage queue reaches a preset number, the GOP data in the storage queue may be moved to an external memory of the server for storage, so as to avoid occupying an excessive memory space of the server.
By adopting the embodiment, the GOP data can be sent to the corresponding terminal, so that the picture group comprising the I frame is received by the terminal every time, the decoding and playing can be directly carried out at the terminal, and the problem that the terminal cannot decode and has a black screen due to the fact that the sent video data does not comprise the I frame is avoided.
And 1.5, releasing channel resources.
In yet another embodiment, for multiple video channels that have been created, a video channel may be released when the video channel completes video transmission for all terminals joining the video channel.
In specific implementation, for each video channel in the created multiple video channels, if the video channel does not have a video push task currently, releasing the video channel; if the video channel currently has a video pushing task, cleaning the terminal which finishes watching out the video channel; and the terminal which finishes watching is a terminal irrelevant to the video push task.
The video pushing task may refer to: and sending video sending tasks of videos in corresponding time periods to the terminal, wherein the video sending tasks comprise video sending tasks in channel time periods and video sending tasks in coincident time periods. When the video push task does not exist in the video channel at present, the current video channel is characterized in that no video is sent to any terminal, so that the video channel can be released, and the released channel resources can be multiplexed by video sending services in other periods.
The video channel has a video push task at present, and the video channel is characterized to transmit video to one or more terminals, that is, for each terminal added to the video channel, either the video in the whole channel period is watched or the video in the channel period overlapping period is watched, so that the watching end time of different terminals can be different, that is, some terminals end watching first and some terminals end watching later. At this time, the terminal that has finished watching can be cleared out of the video channel, that is, the terminal that has finished watching in the coincidence time period or the channel time period, is cleared out, so that the video channel is prevented from being crowded by terminals without watching demands.
By adopting the embodiment, when the different video data is sent to each terminal in turn in the video channel, the terminal which finishes watching can be cleared out of the video sending team dynamically, for example, the terminal list is cleared out, so that the terminal which finishes watching video can be prevented from continuously occupying the video channel.
In the following, taking the implementation environment shown in fig. 1 as an example, a video transmission method according to the present application is generally described with reference to a specific example:
1. for user 1 (corresponding to the user of terminal a in fig. 1) who initially requests for the recorded data within 15:00-16:00, a video channel with the period coinciding with 15:00-16:00 does not exist, a live channel a1 is created, and the video stream of 15:00-16:00 is pulled from the terminal device of the scheduling room to user 1. At this time, the called video is cached in the server.
2. When a new user 2 (corresponding to the user of terminal B in fig. 1) requests to view the video, it is determined whether the video of the time slot is included in the existing broadcast according to the requested time slot of user 2.
The following are specifically distinguished:
the first condition is as follows: the request period for user 2 is a fractional period of 15:00-16:00, such as 15:00-15:30, which is the case when user 2 subscribes to the a1 channel without establishing a new live channel and informs the a1 channel of the start time requested by user 2. The A1 channel judges the offset of the video data needed by the user 2 in the storage queue according to the starting time requested by the user 2 and the mapping relation corresponding to the GOP data, continuously traverses the subscription group, and sends the corresponding video data to the users in the group in turn through the A1 channel; in this process, the user 2 keeps occupying the a1 channel to send data until the subscription of the user 2 is cancelled and the streaming is ended at the end of the user 2 request period.
Case two: the request period of user 2 has a period that coincides with 15:00-16:00, and additionally has a period that does not coincide with 15:00-16: 00.
Case two-1: when the coincidence time interval is in front and the non-coincidence time interval is in the back, for example, the request time interval of the user 2 is 15:30-17:00, the coincidence time interval transmits data according to the situation one, after the transmission is finished, the non-coincidence time interval is inquired whether a channel (representing the video cached with the time interval) containing the time interval exists at present, if a channel A3 meeting the condition exists, the user 2 subscribes to the A3 channel, the starting time of the non-coincidence time interval is marked to the channel A3, the subscription group is continuously traversed, and the data is transmitted to the users in the A3 channel in turn.
If there is no channel A3 meeting this condition, the channel whose viewing has ended may be used to request a video in a non-overlapping time period, and the channel whose viewing has ended may be an a1 channel whose viewing has ended or a channel in another time period. If not, the new channel A4 is created and video with non-overlapping time periods is transmitted with the new channel A4.
Case two-2: when the overlapped time period is later and the non-overlapped time period is earlier, whether a channel (representing the video cached with the time period) containing the time period exists at present or not is inquired for the non-overlapped time period, if the channel A5 meeting the condition exists, the user 2 subscribes the channel A5, the starting time of the non-overlapped time period is calibrated to the channel A5, the subscription group is continuously traversed, data is sent to the users in the channel A5 in turn, and after the data is sent, the video corresponding to the overlapped time period is sent to the user 2 through the channel A1 according to the process of the condition I.
It should be noted that if there is no channel a5 meeting this condition in the non-overlapping time period, a new channel a6 may be created to request recording in the non-overlapping time period, where the a1 channel needs to be reserved to send the video in the overlapping time period to the user 2 because the overlapping time period is later.
Of course, if the user 1 in the channel a1 finishes watching when sending the video of the overlapped time period to the user 2, in practice, the channel a1 may be reserved, or after releasing the channel a1, a new channel a7 may be created to send data to the user 2 through the channel a7, in this case, if the user 3 requests a video of 15:00-16:00, the user 3 (corresponding to the user of the terminal C in fig. 1) may be added to the channel a7 to send the video to the user 3 and the user 2 in turn.
And a third situation: and if the request time interval of the user 2 is not intersected with the time interval of 15:00-16:00, initially creating an A8 channel according to the request of the user 2, and calling the video from the terminal equipment and sending the video to the user 2 through the A8 channel.
Referring to fig. 7, a video transmitting method apparatus is shown, which may specifically include the following modules:
a channel determining module 701, configured to determine, after receiving a service request of a video in a target time period, whether a first video channel having a time period coinciding with the target time period exists; wherein, different video channels are used for pushing videos in different time periods;
a video sending module 702, configured to send, in the presence of the first video channel, a video of the target time period by using at least the first video channel.
Optionally, the video sending module 702 includes:
the first sending unit is used for sending the video of the coincidence time period by utilizing a first video channel of the coincidence time period for the coincidence time period in the target time period;
and the second sending unit is used for newly establishing a second video channel for the residual time interval except the coincidence time interval in the target time interval so as to send the video of the residual time interval.
Optionally, the apparatus further comprises:
the cache module is used for caching the called video data when the first video channel is used for sending the called video data;
the video sending module 702 is specifically configured to, for the video in the coincidence period, extract a video corresponding to the coincidence period from the cached video, and send the video by using the first video channel.
Optionally, the video sending module 702 includes:
the list acquisition unit is used for acquiring a terminal list corresponding to the first video channel; the watching time period of the terminal in the terminal list is coincident with the time period corresponding to the first video channel;
and the video sending unit is used for sending the video of the required target time interval to each terminal in the terminal list through the first video channel by turns based on the terminal list.
Optionally, the first video channel is a live channel; the device further comprises:
the live broadcast time determining module is used for determining the current live broadcast time of the first video channel;
the video sending module 702 includes:
a start time determining unit, configured to determine a start time of a coincidence period in the target period;
a third sending unit, configured to send live broadcast data currently called in real time and video data offset from the start time in turn by using the first video channel when the start time is before the live broadcast play time;
and the fourth sending unit is used for utilizing the first video channel to live broadcast the video in the superposition time period when waiting for the arrival of the video data at the starting moment under the condition that the starting moment is positioned after the live broadcast moment.
Optionally, the apparatus further comprises:
the first releasing module is used for releasing each video channel in the created video channels if the video channel does not have a video pushing task currently;
the second release module is used for clearing the terminal which finishes watching out of the video channel if the video channel currently has a video push task; and the terminal which finishes watching is a terminal irrelevant to the video push task.
Optionally, the apparatus further comprises:
and the channel creating module is used for creating a new third video channel if the first video channel does not exist, and sending the video of the target time period by using the third video channel.
It should be noted that the device embodiments are similar to the method embodiments, so that the description is simple, and reference may be made to the method embodiments for relevant points.
The embodiment of the invention also provides a server, which comprises a remote service module, wherein the remote service module is used for executing the video sending method in any embodiment.
An embodiment of the present invention further provides an electronic device, including:
one or more processors; and
one or more machine readable media having instructions stored thereon that, when executed by the one or more processors, cause the apparatus to perform a method of video transmission according to any of the above embodiments of the invention.
Embodiments of the present invention further provide a computer-readable storage medium, which stores a computer program for enabling a processor to execute a video transmission method according to any of the above embodiments of the present invention.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and so forth) having computer-usable program code embodied therein.
Embodiments of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all changes and modifications that fall within the true scope of the embodiments of the present invention.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or terminal that comprises the element.
The video transmitting method, the video transmitting device, the electronic device and the storage medium provided by the invention are described in detail, and the principle and the implementation of the invention are explained by applying specific examples, and the description of the above examples is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (10)

1. A video transmission method applied to a server, the method comprising:
after receiving a request service of a target time interval video, determining whether a first video channel with a coincidence time interval with the target time interval exists; wherein, different video channels are used for pushing videos in different time periods;
and if so, transmitting the video of the target time interval by using at least the first video channel.
2. The method of claim 1, wherein transmitting the video of the target time period using at least the first video channel comprises:
for a coincidence time period in the target time period, sending a video of the coincidence time period by using a first video channel of the coincidence time period;
and newly establishing a second video channel for the remaining time interval except the coincidence time interval in the target time interval to send the video of the remaining time interval.
3. The method of claim 1, further comprising:
caching the called video data when the called video data is sent by using the first video channel;
transmitting video of the target time period using at least the first video channel, comprising:
and for the video of the coincidence time period, extracting the video corresponding to the coincidence time period from the cached video, and transmitting the video by utilizing the first video channel.
4. The method of claim 1, wherein transmitting the video of the target time period using at least the first video channel comprises:
acquiring a terminal list corresponding to the first video channel; the watching time period of the terminal in the terminal list is coincident with the time period corresponding to the first video channel;
and sending videos of the respective required target time periods to each terminal in the terminal list through the first video channel by turns based on the terminal list.
5. The method of any of claims 1-4, wherein the first video channel is a live channel; the method further comprises the following steps:
determining the current live broadcast time of the first video channel;
transmitting video of the target time period using at least the first video channel, comprising:
determining the starting time of the coincidence time period in the target time period;
under the condition that the starting time is before the live broadcast playing time, the live broadcast data which are currently called in real time and the video data which are deviated from the starting time are sent by utilizing the first video channel in turn;
and under the condition that the starting moment is positioned after the live broadcast playing moment, when waiting for the video data of the starting moment to arrive, live broadcasting the video of the superposition time period by using the first video channel.
6. The method according to any one of claims 1-4, further comprising:
for each video channel in the created multiple video channels, if the video channel does not have a video pushing task currently, releasing the video channel;
if the video channel currently has a video pushing task, cleaning the terminal which finishes watching out the video channel; and the terminal which finishes watching is a terminal irrelevant to the video push task.
7. The method of claim 1, further comprising:
and if the first video channel does not exist, creating a new third video channel, and sending the video of the target time period by using the third video channel.
8. A video transmission apparatus applied to a server, the apparatus comprising:
the channel determining module is used for determining whether a first video channel with a coincidence time interval with the target time interval exists after receiving a request service of a target time interval video; wherein, different video channels are used for pushing videos in different time periods;
and the video sending module is used for sending the video of the target time interval by using at least the first video channel under the condition that the first video channel exists.
9. The electronic equipment is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface are used for realizing the communication between the processor and the memory through the communication bus;
a memory for storing a computer program;
a processor for implementing the video transmission method according to any one of claims 1 to 7 when executing a program stored in a memory.
10. A computer-readable storage medium storing a computer program for causing a processor to execute the video transmission method according to any one of claims 1 to 7.
CN202210599592.8A 2022-05-30 2022-05-30 Video sending method, device, electronic equipment and medium Pending CN115134669A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210599592.8A CN115134669A (en) 2022-05-30 2022-05-30 Video sending method, device, electronic equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210599592.8A CN115134669A (en) 2022-05-30 2022-05-30 Video sending method, device, electronic equipment and medium

Publications (1)

Publication Number Publication Date
CN115134669A true CN115134669A (en) 2022-09-30

Family

ID=83377246

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210599592.8A Pending CN115134669A (en) 2022-05-30 2022-05-30 Video sending method, device, electronic equipment and medium

Country Status (1)

Country Link
CN (1) CN115134669A (en)

Similar Documents

Publication Publication Date Title
US20230256345A1 (en) Game data processing method and apparatus, and storage medium
JP4936751B2 (en) Rapid media channel switching mechanism and access network node including the mechanism
EP2328349B1 (en) Information processing system and information processing device
EP2472857B1 (en) Media stream processing method and communication system and related devices
JP4534997B2 (en) Transmission / reception system, reception apparatus, and reception method
CN110519641A (en) A kind of the video fusion transmission exchange system and method for multi-source multi-protocols
AU2011320410B2 (en) Conference control method, apparatus and system thereof
CN107566918B (en) A kind of low delay under video distribution scene takes the neutrel extraction of root
EP3373588B1 (en) Fast channel switching method and server, and iptv system
US20120066598A1 (en) Multi-source video clip online assembly
CN109561351A (en) Network direct broadcasting back method, device and storage medium
CN112584087B (en) Video conference recording method, electronic device and storage medium
CN109714622A (en) A kind of video data handling procedure, device and electronic equipment
CN102510494A (en) Method and device for synchronizing I frame
US20030093802A1 (en) Pause/resume method of video reproduction in video system
JP2001245281A (en) Network system
CN110602545A (en) Distributed recording execution method for network live broadcast
US10555025B2 (en) Aggregating time-delayed sessions in a video delivery system
CN113766261A (en) Method and device for determining pre-pulling duration, electronic equipment and storage medium
CN115134669A (en) Video sending method, device, electronic equipment and medium
WO2014101471A1 (en) Conference record obtaining method, providing method, device, and system
CN114900707B (en) Live broadcast method and system
JP2016538798A (en) Multipoint spread method
JP2009171294A (en) Video distribution system, video relay apparatus, and video relay method
Fortino et al. A methodology centered on modularization of QoS constraints for the development and performance evaluation of multimedia systems

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