CN1805407A - Data stream filtering module and method, demultiplexing module, and digital television receiving apparatus - Google Patents
Data stream filtering module and method, demultiplexing module, and digital television receiving apparatus Download PDFInfo
- Publication number
- CN1805407A CN1805407A CNA200510023176XA CN200510023176A CN1805407A CN 1805407 A CN1805407 A CN 1805407A CN A200510023176X A CNA200510023176X A CN A200510023176XA CN 200510023176 A CN200510023176 A CN 200510023176A CN 1805407 A CN1805407 A CN 1805407A
- Authority
- CN
- China
- Prior art keywords
- packet
- identity
- filtering
- module
- packets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention relates to a data flow filter module and method, which comprises: according to the output record, the filter record of state memory module and if present data pack has been filtered, judging if outputting present data pack and if present data pack is the last one, if it is, adding the mark that showing said data pack is filtered or not on the tail. The invention also provides a modulation multiplexer module with said data flow filter module and a digital television receiver with said modulation multiplexer module.
Description
Technical field
The digital television receiving apparatus that the present invention relates to a kind of data stream filtering module and method, comprises the demultiplexing module of this data stream filtering module and use this demultiplexing module.
Background technology
Digital television broadcasting DVB (Digital Video Broadcasting) system carries out transfer of data to transmit stream TS (Transport Stream), and wherein transmitting stream is by the synthetic individual traffic of multi-channel program.The task of digital television receiving apparatus is exactly carrying out demultiplexing and decoding by the synthetic transmission stream of multi-channel program, the program contents such as Voice ﹠ Video of the road program that final output is selected.The form that transmits stream and be with packet transmits, and these packets are called and transmit stream packets (TS bag).Transmitting stream packets is made up of head (header) and pay(useful) load (payload).Head has carried and has shown the packet identity PID (Packet Identity) that transmits the stream packets identity, and is carrying element flow packet PES (Packetized Elementary Stream) or Program Specific Information stream packets PSI (ProgramSpecific Information) etc. in the pay(useful) load.Element flow packet (PES) is made up of head and pay(useful) load, is carrying video, audio frequency and captions constant pitch purpose particular content in its pay(useful) load.Program Specific Information stream packets (PSI) also is made up of head and pay(useful) load, is carrying the details of program in its pay(useful) load, as listing, the network information etc.The work of demultiplexing module (DEMUX) is found out effective content of the needed element flow packet of current program, Program Specific Information stream packets etc. from transmitting in the stream exactly, and is assigned in the corresponding cache and goes.This need filter these packets, promptly finds out effective bag of selected program from multi-channel program.
Fig. 4 shows function and the internal processes of DEMUX 40, and this DEMUX can be used in the various existing communication system.As shown in Figure 4, DEMUX 40 need finish filtration, the descrambling of TS stream, decoding, the filtration of Program Specific Information stream packets part (section), and the decoding of PES, filtration, descrambling, data such as distribute at function.Specifically, DEMUX needs six big processing module: synchronizer SYNC (Synchronizer) 41, PID filter PF (PID Filter) 42, adaptation fields decoder AFD (Adaptation Field Decoder) 43, descrambler DES (DEScrambler) 44, data stream filtering module DF (Data Filter) 45 and distributor DIS (DISpatcher) 46.Described six processing procedures must be finished in order.
As shown in Figure 4, TS stream is input to DEMUX 40 by TS input interface (TS input) 48, at first enters synchronizer module SYNC 41.Synchronizer module SYNC 41 provides the support to multiple TS stream interface, and can finish the frequency inverted of signal.All input TS stream all will be admitted to PID filter module PF 42 and carry out the PID filtration.PID filter module PF 42 resolves the header fields of the TS bag (as mentioned above, TS stream is made up of the TS bag) in the TS stream, according to pid value, filters out unwanted TS bag.Pass through the TS bag of PID filter module PF 42 smoothly, need to resolve adaptation fields (adaptation field), therefrom find out useful information, be used for processing such as system clock correction and stream splicing through adaptation fields decoder module AFD 43.The information of 44 pairs of scramblings of descrambler module DES (may be the pay(useful) load of whole TS bag, also may be the pay(useful) load of PES) is carried out descrambling then.Data stream filtering module DF 45 resolves the header information of PES and part thereof, does corresponding filtration.To audio frequency and video captions PES, separate head and pay(useful) load.Part is done CRC check.Last dispenser module DIS 46 writes various data (comprising the TS pay(useful) load, part, PES head, PES pay(useful) load) in the outside different buffers (buffer) by bus by data output interface 49 (Data output).PID table (PID Table) the 47th preserves the table of subsystem work parameter among the DEMUX 40, always has 32, and each is relevant with corresponding PID, so DEMUX 40 subsystems can be handled 32 kinds of not homogeneous turbulences at most simultaneously.
In the data stream filtering module 45 of prior art, as described below to the filtration of data flow.The element flow packet is because simple in structure, and the part that is filtered can not cross over the scope (by the DVB standard code) that transmits stream packets, so also corresponding fairly simple to the filtration of element flow packet.For example, 4 bytes of element flow packet head are filtered, judge whether it is required element flow packet.But the filtration of Program Specific Information data flow is just much complicated, as known in the art, in fact a complete Program Specific Information stream packets PSI is equivalent to a complete table, it is divided into a plurality of parts (section) (as mentioned above), system need filter 14 bytes of the head of each part, is the part that needs so which to be determined.Because the DVB standard does not have the position that 14 bytes of head of the part of prescribed program specific information stream packets occur in transmitting stream packets, they probably are divided into many parts and transmit in different transmission stream packets.That is to say, the Program Specific Information stream packets can be crossed over a plurality of transmission stream packets and be transmitted, and this makes only just can obtain a result after 14 bytes of the head of the part that receives the Program Specific Information stream packets in some cases to the filtration work of Program Specific Information stream packets.And, just must preserve the head of the part that has not filtered this moment because continuous part may be in the discontinuous transmission stream packets.For the filtration of Program Specific Information stream packets, common processing method is that the head of the part that will not filter is as yet kept in, and obtains a result after waiting whole 14 bytes of the head that has received this part again.One road selected program need be handled greater than 16 smaller or equal to the transmission stream packets of 32 item numbers according to indentured part (PID), the transmission stream packets of carrying the different piece of same part has identical packet identity, the shared packet identity of element flow packet is few, consider all contingent situations, just need set up capacity in data stream filtering module DF 45 is 32 * 14 bytes of memory devices, with the head of the part of depositing the Program Specific Information stream packets of not filtered, but so just increased area of chip.
In the existing communication system, except PSI, the part that some other data flow need be filtered also may be crossed over a plurality of packets and be transmitted.Therefore, in demultiplexing module, common method for designing is PID filter module PF 42 to be filtered remaining TS bag send into TS pack buffer (not shown), handles with the several assemblies that make things convenient for the back.For example data stream filters module DF 45 can determine that more whether this bag needs, and sends it or abandon to whole TS bag scanning earlier one time.This just need be in data stream filtering module 45 jumbo storage device, therefore, area of chip increases, and make the area of whole communicator increase, and the increase of chip area has also caused the increase of cost simultaneously.In addition, the increase of buffer memory quantity in the chip has also caused the increase of power consumption.
Summary of the invention
The present invention improves the filtration of Program Specific Information stream packets.The present invention is not only at the Program Specific Information stream packets, and the present invention is applicable to the filtration of a plurality of packets with common identity.
According to an aspect of the present invention, a kind of data stream filtering module is provided, described data flow transmits with the form of packet, these packets are divided into N identity, a plurality of packets with common identity are as a whole, described data stream filtering module comprises packet filtering, described packet filtering is filtered packet, it is characterized in that, described data stream filtering module also comprises: the state-storage module of record data packet filtering information, described state-storage module comprises a table of being made up of N list item, and each list item writes down the filtering information of the packet of this identity corresponding to a kind of packet of identity; Described packet filtering is delivered to state-storage module to the filter result of packet, and state-storage module judges whether the more filtering information of new data packets; Described packet filtering judges that whether current data packet is last packet in a plurality of packets of corresponding identity, if then add identifier at the afterbody of current data packet, indicate a plurality of packets and whether pass through on the whole to filter with this identity according to described filtering information.
Wherein, described identifier is filter result or the CRC check result or the length check result of packet head information.
Each list item utilizes an incorrect bit to write down the filtering information of the packet of each identity in the described state-storage module, only receives wrong filter result and is just upgraded this incorrect bit; Described data stream filtering module also comprises indentured part of table of data, has write down the output situation of the packet of each identity in the described packet identity table; If first packet of an identity by filtering, all will not export by all packets of this identity, packet all will be output under other situations; Whether described data stream filtering module exports current data packet according to the value and the decision of the record of the output in the packet identity table of incorrect bit in the state-storage module.
According to a further aspect in the invention, provide a kind of demultiplexing module that comprises aforesaid data stream filtering module.
According to another aspect of the invention, provide a kind of digital television receiving apparatus that comprises aforesaid demultiplexing module.
In accordance with a further aspect of the present invention, a kind of data stream filtering method is provided, described data flow transmits with the form of packet, described packet is divided into N identity, and a plurality of packets with common identity are as a whole, and described data stream filtering method may further comprise the steps: state table is set, described state table writes down the filtering information of the packet of each identity, described state table has N list item, and each list item writes down the filtering information of the packet of this identity corresponding to a kind of packet of identity; Current data packet is filtered and filter result is delivered to state table; Judge that whether current data packet is last in a plurality of packets of corresponding identity, if then add identifier at the afterbody of current data packet, indicate have this identity a plurality of packets on the whole whether by filtering.
Wherein, described identifier is packet head information filtering result or CRC check result or length check result.
Each list item comprises an incorrect bit in the described state table, with the filtering information of the packet that writes down corresponding identity, and has only as the Packet Filtering result and just upgrades this incorrect bit when wrong.
Indentured part of table of data after being set, state table is set again, with the output situation of the packet that writes down each identity.
After having filtered current data packet, output situation according to incorrect bit and packet identity table judges whether to export current data packet, if first packet of an identity by filtering, all will not export by all packets of this identity, packet all will be output under other situations.
Data stream filtering module of the present invention and method can be used as substituting of the data stream filtering module in the demultiplexing module in the prior art, reduced required inner buffer amount, therefore, can realize saving significantly data stream filtering module chip or DEMUX area of chip, thereby can reduce cost.
Data stream filtering module of the present invention and demultiplexing module can be applicable in the digital television receiving apparatus.
Description of drawings
Fig. 1 is the structured flowchart that explanation data flow according to an embodiment of the invention is crossed flow module;
Fig. 2 illustrates the schematic diagram of the output format of Program Specific Information stream packets part according to an embodiment of the invention;
Fig. 3 is the flow chart of explanation data flow overcurrent method according to an embodiment of the invention;
Fig. 4 is the functional block diagram of explanation DEMUX.
The structured flowchart of the data stream filtering module of the illustrated an alternative embodiment of the invention of Fig. 5.
Embodiment
At first, need to prove, according to " MPEG2 system layer standard: ISO_IEC_13818-1 ", continuous part may be in the discontinuous transmission stream packets, because restriction is not made in the position of continuous part in transport stream in " MPEG2 system layer standard: IS0_IEC_13818-1 ", so the border condition that more needs are handled can occur.Encoder-side might limit the position of continuous part in transport stream in some special applications, and the transport stream of Sheng Chenging just can be handled with fairly simple flow process like this, the situation that the present invention need handle even do not occur.But such stream can not be as the general normal stream that is fit to " MPEG2 system layer standard: ISO_IEC_13818-1 ".Process object of the present invention can be digital television broadcasting (DVB) normal stream or other data flow that meets " MPEG2 system layer standard: ISO_IEC_13818-1 " fully and do not have the added limitations agreement.
Below, with the example that is filtered into the present invention is described to the Program Specific Information stream packets in the digital television broadcasting system.Should be understood that the present invention not only at the Program Specific Information stream packets, the present invention is applicable to the filtration to a plurality of packets with common identity (as PID).
With reference to figure 1, data stream filtering module 45 of the present invention comprises element flow packet PES filtering module 11, processing data packets information module PT 10, Program Specific Information stream packets PSI filtering module 12, state-storage module (Config Table) 13 and first in first out module (FIFO) 14.Wherein, the relevant information of respective items among processing data packets information module 10 read data packet identity table (the PID Table) 47, stored the relevant information that needs 32 PID of processing in the packet identity table, and it has been sent in element flow packet PES filtering module 11 or the Program Specific Information stream packets PSI filtering module 12.Data stream filtering module 45 is handled behind the corresponding packet again relevant information is write respective items (indentured part of table of relevant data and corresponding operation thereof are known to those skilled in the art, therefore no longer describe in detail) in the packet identity table.4 bytes of 11 pairs of element flow packets of element flow Packet Filtering module head are filtered, and judge whether it is required element flow packet, if just by this PES bag of first in first out module 14 outputs, otherwise abandon this PES bag.State-storage module 13 is in order to the filtration state of programs stored specific information stream packets, in fact it is the table of bit of a N * (n+2), form by N list item, each list item is the n+2 bit, wherein N is for needing corresponding PID number, n bit in the n+2 bit of each list item is the packet identity index of being filled in by software (PID_Index), indicates the position of packet identity PID in packet identity table (PIDTable) of the transmission stream packets of carrying the Program Specific Information stream packets of filtration; In other 2 bits, the enable bit (Enable) that bit is this list item, software can be opened this list item (effectively) by set, this list item (invalid) is closed in reset, thereby can realize the software control filtration (still, as an alternative, also can make the Enable position put 0 o'clock effective, put 1 o'clock invalid).The use of Enable position is understandable for a person skilled in the art, therefore no longer describes in detail.Inventive point of the present invention is to be provided with the incorrect bit that another bit is this list item (Error) (corresponding to the filtering information position), whether the head that indicates paid-in part has passed through filtration, if do not pass through, then set, passed through then to remain " 0 " (still, as an alternative, also can make the Error position represent to pass through putting at 1 o'clock, put represented in 0 o'clock by).When receiving 14 bytes of head, the Error position is " 0 ", Enable effective (promptly putting 1) when the identity index in the identity index of current data packet and the packet identity table equates, just thinks that this part has passed through the filtration of Program Specific Information stream packets filtering module simultaneously.14 bytes of head of each part of 12 pairs of Program Specific Information stream packets of Program Specific Information stream packets filtering module are filtered, and judge whether to be required part.For the filtration of a part, as long as 1 byte error in 14 bytes of its head, this part just should be dropped.Have only when 14 bytes of part head all by filtering, this part is only needs.Therefore, " 1 " covering " 0 " can only be used in Error position in the aforesaid state memory module 13, can not use " 0 " covering " 1 ", and the list item of the correspondence of resetting before each part head first byte is filtered can not influence the filter result of current part with the filter result that guarantees previous part.The head of a part of a Program Specific Information stream packets may be distributed in a plurality of transmission stream packets (as MPEG2 system layer standard: among the ISO_IEC_13818-1 defined), and the filtration that finish a part will have been filtered 14 bytes of this part head sometimes.The present invention utilizes the filtering information of the byte of state-storage module 13 record heads, thus 14 bytes that need not to store whole head, and this will be described in detail later.For example, work as N=32, (5 idempotents of 2 are in 32 for the n=5 bit, 32 items in indentured part of table of corresponding data), state-storage module of the present invention only needs the storage device of 32 * (5+2) bit capacities, and the data stream filtering module of prior art then needs the storage device of 32 * 14 (byte) * 8 (every byte 8 bits) capacity under same case.It is evident that the present invention realizes that the filtration of Program Specific Information stream packets only needs the storage device of the capacity of prior art ten sixths, this can significantly save chip area.
Following several situation may appear in the filtration of Program Specific Information stream packets:
The head of the part of (1) Program Specific Information stream packets is distributed in one and transmits in the stream packets, and this head is by filtering.Program Specific Information stream packets filtering module 12 is given state-storage module 13 with this information, and state-storage module 13 will keep " 0 " to the Error position of item that should the packet identity.This Program Specific Information stream packets part will be by first in first out module FIFO 14 outputs, this output information is recorded in the respective items of packet identity table automatically simultaneously, if the pay(useful) load of this part partly is distributed in other and transmits in the stream packets, thereby system can draw its Program Specific Information stream packets for needs according to the information of information in the packet identity table and state-storage module 13 it is exported (part that is distributed in a plurality of transmission stream packets, be output as if the part in the transmission stream packets that is distributed in the front, then be distributed in the part that transmits in the stream packets back and also will be output; The part that is distributed in the transmission stream packets of front is dropped, then being distributed in the part that transmits in the stream packets back also will be dropped), when this part is exported fully, Program Specific Information stream packets filtering module adds significant field at its afterbody, illustrates that this part has passed through filtration fully.
The part head of (2) Program Specific Information stream packets is distributed in one and transmits in the stream packets, but not by filtering.Program Specific Information stream packets filtering module 12 is delivered to state-storage module 13 to this information, and state-storage module 13 is the Error position set of the item of corresponding identity index, and the part of this Program Specific Information stream packets is dropped.This information that is dropped is recorded in the item of packet identity table to the packet identity that should transmit stream packets automatically then, if the pay(useful) load of this part partly is distributed in other and transmits in the stream packets, system can abandon it according to the information of information in the packet identity table and state-storage module 13.
The head of the part of (3) Program Specific Information stream packets is distributed in a plurality of transmission stream packets, and the header byte that is distributed in the transmission stream packets of front is passed through to filter.Program Specific Information stream packets filtering module 12 is delivered to state-storage module 13 to this information.The Error position of state-storage module 13 correspondences keeps " 0 ".This part head is output by first in first out module 14, and output information is recorded in item corresponding in the packet identity table automatically.Be output because be distributed in the part of part of the transmission stream packets of front, the data stream filtering module will be according to the output information of putting down in writing in the packet identity table other parts outputs of this part of the transmission stream packets that is distributed in the back.If the header byte of these parts is also by filtering, Program Specific Information stream packets filtering module 12 is delivered to state-storage module 13 to this information, and the corresponding Error position of state-storage module 13 still keeps " 0 ".Program Specific Information stream packets filtering module adds explanation at this part afterbody, and it passes through the significant field of filtration fully, and this part is output by first in first out module 14.
The head of the part of (4) Program Specific Information stream packets is distributed in a plurality of transmission stream packets, and the header byte that is distributed in the transmission stream packets of front is passed through to filter.Program Specific Information stream packets filtering module 12 is given state-storage module 13 this information, and state-storage module 13 keeps " 0 " to corresponding Error positions.This part is output by first in first out module 14, and this output information is recorded in item corresponding in the packet identity table simultaneously.If the header byte of transmission stream packets that is distributed in the back is by filtering, Program Specific Information stream packets filtering module 12 is given state-storage module this information, and state-storage module 13 is corresponding Error position set.Because the partial bytes of front is output, system also exports the content of this part back according to the output information in the packet identity table.When the last part of this part was output, Program Specific Information stream packets filtering module 12 added significant field according to the information of the Error position of state-storage module 13 at its end, illustrated that it is the part that does not pass through filtration.Software can abandon it when handling this part.
The head of the part of (5) Program Specific Information stream packets is distributed in a plurality of transmission stream packets, and the header byte that is distributed in the transmission stream packets of front is not passed through to filter.Program Specific Information stream packets filtering module 12 is given state-storage module this information, and state-storage module is the Error position set of respective items, and this part is directly abandoned, and this abandons information and is recorded in the packet identity table.The content of this part back will be dropped according to the information that state-storage module and packet identity table provide.
The course of work of data stream filtering module of the present invention below is described with a concrete example.For example, exist such 4 the transmission stream packets that has the part of Program Specific Information stream packets: TS1 that filter in order to have identical PID_Index with TS3, TS2 and TS4 have another PID_Index.TS1 and TS3 have the different piece of some parts of a Program Specific Information stream packets, are respectively that what need to filter is 1-3 byte and 4-6 byte; TS2 and TS4 have the different piece of one other component, and what need respectively to filter is 1-3 byte and 4-6 byte.As shown in the table:
The TS3 (PID_Index=1) that the TS2 (PID_Index=2) that the TS1 (PID_Index=1) that has a PSI has a PSI has a PSI has the TS4 (PID_Index=2) of PSI
TS head and adaptation fields | 1 | 2 | 3 |
TS head and adaptation fields | 1 | 2 | 3 |
TS head and adaptation fields | 4 | 5 | 6 |
TS head and adaptation fields | 4 | 5 | 6 |
When making filtration treatment, suppose part among TS1, the TS4 by having filtered, among TS2, the TS3 not by filtering.Before then TS1 filtered, the corresponding list item state of state-storage module (Config Table) 13 was as follows:
Enable Error PID_Index
State-storage module list item 0 state-storage module list item 1
1 | 0 | PID_Index=1 |
1 | 0 | PID_Index=2 |
After TS1 filtered, the corresponding list item state of Config Table was as follows:
Enable Error PID_Index
State-storage module list item 0 state-storage module list item 1
1 | 0 | PID_Index=1 |
1 | 0 | PID_Index=2 |
After TS2 filtered, the corresponding list item state of Config Table was as follows:
Enable Error PID_Index
State-storage module list item 0 state-storage module list item 1
1 | 0 | PID_Index=1 |
1 | 1 | PID_Index=2 |
After TS3 filtered, the corresponding list item state of Config Table was as follows:
Enable Error PID_Index
State-storage module list item 0 state-storage module list item 1
1 | 1 | PID_Index=1 |
1 | 1 | PID_Index=2 |
After TS4 filtered, the corresponding list item state of Config Table was as follows:
Enable Error PID_Index
State-storage module list item 0 state-storage module list item 1
1 | 1 | PID_Index=1 |
1 | 1 | PID_Index=2 |
The part that carries among the TS1 will be sent.PSI part among the TS2 by filtering, will not be dropped.Though by filtering, TS1 has not been sent TS3,, just can in the state byte of part ending, indicate error message so TS3 also will be sent.Though TS4 is by filtering, TS2 makes mistakes and is dropped, so TS4 also will be dropped.
As mentioned above, according to the present invention, the head of a certain part of a Program Specific Information stream packets can be distributed in one and transmit in the stream packets, also can be distributed in a plurality of transmission stream packets.Head at a certain part is distributed under the situation of a transmission stream packets, and according to the present invention, if the head of this part is by filtering, then state-storage module 13 keeps " 0 " with the Error position.If by filtering, then the Error position 1.According to the information of Error position, can judge whether to abandon this part.Under the head of a part was distributed in situation in a plurality of transmission stream packets, the packet identity index PID_Index of a plurality of TS bags of different piece with this part was identical.If the part of head that is distributed in this part in the transmission stream packets of front is by filtering, then the Error position remains " 0 ", whether the head according to this part in the transmission stream packets that is distributed in the back passes through to filter, the Error position correspondingly remains " 0 " or set, but in both cases, all parts of this part all are output, just adding significant field (as shown in Figure 2) in ending place of this part according to the information of Error position, is to handle this part or abandon this part to indicate follow-up processing.If the part of head that is distributed in this part in the transmission stream packets of front is by filtering, then Error position set, whether pass through to filter regardless of the head part of this part in the transmission stream packets that is distributed in the back, the Error position is always " 1 ", thereby this part that is distributed in the transmission stream packets of front is dropped, and this part that is distributed in the transmission stream packets of back also correspondingly abandoned, thereby whole part is dropped.
Therefore, in case 14 bytes of the head of a certain part are passed through by data stream filters, then whole part all will be regarded as having passed through filtration, but CRC result will just can calculate after last byte of part is received, and the data of this part front portion have been sent to dispenser module 46 at this moment, even have been sent in the buffer (not shown among Fig. 4) of DEMUX 40 outsides.If the CRC check mistake, the data dump that this part must have been sent or be labeled as invalid.Therefore, in the present invention, CRC check result is byte as a token of, and last byte that is close to part is sent, and has been placed in the external cache device.The processing module of next stage only needs to judge earlier this byte, just can know whether this part has passed through CRC check.If do not pass through, then skip processing automatically to this part.
In addition, except the CRC check mistake, if PES size error or part size error have taken place, receiving whole PES (or part) before, also possibly can't judge and it is abandoned or sends, so these error situations also can be indicated (this is conspicuous for a person skilled in the art) in flag byte.The post processing module of DEMUX (normally software module) when handling PES (or part), must be judged this flag byte earlier, if wrong, then skips the processing to this PES (or part) automatically.But this processing mode may cause taking outside buffer because of having exported some data that originally should not export more.But because in the real work, considerably less because of the data that CRC or length are made mistakes, therefore needn't increase the size of external cache device usually for this reason.
Fig. 3 is the flow chart 300 of data stream filtering method of the present invention.In step 301, data stream filtering module 45 of the present invention (as shown in Figure 1) is read in a transmission stream packets of carrying a certain part of Program Specific Information stream packets.In step 302, the data stream filtering module judges that this part has or not the record (this information is read in) that is output from packet identity table 37.If no, then proceed to step 303.In step 303, judge whether the Error position of respective items in the state-storage module 13 is " 0 ".If not, then proceed to step 311, directly abandon this part.If be judged as in step 303 be, illustrate that then this transmission stream packets is that first that carry this part transmits stream packets, next step just filters it.Judge whether by filtering in step 304.If judge not by filtering in step 304, then proceed to step 311, abandon this part.If judge by filtering in step 304, then proceed to step 309, judge whether this part is the ending of current part.If judge the ending that this part is current part in step 309, then proceed to step 310, in step 310, add this part of explanation by the significant field of filtration and at this part of step 313 output in ending place of this part.If judge the ending that this part is not current part, just directly export this part in step 313 in step 309.On the other hand, if judged the output record, then proceed to step 305 in step 302.In step 305, judge whether the Error position of the respective items in the state-storage module 13 is " 0 ".If the Error position is " 1 ", illustrate that then this part is needed, but because there is the output record, promptly the part of the front of this part is output, so current part also will be exported.But should judge whether ending earlier before the output.That is to say, be 1 if step 305 is judged the Error position, then proceeds to step 307.Work as in step 307 judgement whether forward part is the ending of this part.If, then proceed to step 308, add this part of explanation and do not export by the significant field of filtration and in step 312.If not, then directly export in step 312.If judging the Error position in step 305 is " 0 ", then filter.Judge whether by filtering, if, then proceed to step 309, otherwise proceed to step 307 in step 306 by filtering.
More than, with the example that is filtered into the present invention has been described to the Program Specific Information stream packets in the digital television broadcasting system.But the present invention can be applicable in other the data stream filtering.Fig. 5 shows the data stream filtering module of another embodiment of the present invention.Data flow transmits with the form of packet, and a plurality of packets can have identical identity (for example N identity), and a plurality of packets with common identity are as a whole.As shown in Figure 5, data stream filtering module 45 of the present invention comprises packet filtering 52,52 pairs of packets of described packet filtering filter, described data stream filtering module 45 also comprises the state-storage module 13 of record data packet filtering information, as mentioned above, this state-storage module can comprise a table of being made up of N list item, and each list item writes down the filtering information of the packet of this identity corresponding to a kind of packet of identity.Described packet filtering 52 is delivered to state-storage module 13 to the filter result of packet, and state-storage module 13 judges whether the more filtering information of new data packets; Described packet filtering 52 judges that whether current data packet is last packet in a plurality of packets of corresponding identity, if then add identifier at the afterbody of current data packet, indicate a plurality of packets and whether pass through on the whole to filter with this identity according to described filtering information.
As indicated above, identifier can be filter result or the CRC check result or the length check result of packet head information.
In this embodiment of the present invention, similar with first embodiment, each list item can utilize an incorrect bit to write down the filtering information of the packet of each identity in the state-storage module, only receive wrong filter result and just upgraded this incorrect bit " Error " (as previously mentioned, the Error position can represent whether paid-in packet has passed through filtration, if do not pass through, then set, passed through then to remain " 0 " (still, as an alternative, also can make the Error position represent to pass through putting at 1 o'clock, put represented in 0 o'clock by)).Described data stream filtering module 45 also can comprise indentured part of table 47 of data, has write down the output situation of the packet of each identity in the described packet identity table.If first packet of a certain identity by filtering, then all will not export by all packets of this identity, packet all will be output (as indicated above) under other situations.Whether described data stream filtering module 45 exports current data packet according to the value and the decision of the record of the output in the packet identity table of incorrect bit in the state-storage module.
As mentioned above, judge whether will be when forward part output by filtering according to the filtering information position (for example Error position) of output record, state-storage module and when forward part for data stream filtering module of the present invention and method, according to judging that whether the ending and the Error position of part judge whether that needs add significant field and add which kind of significant field when forward part.
Data stream filtering module of the present invention can be used as substituting of the data stream filtering module 45 among the demultiplexing module DEMUX in the prior art, reduced required inner buffer amount, therefore, can realize saving significantly data stream filtering module chip or DEMUX area of chip, thereby can reduce cost.
Though, in the data stream filtering module as shown in Figure 5, packet filtering is filtered packet, and packet filtering can be delivered to state-storage module to the filter result of packet, judge that whether current data packet is last packet in a plurality of packets of corresponding identity, if then add identifier at the afterbody of current data packet, indicate a plurality of packets and whether pass through on the whole to filter with this identity according to described filtering information.But, as those skilled in the art is known, packet filtering can be divided into a plurality of module (not shown), each module realizes different functions.For example delivery module is used for the filter result of packet is sent to state-storage module; Judge module, whether be used for current data packet is that last packets of a plurality of packets of corresponding identity is judged; And identifier interpolation module, on the basis that judge module is judged, add identifier at the afterbody of current data packet according to described filtering information, indicate a plurality of packets and whether pass through on the whole to filter with this identity.Certainly, also can adopt other the composition mode or packet filtering in comprise other module, as long as can realize the function of packet filtering as described in the present application, these are included within the scope of the present invention.
Data stream filtering module of the present invention and demultiplexing module can be applicable in the digital television receiving apparatus.Other assembly of demultiplexing module and digital television receiving apparatus all is that those skilled in the art is known, therefore no longer describes in detail here.Be appreciated that those skilled in the art can easily apply the present invention to any data stream filtering module, demultiplexing module and digital television receiving apparatus that is used for data stream filtering.
Claims (8)
1. data stream filtering module, described data flow transmits with the form of packet, these packets are divided into N identity, a plurality of packets with common identity are as a whole, described data stream filtering module comprises packet filtering, described packet filtering is filtered packet, it is characterized in that
Described data stream filtering module also comprises:
The state-storage module of record data packet filtering information, described state-storage module comprise a table of being made up of N list item, and each list item writes down the filtering information of the packet of this identity corresponding to a kind of packet of identity;
Described packet filtering is delivered to state-storage module to the filter result of packet;
Described packet filtering judges that whether current data packet is last packet in a plurality of packets of corresponding identity, if then add identifier at the afterbody of current data packet, indicate a plurality of packets and whether pass through on the whole to filter with this identity according to described filtering information.
2. data stream filtering module as claimed in claim 1 is characterized in that, described identifier is filter result or the CRC check result or the length check result of packet head information.
3. data stream filtering module as claimed in claim 1 is characterized in that, each list item utilizes an incorrect bit to write down the filtering information of each identity data bag in the state-storage module, only receives wrong filter result and just upgrades this incorrect bit;
Described data stream filtering module also comprises indentured part of table of data, has write down the output situation of the packet of each identity in the described packet identity table; If first packet of an identity by filtering, all will not export by all packets of this identity, packet all will be output under other situations; Whether described data stream filtering module exports current data packet according to the value and the decision of the record of the output in the packet identity table of incorrect bit in the state-storage module.
4. demultiplexing module that comprises claim 1 or 3 described data stream filtering modules.
5. digital television receiving apparatus that comprises demultiplexing module as claimed in claim 4.
6. data stream filtering method, described data flow transmits with the form of packet, and described packet is divided into N identity, and a plurality of packets with common identity are as a whole, and described data stream filtering method may further comprise the steps:
State table is set, and described state table writes down the filtering information of the packet of each identity, and described state table has N list item, and each list item writes down the filtering information of the packet of this identity corresponding to a kind of packet of identity;
Current data packet is filtered and filter result is delivered to state table;
Judge that whether current data packet is last in a plurality of packets of corresponding identity, if then add identifier at the afterbody of current data packet, indicate have this identity a plurality of packets on the whole whether by filtering.
7. data stream filtering method as claimed in claim 6 is characterized in that, described identifier is packet head information filtering result or CRC check result or length check result.
8. data stream filtering method as claimed in claim 6 is characterized in that each list item comprises an incorrect bit in the described state table, with the filtering information of the packet that writes down corresponding identity, and has only as the Packet Filtering result and just upgrades this incorrect bit when wrong; After state table is set indentured part of table of data is set again, output situation with the packet that writes down each identity, after having filtered current data packet, output situation according to incorrect bit and packet identity table judges whether to export current data packet, if first packet of an identity is not by filtering, all packets of this identity all will not be exported, and packet all will be output under other situations.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510023176XA CN100425036C (en) | 2005-01-10 | 2005-01-10 | Data stream filtering module and method, demultiplexing module, and digital television receiving apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510023176XA CN100425036C (en) | 2005-01-10 | 2005-01-10 | Data stream filtering module and method, demultiplexing module, and digital television receiving apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1805407A true CN1805407A (en) | 2006-07-19 |
CN100425036C CN100425036C (en) | 2008-10-08 |
Family
ID=36867249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510023176XA Expired - Fee Related CN100425036C (en) | 2005-01-10 | 2005-01-10 | Data stream filtering module and method, demultiplexing module, and digital television receiving apparatus |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100425036C (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102655571A (en) * | 2011-03-01 | 2012-09-05 | 上海清鹤数码科技有限公司 | Digital television stream media middleware multi-subtitle display assembly based on embedded platform |
CN106231346A (en) * | 2016-08-05 | 2016-12-14 | 中国传媒大学 | A kind of distributed cryptographic method for offline video |
CN106254896A (en) * | 2016-08-05 | 2016-12-21 | 中国传媒大学 | A kind of distributed cryptographic method for real-time video |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5844478A (en) * | 1996-05-31 | 1998-12-01 | Thomson Consumer Electronics, Inc. | Program specific information formation for digital data processing |
EP0901261B1 (en) * | 1997-09-05 | 2013-01-09 | Hitachi, Ltd. | Transport protocol conversion method and protocol conversion equipment |
CN1225544A (en) * | 1998-12-15 | 1999-08-11 | 国家科学技术委员会高技术研究发展中心 | Digital information source decoding device |
KR100378791B1 (en) * | 1999-12-02 | 2003-04-07 | 엘지전자 주식회사 | Packet identifier section filter |
-
2005
- 2005-01-10 CN CNB200510023176XA patent/CN100425036C/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102655571A (en) * | 2011-03-01 | 2012-09-05 | 上海清鹤数码科技有限公司 | Digital television stream media middleware multi-subtitle display assembly based on embedded platform |
CN106231346A (en) * | 2016-08-05 | 2016-12-14 | 中国传媒大学 | A kind of distributed cryptographic method for offline video |
CN106254896A (en) * | 2016-08-05 | 2016-12-21 | 中国传媒大学 | A kind of distributed cryptographic method for real-time video |
CN106254896B (en) * | 2016-08-05 | 2019-11-26 | 中国传媒大学 | A kind of distributed cryptographic method for real-time video |
Also Published As
Publication number | Publication date |
---|---|
CN100425036C (en) | 2008-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6654423B2 (en) | PID/section filter in digital television system | |
CN1222168C (en) | Information package program component detecting method | |
CN1113534C (en) | Inverse transport processor with memory address circuitry | |
CN1190917C (en) | Transmission stream multipass shunting device | |
CN1085008C (en) | Decoder for compressed and multiplexed video and audio data | |
US10891245B2 (en) | Video device and method for embedded data capture on a virtual channel | |
US20070253509A1 (en) | Data transfer device | |
EP1148727A1 (en) | Method and device for decoding a digital video stream in a digital video system using dummy header insertion | |
US6493043B1 (en) | Method of increasing the storage capacity of service information in a digital TV transmissions receiver | |
EP3457654B1 (en) | Apparatus and method for delivering and receiving multimedia data in hybrid network | |
CN1666498A (en) | Method of constructing MPEG program streams from encrypted MPEG transport streams | |
CN100518331C (en) | Method for inserting and relaying IP service data based on cable television network | |
US8184663B2 (en) | Multi-format stream re-multiplexer for multi-pass, multi-stream, multiplexed transport stream processing | |
US20050286563A1 (en) | Method and apparatus for filtering section data | |
CN1805407A (en) | Data stream filtering module and method, demultiplexing module, and digital television receiving apparatus | |
CN1408087A (en) | System for receiving isochronous data stream at computer using main memory buffer | |
TW200925914A (en) | Method for obtaining service map information, apparatus thereof, and method for fast performing application in service according to the service map information | |
CN1642261A (en) | Method for mixed broadcasting picture-character and service information | |
US8913609B2 (en) | System and method for demultiplexing different stream types in a programmable transport demultiplexer | |
CN1984339A (en) | Method and system for storing data packets | |
CN101217661A (en) | Inter-network packet modifier and related method thereof | |
US7423969B2 (en) | Process for storing transmission units and a network communications device | |
CN100461747C (en) | Method for adjusting code rate of code stream in multimedia | |
CN100452752C (en) | Method and apparatus for transmitting data block | |
EP1222824B1 (en) | Method and device for writing data to a recording medium in a digital video system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081008 Termination date: 20120110 |