CN100484237C - Data requesting digital broadcast system transmitting via preset data - Google Patents

Data requesting digital broadcast system transmitting via preset data Download PDF

Info

Publication number
CN100484237C
CN100484237C CNB021183236A CN02118323A CN100484237C CN 100484237 C CN100484237 C CN 100484237C CN B021183236 A CNB021183236 A CN B021183236A CN 02118323 A CN02118323 A CN 02118323A CN 100484237 C CN100484237 C CN 100484237C
Authority
CN
China
Prior art keywords
data
matrix
data block
bandwidth
transmission
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.)
Expired - Fee Related
Application number
CNB021183236A
Other languages
Chinese (zh)
Other versions
CN1384671A (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.)
PrediWave Corp
Original Assignee
PrediWave Corp
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
Priority claimed from US09/841,792 external-priority patent/US20020023267A1/en
Priority claimed from US09/892,017 external-priority patent/US20020026501A1/en
Priority claimed from US10/054,008 external-priority patent/US20020175998A1/en
Priority claimed from US09/997,954 external-priority patent/US20020066100A1/en
Application filed by PrediWave Corp filed Critical PrediWave Corp
Publication of CN1384671A publication Critical patent/CN1384671A/en
Application granted granted Critical
Publication of CN100484237C publication Critical patent/CN100484237C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Abstract

The present invention provides a system and a method of a plan matrix for reducing idle time by reducing the data files to data blocks. The original sequence of a data block is sustained by filling the idle time with data blocks which occurs after generating a plan matrix. Then repeat or generat a new plan matrix for reducing idle time. A specially indicated set-top box which can receive the data blocks is described. In an optimal embodiment, the set-top box can store continuous broadcast for saving bandwidth and the optimized preloading flow.

Description

Utilize the data-on-demand digit broadcasting system of prefetch data transmission
Technical field
Video request program (VOD) is a kind of data-on-demand (DOD) system.In the VOD system, server or server network offer one or more clients according to request with video data file.For a person skilled in the art, these systems are known.
Background technology
In the VOD of routine structure, server or server network communicate according to the classification client-server pattern and the client of standard.For example, the client sends the request of data file (for example video data file) to server.Server responds this client requests, sends requested file to the client.In this standard client-server pattern, the request of client's data file can be finished by one or more servers.The client can be stored in any data file that receives in the nonvolatile memory in this locality, so that use later on.Standard client-server pattern requires two-way communication basic structure.Current, two-way communication need be constructed new basic structure, because existing cable only can provide one-way communication.The example of two-way communication basic structure has hybrid fiber optics coaxial cable (HFC) or all optical fiber basic structure.The cost height that replaces existing cable, the service that most of user possibly can't bear thereby produce.
In addition, when service provider's (for example cable companies) attempts to provide VOD server to most of clients, standard client-server pattern has many limitations.A limitation of standard client-server pattern is that the service provider must realize connecting the equipment of listening to and finishing each request of each client in the automatic network; Therefore, the quantity that can receive the client of service depends on the capacity of this equipment.The integral body series connection computer that equipment uses to have big and fast disk array as home server.But, even the fastest existing home server also can only once transmit video data stream to about 1000 to 2000 clients.Like this, in order to serve more clients, must increase the quantity of home server.The control that the home server that increases requires more more advanced server to keep home server.
Another limitation of conventional system is that receiving set up box (STB) must download at least a portion of the VOD service that is selected before beginning to serve.Even requiring to download enough data also is significant so that the delay of the VOD that begins to be selected has very high speed of download.
A limitation again of standard client-server pattern is that each client requires the bandwidth of self.Like this, required total bandwidth just in time is directly proportional with the quantity of subscribing the client.Cache memory in the home server has been used to improve bandwidth restrictions, but because cache memory also is limited, so use cache memory not address the above problem.
At present, in order to allow the client afford more video broadcast service, existing service provider brings up to client's ratio of every home server on the home server ability.Typically, can provide a home server of service in fact to be used to serve 10000 clients to 1000 clients.If most of reservation client does not order video simultaneously, then this technology can play a role.But watch video owing to most of client may think at one time (for example evening or weekend),, therefore, cause the home server overload so this technology is doomed to fail.
Therefore, expectation provides a kind of system, can not replace existing basic structure, in fact by any transmission medium, does not significantly lingeringly provide order program service to most of clients
Summary of the invention
The present invention provides the system and method for order program data (DOD) service the open access time that reduces by the utilization of existing DOD system.The present invention is also open to provide DOD the system and method for service by the bandwidth that reduces.
In the embodiment that exemplifies,, send data to the client and may further comprise the steps: linear order when providing the reduction that contains the data block that comprises selecteed DOD service data not busy so that the order program data service method to be provided at server side; From the not busy time series of the reduction of described data block, remove the data block of the most frequent generation; The data block of the most frequent generation of described removal is placed in the prefetch data stream, so that described prefetch data stream comprises the prefetch data piece corresponding to described selected DOD service; Transmit described prefetch data stream by described transmission medium; With transmit described data block by described transmission medium all the other reduce not busy time series, so that the service that receives can reduce not busy time series with all the other of described data block and combine with described prefetch data piece, generate described selecteed DOD service, therefore, can reduce the required bandwidth of the described DOD service of transmission.This DOD broadcasting server method can further comprise: remove a plurality of additional data blocks from the not busy time series of the reduction of described data block; At least one of described a plurality of additional data blocks is placed in the described prefetch data stream, and therefore, described prefetch data stream comprises data block and the described added block corresponding to the most frequent generation of described selected DOD service; With transmit described data block by described transmission medium all the other reduce not busy time series, so that the service that receives can reduce not busy time series with all the other of described data block and combine with described prefetch data piece, generate described selecteed DOD service, therefore, can further reduce the required bandwidth of the described DOD service of transmission.
In the embodiment that exemplifies,, handle the data that receive from server and may further comprise the steps: receive the prefetch data stream that comprises corresponding to the prefetch data piece of selected DOD service so that the data-on-demand service method to be provided in client's side; Described prefetch data stream is stored in the memory location; Reception comprises the primary data stream corresponding to the primary data piece of described selected DOD service; With described primary data piece of processing and described prefetch data piece, make the described selecteed DOD service of user-accessible.This method can further comprise: receive user's input of the described selected DOD service of expression; In response to described user's input, be converted to channel corresponding to described selected DOD service; With the described primary data stream of reception from the described channel of serving corresponding to described selected DOD.In one embodiment, carry out the method for the data that processing receives from server by the set-top box of client's side.
A kind of data on demand system comprises first group of channel server, control the central control server of this first group of channel server, first group of upconverter with this first group of channel server coupling, with the combiner/amplifier of this first group of upconverter coupling be applicable to the combiner/amplifier that transmits data by transmission medium.In an embodiment who exemplifies, data on demand system further comprises: monitor the channel monitor module of this system, switch matrix, second group of channel server and second group of upconverter.Construct this channel monitor module, when producing the system failure, report to central control server.Central control server is in response to the report from the channel monitor module, the command switch matrix is replaced the channel server that breaks down in first group of channel server with the channel server in second group of channel server, replaces the upconverter that breaks down in first group of upconverter with a upconverter in second group of upconverter.
Another embodiment of the present invention discloses a kind of for example universal STB of a plurality of digital service such as VOD and digital broadcasting that receives and handle.This embodiment discloses a kind of universal STB that can carry out the high-elastic structure of complex process to the data that receive that has.This structure comprises a data/address bus, one is suitable for first communication equipment with data broadcast communication medium coupling, the one two-way memory that typically comprises permanent and scratchpad memory that is coupled on the data/address bus, an one two-way digital data decoder and a two-way CPU (CPU) that is coupled on the data/address bus that is coupled on the data/address bus.The CPU of this embodiment of the invention adopts the STB control procedure to come control storage, digital decoder and demodulator.The STB control procedure can be handled the numerical data that for example receives at the first communication equipment place.The STB control procedure can receive from the data block of reduction matrix during the spare time and the serial flow of this data block.
In another embodiment, composite S TB structure allows the data block of optimization preloading data stream to be broadcasted and to be loaded among the idle STB.Certain data block is pre-loaded to and allows crucial time bandwidth-saving among the STB.Can at one day different time preloading data stream (or " looking ahead ") be programmed in the different pieces of information sequence of pre-transmission according to the VOD priority option.
Accompanying drawing is described
Figure 1A explanation is according to the typical DOD system of the embodiment of the invention.
The typical according to another embodiment of the present invention DOD of Figure 1B explanation system.
Fig. 2 explanation is according to the typical channel server of the embodiment of the invention.
Fig. 3 explanation is according to the exemplary settop box of the embodiment of the invention.
Fig. 4 explanation generates the process of planning matrix according to the typical case of the embodiment of the invention.
Fig. 5 illustrates the example of the planning matrix of one or six data block files with chart.
Fig. 6 illustrates the data block that how to shift to an earlier date the planning matrix among Fig. 5 before being full of all idle time slots with chart.
Planning matrix when Fig. 7 illustrates that with chart a new reduction is not busy.
Fig. 8 has described remaining and has reduced embodiment when not busy.
Fig. 9 illustrates flow chart how to finish embodiment when reducing the spare time.
Figure 10 illustrates the DOD data block of planning the transmission on the primary data stream according to an embodiment of the invention and the flow chart that prefetch data flows through journey.
Figure 11 is the DOD data block of the transmission on the planning primary data stream of explanation alternate embodiment according to the present invention and the flow chart that prefetch data flows through journey.
Figure 12 illustrates the flow chart of set-top box prestrain process according to an embodiment of the invention.
Embodiment
Figure 1A explanation is according to the typical DOD system 100 of the embodiment of the invention.In the present embodiment, DOD system 100 provides order program data file, for example video file.But DOD system 100 is not limited to provide the order video file, also can provide other data file, for example the program request game file.DOD system 100 comprises central control server 102, central memory 103, a plurality of channel server 104a-104n, a plurality of upconverter 106a-106n and combiner/amplifier 108.Central control server 102 control channel servers 104.Central memory 103 is with the figure pattern storing data files.In the embodiment of example, be connected to any computer that is authorized on the network, for example central control server 102 all can visit the data file that is stored in the central memory 103 by standard network interface (for example Ethernet connection).Each channel server 104 is distributed to a channel, and be coupled with upconverter 106.Channel server 104 provides the data file from central memory 103 according to the instruction from central control server 102.The output of each channel server 104 all is a quadrature amplitude modulation (qam) modulated medium frequency signal (IF) that has corresponding to the appropriate frequency of upconverter 106.This QAM modulation IF signal depends on institute's accepted standard.The current accepted standard of the U.S. is that data are not passed through data over cable service interface specifications (docs is) (DOCSIS) standard, needs the IF frequency of about 43.75MHz.The IF conversion of signals that upconverter 106 will receive from channel server 104 is radiofrequency signal (a RF signal).Comprise that the RF signal of frequency and bandwidth depends on the channel and the accepted standard of expectation.For example, under the current standard of the U.S. of cable television channels 80, the RF signal has the step of about 559.25MHz and the bandwidth of about 6MHz.The output of upconverter 106 offers combiner/amplifier 108.The RF signal that combiner/amplifier 108 amplifies, regulates and combined reception arrives outputs to transmission medium 110 with this signal afterwards.
In the embodiment of example, central control server 102 comprises chart user interface (not shown), so that the service provider comes layout data to transmit by drag-and-drop operation.In addition, central control server 102 starts or stops according to transmitting matrix discriminated union control channel server 104.In the embodiment of example, central control server 102 is selected a channel automatically, calculates the transmission matrix of transmission data file in the selected channel.Central control server 102 provides the off line of data file information (for example, duration, kind, audience ratings and/or concise and to the point the description) to add, delete and upgrade.In addition, central control server 102 is controlled central memory 103 by updated stored in wherein data file and database.
In the embodiment of example, existing cable television system 120 is injected signal combiner/amplifier 108 serially, so that non-DOD service to be provided to the client.Like this, can the current cable TV service of relaying according to DOD of the present invention system 100.
The typical according to another embodiment of the present invention DOD of Figure 1B explanation system 100.Except element described in Figure 1A, DOD system 100 comprises switch matrix 112, channel monitor module 114, one group of backup channel server 116a-116b and one group of backup upconverter 118a-118b.In one embodiment, switch matrix 112 is physically located between upconverter 106 and the combiner/amplifier 108.Central control server 102 control switch matrixes 112.Channel monitor module 114 comprises a plurality of simulation potential customers' structure set-top box, to monitor the intact situation of DOD system 100.Channel monitor module 114 will monitor that the result sends central control server 102 to.Under the situation of channel fault (for example channel server fault, upconverter fault or communication line fault), central control server 102 breaks away from faulty components by switch matrix 112, with intact backup assembly 116 with or 118 combine and continue afterwards to serve.
In the embodiment of example, be contained in Motion Picture Experts Group (MPEG) file from the data file of DOD system broadcasts.Each mpeg file dynamically is divided into data block and the sub-piece that is plotted to the specific part of data file along time shaft.The three-dimensional that provides according to central control server 102 transmits matrix, sends these data blocks and sub-piece at the fixed time.DOD system 100 does not need feedback channel that DOD is provided service.But if having feedback channel, then this feedback channel can be used for other purpose, for example checks out or Internet service is provided.
Fig. 2 explanation is according to the typical channel server 104 of the embodiment of the invention.Channel server 104 comprises controller server 202, CPU204, QAM modulator 206, local storage 208 and network interface 210.Controller server 202 is divided into the whole operation that piece is controlled (further being divided into sub-piece and packet) channel server 104 by instruction CPU204 with data file, select the transmission data block according to the transmission matrix that central control server 102 provides, the selecteed data of encoding, compress the data that are encoded, the data after will compressing afterwards send QAM modulator 206 to.QAM modulator 206 receives the data that connect transmission by bus (for example PCI, cpu local bus) or Ethernet.In the embodiment of example, upstream quadrature amplitude modulation/quadriphase PSK (QAM/QPSK) that QAM modulator 206 comprises downstream QAM, have a forward error correction decoder burst (burst) demodulator and/or upstream tuner.QAM modulator 206 is output as the IF signal that is applied directly on the upconverter 106.
Network interface 210 is connected to channel server 104 on another channel server 104 and the central control server 102, execution is from the planning and the control command of central control server 102, state is returned central control server 102, and from central memory 103 received data files.According to before the instruction treatmenting data file from controller server 202, any data file from central memory 103 can be stored in the local storage 208 of channel server 104.In the embodiment of example, channel server 104 can send one or more DOD data flow according to the compression standard/bit rate (for example MPEG-1 or MPEG-2) of the bandwidth of cable channel (for example 6,6.5 or 8MHz), QAM modulation (for example QAM64 or QAM256) and DOD data flow.
Fig. 3 explanation is according to the universal set-top box (STB) (STB) 300 of the embodiment of the invention.STB300 comprises the fast data bus 322 of qam demodulator 302, CPU304, local storage 308, buffer storage 310, the decoder 312 with video and audio decoder ability, chart overlay module 314, user interface 318, communication line 320 and described these equipment that are coupled.The whole operation of CPU302 control universal STB 300, ask to select data corresponding to the user, the data that decoding is chosen, the data that decompression is encoded, the data that are encoded again collect, the storage that will be encoded sends decoder 312 in local storage 308 or buffer storage 310 and with the data of storing.In the embodiment of example, local storage 308 comprises nonvolatile memory (for example hard disk drive), and buffer storage 310 comprises volatile memory.
In one embodiment, QAM decoder 302 comprises conveyer and receiver module and following one or more: secret encrypting-decrypting module, forward error correction decoder/encoder, tuner control, downstream and upstream process device, CPU and memory interface circuit.Qam demodulator 302 receives modulated I F signal, and sampling and this signal of demodulation are with restore data.
In the embodiment of example, when allowing visit, at least one data block of decoder 312 decodings is converted to data block the image that can be shown on the cutout screen.Decoder 312 supports from the order of subscribing the client, for example plays, stops, time-out, backrush, F.F. etc.Decoder 312 provides decoded data to output equipment 324, uses for the client.Output equipment 324 can be any suitable equipment such as TV, computer, any appropriate display monitor, VCR for example.
Chart overlay module 314 guarantees to be shown the chart quality by alpha blended or picture-in-picture capability for example are provided.In typical embodiment, chart overlay module 314 can be used to chart and quicken during the game play pattern, for example, and when the service provider provides the recreation order program service of use according to system of the present invention.
User interface 318 can make the user control STB300, and can be any suitable device, for example remote control equipment, keyboard, smart card etc.Communication line 320 provides added communications to connect.This can be coupled on another computer, or is used to carry out two-way communication.Data/address bus 322 preferably resembles commercial " fast " data/address bus that gets that can be suitable for carrying out by real-time mode data communication the requirement of the present invention.Suitable example is USB, firewire etc.
In the embodiment of example,, only have the DOD subscriber decodable code of compatible STB300 and enjoy the data-on-demand service though data file is broadcast to all cable TV subscribers.In the embodiment of an example, can in user interface 318, obtain the permission of acquisition point multicast data file by smart card system.Can be in local shop or the vending machine smart card place that is provided with of service provider smart card is recharged.In the embodiment of another example, predesignating price system provides the subscriber can obtain the unlimited access of data file to all.
In most preferred embodiment, the data-on-demand interactive feature makes the client all can select available data file at any time.The client pushes the time of selector button and the time quantum that begins to play between time of selected data file is called as the response time.When distributing more resources (for example bandwidth, server-capabilities) that the DOD service is provided, the response time shortens.In the embodiment of example, can determine the response time according to the appraisal of resource allocation and the service quality of expectation.When combining with the embodiment that first data block is placed on serial flow, the response time becomes the factor of the time that only is used to receive and handle this first data block.
In one embodiment, the quantity of the data block of following each data file of calculating (NUM_OF_BLKS):
Estimated_BLK_Size=(DataFile?Size*TS)/DataFile_Length (1)
BLK?SIZE=(Estimated?BLK?Size+CLUSTER?SIZE-1Byte)/CLUSTER_SIZE (2)
BLK_SIZE_BYTES=BLK_SIZE*CLUSTER_SIZE (3)
NUM_OF_BLKS=(DataFile_Size+BLK_SIZE_BYTES-l?Byte)/BLK_SIZE_BYTES(4)
In (4), Estimated_BLK_Size is a piece size (is unit with the byte) of estimating at equation (1); DataFile_Size is the size (is unit with the byte) of data file; TS represent time slot during (is unit with the second); During the DataFile_Length data file (is unit with the second); BLKSIZE is the quantity of required bunch of each data block; CLUSTER_SIZE is bunch size (for example 64KB byte) in the local storage 208 of each channel server 104; BLK_SIZE_BYTES is to be the piece size of unit with the byte.In the present embodiment, the quantity of piece (NUM_OF_BLKS) equals data file size (is unit with the byte) and adds with the byte to be that the block size of unit subtracts 1 byte again, again divided by being the block size of unit with the byte.Equation (1) to (4) illustrates a specific embodiment.Those skilled in the art be to be appreciated that other method also computable number according to the data block quantity of file.For example, data file being divided into a plurality of data blocks mainly is to estimate the function of bunch size of the local storage 208 of piece size and channel server 104.Like this, the invention is not restricted to above-mentioned specific embodiment.
Fig. 4 explanation sends data file generates planning matrix with the typical case process according to the embodiment of the invention.In the embodiment of example, the present invention uses time division multiple access (TDM) and frequency division multiple access (FDM) technology to come to transmit in server side compression and layout data.In the embodiment of example, each data file is all generated planning matrix.In one embodiment, each data file is divided into a plurality of data blocks, generates planning matrix according to the quantity of data block.Typically, planning matrix provides an order of transmission, and the data block of data file is sent to the client from server, thus any client who thinks to visit at any time this data file all in order order visit data block.
When step 402, the data block quantity (x) of received data file.The first variable j is made as zero (step 404).Remove referential array (step 406).For the internal control purpose, referential array keeps the tracking to data block.Below, compare j and x (step 408).If j, then is made as second variable zero (step 412) less than x.Then, compare i and x (step 414).If i less than x, then writes referential array (step 418) with data blocks stored in the row [(i+j) mod (x)] of planning matrix.If referential array has had this data block, then do not write duplicate.At first, because planning matrix does not also enter the mouth, so can skip over this step.Below, if comprise data block i, then check referential array (step 420).At first, because all inlets all are eliminated in step 406 in the referential array, so what does not all have in the referential array.If referential array does not comprise data block i, then data block i is added and be in planning matrix that matrix position [(i+j) mod (x), j] locates and the referential array (step 422).After adding data block i in planning matrix and the referential array, i is added 1, j=i+1 (step 424) repeats this process in step 414, afterwards up to i=x like this.If referential array comprises data block j, then j is added 1, i=i+1 (step 424) repeats this process in step 414, afterwards up to i=x like this.When i=x, j is added 1, j=j+1 (step 416) repeats this process in step 406, afterwards up to j=x like this.When j=x, finish whole process (step 410).
In the embodiment of example, if data file is divided into six data blocks (x=6), then planning matrix and referential array are as follows:
Planning matrix (SM)
TS0 TS1 TS2 TS3 TS4 TS5
[0,0]blk0 [1,0]blk1 [2,0]blk2 [3,0]blk3 [4,0] blk4 [5,0]blk5
[0,1] [1,1]blk0 [2,1] [3,1] [4,1] [5,1]
[0,2] [1,2] [2,2]blk0 [3,2]blk1 [4,2] [5.2]
[0,3] [1,3] [2,3] [3,3]blk0 [4,3] [5.3]blk2
[0,4] [1,4]blk3 [2,4] [3,4] [4,4] blk0 [5.5]blk1
[0,5] [1,5] [2,5] [3,5]blk4 [4,5] [5,5]blk0
Referential array (RA)
space0 space1 space2 space3 space4 space5
TS0 blk0 blk1 blk2 blk3 blk4 blk5
TS1 blk1 blk0 blk2 blk3 blk4 blk5
TS2 blk2 blk0 blk3 blk1 blk4 blk5
TS3 blk3 blk1 blk0 blk4 blk5 blk2
TS4 blk4 blk0 blk5 blk2 blk1 blk3
TS5 blk5 blk2 blk1 blk0 blk3 blk4
The appendix A that invests the application has been described the step-by-step procedure of canonical process illustrated in fig. 4, generates above-mentioned planning matrix and referential array.In the embodiment of this example,, send six data blocks of data file by following order according to above-mentioned planning matrix:
Figure C02118323D00191
Figure C02118323D00192
Figure C02118323D00193
Figure C02118323D00201
Figure C02118323D00202
In the embodiment of another example, can use (look-ahead) process of going ahead of the rest to calculate planning matrix in advance, before the access time of prediction, send the data block of the predetermined quantity of data file.For example, if during predetermined time slot of first line time, then for any more than or equal to for the time slot of number of timeslots 4, TS3 or before by the data block (blk4) of the STB300 received data file of subscribing the customers' place.But before TS4, do not play blk4.The process steps that generates the planning matrix of going ahead of the rest is similar to the process steps of above-mentioned Fig. 4 basically, the sequence of the planning matrix in advance in present embodiment according to time planning transmission early in advance.Suppose data file is divided into six data blocks, the typical case based on the planning matrix of going ahead of the rest who then has two first line times during the time slot sends sequence and is expressed as follows:
Figure C02118323D00203
Figure C02118323D00204
Figure C02118323D00205
Figure C02118323D00206
Figure C02118323D00207
Figure C02118323D00208
Planning matrix according to each data file of one group of data file generates the three-dimensional transmission matrix that sends this group data file.Transmit in the matrix in three-dimensional, the three-dimensional that generates each data file in this group data file comprises ID.Calculate this three-dimensional and transmit matrix, transmit a plurality of data flow with the bandwidth utilized that makes full use of each channel.In typical embodiment, use convolution method well known in the art to generate the three-dimensional matrix that transmits, plan effective transmission of one group of data file.For example, convolution method can comprise following regulation: the total quantity of the data block that sends in during (1) any time slot (TS) will remain possible minimum number; (2) if (1) can utilize a plurality of parts to separate (partial solutions) according to the rules, then best decompose be with any with reference to the data block that sends in during the time slot, formerly time slot (corresponding to the reference time slot) during in the data block that sends and next time slot (corresponding to the reference time slot) during in the data block that sends data block minimum and decomposition.For example, suppose to send the data file M of two weak points and the canonical system of N, wherein, each data file is divided into six data blocks, as follows based on the transmission sequence of planning matrix:
Figure C02118323D00211
Figure C02118323D00213
Figure C02118323D00215
Figure C02118323D00216
Use this typical case's convolution method as mentioned above, it is as follows then to transmit may making up of matrix:
Figure C02118323D00218
Figure C02118323D00221
Figure C02118323D00222
Figure C02118323D00223
Figure C02118323D00224
Figure C02118323D00231
Application specifies (1), option 2,4 and 6 have the maximum quantity (for example 6 data blocks) of the minimum of the data block that sends during the when crack in office.Application specifies (2), the best among the embodiment of this example transmit matrix for choosing 4, and this is to add that because of the data block that option 4 has any reference time the minimum of the data block of adjacent time-slots closes (for example 16 data blocks).Like this, present embodiment preferably comes the transmission sequence of shifted data file N with three time slots.In the embodiment of example, each channel server 104 is all generated a three-dimensional matrix that transmits.
When sending the data block of each data file according to the transmission matrix, a large amount of reservation clients is the visit data file at any time, and each subscribes the proper data piece that the client can in time utilize data file.In above-mentioned example, suppose time slot during equal 5 seconds, then DOD system 100 transmits the data block that matrix (transfer sequence of the data file N of three time slots that for example are shifted) sends data file M and N by following mode according to the best:
Figure C02118323D00232
Figure C02118323D00233
Figure C02118323D00234
Figure C02118323D00235
Figure C02118323D00236
Figure C02118323D00237
Figure C02118323D00239
Figure C02118323D002310
Figure C02118323D002311
Figure C02118323D002312
Figure C02118323D002313
When time 00:00:00, client A selects film M, the following reception of STB300, storage, broadcast and the repulsion data block at client A place:
Figure C02118323D00241
Figure C02118323D00242
Figure C02118323D00243
Figure C02118323D00245
Figure C02118323D00246
When time 00:00:10, client B selects film M, the following reception of STB300, storage, broadcast and the repulsion data block at client B place:
Figure C02118323D00247
Figure C02118323D00248
Figure C02118323D00249
Figure C02118323D002410
Figure C02118323D002411
Figure C02118323D002412
Figure C02118323D002413
When time 00:00:15, client C selects film N, the following reception of STB300, storage, broadcast and the repulsion data block at client C place:
Figure C02118323D002415
Figure C02118323D002416
Figure C02118323D002418
Figure C02118323D00251
When time 00:00:30, client D also selects film N, the following reception of STB300, storage, broadcast and the repulsion data block at client D place:
Figure C02118323D00252
Figure C02118323D00254
Figure C02118323D00255
Figure C02118323D00256
Figure C02118323D00257
Figure C02118323D00258
As showing, any combination of client all can independently be selected at any time and begin to play any data file that the service provider provides as above-mentioned example.When system is total when receiving Continuous Flow by time slot established data piece, above-mentioned " receptions " indication is slightly easily made us misreading, but at any set point, after reception STB has received and stores other data block, only needs some data block.This need be called as " reception " in the above, but should be called " not repelling " or rather.Therefore, " receiving M4 " can be defined as " all the other all repel except that M4 ", and " what does not receive " can be defined as " all repelling " better.
From above-mentioned example as can be known, during certain time slot, can not fully use available bandwidth.Particularly, during some time slot at least, there be when not busy " ", wherein do not produce any transmission.It during this spare time the intrinsic invalid use that can utilize bandwidth.Referring to above-mentioned example option 4, wherein, two data blocks of transmission during corresponding time slot.In other words, in time slot, be idle between four data block transmission periods with the bandwidth that is suitable for transmitting six data blocks.Though be noticeable in option 4, to become thousands of data blocks then more remarkable when big when data file.Even use the best of breed agreement to come data splitting, tangible empty block space portion is only arranged.
This sky block space portion equals untapped bandwidth, therefore is the bandwidth of waste.When an object of the present invention is to reduce the spare time as far as possible, therefore, an embodiment of present invention is at definite planning matrix, carries out another step here when referring to reduce the spare time behind the planning matrix.
With reference to above-mentioned six slip gauges draw matrix publicly price-reduction planning matrix when low not busy typical module but for convenience, repeat specification here.For clear, during with bandwidth not busy that be used to transmission data block with<--〉:
Figure C02118323D00261
Figure C02118323D00262
Figure C02118323D00263
Figure C02118323D00264
Figure C02118323D00266
Express scheming among Fig. 5.The not utilized bandwidth of form when planning matrix clearly has by the spare time during most of time slot.When the present invention openly reduces this spare time by the constant bandwidth of utilization from the time slot to the time slot.By constant bandwidth be used to realize reducing the spare time time transmission time key be to understand the transfer sequence that must observe data block that and the correct time slot of transmission block is incoherent, removes nonessentially to receive data block when visit or before the visit.Therefore, the transfer sequence of setting according to planning matrix and do not consider the planning matrix distributed time slot by transmitting the data block of the constant number in each time slot, can be finished the utilization of constant bandwidth.
Six slip gauges in foregoing detailed description are drawn in the matrix, exist obviously many when not busy in TS0, TS1, TS2 and TS3.Because example is supposed the transmission of the constant bandwidth of expectation corresponding to four data blocks of each time slot.Therefore, before planning four data blocks for transmission during each time slot, by moving forward data block when reducing the spare time.Process is that order obtains next data block, and it is moved on to empty space.Therefore, for this example, first blk1 among the TS1 moved on to TS0.Next piece blk1 among the TS1 also moves up.Then, because TS0 also has empty data block space, so also move up from the blk3 of TS1.The space of TS0 all is filled afterwards, and is as follows now:
Figure C02118323D00267
Existing TS1 and most of TS2 are empty, therefore move up from the data block of TS3.In case finish this sequence, then matrix is as follows:
Figure C02118323D00271
Figure C02118323D00273
Figure C02118323D0027171309QIETU
Figure C02118323D00275
[1] this also expresses scheming in Fig. 6.Empty and incomplete time slot, for example TS4 in the present embodiment and TS5 only just are filled by repeating original series, when also being full of the spare time simultaneously.Therefore this first six time slots show below:
Figure C02118323D00276
Figure C02118323D00277
Figure C02118323D00279
Figure C02118323D002711
Following two time slots in this sequence, TS6 will have the data block identical with TS2 and TS3 with TS7.Therefore, actual what generate only is that four time slots are long by this process in new shorter planning matrix.Fig. 7 illustrates the new repetition matrix that this generates when filling the spare time with chart.
From above-mentioned example as can be known, as long as follow original order, then with the transmission on time of original planning matrix in pairs than, the user can receive data file in advance.User even can carry out system's time slot in mid-term and in case receive and just bring into use these data when starting clock blk0.
In this way, time slot becomes computable virtual to a great extent, and data block then becomes continuous stream, and on any point of this stream, the user can get involved this system and begin to receive data.As shown in Figure 8, this additional step is relative simple steps, carries out when process 410 finishes.
In order to simplify, the foregoing description of Fig. 4-10 is handled the situation of constant that selected bandwidth is set equal to the integer amount of data block.But this constant bandwidth needn't equal the integer amount of data block.On the contrary, only need that disclosed sequence is consistent among transfer sequence and Fig. 8.The data flow that disclosed transfer sequence generates among Fig. 8 is provided for the more rudimentary hardware device (for example network card or channel server) of control figure data broadcasting.This more rudimentary hardware device is the integer amount of broadcast data piece not, but as much as possible with transfer of data in the bandwidth of distributing to file.
It is apparent to those skilled in the art that on the abstraction hierarchy of transfer sequence actual transmissions that needn't concern of data.On the contrary, transmit matrix this sequence is provided, and this more rudimentary hardware device utilizes the bandwidth of this distribution to come control data broadcasting.Therefore, the distribution bandwidth that comprises the mark of block size can be utilized fully.In case the bandwidth that is assigned with is utilized, then will suspend the broadcasting of this particular data file than low-level devices, can be utilized once more up to bandwidth.
In above-mentioned example, when the maximum bandwidth that is used for original planning matrix is used to reduce the spare time in the matrix.Therefore, no matter the user begins to receive data at which point, and then maximum waiting time does not change.But it is conspicuous resembling for those of ordinary skill in the art, bandwidth can be adjusted into cost or time income.The data-on-demand service that importantly spends maximum time is no more than the time of execute file.If surpass, the quantity of result's time slot that to be the time slot total quantity that has of planning matrix comprise greater than original planning matrix then.If one or two hour film, for example, playing needs three hours, and leaving gap in the middle of the film.But some applications can be used or even expect this function, the Downloadable data flow of not using immediately for example.
Single stream with data of constant, overall optimum bandwidth can be combined simply.The result is more than one stream bandwidth, and its overall width is the summation of single stream.
As implied above, the planning matrix for the calculating individual traffic when reducing the spare time is very useful.Under this mode, when transmitting data stream, can fully use the bandwidth of specified amount.But as mentioned above, one aspect of the present invention is to generate a three-dimensional matrix that transmits.Utilize a three-dimensional matrix that transmits, can calculate and carry out reduction with identical method and transmit matrix during the spare time.Yet, transmit matrix when not busy and be used for combining on the single stream and with a plurality of fully optimized single streams in case will reduce, in most of the cases better than this three-dimensional matrice system.
Therefore, what exemplify is a computer implemented method, and transmission comprises that preparing one transmits the order program data file of matrix action, and this transmission defined matrix is suitable for being broadcast to by medium with non-specific manner a plurality of clients' repeating data transfer sequence.The action that this preparation transmits matrix further comprises data file is reduced to have at least one first data block, and data block is lined up described repeating data transfer sequence.Therefore, the user can receive this repeating data transfer sequence, and in case just brings into use this data file in unbroken mode after receiving this first.This repeating data transfer sequence needs a predetermined bandwidth, and when in the transmission of repeating data transfer sequence, further having small (de-minimus) not busy.And the transmission of data-on-demand file needs independently transmission bandwidth of a large amount of and client.
Fig. 9 has summed up planning sequence when how to determine to reduce the spare time in a flowchart.At first, generate an original planning matrix at 520 pairs of data files.According to the present invention, this original planning matrix only is non-reduction planning matrix when not busy.For clear, be referred to as " original ".About original planning matrix, apparition be not the matrix itself that constitutes, but obtain the order of data source.Therefore, the order of data block is most important when determine reducing when not busy planning matrix in the original matrix.As implied above, when this planning sequence can be used to fill not busy in the original matrix.But,, may expect at first to adjust the amount of bandwidth 540 of distributing to data file aspect this.In case distributed bandwidth, the data block matrix that moves up then is up to removing all idle time slots.On the rational faculty,, then delete idle time slot 550 if think sequence.In case after finishing, repeat sequence from original planning matrix.With what finish to take place is to have new repetitive sequence, and this is considered to new reduction planning matrix 560 when not busy.
Difference when it should be noted that the planning sequence and reducing the spare time between the planning matrix mainly is cognitive.Can be illustrated as linear order with one, another is illustrated as repetition matrix matrix, but final result is the steady flow that the user receives non-client's certain data block.
A kind of method that is used to reduce the necessary bandwidth of planning matrix of broadcasting DOD data block is the frequent data block that takes place of broadcasting on the channel of special use.As can be seen, selected data block takes place more continually than other data block in the stream from the matrix of example given below, and the original transmission matrix with following free time is as follows:
Figure C02118323D00301
Figure C02118323D00302
Figure C02118323D00303
Figure C02118323D00305
Figure C02118323D00306
The transmission matrix of the free time with minimizing that is produced by the processing procedure of Fig. 9 is as follows:
Figure C02118323D00307
Figure C02118323D00309
Figure C02118323D003010
The free time matrix of minimizing of this example that is expressed as a linear repeating data stream is as follows:
Figure C02118323D003011
Figure C02118323D003012
Transmit the linearity of matrix from example and explain as can be seen, blk0 transmits more continually than piece 1-5.Different transmission matrixes can cause different data blocks frequently to take place more or less in given data block stream.In any transmission matrix, the data block that early takes place in sequence will take place more continually, and wherein will always takes place the most continually.
Because blk0 takes place more continually than other data block in data flow, can reach narrower transmission bandwidth by the piece that in an independent data stream, sends blk0 and other frequent generation.This stream has greatly the bandwidth that reduces with respect to original stream, and the bandwidth of distributing to primary flow can be reduced by only transmitting a more not frequent data block.For example, independently flow if above-mentioned stream is divided on two, only carry look ahead stream and the primary flow of carrying the remainder data piece of data b lk0, these two streams can be expressed as follows:
Figure C02118323D00311
Figure C02118323D00312
Figure C02118323D00313
Therefore by transmit blk0 in independent data stream, the desired bandwidth of transmission primary data stream has been reduced 37.5%.This minimizing is because of blk0 has comprised in the primary data stream in 16 all data blocks 6, so that removing effectively of blk0 will reduce 6 in the quantity of the data block of primary data flow transmission.The prefetch data that transmission comprises friend blk0 flows desired additional bandwidth and compares very for a short time, and this depends on by receiving the buffering capacity that STB carries out, and this buffering will be below carry out cun discussing with reference to Figure 12.
Significant advantage of this method is to have reduced the professional required time of the selected data-on-demand of visit, one receives the blk0 of selected DOD business, use and just bring into use selected business, if but not looking ahead stream, the user must wait for up in elementary data flow blk0 having taken place.Because blk0 transmission continuously on stream independently can be used this service and needn't receive next blk0 from the stream that comprises a plurality of different pieces of information pieces by the time.Certainly, use this data on demand system for smoothness, must receive blk1 and finish preparation by time blk0 use, this just requires primary data stream to have enough big bandwidth to guarantee that blk1 receives before blk0 finishes.
Figure 10 illustrates the DOD data block of planning the transmission on the primary data stream according to an embodiment of the invention and the flow chart at 600 places that prefetch data flows through journey.At first step 602 places, planning shows as the linear order by the tactic data block of transmission data block when reducing the spare time.In step 604, from the remaining sequence that needs the shorter sequence of the data block of narrow bandwidth more, remove the data block of the most frequent generation.As mentioned above, Blk0 the most frequent generation always.In step 606, the data block that will remove from reduce not busy time series is placed in the prefetch data stream that constitutes whole Blk0 data block.Then, in step 608, on the separation bandwidth, separate the repeating data streams and transmit primary data stream and prefetch data stream, come receiving set up box (Figure 1B) by transmission medium 110 as two.
Figure 11 explanation is gone up the DOD data block transmitted in 650 process according to the planning primary data stream of an embodiment and prefetch data stream, wherein transmit a plurality of DOD data blocks transmission on prefetch data stream of matrix, thereby minimize required altogether transmission bandwidth from DOD.At first step 652, reduce planning when not busy and show as linear order into the data block of the arrangement of transmission data block.In step 654, from the remaining sequence that needs the short elementary sequence of the data block of narrow bandwidth more, remove the data block of the most frequent generation.In step 656, the data block that will remove from reduce not busy time series is placed in the prefetch data stream.
In step 658, need to determine transmission data block whether to be reduced to below the predetermined critical value than the bandwidth of short primary flow.It is conspicuous complicated subprocess for a person skilled in the art that this step can need a plurality of.If the bandwidth subcritical value that primary data stream is required, then this process lasts till step 660.In step 660, on the separation bandwidth, separate the repeating data streams and transmit primary data stream and prefetch data stream as two, come receiving set up box (Figure 1B) by transmission medium 110.
If required bandwidth is greater than critical dividing value, then process is returned step 654, wherein, removes the simultaneous data block of peak frequency with remaining data block.Then, in step 656, the data block of removing is added in the prefetch data stream.This process continues self and repeats, and up to determining required transmission bandwidth less than critical value in step 658, finish this process at step 660 place this moment.In the embodiment that substitutes, can use another standard to replace critical value, for example minimize aggregate bandwidth needs elementary and prefetch data stream.Under this mode, be to reduce submit on June 25 calendar year 2001 of 09/892017 by namely when not busy and the broadcasting of constant bandwidth data-on-demand transmits and reduces when not busy in the application of the same clan of Khio Hoanh of matrix and the constant bandwidth transfer approach further reduces and transmits DOD and serve required bandwidth by application number.
The data block of removing the frequency generation from primary data stream has influence to the total quantity that reduces the data block that comprises in the primary data stream greatly, thereby reduces the required bandwidth of transmission primary data stream.Following table is described as removing the sampling bandwidth conservation of selected data block from primary data stream:
Table 1: the bandwidth conservation of specific preloading data piece in one or six sequences
Data block (preloaded) The occurrence frequency of in data block, estimating (in 6 sequences) The bandwidth conservation of estimating
Blk0 100% 1BW
Blk1 ~50% ~.5BW
Blk2 ~33% ~.33BW
Blk3 ~25% ~.25BW
Blk4 ~20% ~.20BW
Blk5 ~16% ~.16BW
For the DOD service of zero access with said method transmission, receiving STB must prestrain and store the some or all of data of prefetch data in flowing that are contained in.Because STB must at first load and store the blk0 of any DOD service of demonstration, so exist compromise between the time at transmission bandwidth of saving and access delay.By this prefetch data stream of prestrain and storage prefetch data piece, client STB can utilize minimum delay to visit selecteed DOD service.This need receive STB has and is enough to storage package and is contained in memory of data in the prefetch data stream.
Figure 12 explanation is according to the set-top box prestrain process of one embodiment of the invention at 700 places.In step 702, set-top box is set to free time or passive mode.Typically, this pattern is the default mode of All Clients top box.In step 704, set-top box receives prefetch data stream on dedicated channel.In a typical embodiment, on the electronic program guides channel, receive this prefetch data stream.In step 706, set-top box determines whether the prefetch data piece that receives is newer than previously stored prefetch data.How new the identifier that is included in each prefetch data piece have to set-top box video data piece.If the data block that receives is upgraded, then in step 708, set-top box is stored up-to-date prefetch data piece (Fig. 3) in internal storage 308, typically, be stored in the hard drive magnetic storage apparatus.Typically, though, rewrite the data block of morning with the prefetch data piece that upgrades because different reasons has kept older version.
In step 710, set-top box is converted to active mode by timer or user command.In the embodiment of example, as long as set-top box receives the Any user order, then set-top box is automatically converted to active mode.In such an embodiment, set-top box will remain cycle active mode regular hour, return passive mode afterwards.
In step 712, set-top box receives order, plays the DOD service of selecting.This can be in the electronic program guides service imports one by the user and finishes corresponding to the code of selected DOD service or by selecting DOD to serve from menu.In step 714, play first data block (blk0) of selecteed DOD service in the prefetch data piece that set-top box is stored from step 708.In step 716, set-top box is tuned as suitable channel, and receives the primary data stream corresponding to selecteed DOD service, is stored in (Fig. 3) in the memory 308.In the embodiment of example, this step and step 714 take place simultaneously, till the user stops to play selecteed DOD service.
In step 718, if play all prefetch data pieces corresponding to selected DOD service, then this process lasts till step 720.In step 720, play the remainder of DOD service from the primary flow data block that step 716, formerly receives.This makes plays first data block (blk0) or the first few data block that DOD serves from the prefetch data BOB(beginning of block) of storage, downloads the primary flow corresponding to the data block of selected DOD service simultaneously from server.This system makes and can utilize the minimum delay seamlessly to watch the DOD service in the access time, and reduces bandwidth requirement.For optimization, must store and play enough prefetch data pieces, so that download data block in use from primary data stream.This can require to increase the bandwidth or the primary data stream of looking ahead and flowing.
Constitute prefetch data stream and finally by the stream of looking ahead be loaded into data in the idle set-top box can change date, week or month process reflect user's hobby and generate maximum bandwidth conservation.For example, a Mon evening in autumn, opposite with the evening in cycle, when the up-to-date family story film that broadcasts has the beginning sequence that sends in prefetch data stream, can make specific sport event more general in prefetch data stream.
Because the sequence of blocks of data of prestrain has been stored on the STB, when this set-top box is idle pulley simultaneously, so set-top box users can at any time begin the program expected without delay.This prefetch data piece sequence of sustainable renewal reflects that upgrading the pre-programmed that causes based on expection DOD user requesting users (for example order of user's film of not beginning to watch) or debugging in advance changes when STB is idle pulley.
Above-mentioned example illustrates the embodiment of some example of the present invention, and therefrom, other embodiment, variation or change are conspicuous for a person skilled in the art.Therefore, the invention is not restricted to above-mentioned specific embodiment, and define by following claim.
Appendix A
B: reduce when not busy and the broadcasting of constant bandwidth data-on-demand transmits matrix
Be the progressively explanation of canonical process illustrated in fig. 4 below, generate the planning matrix of data file with six data blocks:
Beginning
The data block quantity (x) of (step 402) received data file; The tentation data number of blocks equals 6 (x=6)
(step 404) establishes j=0
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 412) j establishes i=0 less than x (0<6)
(step 414) contrast i and x
(step 418) i reads the matrix position of the row [0] among the SM and writes RA less than x (0<6); At first, SM is empty, so do not write RA whatever.
Does (step 420) RA comprise data block I or blk0?
(step 422) is because RA is empty, so do not comprise whatever.Blk0 is write in the position [0,0] and RA of SM.
(step 424) adds 1 (i=1) with i, obtains the value of position [1,0].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [1] and write among the RA; At first, SM is empty, so do not write RA whatever.
Does (step 420) RA comprise data block i or blk1?
(step 422) RA does not comprise blk1.Blk1 is write in the position [1,0] and RA of SM.
(step 424) adds 1 (i=2) with i, obtains the value of position [2,0].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (2<6).Read among the SM matrix position of row [2] and write among the RA; At first, SM is empty, so do not write RA whatever.
Does (step 420) RA comprise data block i or blk2?
(step 422) RA does not comprise blk2.Blk2 is write in the position [2,0] and RA of SM.
(step 424) adds 1 (i=3) with i, obtains the value of position [3,0].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [3] and write among the RA; At first, SM is empty, so do not write RA whatever.
Does (step 420) RA comprise data block i or blk3?
(step 422) RA does not comprise blk3.Blk3 is write in the position [3,0] and RA of SM.
(step 424) adds 1 (i=4) with i, obtains the value of position [4,0].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (4<6).Read among the SM matrix position of row [4] and write among the RA; At first, SM is empty, so do not write RA whatever.
Does (step 420) RA comprise data block i or blk4?
(step 422) RA does not comprise blk4.Blk1 is write in the position [4,0] and RA of SM.
(step 424) adds 1 (i=5) with i, obtains the value of position [5,0].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (5<6).Read among the SM matrix position of row [5] and write among the RA; At first, SM is empty, so do not write RA whatever.
Does (step 420) RA comprise data block i or blk5?
(step 422) RA does not comprise blk5.Blk5 is write in the position [5,0] and RA of SM.
(step 424) adds 1 (i=6) with i.Return step 414.
(step 414) be i and x relatively.
(step 416) i equals x (6=6).J is added 1 (j=1).Return step 406.
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 412) j is less than x (0<6).
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [1] and write among the RA; Position [1,0] comprises blk1; Therefore, blk1 is written among the RA, and all other positions are empty.
Does (step 420) RA comprise data block i or blk0?
(step 422) RA does not comprise blk0.Blk0 is write in the position [1,1] and RA of SM.RA has blk1 and blk0 now.
(step 424) adds 1 (i=1) with i, obtains the value of position [2,1].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [2] and write among the RA.Position [2,0] comprises blk2.All other positions all are empty.RA has blk1, blk0 and blk2 now.
Does (step 420) RA comprise data block i or blk1?
(step 424) RA comprises blk1.Like this, what writing position [2,1] not.I is added 1 (i=2), obtain the value of position [3,1].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (2<6).Read among the SM matrix position of row [3] and write among the RA.Position [3,0] comprises blk3.All other positions all are empty.RA has blk1, blk0, blk2 and blk3 now.
Does (step 420) RA comprise data block i or blk2?
(step 424) RA comprises blk2.Like this, what writing position [3,1] not.I is added 1 (i=3), obtain the value of position [4,1].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [4] and write among the RA.
Position [4,0] comprises blk4.All other positions all are empty.RA has blk1, blk0, blk2, blk3 and blk4 now.
Does (step 420) RA comprise data block i or blk3?
(step 424) RA comprises blk3.Like this, what writing position [4,1] not.I is added 1 (i=4), obtain the value of position [5,1].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (4<6).Read among the SM matrix position of row [5] and write among the RA.Position [5,0] comprises blk5.All other positions all are empty.RA has blk1, blk0, blk2, blk3, blk4 and blk5 now.
Does (step 420) RA comprise data block i or blk4?
(step 424) RA comprises blk4.Like this, what writing position [5,1] not.I is added 1 (i=5), obtain the value of position [0,1].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (5<6).Read among the SM matrix position of row [0] and write among the RA.Position [0,0] comprises blk0.All other positions all are empty.RA has comprised blk0; Like this, deletion blk0.
Does (step 420) RA comprise data block i or blk5?
(step 424) RA comprises blk5.Like this, what writing position [0,1] not.I is added 1 (i=6).Return step 414.
(step 414) be i and x relatively.
(step 416) i equals x (6=6).J is added 1 (j=2).Return step 406.
Figure C02118323D00381
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 412) j makes i=0 less than x (2<6).
(step 414) be i and x relatively.
(step 418) i is less than x (0<6).Read among the SM matrix position of row [2] and write among the RA.Position [2,0] comprises blk2.All other positions all are empty.RA has blk2 now.
Does (step 420) RA comprise data block i or blk0?
(step 422) RA does not comprise blk0.Blk0 is write in the position [2,2] and RA of SM.RA has blk2 and blk0 now.
(step 424) adds 1 (i=1) with i, obtains the value of position [3,2].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [3] and write among the RA.Position [3,0] comprises blk3.All other positions all are empty.RA has blk2, blk0 and blk3 now.
Does (step 420) RA comprise data block i or blk1?
(step 422) RA does not comprise blk1.Blk1 is write in the position [3,2] and RA of SM.RA has blk2, blk0, blk3 and blk1 now.
(step 424) adds 1 (i=2) with i, obtains the value of position [4,2].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (2<6).Read among the SM matrix position of row [4] and write among the RA.Position [4,0] comprises blk4.All other positions all are empty.RA has blk2, blk0, blk3, blk1 and blk4 now.
Does (step 420) RA comprise data block i or blk2?
(step 424) RA comprises blk2.Like this, what writing position [4,2] not.I is added 1 (i=3), obtain the value of position [5,2].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [5] and write among the RA.Position [5,0] comprises blk5.All other positions all are empty.RA has blk2, blk0, blk3, blk1, blk4 and blk5 now.
Does (step 420) RA comprise data block i or blk3?
(step 424) RA comprises blk3.Like this, what writing position [5,2] not.I is added 1 (i=4), obtain the value of position [0,2].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (4<6).Read among the SM matrix position of row [0] and write among the RA.Position [0,0] comprises blk0.All other positions all are empty.RA has comprised blk0; Like this, deletion blk0.
Does (step 420) RA comprise data block i or blk4?
(step 424) RA comprises blk4.Like this, what writing position [0,2] not.I is added 1 (i=5), obtain the value of position [1,2].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (5<6).Read among the SM matrix position of row [1] and write among the RA.Position [1,0] comprises blk1, and position [1,1] comprises blk0.RA has comprised blkl and blk0; Like this, deletion blk1 and blk0.All other positions all are empty.
Does (step 420) RA comprise data block i or blk5?
(step 424) RA comprises blk5.Like this, what writing position [1,2] not.I is added 1 (i=6).Return step 414.
(step 414) be i and x relatively.
(step 416) i equals x (6=6).J is added 1 (j=3).Return step 406.
Figure C02118323D00401
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 412) j makes i=0 less than x (3<6).
(step 414) be i and x relatively.
(step 418) i is less than x (0<6).Read among the SM matrix position of row [3] and write among the RA.Position [3,0] comprises blk3, and position [3,2] comprise blk1.Blk3 and blk1 are write among the RA.All other positions all are empty.
Does (step 420) RA comprise data block i or blk0?
(step 422) RA does not comprise blk0.Blk0 is write in the position [3,3] and RA of SM.RA has blk3, blk1 and blk0 now.
(step 424) adds 1 (i=1) with i, obtains the value of position [4,3].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [4] and write among the RA.Position [4,0] comprises blk4.All other positions all are empty.RA has blk3, blk1, blk0 and blk4 now.
Does (step 420) RA comprise data block i or blk1?
(step 424) RA comprises blk1.Like this, what writing position [4,3] not.I is added 1 (i=2), obtain the value of position [5,3].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (2<6).Read among the SM matrix position of row [5] and write among the RA.Position [5,0] comprises blk5.All other positions all are empty.RA has blk3, blk1, blk0, blk4 and blk5 now.
Does (step 420) RA comprise data block i or blk2?
(step 422) RA does not comprise blk2.Blk2 is write in the position [5,3] and RA of SM.RA has blk3, blk1, blk0, blk4, blk5 and blk2 now.
(step 424) adds 1 (i=3) with i, obtains the value of position [0,3].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [0] and write among the RA.Position [0,0] comprises blk0.All other positions all are empty.RA has comprised blk0; Like this, deletion blk0.
Does (step 420) RA comprise data block i or blk3?
(step 424) RA comprises blk3.Like this, what writing position [0,3] not.I is added 1 (i=4), obtain the value of position [1,3].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (4<6).Read among the SM matrix position of row [1] and write among the RA.Position [1,0] comprises blk1, and position [1,1] comprises blk0.All other positions all are empty.RA has comprised blk1 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk4?
(step 424) RA comprises blk4.Like this, what writing position [1,3] not.I is added 1 (i=5).Obtain the value of position [2,3].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (5<6).Read among the SM matrix position of row [2] and write among the RA.Position [2,0] comprises blk2, and position [2,2] comprise blk0.All other positions all are empty.RA has comprised blk2 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk5?
(step 424) RA comprises blk5.Like this, what writing position [2,3] not.I is added 1 (i=6).Return step 414.
(step 414) be i and x relatively.
(step 416) i equals x (6=6).J is added 1 (j=4).Return step 406.
Figure C02118323D00421
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 412) j makes i=0 less than x (4<6).
(step 414) be i and x relatively.
(step 418) i is less than x (0<6).Read among the SM matrix position of row [4] and write among the RA.Position [4,0] comprises blk4.Blk4 is write among the RA.All other positions all are empty.
Does (step 420) RA comprise data block i or blk0?
(step 422) RA does not comprise blk0.Blk0 is write in the position [4,4] and RA of SM.RA has blk4 and blk0 now.
(step 424) adds 1 (i=1) with i, obtains the value of position [5,4].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [5] and write among the RA.Position [5,0] comprises blk5, and position [5,3] comprise blk2.All other positions all are empty.RA has blk4, blk0, blk5 and blk2 now.
Does (step 420) RA comprise data block i or blk1?
(step 422) RA does not comprise blk1.Blkl is write in the position [5,4] and RA of SM.RA has blk4, blk0, blk5, blk2 and blk1 now.
(step 424) adds 1 (i=2) with i, obtains the value of position [0,4].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (2<6).Read among the SM matrix position of row [0] and write among the RA.Position [0,0] comprises blk0.All other positions all are empty.RA has comprised blk0; Like this, do not write duplicate.
Does (step 420) RA comprise data block i or blk2?
(step 424) RA comprises blk2.I is added 1 (i=3), obtain the value of position [1,4].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [1] and write among the RA.Position [1,0] comprises blk1 and position [1,1].All other positions all are empty.RA has comprised blk1 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk3?
(step 422) RA does not comprise blk3.Like this, blk3 is write in the position [1,4] and RA of SM.RA has blk4, blk0, blk5, blk2, blki and blk3 now.
(step 424) adds 1 (i=4) with i, obtains the value of position [2,4].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [2] and write among the RA.Position [2,0] comprises blk2, and position [2,2] comprise blk0.All other positions all are empty.RA has comprised blk2 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk4?
(step 422) RA comprises blk4.Like this, what writing position [2,4] not.I is added 1 (i=5), obtain the value of position [3,4].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (5<6).Read among the SM matrix position of row [3] and write among the RA.Position [3,0] comprises blk3, and position [3,2] comprise blk1, and position [3,3] comprise blk0.All other positions all are empty.RA has comprised blk3, blk1 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk5?
(step 424) RA comprises blk5.Like this, what writing position [3,4] not.I is added 1 (i=6).Return step 414.
(step 414) be i and x relatively.
(step 416) i equals x (6=6).J is added 1 (j=5).Return step 406.
Figure C02118323D00441
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 412) j makes i=0 less than x (5<6).
(step 414) be i and x relatively.
(step 418) i is less than x (0<6).Read among the SM matrix position of row [5] and write among the RA.Position [5,0] comprises blk5, and position [5,3] comprise blk2, and position [5,4] comprise blk1.Blk5, blk2 and blk1 are write among the RA.All other positions all are empty.
Does (step 420) RA comprise data block i or blk0?
(step 422) RA does not comprise blk0.Blk0 is write in the position [5,5] and RA of SM.RA has blk5, blk2, blk1 and blk0 now.
(step 424) adds 1 (i=1) with i, obtains the value of position [0,5].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (1<6).Read among the SM matrix position of row [0] and write among the RA.Position [0,0] comprises blk0, and all other positions all are empty.RA has blk5, blk2, blkl and blk0 now.
Does (step 420) RA comprise data block i or blk1?
(step 424) RA comprises blk1.I is added 1 (i=2), obtain the value of position [1,5].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (2<6).Read among the SM matrix position of row [1] and write among the RA.Position [1,0] comprises blk1, and position [1,1] comprises blk0, and position [1,4] comprises blk3.All other positions all are empty.RA has comprised blk0 and blk1; Like this, do not write duplicate.Blk3 is write RA.RA has blk5, blk2, blk1, blk0 and blk3 now.
Does (step 420) RA comprise data block i or blk2?
(step 424) RA comprises blk2.I is added 1 (i=3), obtain the value of position [2,5].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (3<6).Read among the SM matrix position of row [2] and write among the RA.Position [2,0] comprises blk2, and position [2,2] comprise blk0.All other positions all are empty.RA has comprised blk2 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk3?
(step 424) RA comprises blk3.I is added 1 (i=4), obtain the value of position [3,5].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (4<6).Read among the SM matrix position of row [3] and write among the RA.Position [3,0] comprises blk3, and position [3,2] comprise blk1, and position [3,3] comprise blk0.All other positions all are empty.RA has comprised blk3, blk1 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk4?
(step 422) RA does not comprise blk4.Blk4 is write in the position [3,5] and RA of SM.RA has blk5, blk2, blk1, blk0, blk3 and blk4 now.
(step 424) adds 1 (i=5) with i, obtains the value of position [4,5].Return step 414.
(step 414) be i and x relatively.
(step 418) i is less than x (5<6).Read among the SM matrix position of row [4] and write among the RA.Position [4,0] comprises blk4, and position [4,4] comprise blk0.All other positions all are empty.RA has comprised blk4 and blk0; Do not write duplicate.
Does (step 420) RA comprise data block i or blk5?
(step 424) RA comprises blk5.Like this, what writing position [3,4] not.
(step 424) adds 1 (i=6) with i.Return step 414.
(step 414) be i and x relatively.
(step 416) i equals x (6=6).J is added 1 (j=5).Return step 406.
Figure C02118323D00461
(step 406) removes referential array (RA)
(step 408) be j and x relatively
(step 410) j equals x (6<6); Finish.

Claims (29)

1. the generic broadcasted method carried out of a computer comprises: prepare definition and be suitable for the transmission matrix of non-client's ad hoc fashion to the transfer of data sequence of a plurality of client's broadcasting demand data, wherein:
The transmission of described order program data comprises second stream that contains the first-class of described transfer of data sequence first subclass and contain described transfer of data sequence second subclass,
Wherein said preparation transmits matrix and comprises following action: first planning matrix of preparing to be suitable for the transmission of first data file, described first data file is represented by more than first data block, described first planning matrix provides first sequence, be used for described more than first data block of sequence ground transmission in time slot in one way, can in a time slot, begin to visit described first data file so that receive the client of the transmission of described first data file according to described first planning matrix.
2. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
Described first subclass and described second subclass do not comprise any common block.
3. the generic broadcasted method that computer according to claim 2 is carried out is characterized in that:
Described first subclass comprises one group of optimized data block, and wherein, described second subclass is the remainder of described transfer of data sequence, and described optimization data chunk depends on the dividing frequency of data block.
4. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
The described first-class flow identifier of looking ahead that further comprises.
5. the generic broadcasted method that computer according to claim 4 is carried out is characterized in that:
Described flow identifier signaling one universal set-top box (STB) of looking ahead is with in the described first-class electronics storage that is pre-loaded on the described universal set-top box (STB).
6. the generic broadcasted method that computer according to claim 4 is carried out is characterized in that:
Described universal set-top box (STB) can load described first-class, and described universal set-top box (STB) is idle simultaneously.
7. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
Described first subclass comprises that program begins required minimum data block, the described minimum available bandwidth that depends on.
8. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
Preferably construct the ratio of the described transfer sequence between described first subclass and described second subclass according to the quantity of available transmission bandwidth.
9. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
The transmission requirement of described order program data is independent of the transmission bandwidth of some of described a plurality of clients' quantity.
10. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
Described first planning matrix is the constant planning matrix of bandwidth.
11. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
Described first planning matrix is the planning matrix of adaptive-bandwidth.
12. the generic broadcasted method that computer according to claim 10 is carried out is characterized in that:
Planning is from constant basis data of described more than first data block, to transmit in the bandwidth of distributing.
13. the generic broadcasted method that computer according to claim 12 is carried out is characterized in that:
Carry out the transmission control that distributes in the bandwidth by a rudimentary hardware device.
14. the generic broadcasted method that computer according to claim 1 is carried out is characterized in that:
The described first-class stream of looking ahead that is in one group is looked ahead the reception plot, visits the described stream of looking ahead by a universal set-top box (STB).
15. the generic broadcasted method that computer according to claim 14 is carried out is characterized in that:
The described reception plot of looking ahead comprises that the user is pre-loaded to described activation on described set-top box with order.
16. the generic broadcasted method that computer according to claim 14 is carried out is characterized in that:
The described reception plot of looking ahead comprises the reservation program from the user.
17. the generic broadcasted method that computer as claimed in claim 1 is carried out, wherein said preparation transmits the action of matrix and carries out in the conventional data broadcast system, describedly first-classly is prestrain transmission data, and further carries out following the action:
First channel server that is suitable for transmitting described prestrain transmission data is provided by first channel;
Before data broadcasting, prepare second channel server of electronic program manual transmission, comprise that the described electronic program guide (EPG) about the 3rd channel information comprises described at least second stream; And
From described first channel and described second channel transmissioning data; With
In universal set-top box (STB) STB, carry out following steps:
When described universal STB is in passive mode, receive first-class interior numerical data described in described first channel;
When described universal STB is in described passive mode, described numerical data is stored in described first-class in the computer-readable medium;
Receive the numerical data of described EPG;
The data of described EPG are provided to the user of described universal STB;
Receive data processing instructions from the user of described universal STB, and carry out described instruction from the described user of described universal STB.
18. the generic broadcasted method that computer according to claim 17 is carried out is characterized in that: generate the action that transmits matrix and comprise following action:
Preparation is suitable for first planning matrix of first data file transmission, described first data file is represented by more than first data block, described first planning matrix provides first sequence, be used for described more than first data block of sequence ground transmission in time slot in one way, can begin to visit described first data file so that receive the client of the transmission of described first data file according to described first planning matrix in the time slot of set amount, wherein said set amount is based on the quantity of piece in the described prestrain stream;
Described first data file does not comprise any generic data block that is contained in the described prestrain stream.
19. the generic broadcasted method that computer according to claim 18 is carried out, it is characterized in that: further comprise the action before the data broadcasting: prepare the 3rd channel server that transmission data-on-demand information is used, described the 3rd channel server of described preparation comprises following action: described transmission matrix is extracted in the memory of described the 3rd channel server and the data block that comprises in second stream that will plan for the transmission of described transmission matrix is extracted in the described memory of described the 3rd channel server; With
Transmission is from the data of described the 3rd channel.
20. the generic broadcasted method that computer according to claim 19 is carried out is characterized in that:
Described first planning matrix is the planning matrix of constant bandwidth.
21. the generic broadcasted method that computer according to claim 20 is carried out is characterized in that:
During each time slot, described more than first data block of planning constant number is to transmit.
22. the generic broadcasted method that computer according to claim 20 is carried out is characterized in that:
Described first planning matrix is the planning matrix of bandwidth varying.
23. a computer implemented method that generates constant bandwidth, is suitable for transmitting with non-client's specific format reduction planning matrix during the spare time of order program data, described method comprises following action:
Generation is suitable for transmitting the planning matrix of first data file, described first data file is represented by more than first data block, described first planning matrix provides first sequential, be used for described more than first data block of sequence ground transmission in time slot in one way, can in a time slot, begin to visit described first data file so that receive the client of the transmission of described first data file according to described first planning matrix;
Determine the constant transmission bandwidth of expectation, wherein, described constant bandwidth then is used for sending described data block according to the sequential flow of described first planning matrix;
Determine to be divided into the correct distribution of the stream of separation according to the data block that described constant bandwidth send stream; With
At least one described separated flow is loaded on the set-top box, and set-top box is not transferred to display unit simultaneously.
24. computer implemented method according to claim 23 comprises:
Described a plurality of data blocks are arranged in the order of determining by following steps:
A. described data file is divided into described a plurality of data block;
B. first variable is made as zero;
C. remove referential array;
The total quantity of d. more described first variable and described a plurality of data blocks;
If it is zero that e. described first variable less than the total quantity of described a plurality of data blocks, is then established second variable;
The total quantity of f. more described second variable and described a plurality of data blocks;
If g. described second variable is less than the total quantity of described a plurality of data blocks, then one or more storage data blocks that are stored in the planning matrix row are write described referential array, determine described row by [(i+j) mod (x)], wherein, i is described second variable, j is described first variable, and x is the quantity of described data block;
If h. described referential array has had at least one described storage data block, then do not write second duplicate;
I. check whether described referential array comprises the described data block corresponding to described second variable;
If j. described referential array does not comprise the piece corresponding to described second variable, then described data block is added on the position of [(i+j) mod (x), j] in the described planning matrix and described referential array, described second variable is added 1;
If k. described referential array comprises the described data block corresponding to described second variable, then described second variable is added 1;
L. repeating step g equals the total quantity of described data block to k up to described second variable;
M. described first variable is added 1;
N. repeating step c) to m), equal the total quantity of described data block up to described first variable;
O. described planning matrix is configured to a plurality of streams again;
Wherein, transmit described order with repeating signal on the medium of the bandwidth with described data file distribution, wherein said repeating signal is fully used described bandwidth.
25. computer implemented method according to claim 24 is characterized in that:
The described step that described planning matrix is configured to a plurality of streams again comprises the size of the described bandwidth of determining that described data file is distributed and determines that first transmits the best size of stream that thus, first transport stream packet is drawn together the beginning sequence of described data file.
26. computer implemented method according to claim 25 is characterized in that:
The size of determining to distribute to the described bandwidth of described file minimizes described bandwidth.
27. computer implemented method according to claim 25 is characterized in that:
The size of determining to distribute to the described bandwidth of described file minimizes described bandwidth.
28. computer implemented method according to claim 24 is characterized in that:
The described a plurality of data transport stream that transmitted the matrix derivation by data comprise a plurality of different data files.
29. computer implemented method according to claim 23 is characterized in that:
Described correct distribution is based on available bandwidth.
CNB021183236A 2001-04-24 2002-04-24 Data requesting digital broadcast system transmitting via preset data Expired - Fee Related CN100484237C (en)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US09/841,792 2001-04-24
US09/841,792 US20020023267A1 (en) 2000-05-31 2001-04-24 Universal digital broadcast system and methods
US09/892,017 US20020026501A1 (en) 2000-05-31 2001-06-25 Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
US09/892,017 2001-06-25
US10/054,008 2001-10-19
US10/054,008 US20020175998A1 (en) 2000-05-31 2001-10-19 Data-on-demand digital broadcast system utilizing prefetch data transmission
US09/997,954 US20020066100A1 (en) 2000-05-31 2001-11-28 Method for providing data services for a large number of small-sized data files
US09/997,954 2001-11-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN200810108280.2A Division CN101309394A (en) 2001-04-24 2002-04-24 Data-on-demand digital broadcast system utilizing prefetch data transmission

Publications (2)

Publication Number Publication Date
CN1384671A CN1384671A (en) 2002-12-11
CN100484237C true CN100484237C (en) 2009-04-29

Family

ID=27489601

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021183236A Expired - Fee Related CN100484237C (en) 2001-04-24 2002-04-24 Data requesting digital broadcast system transmitting via preset data

Country Status (1)

Country Link
CN (1) CN100484237C (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101831775B1 (en) 2010-12-07 2018-02-26 삼성전자주식회사 Transmitter and receiver for transmitting and receiving multimedia content, and reproducing method thereof
US9491437B2 (en) 2010-12-07 2016-11-08 Samsung Electronics Co., Ltd. Transmitter for transmitting data for constituting content, receiver for receiving and processing data, and method therefor

Also Published As

Publication number Publication date
CN1384671A (en) 2002-12-11

Similar Documents

Publication Publication Date Title
CN101309394A (en) Data-on-demand digital broadcast system utilizing prefetch data transmission
CN100399316C (en) Universal STB architectures and control method
US6725267B1 (en) Prefetched data in a digital broadcast system
US20020175998A1 (en) Data-on-demand digital broadcast system utilizing prefetch data transmission
KR100641594B1 (en) Data transmission control method, data transmission method, data transmitter, and receiver
KR100910878B1 (en) A transmission system comprising a transmitter and at least one receiver configured to receive signals transmitted therefrom
US20020026501A1 (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
CN100484237C (en) Data requesting digital broadcast system transmitting via preset data
KR20030092105A (en) Data-on-demand digital broadcast system utilizing prefetch data transmission
CN100405845C (en) Method and system for transmission of universal data video-on-demand service of delay access user
WO2001093062A1 (en) Methods for providing video-on-demand services for broadcasting systems
CA2428829A1 (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
TWI223563B (en) Methods and systems for transmitting delayed access client generic data-on-demand services
AU2001253797A1 (en) Universal digital broadcast system and methods
JP2006509456A (en) Multi-point service insertion in distribution system
KR20030051800A (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery ma-trices
KR20040063795A (en) Transmission of delayed access client data and demand
EP1402331A2 (en) Methods and systems for transmitting delayed access client generic data-on demand services

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1051947

Country of ref document: HK

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090429

Termination date: 20100424