CN101378490B - Device, client terminal and method for implementing stream medium video order programme - Google Patents
Device, client terminal and method for implementing stream medium video order programme Download PDFInfo
- Publication number
- CN101378490B CN101378490B CN2007101211404A CN200710121140A CN101378490B CN 101378490 B CN101378490 B CN 101378490B CN 2007101211404 A CN2007101211404 A CN 2007101211404A CN 200710121140 A CN200710121140 A CN 200710121140A CN 101378490 B CN101378490 B CN 101378490B
- Authority
- CN
- China
- Prior art keywords
- video
- demand
- video content
- demand client
- client
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000007781 pre-processing Methods 0.000 claims abstract description 18
- 230000000977 initiatory effect Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 14
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 abstract description 3
- 238000007726 management method Methods 0.000 description 29
- 238000005516 engineering process Methods 0.000 description 20
- 239000000284 extract Substances 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention discloses a recording front end of a streaming media video content for realizing streaming media video-on-demand; the recording front end comprises an acquisition unit, an extraction unit and a pre-processing unit. The acquisition unit is used for acquiring video contents from storage equipment; the extraction unit is used for extracting video pictures, of the video contents, that are corresponding to video frames; the pre-processing unit is used for processing the video pictures and storing the pre-processed video contents into the storage equipment. The invention also discloses a device, a client terminal and a method for realizing streaming media video-on-demand. The device, the client terminal and the method for realizing streaming media video-on-demand adopted by the invention relieve the bandwidth load of a streaming media video on demand server and the load of the control request of processing client terminal video-on-demand.
Description
Technical Field
The invention relates to a video-on-demand technology, in particular to a streaming media video content input front end, a device, an on-demand client and a method for realizing streaming media video-on-demand.
Background
The streaming media technology refers to: the technology of transmitting multimedia file on network by using stream technology is characterized by that it can download and play it at the same time. The streaming media video-on-demand technology refers to: techniques for playing a streaming video program according to the needs of a user. Streaming video-on-demand technology is also referred to as interactive streaming video-on-demand technology.
At present, the existing streaming media video-on-demand technology adopts a server/client mode, and completely stores streaming media video programs on a large storage device of a server in advance, and the storage device of the server can be a streaming media video content database for storing all video programs requested to be on-demand by a client. Then, with the existing streaming media video-on-demand device shown in fig. 1, the flow of implementing streaming media video-on-demand in the prior art includes the following steps:
step 101, the on-demand client 21 or the on-demand client 22 initiates an on-demand request to the streaming media vod server 1.
Step 102, the streaming media video-on-demand server 1 responds to the on-demand request of the on-demand client 21 or the on-demand client 22, and initiates a query request to the storage device 3 to query the video program requested to be requested by the current on-demand client.
Step 103, after the streaming media vod server 1 obtains the video program from the storage device 3, the video program is returned to the vod client currently connected to the streaming media vod server 1.
As can be known from the above-mentioned flow of implementing streaming media video on demand in the prior art, the pressure of the streaming media video on demand server is very large due to the prior art, which mainly represents the bandwidth pressure. Since the streaming video-on-demand server needs to maintain a separate connection for each point of the client, all the video streams need to be downloaded from the streaming video-on-demand server, and the bandwidth consumption is very large. The calculation is performed by using a video stream with a code rate of 400kbps, and if 10000 persons are required to be supported for simultaneous request, the bandwidth required by a pure video stream needs to reach the flow of 400kbps × 10000 ═ 4000M ═ 4G.
Based on the above-mentioned flow of implementing streaming media video on demand in the prior art, further, the streaming media video on demand server may also respond to the video control request of the received on demand client, such as play, fast forward, fast rewind, time search, etc., and return the video stream corresponding to the format of the video control request to the on demand client, and implement the functions of play, fast forward, fast rewind, time search, etc. at the on demand client.
For example, the on-demand client requests an on-demand video program a, and the current video control request of the on-demand client is a play request. Then, after receiving the on-demand request of the on-demand client, the streaming media video-on-demand server firstly sends a query request to the streaming media video content database, and returns a query result to the on-demand client after querying a storage address of the video program A in the streaming media video content database; then, the on-demand client initiates a play request, and the streaming media video-on-demand server returns the video program A to the on-demand client by adopting the video stream corresponding to the play request format. Here, the video stream corresponding to the play request format is a normal stream. If the current video control request of the on-demand client is changed into the fast forward request, the streaming media video-on-demand server stops sending the original normal stream after receiving the fast forward request, and returns the video program A to the on-demand client by adopting the video stream corresponding to the format of the fast forward request. Here, the video stream corresponding to the fast forward request format is a processed fast forward stream.
Such processed fast-forward streams are typically encoded by an encoder of a streaming video-on-demand server and consist of encoded video independent frames. By video independent frame is meant: for the compressed data frame generated by the video compression technology, the decoder corresponding to the on-demand client can directly decode and restore the original image before compression only according to the key frame data contained in the video independent frames. And the streaming media video-on-demand server extracts the corresponding video independent frame according to the fast forward speed of the on-demand client. For example, if the on-demand client fast forwards at 8 times, the streaming media video-on-demand server extracts key frame data in the independent video frames every 8 seconds and sends the key frame data to the on-demand client, and after receiving the key frame data, the on-demand client decodes the key frame data by using a corresponding decoder and displays an original image for the user to determine the fast forwarding position. If the current video control request of the on-demand client is changed into the stop request, the fast forward is stopped, the streaming media video-on-demand server adopts the video stream with the format corresponding to the stop request from the current fast forward position, the video program A is returned to the on-demand client, and the client restarts buffering data and playing. Here, the video stream corresponding to the stop request format is a normal stream.
As can be seen from the above example of requesting the on-demand video program a by the on-demand client, the fast forward stream obtained by the prior art must rely on the encoder of the streaming media video on-demand server and the corresponding on-demand client decoder to complete the encoding and decoding of the video stream and obtain the original image required for fast forward display, and the principles of processing other video control requests such as fast rewind, time search, etc. are similar thereto. Then, the prior art will cause the streaming media vod server to be very stressful, mainly representing the stress in processing the video control request of the vod client.
When the streaming media video-on-demand server processes the video control request of the on-demand client, the streaming media video-on-demand server needs to process the video stream first, that is, the streaming media video-on-demand server needs to analyze the normal stream, then extracts appropriate key frame data contained in the independent video frames, and combines the appropriate key frame data into a video stream which corresponds to the video control request format of the on-demand client and is subjected to coding processing, and the video stream is returned to the on-demand client. Moreover, the streaming media vod server also needs to maintain an individual connection for each vod client, so the streaming media vod server needs to return the video stream after being encoded individually to the corresponding vod client according to the video control requests of different vod clients, which inevitably results in repeated processing and load of the streaming media vod server.
Among the two pressures leading to the streaming video-on-demand server, the impact is significant, especially in terms of bandwidth pressure. In order to reduce the bandwidth requirement of the streaming media vod server, the bandwidth used by the video stream itself needs to be reduced.
Because the streaming media generally adopts the video coding technology and the application of the video coding technology, the video stream subjected to coding processing needs to be decoded by a corresponding on-demand client decoder, and the decoding of the video stream can be completed only by certain cache data. Meanwhile, in order to enable the video stream to be smoothly played even under the condition of network bandwidth fluctuation, certain data also needs to be cached. Therefore, the processing efficiency of processing video control requests, such as fast forward, fast backward, time search, etc., using the prior art is low. For example, fast forwarding once requires waiting a certain buffering time before seeing the corresponding video frame fast forwarded to the position. Especially, in the case of a small network bandwidth of the wide area network, the time for the user to wait is longer, which causes an abnormal difficulty that the user searches for a position where the user wants to watch a program, and significantly reduces the user experience of using the streaming media for video on demand.
In summary, the prior art has the following disadvantages: because the streaming media video-on-demand server maintains a separate network connection for each on-demand client and processes the video control request of the on-demand client separately, the bandwidth of the streaming media video-on-demand server and the pressure of processing the video control request of the on-demand client are both very large; meanwhile, in order to reduce the bandwidth pressure of the streaming media video-on-demand server, the experience satisfaction degree of the user using the streaming media video-on-demand is directly reduced greatly.
Disclosure of Invention
In view of this, the main objective of the present invention is to provide a device for implementing streaming media video-on-demand, which not only relieves the pressure of the streaming media video-on-demand server in two aspects, but also greatly improves the experience satisfaction of the user using the streaming media video-on-demand.
The invention also aims to provide an on-demand client for realizing the streaming media video on demand, which not only relieves the pressure of the streaming media video on demand server in two aspects, but also greatly improves the experience satisfaction degree of the user using the streaming media video on demand.
Another objective of the present invention is to provide a method for implementing streaming media video-on-demand, which not only relieves the pressure of the streaming media video-on-demand server in two aspects, but also greatly improves the experience satisfaction of the user using the streaming media video-on-demand.
In order to achieve the purpose, the technical scheme of the invention is realized as follows:
an apparatus for implementing video on demand of streaming media, the apparatus comprising: the system comprises a streaming media video content input front end, a storage device, a streaming media video on-demand server, an on-demand client management server and an on-demand client resource information storage device; wherein,
the streaming media video content input front end is used for acquiring video content from the storage device, extracting video pictures corresponding to video frames in the video content and preprocessing the video pictures; storing the preprocessed video content to the storage device;
the storage device is used for storing the video content and the preprocessed video content;
the streaming media video-on-demand server is used for initiating a query request to the storage equipment after responding to the video-on-demand request of the video-on-demand client and returning the video content requested to be requested by the video-on-demand client to the video-on-demand client;
the on-demand client is used for initiating an on-demand request to the streaming media video-on-demand server;
the on-demand client management server is used for managing the on-demand client currently logged in the streaming media video-on-demand server;
and the on-demand client resource information storage equipment is used for receiving and storing the relevant storage information of the preprocessed video content reported by the on-demand client after the on-demand client reports the relevant storage information of the preprocessed video content stored by the on-demand client through the on-demand client management server.
And if the storage form of the storage device is a database form, the storage device is specifically a streaming media video content database.
The storage device is connected with the streaming media video-on-demand server or is placed in the streaming media video-on-demand server.
The storage device comprises a video content storage unit and a preprocessed video content storage unit; the video content storage unit is used for storing the video content; the preprocessed video content storage unit is used for storing the preprocessed video content;
correspondingly, the entering of the streaming video content into the front end for storing the preprocessed video content into the storage device further comprises: storing the preprocessed video content into a preprocessed video content storage unit;
the streaming media video-on-demand server is configured to initiate an inquiry request to the storage device, and further configured to: and initiating a query request to the preprocessed video content storage unit.
Wherein the pre-processed video content comprises: a video stream data block index and a video stream data block.
And the on-demand client is further used for updating the relevant storage information of the preprocessed video content to the on-demand client resource information storage equipment after the preprocessed video content requesting on-demand is obtained.
And if the storage form of the on-demand client resource information storage equipment is a database form, the on-demand client resource information storage equipment is specifically an on-demand client video source database.
Wherein the relevant storage information of the preprocessed video content comprises: and the information of the video stream data block index and the information of the video stream data block stored by the on-demand client correspond to the video content.
Wherein, the streaming media video-on-demand server is configured to initiate the query request and further includes: after initiating a query request to the on-demand client resource information storage device through the on-demand client management server, querying the corresponding on-demand client according to the relevant storage information of the preprocessed video content stored in the on-demand client resource information storage device.
And the on-demand client is also used for storing all or part of the preprocessed video content according to preset or self supporting capability and supporting other on-demand clients to download the preprocessed video content.
The on-demand client management server is further used for managing communication information for communication between the on-demand client and other on-demand clients, and the other on-demand clients download the preprocessed video content according to the communication information;
the on-demand client resource information storage device is further used for managing the relevant storage information of the preprocessed video content stored by each point of the broadcasting client.
And the on-demand client management server is further used for managing the IP address of each point of the broadcasting client and the port which can be connected by each on-demand client.
An on-demand client for implementing streaming media video-on-demand, the on-demand client comprising: the device comprises a sending/receiving unit, a preprocessed video content information generating unit and a storage unit; wherein,
the sending/receiving unit is used for receiving the preprocessed video content from the storage equipment through the streaming media video-on-demand server and sending the preprocessed video content to the storage unit and the preprocessed video content information generating unit; sending the preprocessed video content to other on-demand clients according to downloading requests of the other on-demand clients;
the system comprises a preprocessed video content information generating unit, a video-on-demand client management server and a resource information storage device, wherein the preprocessed video content information generating unit is used for generating related storage information of preprocessed video content according to received preprocessed video content, and reporting, updating and storing the related storage information to the resource information storage device of the on-demand client through the on-demand client management server;
and the storage unit is used for storing the preprocessed video content.
A method for realizing streaming media video on demand includes operation of preprocessing stored original video content to obtain preprocessed video content, and also includes following steps:
A. the on-demand client logs in a streaming media video-on-demand server, selects the operation of the original video content to be watched, and initiates an on-demand request to the streaming media video-on-demand server;
B. after responding to the on-demand request of the on-demand client, the streaming media video-on-demand server initiates an inquiry request, returns the inquired relevant storage information of the preprocessed video content to the on-demand client corresponding to the original video content requested to be on-demand by the on-demand client, and downloads the preprocessed video content by the on-demand client according to the relevant storage information of the preprocessed video content; wherein,
the step B of initiating the query request by the streaming media video-on-demand server specifically includes: the streaming media video-on-demand server initiates a query request to a video source database of an on-demand client through an on-demand client management server; or initiating a query request to a management server of the on-demand client according to the on-demand request, and judging whether other on-demand clients store the preprocessed video content by the management server of the on-demand client according to the query request.
Wherein the pre-processed video content comprises: a video stream data block index and a video stream data block;
accordingly, the relevant storage information of the preprocessed video content includes: information of the video stream data block index and information of the video stream data block.
The operation of preprocessing the stored original video content and obtaining the preprocessed video content comprises the following steps:
a. presetting a minimum time interval according to the minimum time interval value which can be reached when the video control is provided for the on-demand client; extracting a video picture from the original video content according to the minimum time interval;
when video pictures are extracted, dividing video stream files in original video content to obtain video stream data blocks, wherein the video stream data blocks correspond to the extracted video pictures one by one;
b. compressing the extracted video picture, the block information of the video stream file and other related information of the video stream file together, and packaging to generate the video stream data block index of the video stream file;
c. and storing the video stream data block index and the video stream data block into a streaming media video content database.
Wherein, the other related information of the video stream file comprises: video stream name, content introduction, and copyright information.
Wherein, the step b is specifically as follows: and generating the video stream data block index in a mode of packaging the extracted video pictures.
In the step B, the inquired information of the index of the video stream data block or the information of the video stream data block is further returned to the on-demand client according to the specific selection of the on-demand client, and is provided to the on-demand client for downloading and playing.
If the on-demand client selects to watch from the starting point of the video stream, returning the starting video stream data block in the content of the video stream data block to the on-demand client;
correspondingly, the on-demand client downloads and plays the video stream data blocks according to the sequence of the video stream data blocks.
The video-on-demand client selects the playing position of the video stream file in the original video content to watch corresponding to the requirement of video control, and then returns the video stream data block index corresponding to the playing position of the video stream file to the on-demand client;
correspondingly, according to the sequence of the video stream data block indexes, the on-demand client downloads the video stream data block indexes first, decodes and displays the video stream data block indexes after downloading one video stream data block index, and provides the decoded video stream data block index for the on-demand client to select the playing position of the video stream file; and then, the on-demand client downloads the video stream data block and plays the video stream data block corresponding to the selected playing position.
Wherein, also include after said step B:
C. and the on-demand client stores all or part of the downloaded video stream data block indexes or the video stream data blocks according to preset or self-supported storage capacity, reports the information of the video stream data block indexes or the information of the video stream data blocks to the on-demand client management server, and stores the information to the on-demand client video source database.
The invention has the following advantages:
the invention is different from the prior art, completely removes the processing of the video control request from the streaming media video on demand server, improves the processing into the processing that only needs to be done once when the video file is recorded, and completely puts the subsequent processing of the video control request to the on demand client for completion, and can obviously reduce the operation load of the server.
Secondly, in the prior art, a mode that an encoder is arranged at a streaming media video-on-demand server end and a decoder is arranged at an on-demand client end to process a video stream is adopted; the invention is different from the prior art, and adopts the following processing modes: the stream media input front end is used for preprocessing the video stream in the early stage, and after the video picture is extracted, the video stream data can be processed by adopting a general compression technology, such as JPEG (joint photographic experts group) or GIF (graphic interchange format) and the like. Due to the fact that special encoding and decoding processes are eliminated, the experience satisfaction degree of a user using streaming media video on demand is greatly improved, and the obtained video pictures can be independently applied to other occasions, such as application occasions of program publicity, program forenotice and the like, and the method is more practical.
Thirdly, the invention is further based on the p2p technology, and can obtain the video stream which is wanted to be watched from the streaming media video-on-demand server, and also can obtain the video stream from other on-demand clients which watch and store the video stream. Because the more the video stream is viewed and stored by the on-demand client, the less bandwidth the streaming media vod server needs to provide based on the characteristics of the p2p technology, the bandwidth consumption of the streaming media vod server can be effectively reduced.
Drawings
FIG. 1 is a schematic diagram of the structure of a prior art device;
FIG. 2 is a schematic diagram of the structure of the apparatus of the present invention;
FIG. 3 is a schematic flow chart of the principle implementation of the method of the present invention.
Detailed Description
The core idea of the invention is as follows: on the basis of the existing device, a streaming media video content input front end is added, and after the streaming media video content is acquired from a storage device, video pictures in the video content are extracted and preprocessed; storing the preprocessed video content to a storage device; the streaming media video-on-demand server returns the preprocessed video content inquired from the storage device to the on-demand client after responding to the on-demand request of the on-demand client. The invention is different from the prior art, does not need the coding operation of the streaming media VOD server end, only needs to carry out one-time preprocessing when the video content is recorded, and can obviously reduce the operation load of the streaming media VOD server.
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings by way of examples.
A stream media video content input front end for realizing stream media video on demand comprises an acquisition unit, an extraction unit and a preprocessing unit.
The acquisition unit is used for acquiring the video content from the storage device. And the extracting unit is used for extracting the video pictures corresponding to the video frames in the video content after the video content is obtained from the obtaining unit. And the preprocessing unit is used for preprocessing the video pictures and storing the preprocessed video contents into the storage device.
Here, the extracting unit is further configured to preset a minimum time interval according to a minimum time interval that can be reached when the video control is provided to the on-demand client for video control; video pictures are extracted from the video content according to the minimum time interval.
Here, the preprocessing unit is further configured to divide the video stream file to obtain video stream data blocks while the video pictures are extracted, and the video stream data blocks correspond to the extracted video pictures one by one. And compressing the extracted video pictures, the block information of the video stream file and other related information of the video stream file together, and packaging to generate a video stream data block index of the video stream file. And storing the video stream data block index and the video stream data block to a storage device. Other related information of the video stream file includes, among others, the video stream name, the content profile, and copyright information.
As shown in fig. 2, an apparatus for implementing streaming video on demand includes a streaming video content input front end 4, a storage device 3, a streaming video on demand server 1, an on demand client 21, and an on demand client 22, where in the apparatus shown in fig. 2, the storage device 3 is connected to the streaming video on demand server 1. The storage device 3 may also be built into the streaming media vod server 1. Wherein, the storage form of the storage device 3 is a database form, and the storage device 3 is specifically a streaming media video content database.
The streaming media video content input front end 4 is connected with the storage device 3 and is used for acquiring video content from the storage device 3, extracting video pictures corresponding to video frames in the video content and preprocessing the video pictures; the preprocessed video content is stored to the storage device 3.
The streaming media video content input front end 4 extracts video pictures corresponding to video frames in video content, and the preprocessing comprises the following steps:
a1, presetting a minimum time interval according to the minimum time interval value which can be reached when the video control is provided for the on-demand client.
Here, the minimum time interval means: after the requested video program requested by the on-demand client is provided, the minimum time interval can be reached when the user performs video control such as fast forward, fast backward, time search and the like in the process of playing the video program. For example, if the preset minimum time interval is 10 seconds, the user can see the fast forward video frames with a time interval of 10 seconds when selecting fast forward, that is: the displayed video pictures are fast forward video frame sequences formed by 0 second, 10 second, 20 second, 30 second and so on video pictures corresponding to the fast forward video frames.
b1, extracting video pictures from the video content according to the minimum time interval, simultaneously dividing the video stream file to obtain video stream data blocks, wherein the video stream data blocks correspond to the extracted video pictures one by one; and compressing the extracted video pictures, the block information of the video stream file and other related information of the video stream file together, and packaging to generate a video stream data block index of the video stream file. Then, the video content preprocessed by the streaming video content entry front end 4 includes: a video stream data block index and a video stream data block.
Here, the storage device 3 is connected to the on-demand client 21 and the on-demand client 22 via the streaming video-on-demand server 1, and is used for storing video contents and pre-processed video contents. The streaming media video-on-demand server 1 is used for responding to an on-demand request of the on-demand client 21 or the on-demand client 22; and initiating a query request to the storage device 3, and returning the video content requested to be requested by the current on-demand client to the on-demand client. Current click-through client refers to: and the on-demand client currently establishes connection with the streaming media video-on-demand server 1. The on-demand client 21 and the on-demand client 22 are configured to initiate an on-demand request to the streaming video-on-demand server 1.
Wherein the storage device 3 comprises: the device comprises a video content storage unit and a preprocessed video content storage unit. The video content storage unit is used for storing video content; the pre-processed video content storage unit is used for storing the pre-processed video content.
Correspondingly, the streaming video content entry front end 1 is configured to store the preprocessed video content in the storage device 3, and further includes: and storing the preprocessed video content into a preprocessed video content storage unit. The streaming media video-on-demand server 1 is configured to initiate an inquiry request to the storage device 3, and further configured to: and initiating a query request to the preprocessed video content storage unit.
An apparatus for implementing video on demand of streaming media, the apparatus further comprising: the on-demand client management server 5 and the on-demand client resource information storage device 6. And, the on-demand client resource information storage device 6 is connected to the streaming media video-on-demand server 1, the on-demand client 21, and the on-demand client 22 via the on-demand client management server 5. The storage form of the on-demand client resource information storage device 6 is a database form, and the on-demand client resource information storage device 6 is specifically an on-demand client video source database.
Here, the on-demand client management server is used for managing the on-demand client 21 and the on-demand client 22 which are currently logged in the streaming video-on-demand server 1. The on-demand client resource information storage device 6, the on-demand client 21 and the on-demand client 22, reports the relevant storage information of the pre-processed video content stored by the on-demand client 21 and the on-demand client 22 via the on-demand client management server 5, and is configured to receive and store the relevant storage information of the pre-processed video content reported by the on-demand client 21 and the on-demand client 22. Accordingly, the on-demand client 21 and the on-demand client 22 are further configured to update the storage information related to the preprocessed video content to the on-demand client resource information storage device 6 after obtaining the preprocessed video content requested to be on-demand. The streaming media video-on-demand server 1, configured to initiate the query request, further includes: after initiating a query request to the on-demand client resource information storage device 6 through the on-demand client management server 5, querying the corresponding on-demand client according to the relevant storage information of the preprocessed video content stored in the on-demand client resource information storage device 6.
Wherein, the relevant storage information of the preprocessed video content comprises: and the information of the video stream data block index and the information of the video stream data block stored by the on-demand client correspond to the video content.
That is, the relevant storage information of the pre-processed video content includes: information of which video stream data blocks of which video programs the on-demand client stores are indexed or information of video stream data blocks. Then, the video source database of the on-demand client stores the resource information of the video-on-demand client which logs in the streaming media video-on-demand server once and downloads the video program. The resources here refer to: the video stream data block index or video stream data block stored by the on-demand client. The resource information here refers to: information of a video stream data block index or information of a video stream data block. For example, information of the video data block index H1 or information of the video stream data block D1 of the video program a is stored. And the video data block index H1 or the video stream data block D1 of the video program a is stored at the on-demand client.
The on-demand client 21 and the on-demand client 22 are further configured to store all or part of the preprocessed video content according to a preset or self-supporting capability, and support receiving of the preprocessed video content downloaded by other on-demand clients.
The on-demand client management server 5 is further configured to manage communication information for communication between the on-demand client 21 and the on-demand client 22 and other on-demand clients, and the other on-demand clients download the preprocessed video content according to the communication information. Here, the communication information includes an IP address and a communication port, and the on-demand client management server 5 is further configured to manage the IP addresses of each of the points of the podcast client, for example, the on-demand client 21 and the podcast client 22, and the ports to which each of the points of the podcast client, for example, the on-demand client 21 and the podcast client 22, are connectable.
The on-demand client resource information storage device 6 is further configured to manage storage information related to the preprocessed video content stored by each of the podcast clients, for example, the on-demand client 21 and the podcast client 22.
An on-demand client for implementing streaming media video-on-demand, the on-demand client comprising: the device comprises a sending/receiving unit, a preprocessed video content information generating unit and a storage unit.
The system comprises a storage unit, a sending/receiving unit, a storage unit and a pre-processed video content information generating unit, wherein the sending/receiving unit is used for receiving pre-processed video content from the storage device through a streaming media video-on-demand server and sending the pre-processed video content to the storage unit and the pre-processed video content information generating unit; and sending the preprocessed video content to other on-demand clients according to the downloading requests of other on-demand clients. And the preprocessed video content information generating unit is used for generating related storage information of the preprocessed video content according to the received preprocessed video content, and reporting, updating and storing the related storage information to the resource information storage equipment of the on-demand client through the on-demand client management server. And the storage unit is used for storing the preprocessed video content.
As shown in fig. 3, a method for implementing streaming media video on demand includes the following steps:
step 201, the original video content stored in the streaming media video content database is preprocessed through the streaming media video content input front end to obtain the preprocessed video content. Here, the pre-processed video content includes: a video stream data block index and a video stream data block.
Wherein, step 201 specifically includes:
step 201a, presetting a minimum time interval according to the minimum time interval value which can be reached when video control is provided for an on-demand client; video pictures are extracted from the original video content according to the minimum time interval.
For example, the minimum time interval is preset to be 30 seconds, and then when the user selects video control on the on-demand client, the minimum time interval of the video control such as fast forward, fast backward or time search is 30 seconds; taking a video file with the duration of 1 hour as an example, wherein the video file is the original video content; 120 video pictures can be extracted from the original video content according to the minimum time interval. And, these video pictures are compressed and stored in an image format. A common JPEG image format is generally employed. Meanwhile, each video picture is respectively denoted as P1, P2, P3.
And when the video pictures are extracted, dividing the video stream file to obtain video stream data blocks, wherein the video stream data blocks correspond to the extracted video pictures one by one, namely the number of the extracted video pictures is the same, and dividing the video stream file into the video stream data blocks with the same number of the extracted video pictures.
For example, if 120 video pictures are extracted, the video stream file is divided into 120 video stream data blocks, and each video stream data block is denoted as D1, D2. Therefore, the video stream data blocks are ensured to be in one-to-one correspondence with the extracted video pictures.
Step 201b, compressing the extracted video pictures, the block information of the video stream file and other related information of the video stream file together, and packaging to generate a video stream data block index of the video stream file. Wherein, the other related information of the video stream file comprises: video stream name, content introduction, and copyright information.
Here, step 201b is specifically: the video stream data block index is generated by packing an extracted video picture, and the video stream data block index is respectively denoted as H1, H2.
Step 201c, storing the video stream data block index and the video stream data block into a streaming media video content database.
For example, H1,., H120 and D1., D120 are stored in the streaming media content database, so that the previous entry of the streaming media video file, i.e., the stored original video content, is completed through the preprocessing operation of the streaming media video content entry front end.
Step 202, after logging in the streaming media vod server, the on-demand client first selects the original video content to be viewed, that is, the streaming media video source, and then initiates an on-demand request to the streaming media vod server.
Step 203, after the streaming media video-on-demand server responds to the video-on-demand request of the video-on-demand client, a query request is initiated, corresponding to the original video content requested to be requested by the video-on-demand client, the queried relevant storage information of the preprocessed video content is returned to the video-on-demand client, and the video-on-demand client downloads the preprocessed video content according to the relevant storage information of the preprocessed video content. Here, the pre-processed video content includes: information of the video stream data block index and information of the video stream data block.
According to different query request ways, the query request initiated by the streaming media video-on-demand server in step 203 specifically includes the following two contents:
in the first aspect, the streaming media video-on-demand server directly initiates a query request to the streaming media video content database.
In a second aspect, a streaming media video-on-demand server initiates a query request to an on-demand client video source database via an on-demand client management server. Or initiating a query request to the on-demand client management server according to the on-demand request of the on-demand client, and judging whether other on-demand clients store video stream data block indexes or video stream data blocks according to the query request by the on-demand client management server. Here, the other on-demand clients refer to on-demand clients that log on to the streaming video-on-demand server.
Wherein, the step 203 of returning the queried preprocessed video content to the on-demand client further comprises: and returning the inquired information of the video stream data block index or the information of the video stream data block to the on-demand client according to the specific selection of the on-demand client, and providing the information to the on-demand client for downloading and playing. Here, the following two cases are included.
In the first case, the on-demand client selects to watch directly from the starting point of the video stream, and then directly returns the starting video stream data block in the content of the video stream data block to the on-demand client.
Accordingly, the on-demand client downloads and plays the video stream data blocks in the order of the video stream data blocks, for example, in the order of D1.
In the second case, corresponding to the requirement of video control, the on-demand client selects the playing position of the video stream for watching, and then returns the video stream data block index corresponding to the playing position of the video stream to the on-demand client.
Correspondingly, according to the sequence of the video stream data block indexes, the on-demand client downloads the video stream data block indexes first, decodes and displays the video stream data block indexes after downloading one video stream data block index, and provides the decoded video stream data block index for the on-demand client to select the playing position of the video stream; and then, the on-demand client downloads the video stream data block and plays the video stream data block corresponding to the selected playing position.
Step 203 is followed by:
and step 204, the on-demand client stores all or part of the downloaded video stream data block indexes or video stream data blocks according to preset or self-supported storage capacity, reports the information of the video stream data block indexes or the information of the video stream data blocks to the on-demand client management server, and stores the information in the on-demand client video source database. Here, because the on-demand client cannot directly access the on-demand client video source database based on the security mechanism, the on-demand client needs to establish communication between the on-demand client and the on-demand client video source database through the on-demand client management server, so as to enable the on-demand client to access the on-demand client video source database.
The first embodiment of the method comprises the following steps:
the embodiment is as follows: the invention is based on the principle of Peer-to-Peer internet (P2P, Peer-to-Peer) technology, and further combines the P2P technology with streaming media video-on-demand technology, and the on-demand client selects the playing position of the video stream for viewing. The embodiment can better achieve the purpose of relieving the bandwidth pressure of the streaming media video server. The so-called P2P technology is a point-to-point technology, i.e. a network transmission technology in which clients can share data with each other. The method utilizes the uploading bandwidth of each client to share data, thereby achieving the purpose of reducing the bandwidth pressure of the server, simultaneously, the distributed storage of the data also improves the safety of data storage,
in this embodiment, the method for implementing streaming media video on demand by using streaming media video content to enter video content preprocessed by a front end includes the following steps:
step 301, after logging in the streaming media video server, the on-demand client queries a streaming media video source available for on-demand, selects a streaming media video source to be watched, and initiates an on-demand request to the streaming media video-on-demand server.
Step 302, after the streaming media video-on-demand server responds to the on-demand request of the on-demand client, a query request is initiated to the on-demand client management server according to the on-demand request of the on-demand client.
Step 303, according to the query request, the on-demand client management server queries and judges whether other on-demand clients store the video stream data block index or the video stream data block. Here, the other on-demand clients refer to on-demand clients that log on to the streaming video-on-demand server.
And step 304, the streaming media video-on-demand server returns the query result to the on-demand client.
Step 305, corresponding to the requirement of video control, when the on-demand client selects the playing position of the video stream to watch, returning the video stream data block index corresponding to the playing position of the video stream to the on-demand client;
correspondingly, according to the sequence of the video stream data block indexes, such as the sequence of H1.. and Hn, the on-demand client downloads the video stream data block indexes first, and after downloading one video stream data block index, decodes the video stream data block index, solves the corresponding video pictures and the corresponding streaming media video time, displays the video pictures and the corresponding streaming media video time one by one, provides the video pictures and the streaming media video time for the on-demand client to browse, and selects the playing position of the video stream.
And step 306, when the user selects the playing position of the video stream according to the displayed index pictures, downloading the video stream data block and playing the video stream data block by the on-demand client corresponding to the selected playing position. Here, the video stream data block is the video stream data block corresponding to the selected video stream playing position.
And 307, the on-demand client stores all or part of the downloaded video stream data block indexes or video stream data blocks according to preset or self-supported storage capacity, reports the information of the video stream data block indexes or the information of the video stream data blocks to the on-demand client management server, and stores the information in a video source database of the on-demand client.
And step 308, the on-demand client management server updates the information of the video stream data block index or the information of the video stream data block stored in the video source database of the on-demand client. Here, the information of the updated video stream data block index or the information of the video stream data block information may be queried and used by other on-demand clients.
Here, for example, the step 305, when the need of video control is fast forward, the step 305 specifically includes:
step 3051, the on-demand client obtains the playing position of the current video stream, sets the playing position to be corresponding to the video stream data block as Dx, and firstly, the on-demand client searches whether the video stream data block Hx corresponding to the Dx exists locally until the last video stream data block Hn is found; if no Hx exists, downloading from other on-demand clients or the streaming media video-on-demand server.
And step 3052, the on-demand client starts decoding from the video stream data block Hx and displays the decoded video pictures in sequence at a certain speed, wherein the display speed is related to the fast-forward speed.
Step 3052, when the on-demand client fast-forwards to the position where it wants to start watching, go to step 306.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention.
Claims (22)
1. An apparatus for implementing video on demand of streaming media, the apparatus comprising: the system comprises a streaming media video content input front end, a storage device, a streaming media video on-demand server, an on-demand client management server and an on-demand client resource information storage device; wherein,
the streaming media video content input front end is used for acquiring video content from the storage device, extracting video pictures corresponding to video frames in the video content and preprocessing the video pictures; storing the preprocessed video content to the storage device;
the storage device is used for storing the video content and the preprocessed video content;
the streaming media video-on-demand server is used for initiating a query request to the storage equipment after responding to the video-on-demand request of the video-on-demand client and returning the video content requested to be requested by the video-on-demand client to the video-on-demand client;
the on-demand client is used for initiating an on-demand request to the streaming media video-on-demand server;
the on-demand client management server is used for managing the on-demand client currently logged in the streaming media video-on-demand server;
and the on-demand client resource information storage equipment is used for receiving and storing the relevant storage information of the preprocessed video content reported by the on-demand client after the on-demand client reports the relevant storage information of the preprocessed video content stored by the on-demand client through the on-demand client management server.
2. The apparatus according to claim 1, wherein the storage device is in the form of a database, and the storage device is specifically a streaming video content database.
3. The apparatus of claim 1, wherein the storage device is connected to or embedded in the streaming video-on-demand server.
4. The apparatus of claim 1, wherein the storage device comprises a video content storage unit, and a pre-processed video content storage unit; the video content storage unit is used for storing the video content; the preprocessed video content storage unit is used for storing the preprocessed video content;
correspondingly, the entering of the streaming media video content into the front end, configured to store the preprocessed video content in the storage device, further includes: storing the preprocessed video content into a preprocessed video content storage unit;
the streaming media video-on-demand server is configured to initiate an inquiry request to the storage device, and further configured to: and initiating a query request to the preprocessed video content storage unit.
5. The apparatus of any of claims 1-4, wherein the pre-processed video content comprises: a video stream data block index and a video stream data block.
6. The apparatus of claim 1, wherein the on-demand client, after obtaining the pre-processed video content requested for on-demand, is further configured to update storage information related to the pre-processed video content to the on-demand client resource information storage device.
7. The apparatus as claimed in claim 6, wherein the storage form of the on-demand client resource information storage device is a database form, and then the on-demand client resource information storage device is specifically an on-demand client video source database.
8. The apparatus of claim 6, wherein the storage information related to the pre-processed video content comprises: and the information of the video stream data block index and the information of the video stream data block stored by the on-demand client correspond to the video content.
9. The apparatus of claim 6, wherein the streaming video-on-demand server configured to initiate the query request further comprises: after initiating a query request to the on-demand client resource information storage device through the on-demand client management server, querying the corresponding on-demand client according to the relevant storage information of the preprocessed video content stored in the on-demand client resource information storage device.
10. The apparatus of claim 9, wherein the on-demand client is further configured to store all or part of the pre-processed video content according to a preset or its own support capability, and support other on-demand clients to download the pre-processed video content.
11. The apparatus of claim 10, wherein the on-demand client management server is further configured to manage communication information for communication between the on-demand client and other on-demand clients, and the other on-demand clients download the preprocessed video content according to the communication information;
the on-demand client resource information storage device is further used for managing the relevant storage information of the preprocessed video content stored by each point of the broadcasting client.
12. The apparatus of claim 11, wherein the communication information comprises an IP address and a communication port, and the on-demand client management server is further configured to manage the IP address of each of the on-demand clients and the port to which each of the on-demand clients is connectable.
13. An on-demand client for implementing streaming media video on demand, the on-demand client comprising: the device comprises a sending/receiving unit, a preprocessed video content information generating unit and a storage unit; wherein,
the sending/receiving unit is used for receiving the preprocessed video content from the storage equipment through the streaming media video-on-demand server and sending the preprocessed video content to the storage unit and the preprocessed video content information generating unit; sending the preprocessed video content to other on-demand clients according to downloading requests of the other on-demand clients;
the system comprises a preprocessed video content information generating unit, a video-on-demand client management server and a resource information storage device, wherein the preprocessed video content information generating unit is used for generating related storage information of preprocessed video content according to received preprocessed video content, and reporting, updating and storing the related storage information to the resource information storage device of the on-demand client through the on-demand client management server;
and the storage unit is used for storing the preprocessed video content.
14. A method for realizing streaming media video on demand is characterized in that the method comprises the operation of preprocessing stored original video content to obtain preprocessed video content, and the method also comprises the following steps:
A. the on-demand client logs in a streaming media video-on-demand server, selects the operation of the original video content to be watched, and initiates an on-demand request to the streaming media video-on-demand server;
B. after responding to the on-demand request of the on-demand client, the streaming media video-on-demand server initiates an inquiry request, returns the inquired relevant storage information of the preprocessed video content to the on-demand client corresponding to the original video content requested to be on-demand by the on-demand client, and downloads the preprocessed video content by the on-demand client according to the relevant storage information of the preprocessed video content; wherein,
the step B of initiating the query request by the streaming media video-on-demand server specifically includes: the streaming media video-on-demand server initiates a query request to a video source database of an on-demand client through an on-demand client management server; or initiating a query request to a management server of the on-demand client according to the on-demand request, and judging whether other on-demand clients store the preprocessed video content by the management server of the on-demand client according to the query request.
15. The method of claim 14, wherein the pre-processing the video content comprises: a video stream data block index and a video stream data block;
accordingly, the relevant storage information of the preprocessed video content includes: information of the video stream data block index and information of the video stream data block.
16. The method of claim 15, wherein the pre-processing of the stored original video content to obtain the pre-processed video content comprises:
a. presetting a minimum time interval according to the minimum time interval value which can be reached when the video control is provided for the on-demand client; extracting a video picture from the original video content according to the minimum time interval;
when video pictures are extracted, dividing video stream files in original video content to obtain video stream data blocks, wherein the video stream data blocks correspond to the extracted video pictures one by one;
b. compressing the extracted video picture, the block information of the video stream file and other related information of the video stream file together, and packaging to generate the video stream data block index of the video stream file;
c. and storing the video stream data block index and the video stream data block into a streaming media video content database.
17. The method of claim 16, wherein the other related information of the video stream file comprises: video stream name, content introduction, and copyright information.
18. The method according to claim 16, wherein step b is specifically: and generating the video stream data block index in a mode of packaging the extracted video pictures.
19. The method as claimed in any one of claims 15 to 18, wherein in the step B, further according to a specific selection of the on-demand client, the queried information of the index of the video stream data block or the information of the video stream data block is returned to the on-demand client, and is provided to the on-demand client for downloading and playing.
20. The method of claim 19, wherein if the on-demand client chooses to watch from the beginning of the video stream, then the starting video stream data block of the video stream data block content is returned to the on-demand client;
correspondingly, the on-demand client downloads and plays the video stream data blocks according to the sequence of the video stream data blocks.
21. The method according to claim 19, wherein in response to the need of video control, the on-demand client selects a playing position of a video stream file in the original video content for viewing, and then returns a video stream data block index corresponding to the playing position of the video stream file to the on-demand client;
correspondingly, according to the sequence of the video stream data block indexes, the on-demand client downloads the video stream data block indexes first, decodes and displays the video stream data block indexes after downloading one video stream data block index, and provides the decoded video stream data block index for the on-demand client to select the playing position of the video stream file; and then, the on-demand client downloads the video stream data block and plays the video stream data block corresponding to the selected playing position.
22. The method of claim 21, further comprising, after step B:
C. and the on-demand client stores all or part of the downloaded video stream data block indexes or the video stream data blocks according to preset or self-supported storage capacity, reports the information of the video stream data block indexes or the information of the video stream data blocks to the on-demand client management server, and stores the information to the on-demand client video source database.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101211404A CN101378490B (en) | 2007-08-30 | 2007-08-30 | Device, client terminal and method for implementing stream medium video order programme |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101211404A CN101378490B (en) | 2007-08-30 | 2007-08-30 | Device, client terminal and method for implementing stream medium video order programme |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101378490A CN101378490A (en) | 2009-03-04 |
CN101378490B true CN101378490B (en) | 2011-01-19 |
Family
ID=40421787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101211404A Active CN101378490B (en) | 2007-08-30 | 2007-08-30 | Device, client terminal and method for implementing stream medium video order programme |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101378490B (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101959054B (en) * | 2009-07-14 | 2013-04-10 | 中国电信股份有限公司 | Integrated P2P (Peer-To-Peer) VOD (Video-On-Demand) system and partner node selecting method |
CN102118633B (en) * | 2009-12-31 | 2013-04-17 | 华为技术有限公司 | Method, device and system for playing video files |
CN104769952A (en) * | 2012-09-04 | 2015-07-08 | Tivo有限公司 | Wireless media streaming system |
CN102970580B (en) * | 2012-11-19 | 2016-03-16 | 北京思特奇信息技术股份有限公司 | A kind of video file encipher-decipher method and system |
US20140344861A1 (en) | 2013-05-14 | 2014-11-20 | Tivo Inc. | Method and system for trending media programs for a user |
CN104038771B (en) * | 2014-06-19 | 2017-03-15 | 常州大学 | A kind of high-effect files in stream media distributed memory system and method based on Hadoop2 |
CN107205034B (en) * | 2017-06-05 | 2020-09-18 | 上海联影医疗科技有限公司 | Data sharing equipment and method |
CN108259970B (en) * | 2017-12-29 | 2022-01-04 | 北京陌上花科技有限公司 | Configuration management method and device based on video on demand |
CN108810563A (en) * | 2018-06-19 | 2018-11-13 | 合肥凌极西雅电子科技有限公司 | Stream media ordering method and its system |
CN110213662A (en) * | 2019-07-09 | 2019-09-06 | 金明晔 | A kind of VOD method, server, client and video on-demand system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777278A (en) * | 2005-11-29 | 2006-05-24 | 中国科学技术大学 | Realization method of streaming media server supporting off-site storage |
CN1801929A (en) * | 2005-12-08 | 2006-07-12 | 复旦大学 | Method for network interaction television system realizing time-shift function |
CN1859561A (en) * | 2005-11-01 | 2006-11-08 | 华为技术有限公司 | Stream media ordered telecast system and method |
-
2007
- 2007-08-30 CN CN2007101211404A patent/CN101378490B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1859561A (en) * | 2005-11-01 | 2006-11-08 | 华为技术有限公司 | Stream media ordered telecast system and method |
CN1777278A (en) * | 2005-11-29 | 2006-05-24 | 中国科学技术大学 | Realization method of streaming media server supporting off-site storage |
CN1801929A (en) * | 2005-12-08 | 2006-07-12 | 复旦大学 | Method for network interaction television system realizing time-shift function |
Also Published As
Publication number | Publication date |
---|---|
CN101378490A (en) | 2009-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101378490B (en) | Device, client terminal and method for implementing stream medium video order programme | |
US10547850B2 (en) | Audio splitting with codec-enforced frame sizes | |
US10277927B2 (en) | Movie package file format | |
EP2824883A1 (en) | A video client and video server for panoramic video consumption | |
US20100272187A1 (en) | Efficient video skimmer | |
US20100242066A1 (en) | Method of Performing Random Seek Preview for Streaming Video | |
US20160182941A1 (en) | Video caching | |
US20130031222A1 (en) | Methods, apparatuses and computer program products for pausing video streaming content | |
WO1998037699A1 (en) | System and method for sending and receiving a video as a slide show over a computer network | |
CN109756749A (en) | Video data handling procedure, device, server and storage medium | |
US11128897B2 (en) | Method for initiating a transmission of a streaming content delivered to a client device and access point for implementing this method | |
KR20200109359A (en) | Video streaming | |
US10116719B1 (en) | Customized dash manifest | |
CN113141522B (en) | Resource transmission method, device, computer equipment and storage medium | |
CN113225585B (en) | Video definition switching method and device, electronic equipment and storage medium | |
US20210021655A1 (en) | System and method for streaming music on mobile devices | |
JP2003111048A (en) | Server and program for contents reproduction | |
JP2015504633A (en) | Method for displaying multimedia assets, associated system, media client, and associated media server | |
CN114051150A (en) | Live broadcast method and device, electronic equipment and computer readable storage medium | |
JP2007123984A (en) | Content distribution system, stream transmission apparatus, receiving apparatus, and content distribution method | |
KR100819923B1 (en) | Method of transmitting multimedia file compressed by differential pulse code modulation through P2P data exchange | |
US20070130250A1 (en) | Catch-Up Streaming | |
CN114501166A (en) | DASH on-demand fast-forward and fast-backward method and system | |
JP2004235984A (en) | Moving image distribution method, moving image distribution system, use side device, distribution side device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |