CN109819345B - Live video processing method, time shifting method, video processing device and cloud storage system - Google Patents

Live video processing method, time shifting method, video processing device and cloud storage system Download PDF

Info

Publication number
CN109819345B
CN109819345B CN201711158204.8A CN201711158204A CN109819345B CN 109819345 B CN109819345 B CN 109819345B CN 201711158204 A CN201711158204 A CN 201711158204A CN 109819345 B CN109819345 B CN 109819345B
Authority
CN
China
Prior art keywords
index file
video
storage device
slice
index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711158204.8A
Other languages
Chinese (zh)
Other versions
CN109819345A (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201711158204.8A priority Critical patent/CN109819345B/en
Publication of CN109819345A publication Critical patent/CN109819345A/en
Application granted granted Critical
Publication of CN109819345B publication Critical patent/CN109819345B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The invention discloses a live video processing method, a time shifting method, a video processing device and a cloud storage system, wherein the method comprises the following steps: when live broadcasting starts, acquiring a live broadcasting video; dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices; and uploading the plurality of video slices and the index file obtained by division to a cloud storage system. The technical scheme provided by the application can improve the processing efficiency of the time shifting request.

Description

Live video processing method, time shifting method, video processing device and cloud storage system
Technical Field
The invention relates to the technical field of internet, in particular to a live video processing method, a live video time shifting method, a live video processing device and a cloud storage system.
Background
Live video is increasingly receiving user attention due to its real-time and strong interactivity. Currently, in order to enable a user who misses a live time to view live content that has already been played, a live platform generally provides a time-shifting function for live video. In this way, the user can review the content by dragging the progress bar of the live video.
Currently, a live broadcast platform may accelerate a transmission process of a live broadcast video through a Content Delivery Network (CDN). Therefore, the playing end can acquire the live video pushed by the live client through the nearby edge node. When the time shift processing of the live video is performed, the recording and broadcasting work can be performed by the edge node. Specifically, when receiving a live video, the edge node may store the received live video. In this way, when the subsequent playing end initiates a time shift request to the edge node, the edge node can provide the corresponding review content to the subsequent playing end.
However, in the processing method in the prior art, on one hand, the edge node needs to provide live videos to each playing end, and also needs to perform recording and playing processing on the live videos, and also needs to process a time shift request of the playing end, and provide corresponding review content to each playing end. Thus, the edge node will keep a high load continuously, which will not only affect the push streaming efficiency of the live video, but also affect the processing efficiency of the time shift request.
Disclosure of Invention
The application aims to provide a live video processing method, a time shifting method, a video processing device and a cloud storage system, which can improve the processing efficiency of time shifting requests.
In order to achieve the above object, an aspect of the present application provides a method for processing a live video, where the method includes: when live broadcasting starts, acquiring a live broadcasting video; dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices; and uploading the plurality of video slices and the index file obtained by division to a cloud storage system.
To achieve the above object, another aspect of the present application further provides a video processing apparatus, which includes a memory and a processor, wherein the memory stores a computer program, and the computer program, when executed by the processor, implements the following steps: when live broadcasting starts, acquiring a live broadcasting video; dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices; and uploading the plurality of video slices and the index file obtained by division to a cloud storage system.
In order to achieve the above object, another aspect of the present application further provides a time shifting method for a live video, which provides a plurality of video slices of the live video and an index file of the plurality of video slices, wherein the plurality of video slices and the index file are uploaded by a video processing apparatus; the method comprises the following steps: receiving an index file acquisition request sent by a playing end; responding to the index file acquisition request, reading the index file from a first storage device, and feeding back the index file to the playing end, so that the playing end determines a slice identifier adaptive to a current time shifting time node according to the index file; receiving a video slice acquisition request sent by the playing end, wherein the video slice acquisition request comprises the determined slice identifier; and responding to the video slice acquisition request, reading the target video slice pointed by the slice identification from the second storage device, and providing the target video slice to the playing end.
In order to achieve the above object, another aspect of the present application further provides a cloud storage system, where the cloud storage system includes a first storage device, a second storage device, and a processing module, where: the first storage equipment is used for storing the index file uploaded by the video processing device; the second storage device is used for storing a plurality of video slices uploaded by the video processing device and corresponding to the index file; the processing module is used for receiving an index file acquisition request sent by a playing end; responding to the index file acquisition request, reading the index file from the first storage device, and feeding back the index file to the playing end, so that the playing end determines a slice identifier adapted to a current time-shifting time node according to the index file; receiving a video slice acquisition request sent by the playing end, wherein the video slice acquisition request comprises the determined slice identifier; and responding to the video slice acquisition request, reading the target video slice pointed by the slice identification from the second storage device, and providing the target video slice to the playing end.
Therefore, according to the technical scheme provided by the application, the recording and broadcasting work of the live broadcast video can be completed by the video processing device. When the live broadcast starts, the video processing device can acquire the live broadcast video and can record and broadcast the live broadcast video. In the recording and playing process, the video processing device may divide the live video into a plurality of video slices at specified time intervals, and create an index file of the plurality of video slices. Wherein, the index file can store the index information of each video slice. The index information may include, for example, a start playing time corresponding to the video slice, and may further include a file name of the video slice. In this way, the video processing apparatus may upload the plurality of divided video slices and the index file to the cloud storage system. When the video slices are stored, incremental storage can be performed, and the newly divided video slices can be written into the cloud storage system each time. When the index file is stored, the index file can be stored in an overlaying manner, and the index file stored in the cloud storage system can be overlaid with a new index file every time. In a cloud storage system, a video slice and an index file can be stored separately, and because the index file needs to be stored in a covering manner continuously, the reading and writing speed and performance of a storage device corresponding to the index file can be relatively high. And when the playing end needs to perform time shifting, the corresponding cache content can be preferentially acquired from the edge node of the content distribution network, and if the cache content does not exist in the edge node, the cache content can be acquired from the cloud storage system. Specifically, the playing end may first obtain an index file of the live video from the cloud storage system, and based on the index file, and in combination with the current time shift time node, may determine a file name corresponding to a reviewed video slice. Then, a video slice acquisition request including the file name may be sent to the cloud storage system, and the cloud storage system may thereby read the target video slice having the file name and provide the target video slice to the player. Therefore, according to the technical scheme provided by the application, the high-speed storage device is designed to be used for storing the index file, so that the access is more efficient, the CDN is combined with the cloud storage system, and the accessed content is cached on the CDN edge node, so that the access efficiency of the playing end is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a flow chart of a process of live video according to an embodiment of the present invention;
FIG. 2 is a diagram of a video slice according to an embodiment of the present invention;
FIG. 3 is a schematic structural diagram of a video processing apparatus according to a second embodiment of the present invention;
FIG. 4 is a flowchart of a time shifting method for live video according to a third embodiment of the present invention;
fig. 5 is a schematic structural diagram of a cloud storage system according to a fourth embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
Example one
The application provides a live video processing method which can be applied to a video processing device. The video processing apparatus may be disposed on an edge node in the CDN. Referring to fig. 1, the method may include the following steps.
S11: and when the live broadcast starts, acquiring a live broadcast video.
In this embodiment, the live broadcast client may push the live broadcast video to each playing terminal through the CDN. The live broadcast client can be a client used by a main broadcast, and the playing end can be a client used by a user watching a live broadcast video. In this embodiment, an independent video processing device may be provided, and the video processing device may also establish a connection with the live client through the CDN. When the live client starts to push live video, in order to ensure that the video processing device can record complete video content, the live client can send a live start prompt to the video processing device. After receiving the live broadcast starting prompt, the video processing device can respond to the live broadcast starting prompt and acquire the live broadcast video of the live broadcast client through the edge node of the content distribution network.
S13: dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices.
In this embodiment, after receiving the live video, the video processing apparatus may divide the live video into a plurality of video slices, so that the subsequent playing end may be positioned to the corresponding video slice when dragging the progress bar to select the review content. In particular, the division of the video slices may be performed at specified time intervals. The specified time interval may be a predetermined length of time. Referring to fig. 2, for example, the specified time interval may be 5 seconds, and during the playing of the live video, the video slice may be divided every 5 seconds, and the duration of the obtained video slice may be 5 seconds. Of course, the specified time interval may be changed according to actual requirements, and the shorter the specified time interval is, the more accurate the review content obtained by final positioning may be.
In the present embodiment, when video slices are divided, index information of each video slice can be set every time a video slice is obtained, and the set index information can be written in an index file. Wherein, the index information may include a slice identifier and a start playing time of the video slice. The slice identifier may be a file name set for the video slice. For example, the slice identification of one video slice may be "abc. The start playing time may be a corresponding start playing time of the video slice in the live video. For example, if the video slice shows the content from the 10 th second to the 15 th second of the live video, the starting playing time of the video slice may be the 10 th second.
In this embodiment, each time a current video slice is obtained by dividing, it may be determined whether an index file is currently created. Wherein, the index file can be fixedly stored under the appointed path of the video processing device. In this way, each time a current video slice is obtained by dividing, whether an index file exists under the specified path can be read. If not, the index file is not established currently. At this time, an index file may be newly created under the specified path, and index information of the current video slice may be written in the newly created index file. And if the index file is already established under the specified path, the index information of the current video slice can be added in the established index file.
In this embodiment, the video processing apparatus may slice the Live video using an HTTP Live Streaming (HTTP Live Streaming) protocol to obtain a TS slice conforming to a TS (Transport Stream) encapsulation format, and the index file established for the TS slice may be an m3u8 file.
S15: and uploading the plurality of video slices and the index file obtained by division to a cloud storage system.
In this embodiment, the video slices obtained by dividing by the video processing apparatus and the created index file may be stored in a cloud storage system in a unified manner. When a video slice is stored, the index information of the video slice already sets a slice identifier for the video slice, and then the video slice can be stored in the cloud storage system according to the slice identifier defined by the index information. For example, after a certain video slice is divided, the file name of the video slice is set to "abc.ts" in the corresponding index information, and then the video slice can be stored by using the file name of "abc.ts" when the video slice is stored in the cloud storage system.
In this embodiment, when the video slice is stored in the cloud storage system, incremental storage may be performed, and the newly divided video slice may be written into the cloud storage system each time. For example, a storage space may be set in the cloud storage system, the divided video slices may be sequentially written in the division order of the video slices, and the newly divided video slice may be located after the previously divided video slice. When the index file is stored, the index file can be stored in an overlaying manner, and the index file stored in the cloud storage system can be overlaid with a new index file every time. In the cloud storage system, the video slices and the index files can be stored separately due to different storage modes of the video slices and the index files. Specifically, the index file may be stored in a first storage device of a cloud storage system, and the plurality of video slices may be stored in a second storage device of the cloud storage system. Because the index file needs to be stored in a covering manner continuously, the reading and writing speed and performance of the first storage device corresponding to the index file can be relatively high, and therefore the reading and writing speed of the first storage device can be higher than that of the second storage device. In an actual application scenario, the first storage device may be a solid state disk with a smaller storage space but a faster read-write speed; and the second storage device may be a mechanical hard disk with a large storage space but a slow read-write speed. In this way, when storing video slices and index files, the video slices can be sequentially written into the second storage device, and when storing the index files into the first storage device, the index files already stored in the first storage device can be overwritten with the current index files.
In this way, through the processing of the video processing device, the live video starting to be live can be stored in the cloud storage system in a slicing mode, and the time shifting processing of the live video can be provided by the cloud storage system subsequently.
Example two
Referring to fig. 3, the present application further provides a video processing apparatus, which includes a memory and a processor, wherein the memory stores a computer program, and the computer program, when executed by the processor, implements the following steps:
s11: when live broadcasting starts, acquiring a live broadcasting video;
s13: dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices;
s15: uploading the plurality of video slices and the index file obtained by division to a cloud storage system
The video processing apparatus provided in this embodiment may be explained in comparison with the manner of the live video processing method, and may achieve the technical effects of the method embodiments, which are not described herein again.
EXAMPLE III
The application also provides a time shifting method of the live video, and the method can be applied to a cloud storage system. The cloud storage system can store a plurality of video slices of live videos and index files of the video slices, wherein the video slices and the index files can be uploaded by a video processing device. As can be seen from the above embodiments, the index file may be stored in a first storage device, the plurality of video slices may be stored in a second storage device, and the read-write speed of the first storage device may be greater than the read-write speed of the second storage device. When the video processing device uploads the plurality of video slices and the index file, the cloud storage system may adopt an incremental storage mode for the video slices and an overlay storage mode for the index file. Specifically, the cloud storage system may sequentially write each video slice into the second storage device, and may overwrite an index file already stored in the first storage device with a currently received index file.
Referring to fig. 4, the time shifting method of the live video may include the following steps.
S21: and receiving an index file acquisition request sent by a playing end.
In this embodiment, when a user needs to watch the content that the live video has been played, the progress bar of the live video may be dragged to a certain time node, and the content that has been played may be watched from the time node. When the progress bar of the live video is dragged to the current time node, the playing end may send a time shift request to the cloud storage system. Specifically, the time shift request may be an index file acquisition request. In this embodiment, the index file acquisition request may include an identifier of the live video, so that when the cloud storage system acquires the index file acquisition request, it can be known to which live video the request is initiated.
S23: and responding to the index file acquisition request, reading the index file from the first storage device, and feeding back the index file to the playing end, so that the playing end determines the slice identifier adaptive to the current time shifting time node according to the index file.
In this embodiment, after receiving the index file acquisition request, the cloud storage system may extract the identifier of the live video from the index file acquisition request. And then acquiring a corresponding index file from the cloud storage system based on the identification of the live video.
Specifically, the cloud storage system may preferentially detect whether an index file adapted to the index file acquisition request exists in the cache. The index file adapted to the index file obtaining request may indicate that the identifier of the index file is consistent with the identifier carried in the index file obtaining request. If the index file exists, the cloud storage system can directly provide the index file in the cache to the playing end. If the index file does not exist, the cloud storage system may read the index file from the first storage device, and provide the read index file to the playing terminal.
In an embodiment, in order to improve reliability of the index file, the index file in the first storage device may be written into the second storage device in a time-delay synchronization manner according to a specified time period, and when a current index file is written into the second storage device, the index file already stored in the second storage device is overwritten by the current index file. The specified time period can be adjusted according to actual requirements. In this way, when the index file cannot be read in the first storage device, the cloud storage system may read the index file from the second storage device.
In this embodiment, after the cloud storage system provides the index file to the playing end, the playing end may determine the video slice that needs to be currently viewed. Specifically, the index file may include index information of each video slice, where the index information includes a slice identifier and a start playing time of each video slice. The slice identifier may be a file name of the video slice, and the start playing time may be a start playing time of the video slice in the live video. In this way, the playing end may determine the slice identifier adapted to the current time shift node according to the index file. Specifically, the playing end may query, in the index file, a target start playing time closest to the current time shift time node, and use a slice identifier corresponding to the target start playing time as a slice identifier adapted to the current time shift time node. For example, the user drags the progress bar of the live video to a time node of 5 minutes and 13 seconds, and at this time, the index file fed back by the cloud storage system may be queried to find the initial playing time of 5 minutes and 15 seconds, which is closest to the time node, in the index file. And the file name of the video slice corresponding to the starting playing time of 5 minutes and 15 seconds can be "abc.ts", so that the video slice of "abc.ts" can be the target video slice which is matched with the time node currently dragged by the user.
S25: and receiving a video slice acquisition request sent by the playing end, wherein the video slice acquisition request comprises the determined slice identifier.
In this embodiment, after the playing end determines the slice identifier adapted to the current time node, the time shift request may be sent to the cloud storage system again. At this time, the time shift request may be a video slice acquisition request, and the determined slice identifier may be included in the video slice acquisition request. In this way, after receiving the video slice acquisition request, the cloud storage system can know which video slice should be provided to the playing terminal.
S27: and responding to the video slice acquisition request, reading the target video slice pointed by the slice identification from the second storage device, and providing the target video slice to the playing end.
In this embodiment, after the cloud storage system receives the video slice acquisition request, the slice identifier therein may be extracted. A target video slice matching the slice identification may then be queried from the second storage device. After the target video slice is inquired, the target video slice can be read and provided to the playing end.
In an embodiment, after receiving the video slice acquisition request, the cloud storage system may preferentially detect whether a video slice adapted to the video slice acquisition request exists in a cache. The video slice adapted to the video slice acquisition request may indicate that the identifier of the video slice is consistent with the slice identifier carried in the video slice acquisition request. If the video slices exist, the cloud storage system can directly provide the video slices in the cache to the playing end. If the target video slice does not exist in the second storage device, the cloud storage system may read the corresponding target video slice from the second storage device, and provide the read target video slice to the playing end.
It should be noted that, when the playing end sends the time shift request, the time shift request preferentially reaches the edge node of the CDN, so that the edge node may determine whether the index file and the video slice corresponding to the time shift request currently exist, and if so, may directly provide the corresponding index file and the video slice to the playing end. If not, the corresponding index file and video slice may be retrieved back from the cloud storage system according to the steps described in S21 to S27 above.
In an embodiment, after the cloud storage system feeds back the index file to the playing terminal, the index file may be written into a cache, so that when the cloud storage system receives an index file acquisition request pointing to the index file again, the index file stored in the cache may be fed back to a requesting party without reading a corresponding index file from the first storage device, thereby improving the feedback speed of the index file. Similarly, after the target video slice is provided to the playing end, the cloud storage system may write the target video slice into the cache, so that when a video slice acquisition request pointing to the target video slice is received again, the target video slice stored in the cache is fed back to the requesting party, and thus, the corresponding target video slice does not need to be read from the second storage device, and the feedback speed of the target video slice is increased.
Example four
Referring to fig. 5, the present application further provides a cloud storage system, where the cloud storage system includes a first storage device, a second storage device, and a processing module, where:
the first storage equipment is used for storing the index file uploaded by the video processing device;
the second storage device is used for storing a plurality of video slices uploaded by the video processing device and corresponding to the index file;
the processing module is used for receiving an index file acquisition request sent by a playing end; responding to the index file acquisition request, reading the index file from the first storage device, and feeding back the index file to the playing end, so that the playing end determines a slice identifier adapted to a current time-shifting time node according to the index file; receiving a video slice acquisition request sent by the playing end, wherein the video slice acquisition request comprises the determined slice identifier; and responding to the video slice acquisition request, reading the target video slice pointed by the slice identification from the second storage device, and providing the target video slice to the playing end.
Therefore, according to the technical scheme provided by the application, the recording and broadcasting work of the live broadcast video can be completed by the video processing device. When the live broadcast starts, the video processing device can acquire the live broadcast video and can record and broadcast the live broadcast video. In the recording and playing process, the video processing device may divide the live video into a plurality of video slices at specified time intervals, and create an index file of the plurality of video slices. Wherein, the index file can store the index information of each video slice. The index information may include, for example, a start playing time corresponding to the video slice, and may further include a file name of the video slice. In this way, the video processing apparatus may upload the plurality of divided video slices and the index file to the cloud storage system. When the video slices are stored, incremental storage can be performed, and the newly divided video slices can be written into the cloud storage system each time. When the index file is stored, the index file can be stored in an overlaying manner, and the index file stored in the cloud storage system can be overlaid with a new index file every time. In a cloud storage system, a video slice and an index file can be stored separately, and because the index file needs to be stored in a covering manner continuously, the reading and writing speed and performance of a storage device corresponding to the index file can be relatively high. And when the playing end needs to perform time shifting, the corresponding cache content can be preferentially acquired from the edge node of the content distribution network, and if the cache content does not exist in the edge node, the cache content can be acquired from the cloud storage system. Specifically, the playing end may first obtain an index file of the live video from the cloud storage system, and based on the index file, and in combination with the current time shift time node, may determine a file name corresponding to a reviewed video slice. Then, a video slice acquisition request including the file name may be sent to the cloud storage system, and the cloud storage system may thereby read the target video slice having the file name and provide the target video slice to the player. Therefore, according to the technical scheme provided by the application, the high-speed storage device is designed to be used for storing the index file, so that the access is more efficient, the CDN is combined with the cloud storage system, and the accessed content is cached on the CDN edge node, so that the access efficiency of the playing end is improved.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for both the transmit-side and receive-side embodiments, reference may be made to the introduction of the embodiments of the method described above against the explanation.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (13)

1. A method for processing live video, the method comprising:
when live broadcasting starts, acquiring a live broadcasting video;
dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices;
uploading the plurality of video slices obtained by division and the index file to a cloud storage system;
wherein the index file is stored in a first storage device of a cloud storage system, and the plurality of video slices are stored in a second storage device of the cloud storage system; the reading and writing speed of the first storage device is higher than that of the second storage device, the index file in the first storage device is written into the second storage device according to a specified time period, and when the current index file is written into the second storage device, the index file stored in the second storage device is covered by the current index file.
2. The method of claim 1, wherein obtaining live video comprises:
receiving a live broadcast starting prompt sent by a live broadcast client, responding to the live broadcast starting prompt, and acquiring a live broadcast video of the live broadcast client through an edge node of a content distribution network.
3. The method of claim 1, wherein creating the index file for the plurality of video slices comprises:
when the current video slice is obtained through first division, judging whether an index file is established at present;
if no index file is established currently, an index file is newly established, and index information of the current video slice is written in the newly established index file;
if an index file is established at present, adding the index information of the current video slice into the established index file;
wherein the index information includes a slice identifier of the current video slice and a start playing time.
4. The method of claim 3, wherein uploading the plurality of divided video slices to a cloud storage system comprises:
and storing the video slices in the cloud storage system according to the slice identifications defined by the index information.
5. The method of claim 1, wherein uploading the plurality of divided video slices and the index file to a cloud storage system comprises:
sequentially writing each video slice into the second storage device;
when the index file is stored in the first storage device, the index file already stored in the first storage device is overwritten by the current index file.
6. A video processing apparatus comprising a memory and a processor, wherein the memory stores a computer program that, when executed by the processor, performs the steps of:
when live broadcasting starts, acquiring a live broadcasting video;
dividing the live video into a plurality of video slices according to a specified time interval, and establishing index files of the video slices;
uploading the plurality of video slices obtained by division and the index file to a cloud storage system;
wherein the index file is stored in a first storage device of a cloud storage system, and the plurality of video slices are stored in a second storage device of the cloud storage system; the reading and writing speed of the first storage device is higher than that of the second storage device, the index file in the first storage device is written into the second storage device according to a specified time period, and when the current index file is written into the second storage device, the index file stored in the second storage device is covered by the current index file.
7. A time shifting method of live video is characterized in that a plurality of video slices of live video and index files of the video slices are provided, wherein the video slices and the index files are uploaded by a video processing device; the method comprises the following steps:
receiving an index file acquisition request sent by a playing end;
responding to the index file acquisition request, reading the index file from a first storage device, and feeding back the index file to the playing end, so that the playing end determines a slice identifier adaptive to a current time shifting time node according to the index file;
receiving a video slice acquisition request sent by the playing end, wherein the video slice acquisition request comprises the determined slice identifier;
responding to the video slice acquisition request, reading a target video slice pointed by the slice identification from a second storage device, and providing the target video slice to the playing end;
the reading and writing speed of the first storage device is higher than that of the second storage device, the index file in the first storage device is written into the second storage device according to a specified time period, and when the current index file is written into the second storage device, the index file stored in the second storage device is covered by the current index file.
8. The method according to claim 7, wherein after receiving an index file acquisition request or a video slice acquisition request from a playing end, the method further comprises:
detecting whether an index file or a video slice which is matched with the index file acquisition request or the video slice acquisition request exists in a cache of a cloud storage system;
if yes, providing the adaptive index file or video slice to the playing end;
and if not, reading the index file from the first storage device or reading the target video slice from the second storage device.
9. The method of claim 7, wherein upon receiving the plurality of video slices and the index file uploaded by the video processing apparatus, writing each of the video slices in the second storage device in sequence and overwriting the index file already stored in the first storage device with the currently received index file.
10. The method of claim 7, wherein the index file comprises index information of each of the video slices, and the index information comprises a slice identifier and a start playing time of each of the video slices;
the determining, by the playing end, the slice identifier adapted to the current time-shift time node according to the index file includes:
and inquiring the target starting playing time which is closest to the current time shifting time node in the index file, and taking the slice identifier corresponding to the target starting playing time as the slice identifier matched with the current time shifting time node.
11. The method of claim 7, wherein when an index file cannot be read in the first storage device, reading the index file from the second storage device.
12. The method of claim 7, wherein after responding to the index file to the playback end, the method further comprises:
writing the index file responding to the playing terminal into a cache, so that when an index file acquisition request pointing to the index file is received again, the index file stored in the cache is responded to a requester;
accordingly, after responding the target video slice to the play end, the method further comprises:
and writing the target video slice into a cache, so that when a video slice acquisition request pointing to the target video slice is received again, the target video slice stored in the cache is fed back to a requester.
13. The cloud storage system is characterized by comprising a first storage device, a second storage device and a processing module, wherein:
the first storage equipment is used for storing the index file uploaded by the video processing device;
the second storage device is used for storing a plurality of video slices uploaded by the video processing device and corresponding to the index file;
the processing module is used for receiving an index file acquisition request sent by a playing end; responding to the index file acquisition request, reading the index file from the first storage device, and responding to the index file to the playing end, so that the playing end determines a slice identifier adapted to a current time-shifting time node according to the index file; receiving a video slice acquisition request sent by the playing end, wherein the video slice acquisition request comprises the determined slice identifier; responding to the video slice acquisition request, reading a target video slice pointed by the slice identification from the second storage device, and providing the target video slice to the playing end;
the reading and writing speed of the first storage device is higher than that of the second storage device, the index file in the first storage device is written into the second storage device according to a specified time period, and when the current index file is written into the second storage device, the index file stored in the second storage device is covered by the current index file.
CN201711158204.8A 2017-11-20 2017-11-20 Live video processing method, time shifting method, video processing device and cloud storage system Active CN109819345B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711158204.8A CN109819345B (en) 2017-11-20 2017-11-20 Live video processing method, time shifting method, video processing device and cloud storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711158204.8A CN109819345B (en) 2017-11-20 2017-11-20 Live video processing method, time shifting method, video processing device and cloud storage system

Publications (2)

Publication Number Publication Date
CN109819345A CN109819345A (en) 2019-05-28
CN109819345B true CN109819345B (en) 2021-08-10

Family

ID=66599103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711158204.8A Active CN109819345B (en) 2017-11-20 2017-11-20 Live video processing method, time shifting method, video processing device and cloud storage system

Country Status (1)

Country Link
CN (1) CN109819345B (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110381326B (en) 2019-06-19 2022-01-28 北京百度网讯科技有限公司 Video system, processing method, device and computer readable medium
CN110351506A (en) * 2019-07-17 2019-10-18 视联动力信息技术股份有限公司 A kind of video recording method, device, electronic equipment and readable storage medium storing program for executing
CN111182330B (en) * 2019-08-15 2021-11-09 腾讯科技(深圳)有限公司 Video playing method and device
CN113364724B (en) * 2020-03-05 2022-12-30 中国电信股份有限公司 Live broadcast distribution method, system, device and computer readable storage medium
CN113709412B (en) * 2020-05-21 2023-05-19 中国电信股份有限公司 Live stream processing method, device and system and computer readable storage medium
CN112565906A (en) * 2020-11-05 2021-03-26 深圳市麦谷科技有限公司 On-demand video processing method and system
CN112492341B (en) * 2020-11-30 2024-02-23 深圳前海微众银行股份有限公司 Live broadcast time shift caching method, device and system and computer readable storage medium
CN112202932B (en) * 2020-12-07 2021-04-09 北京欣博电子科技有限公司 Method and device for performing structured analysis on video based on edge calculation
CN113207007B (en) * 2021-04-29 2022-11-15 杭州当虹科技股份有限公司 Live broadcast recording method based on HLS protocol
CN113115120B (en) * 2021-05-27 2022-12-23 武汉斗鱼鱼乐网络科技有限公司 Video slicing method and device, electronic equipment and storage medium
CN114449001A (en) * 2021-12-30 2022-05-06 天翼云科技有限公司 Cloud storage implementation method, device, equipment and storage medium of streaming media data
CN114584806A (en) * 2022-03-07 2022-06-03 湖南国科微电子股份有限公司 Video source file processing method, video playing method, device and equipment
CN114630192A (en) * 2022-03-16 2022-06-14 深圳法政信息技术有限公司 Video evidence storing method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102629269A (en) * 2012-03-09 2012-08-08 深圳市民德电子科技有限公司 Searching and storing method for embedded database
CN105353986A (en) * 2015-11-11 2016-02-24 东莞福泽尔电子科技有限公司 Vehicle-mounted DVR (Digital Video Record) raw disk file storage system
CN105898530A (en) * 2015-12-07 2016-08-24 乐视云计算有限公司 Video file caching method and system
CN106649722A (en) * 2016-12-23 2017-05-10 郑州天迈科技股份有限公司 Storing and inquiring method for high-frequency data of monitoring system
CN107870973A (en) * 2017-09-20 2018-04-03 广东东为信息技术有限公司 A kind of document storage system accelerated multi-path monitoring and played back simultaneously

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004760B (en) * 2010-11-03 2013-08-14 深圳市龙视传媒有限公司 Multimedia file storing and applying method, related device and system
US8930975B2 (en) * 2013-05-17 2015-01-06 Rovi Guides, Inc. Methods and systems for compensating for disabilities when presenting a media asset
CN104469433B (en) * 2013-09-13 2018-09-07 深圳市腾讯计算机系统有限公司 Method and device is reviewed in a kind of net cast
CN103618912A (en) * 2013-11-26 2014-03-05 乐视网信息技术(北京)股份有限公司 Live telecast time shifting method and server
CN104410879B (en) * 2014-12-04 2018-11-27 百视通网络电视技术发展有限责任公司 Time shift implementation method and device, server
CN106385619A (en) * 2016-09-14 2017-02-08 乐视控股(北京)有限公司 Replay method and device for live broadcast video stream
CN106685942B (en) * 2016-12-20 2020-07-24 徐亮 Video live broadcast playback system and video live broadcast playback method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102629269A (en) * 2012-03-09 2012-08-08 深圳市民德电子科技有限公司 Searching and storing method for embedded database
CN105353986A (en) * 2015-11-11 2016-02-24 东莞福泽尔电子科技有限公司 Vehicle-mounted DVR (Digital Video Record) raw disk file storage system
CN105898530A (en) * 2015-12-07 2016-08-24 乐视云计算有限公司 Video file caching method and system
CN106649722A (en) * 2016-12-23 2017-05-10 郑州天迈科技股份有限公司 Storing and inquiring method for high-frequency data of monitoring system
CN107870973A (en) * 2017-09-20 2018-04-03 广东东为信息技术有限公司 A kind of document storage system accelerated multi-path monitoring and played back simultaneously

Also Published As

Publication number Publication date
CN109819345A (en) 2019-05-28

Similar Documents

Publication Publication Date Title
CN109819345B (en) Live video processing method, time shifting method, video processing device and cloud storage system
CN106572358B (en) Live broadcast time shifting method and client
US10771824B1 (en) System for managing video playback using a server generated manifest/playlist
US11350139B2 (en) Video live broadcast method and apparatus
US9852762B2 (en) User interface for video preview creation
US8578042B2 (en) Method, system and device for playing streaming media
CN109729371B (en) Live broadcast time shifting system and method based on HLS protocol multilevel management
WO2015035942A1 (en) Method for playing back live video and device
US20140040026A1 (en) Systems and methods for including advertisements in streaming content
EP3471421B1 (en) Live broadcast video replay method, server, and system
CN109474854B (en) Video playing method, playlist generating method and related equipment
CN105282627A (en) Method for acquiring a live video clip and server
WO2017092327A1 (en) Playing method and apparatus
WO2009022205A2 (en) Improved resolution video file retrieval
US9986267B2 (en) Methods and systems for dynamically editing, encoding, posting and updating live video content
CN104125516A (en) Media file receiving method and apparatus, media file sending method and apparatus, and system
US10341035B2 (en) Method for continuously playing, on a client device, a content broadcast within a peer-to-peer network
US20130110980A1 (en) System and method for predicitive trick play using adaptive video streaming
CN106878815B (en) Video playing method and device
CN112218165B (en) Video playing control method and device, electronic equipment and storage medium
CN110198493B (en) Media data downloading method, device, computer equipment, storage medium and system
JP2017069636A (en) Information processing device, distribution method and program
US20170013037A1 (en) Media fragment rotation method, client and system
KR101666918B1 (en) Method and apparatus for skip and seek processing in streaming service
CN114025199A (en) Live video editing method, device and system

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