HK1163406A1 - An inserting and displaying method for additional information of digital television program - Google Patents
An inserting and displaying method for additional information of digital television program Download PDFInfo
- Publication number
- HK1163406A1 HK1163406A1 HK12103457.6A HK12103457A HK1163406A1 HK 1163406 A1 HK1163406 A1 HK 1163406A1 HK 12103457 A HK12103457 A HK 12103457A HK 1163406 A1 HK1163406 A1 HK 1163406A1
- Authority
- HK
- Hong Kong
- Prior art keywords
- additional information
- program additional
- video
- program
- carrying
- Prior art date
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention discloses a method and a system for inserting and presenting additional information in a digital television program. The method comprises front-end operation and terminal operation. The front-end operation comprises the following steps: analyzing a multi-program transport stream to obtain a video transport stream, a filling packet, and other data; inserting program additional information which is packaged in advance into an expansion-and- user- data field 2 in an video stream ES (elementary stream); and packaging and mixing the video ES and sending the processed video ES to a terminal. The terminal operation comprises the following steps: receiving and analyzing a video data carrying the program additional information; reading and de-packaging the program additional information; and processing and presenting the program additional information in a process of displaying the video ES. The system provided by the invention comprises a front-end device and a terminal device. According to the method and system provided by the invention, a one-way data channel for presenting the program additional information is supplied to an existing digital television network and the additional information is inserted into the expansion-and-user-data field 2 in a video ES image data, thereby realizing the accurate synchronization of the additional information and the video content.
Description
Technical Field
The invention relates to the technical field of digital televisions, in particular to a method and a system for inserting and presenting additional information of a digital television program.
Background
With the popularization of digital television use and the development of digital television technology, digital television users have put higher requirements on the content and form of the watched digital television. For example, when a user watches program content on a certain channel, the user wants to see additional information related to the program content, and a typical example is that when the user takes a goal by a certain player while watching a football game, the user wants to obtain more information about the player than the introduction of the commentator on the television, such as additional information about the place of birth, the age, the career history, the price of the commentary, and the like. Alternatively, when switching channels of television programming, a user may wish to be able to view information associated with the current channel, such as the channel's theme, airtime, etc.
Aiming at the additional information of the digital television program, a method for presenting the additional information adopts a remote address link mode, namely, the digital television terminal links to the storage position of the additional information of the program content according to a remote address and downloads the additional information from the remote for presentation. However, this method requires an Internet Protocol (IP) bidirectional network, but most of the tv networks in our country are unidirectional tv networks and do not support IP bidirectional networks, so this method cannot be widely used. In addition, the program additional information is displayed by adopting a remote address link mode, and because the program content and the program content additional information data are separated from each other, the accurate synchronization of the video content data and the additional information is difficult to realize.
Another implementation method is that additional information of program content is received in advance through a digital television terminal, and is stored in a set-top box, and the pre-stored additional information of the program content is presented when the additional information needs to be displayed. However, this method is limited by the hardware storage resource of the set-top box, it is impossible to store too much additional information, and the content of the additional information pre-stored in the set-top box is not easy to change and cannot be updated in time.
Disclosure of Invention
In view of the above, the present invention provides a method and a system for inserting and displaying additional information of a digital television program, which implement insertion and synchronous display of the additional information of the program on the basis of the existing digital television network.
In order to achieve the purpose, the invention provides the following scheme:
a method for inserting and presenting additional information of digital television programs comprises front-end operation and terminal operation, wherein,
the front end operations include:
analyzing the multi-program transport stream MPTS to obtain a video transport stream TS, a stuffing packet and a non-video transport stream TS;
obtaining available bandwidth information according to the filling packet, and filtering the filling packet;
analyzing the video TS to obtain a video original stream ES;
inserting program additional information packaged in advance into an extended user data field 2 in the video ES according to the available bandwidth information to obtain a video ES carrying the program additional information;
performing PES encapsulation and TS encapsulation processing on the video ES carrying the program additional information to generate a video TS carrying the program additional information;
mixing the video TS carrying the program additional information with the non-video TS to obtain an MPTS carrying the program additional information, and sending the MPTS carrying the program additional information;
the terminal operation includes:
receiving and analyzing the MPTS carrying the program additional information to obtain the non-video TS, and obtaining the video TS carrying the program additional information according to related data used for analyzing the video TS in the non-video TS;
analyzing the video TS carrying the program additional information to obtain a video ES carrying the program additional information;
reading program additional information from the video ES carrying the program additional information;
decapsulating the read program additional information;
and presenting the unpackaged program additional information in the process of displaying the video ES carrying the program additional information.
Preferably, the inserting the program additional information encapsulated in advance into the extended user data field 2 in the video ES to obtain the video ES carrying the program additional information specifically includes:
searching an image data starting identifier in the video ES;
inserting a user data start identifier, a packaging type of pre-packaged program additional information and pre-packaged program additional information before the image data start identifier;
the reading of the program additional information from the video ES carrying the program additional information specifically includes:
and searching a user data starting identifier, and reading the packaging type of the program additional information packaged in advance and the program additional information packaged in advance.
Preferably, the pre-packaged program additional information includes: program additional information packaged by an object carousel protocol is used in advance;
the terminal decapsulates the read program additional information, and includes: and decapsulating the read program additional information by using an object carousel protocol.
Preferably, the pre-packaged program additional information includes: program additional information packaged by a user-defined protocol is used in advance;
the terminal decapsulates the read program additional information, and includes: and using a custom protocol to unpack the read program additional information.
Preferably, the encapsulating of the program additional information by using the custom protocol includes adding, to the program additional information transmitted this time: a field for identifying the type of the program additional information data, a field for identifying a program additional information data source and a length field for identifying the program additional information transmitted this time;
and the step of decapsulating the read program additional information by using the custom protocol comprises analyzing a field for identifying the data type of the program additional information, a field for identifying a data source of the program additional information, a length field for identifying the program additional information transmitted this time and the program additional information transmitted this time.
Preferably, the front end inserts the pre-encapsulated program additional information before the extended user data field 2 in the video ES, and further includes: and carrying out encoding anti-collision processing on the program additional information packaged in advance.
After the terminal reads the program additional information from the video ES carrying the program additional information, the method further includes: and performing encoding anti-collision processing on the read program additional information.
A system for inserting and displaying additional information of digital television programs comprises a front-end device and a terminal device, wherein,
the front-end apparatus includes:
the multi-program transport stream analyzing unit is used for analyzing the MPTS to obtain a video TS, a padding packet and a non-video TS;
the padding packet processing unit is used for obtaining the available bandwidth information according to the padding packet and filtering the padding packet;
the TS analyzing unit is used for analyzing the video TS to obtain a video original stream ES;
a program additional information inserting unit, configured to insert pre-packaged program additional information into an extended user data field 2 in the video ES according to the available bandwidth information, to obtain a video ES carrying the program additional information;
a TS packaging unit, which is used for carrying out PES packaging and TS packaging processing on the video ES carrying the program additional information to generate a video TS carrying the program additional information;
a mixing and sending unit, configured to mix the video TS carrying the program additional information with the non-video TS, obtain an MPTS carrying the program additional information, and send the MPTS carrying the program additional information;
the terminal device includes:
a multi-program transport stream receiving and analyzing unit, configured to receive and analyze the MPTS carrying the program additional information, obtain the non-video TS, and obtain the video TS carrying the program additional information according to related data in the non-video TS for analyzing the video TS;
the TS analyzing unit is used for analyzing the video TS with the program additional information to obtain a video ES with the program additional information;
an additional information reading unit, configured to read program additional information from the video ES carrying the program additional information;
a decapsulation unit for decapsulating the read program additional information;
and the display unit is used for presenting the unpacked program additional information in the process of displaying the video ES carrying the program additional information.
Preferably, the program additional information inserting unit is configured to:
searching an image data starting identifier in the video ES;
inserting a user data start identifier, a packaging type of pre-packaged program additional information and pre-packaged program additional information before the image data start mark;
the additional information reading unit is used for searching the user data starting identifier and reading the packaging type of the program additional information packaged in advance and the program additional information packaged in advance.
Preferably, the pre-packaged program additional information includes: program additional information packaged by an object carousel protocol is used in advance;
and the decapsulation unit is used for decapsulating the read program additional information by using an object carousel protocol for the read program additional information.
Preferably, the pre-packaged program additional information includes: program additional information packaged by a user-defined protocol is used in advance;
and the decapsulation unit is used for decapsulating the read program additional information by using a custom protocol for the read program additional information.
Preferably, the encapsulating of the program additional information by using the custom protocol includes adding, to the program additional information transmitted this time: a field for identifying the type of the program additional information data, a field for identifying a program additional information data source and a length field for identifying the program additional information transmitted this time;
the decapsulation unit is used for parsing a field for identifying the type of the additional information data, a field for identifying a program additional information data source, a length field for identifying the program additional information transmitted this time, and the program additional information transmitted this time.
Preferably, the front-end apparatus further comprises: the encoding conflict processing unit is used for carrying out encoding anti-conflict processing on the program additional information packaged in advance;
the terminal device further includes: and the encoding anti-collision processing unit is used for performing encoding anti-collision processing on the program additional information read from the video ES carrying the program additional information.
According to the specific embodiment provided by the invention, the invention discloses the following technical effects:
the method comprises the steps that pre-packaged television program additional information is inserted into a video ES by a digital television front end in a user data mode, so that a terminal can read the packaged program additional information after receiving video data carrying the program additional information, decapsulate and present the program additional information according to a packaged protocol, a one-way data channel for presenting the program additional information is provided for a digital television system on the basis of the existing television network, and the problem that an IP two-way network is needed to transmit the program additional information in the prior art is avoided, therefore, the method can be widely used. By inserting the program additional information into the extended user data field 2 of the video ES image data, the additional information and the video image can be accurately synchronized, and the video standard does not limit the data type and the data size of the extended user data field, so that the program additional information of various data types can be inserted, the presentation forms of digital television program channels and program content additional information are enriched, and the development of digital television application is facilitated.
After being packaged in advance, the program additional information is inserted into the extended user data field 2 in the video ES image in a user data mode, is sent to the terminal together with the video data and is displayed in real time, so that a large amount of storage resources of the terminal are not occupied to store the program additional information to be played in advance, and the hardware storage resources of the terminal are saved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.
FIG. 1 is a schematic flow chart of a front-end method of operation of the present invention;
FIG. 2 is a diagram illustrating a custom encapsulation protocol according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating the insertion of pre-packaged program overhead information into a video ES according to an embodiment of the present invention;
FIG. 4 is a flowchart illustrating a method of operating a terminal according to the present invention;
FIG. 5 is a schematic structural diagram of a front-end apparatus according to the present invention;
fig. 6 is a schematic structural diagram of a terminal device according to the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments that can be derived by one of ordinary skill in the art from the embodiments given herein are intended to be within the scope of the present invention.
The standard widely used by digital television systems in China at present is the ISO-IEC 13818 standard, namely the MPEG-2 standard. Among them, the ISO-IEC 13818-1 standard, i.e., the MPEG-2 system standard, describes a manner in which a plurality of elementary video, audio, and data streams are combined into a transport stream and a program stream. The encapsulation of data has three levels according to the definition of the MPEG-2 systems standard: original Streams (ES), Packetized original Streams (PES), and Transport Streams (TS). ES is a generic term for a bitstream of encoded video, audio, or other data. The PES is a packet original stream formed by dividing the ES into packets of unequal lengths and adding a packet header. The PES is further subjected to TS packaging to form a TS with a fixed length which is actually transmitted.
According to the syntax structure of the ISO-IEC 13818-2 standard, namely the MPEG-2 video standard, the video ES is divided into six layers: video sequence layer, group of pictures layer, picture layer, macroblock slice layer, macroblock layer, and block layer. Meanwhile, the MPEG-2 video standard defines 3 Extension user fields (Extension _ and _ user _ data) for inserting user-defined data in a video sequence layer, a picture group layer or a picture layer, and the Extension user fields serve as an independent syntax unit without damaging video content. Typically, the digital television terminal decoder does not process the data contained in this field, but directly discards it. The 3 types of extended user fields are: an extended user field 0, an extended user field 1, and an extended user field 2. The extended user field 2(Extension _ and _ user _ data 2) is defined on the image layer, is positioned between the image head and the image data of the video ES, and is closely associated with the image, so that the additional information of the digital television program can be inserted into the extended user data field 2 before the relevant image data as the user data, the inserted program additional information is read by the terminal, and the program additional information and the video image are displayed and output simultaneously after corresponding processing according to the data type of the program additional information.
The method of the embodiment of the invention comprises two parts of front-end operation and terminal operation.
The front-end operation method mainly completes demultiplexing of the multi-program transport stream, filtering of padding packets in the video data, insertion of pre-packaged program additional information, formation of a video stream carrying the program additional information, and the like.
Referring to fig. 1, the front-end operation method of the embodiment of the present invention will be described in detail.
S101) analyzing the multi-program transport stream MPTS to obtain a video transport stream TS, a stuffing packet and a non-video transport stream TS.
Digital television signals provided by content providers are transmitted at various frequency points in the form of Multi-Program Transport streams (MPTSs) as defined by the MPEG-2 systems standard. The MPTS is formed by multiplexing a plurality of Single Program Transport Streams (SPTS). One path of SPTS is composed of a single path of video TS and a single path or multiple paths of audio TS. According to the parsing method defined by the MPEG-2 system standard, a Program Association Table (PAT) included in the MPTS is first found. Since each TS packet has a Packet Identifier (PID), and the PID of the TS packet containing the PAT is 0, the TS packet whose PID is 0 is searched for, and the PAT can be obtained. The PID of the TS packet in which the Program Map Table (PMT) is located can be obtained by analyzing the PAT. The PMT includes PIDs of a single video TS, a single or multiple audio TS, and other data belonging to each SPTS, and thus the video TS can be obtained by analyzing the PMT.
Generally, in order to maintain a frequency point to have constant code rate data, a large number of padding packets are padded in MPTS, and padding packet information can be obtained while analyzing the MPTS. Since the PID of the TS packet including the padding packet is 8191 according to the specification of the MPEG-2 system standard, all the padding packets can be obtained by monitoring the TS packet whose PID is 8191 when the front end analyzes the MPTS.
Besides the video TS, non-video TS data such as audio TS, PAT, PMT, service information table, DVB data broadcast and other service information are obtained at the same time. Some of these data are auxiliary information data necessary for analyzing the MPTS, such as the PAT and PMT described above, and in order for the terminal to be able to correctly analyze the MPTS, it is necessary to mix these non-video TSs again and transmit them to the terminal in a subsequent operation.
S102) obtaining the available bandwidth information according to the information of the filling packet, and filtering the filling packet.
Since the program additional information needs to be inserted into the video data in the form of user data in the subsequent steps, a certain bandwidth is occupied, and therefore, padding packets need to be filtered out, so that the program additional information can be inserted under the condition of a certain code rate. In specific implementation, the padding packets obtained in step S101) may obtain actually available bandwidth information according to the number of the padding packets, for example, the number of the padding packets in a period of time may be counted to obtain the code rate of the padding packets, that is, the available bandwidth, which is used for subsequently calculating the data amount into which the additional information may be inserted, and meanwhile, filtering out the padding packets, that is, filtering out the TS packets with PID of 8191.
S103) analyzing the video TS to obtain a video original stream ES.
And after the front end of the digital television obtains the video TS, analyzing the video TS according to the TS and the PES in sequence according to the MPEG-2 system standard. The PES is generated by adding time information to the video ES, and therefore the video ES can be obtained by parsing the PES.
S104) according to the available bandwidth information, inserting the program additional information packaged in advance into the extended user data field 2 in the video ES to obtain the video ES carrying the program additional information.
According to the syntax structure of the MPEG-2 video standard, the sequence layer, the group of pictures layer, and the picture layer of the video ES have a fixed header structure, and the fields of the header have a fixed size and each have a start flag. The macroblock layer has a fixed header structure, but a frame of picture has a plurality of macroblock layer, each macroblock layer has its own start identifier, and all macroblock layer of a frame of picture are grouped together to form a frame of picture data.
The additional information of the digital television program is inserted into an extended user data field 2 in front of the image data in the image layer as user data, and the additional information of the program needs to be packaged according to a certain protocol in order to enable the terminal to correctly analyze the additional information of the program and synchronously output and display the additional information of the program and the digital television program. According to different playing time requirements of the program additional information, different encapsulation protocols can be selected for encapsulation:
1) if the playing time of the program additional information needs to be accurate to a certain time point in the video picture, that is, the additional information needs to be played and displayed simultaneously with a certain frame of image, the program additional information needs to be inserted into the extended user data field 2 in front of the frame of image data. According to this requirement, the additional information is related only to this frame of image data, so the program additional information can be encapsulated in a custom protocol and inserted in the extended user data field 2 before this frame of image data.
2) If the program additional information needs to be displayed and output within a period of time of program playing, that is, the program additional information needs to be displayed between two frames of images of the video. For the requirement, an Object Carousel (OC) protocol can be adopted to encapsulate the program additional information, and multiple times of Carousel data using the Object Carousel protocol can prevent data loss and error codes and improve the reliability of data transmission. When the OC protocol is used, the program additional information encapsulated in the OC protocol is inserted into the extended user data field 2 before the multi-frame image data included between the two frames of image data. If the requirement on data accuracy is not high, a user-defined protocol can be adopted for packaging and is inserted into the extended user data field 2 before the multi-frame image data.
3) If the program additional information needs to be displayed before a certain time point of the program playing, that is, the program additional information needs to be displayed before a certain frame of image of the video. At this time, the additional program information may be encapsulated by using the OC protocol, and a number of frame image data (the specific number may be determined according to actual needs) before the frame image data is located, and the encapsulated additional program information is inserted into the extended user data field 2 of the frame image data. If the requirement on data accuracy is not high, a custom protocol can be adopted for packaging.
For the customized encapsulation protocol described in the above 2), referring to fig. 2, the customized encapsulation protocol in this embodiment specifically includes:
field identifying type of program additional information data: the MPEG-2 video standard does not impose restrictions on the data type of the extended user data field, so that program additional information of various data types, such as text, picture, music, video, or a web page, can be inserted. When the terminal outputs and displays the program additional information, if the additional information is a segment of video data, the additional information may be presented in a picture-in-picture mode while the television program video is played. The terminal identifies the type of the additional information through the field for identifying the type of the additional information data of the program, and displays the additional information after corresponding processing. When the front end packages the additional information of the program, different values are filled into the field according to the data type of the additional information. For example, the field length for identifying the type of the program additional information data may be defined as 8 bits, the field with 8 bits has 256 values, 0 may be defined to represent text, 1 represents image, 2 represents video, 3 represents audio, 4 represents web page, etc.
A field identifying a program additional information data source: the additional information may be in the form of one-way data or may be composed of multiple-way data. Since the additional information may need to be inserted into a plurality of consecutive video ES packets, a specific identifier is needed to identify which path of data the additional information originates from, so that the terminal can analyze the complete path of additional information according to the identifier. For a channel of additional information of a certain program channel or a certain program content, no matter the channel of additional information is divided into multiple times for transmission, as long as the channel of additional information belongs to the same channel of additional information, the same identifier is used for representing the channel of additional information of the program.
Length field for identifying the program additional information transmitted this time: when packaging the program additional information, the front end adds the field of the length of the additional information of the local data source program transmitted this time, so that the terminal can obtain the size of the local program additional information data transmitted this time according to the field after receiving the program additional information data, and can judge whether the transmission of the data of the local program additional information is completed. For example, if the field of the length of the program additional information transmitted this time is 0 for the same program additional information data source, it indicates that the transmission of the program additional information corresponding to the identifier is completed.
The field is auxiliary information added for the terminal to correctly analyze the program additional information, when the front end packages the program additional information, the auxiliary information is added before or after the additional information data, and the size of the packaged additional information data is the length identified by the program additional information length field transmitted this time. Since the program additional information is inserted into the video ES as user data, 0x000x000x01 is the start identifier prefix of the syntax structure of the video ES, and the header syntax structures such as the sequence layer, the picture group layer, and the picture layer of the video ES each include a start identifier beginning with 0x000x01, as defined by the MPEG-2 video standard. If 0x000x000x01 appears in the packaged program additional information data, the terminal processes only the data before the mark as the program additional information when analyzing the user data, and discards the rest of the program additional information data, resulting in errors. In addition, the terminal video decoder will also treat the identified data as image data, resulting in decoding abnormality. Therefore, after the packaging of the program additional information is completed, a preferred embodiment is to perform, after the packaging is completed, an encoding anti-collision process on the program additional information packaged in advance according to the digital television video standard, and the specific processing manner may be: the packaged program additional information data is scanned to detect whether it contains 0x000x000x 01. If so, replace 0x000x000x01 with other bytes preset, such as 0x110x220x330x440x550x 66. Correspondingly, after reading the program additional information, the terminal performs a back collision process, scans the read additional information data, and replaces 0x110x220x330x440x550x66 with 0x000x000x 01.
After the encapsulation is completed, the encapsulated program additional information is inserted into the extended user field 2 in the video ES in the form of user data, and 0x00 padding data in the video ES can be further filtered out to obtain more padding space.
After obtaining the pre-packaged program additional information, the following describes in detail the insertion of the pre-packaged program additional information in the video ES, as shown in fig. 3.
According to the MPEG-2 video standard, an extended user data field 2 can be inserted before video ES image data, and the start flag of the video ES image data, that is, the start of the first macroblock in the image data is identified as 0x000x010x01, so that the front end searches for 0x000x010x01 by scanning the code stream of the video ES, and inserts the following information before 0x000x010x01 as the content of the user data field:
(1) the MPEG-2 video standard specifies that when the extended user data field is inserted, the start of user data is identified as 0x000x000x010xB2, so the first insertion of user data starts identifying 0x000x000x010xB 2.
(2) In order to enable the terminal to recognize the encapsulation type of the program additional information and perform correct decapsulation, it is necessary to insert the encapsulation type of the program additional information encapsulated in advance. For example, an 8-bit type field may be defined: 0x1E identifies OC protocol packages, 0x1F identifies custom protocol packages, and so on.
(3) The pre-packaged program additional information is inserted, i.e. into the data structure as shown in fig. 2. The length of the data which can be inserted is calculated according to different encapsulation protocols: for the program additional information encapsulated using the OC protocol, the size of the inserted program additional information data should be calculated according to the available bandwidth. According to the MPEG-2 video standard, a group of pictures contains picture frames of one I-frame, a plurality of P-frames and a plurality of B-frames. In order to make the code stream after inserting the user data as stable as possible, the following principle can be adopted: if the current video frame is an I frame, user data may not be inserted because the data size of the I frame is already large; if the frame is a P frame, user data with a certain data volume can be inserted, and the data volume is assumed to be the data volume of a unit S; in case of B frame, user data of 1.5S in data amount may be inserted. According to this principle, assuming that a group of pictures contains 1I-frame picture, 2P-frames and 4B-frames, assuming that the available bandwidth is 20K, the calculation formula of the unit S is: 20K is 2 × S +4 × 1.5S, and S is 2.5K, that is, 2.5K of program additional information is inserted into each P frame, and 3.75K of program additional information is inserted into each B frame. For inserting the additional information encapsulated by the custom protocol, the additional information of the program needs to be displayed simultaneously with a certain frame image, so that the amount of the inserted additional information of the program needs to be the amount of the encapsulated additional information of the program before the data of the certain frame image. When inserting data, a plurality of pieces of packaged program additional information may be inserted at one time, that is, a plurality of data structures shown in fig. 2 may be inserted. They may be program additional information from the same data source or from multiple data sources.
In addition, other identification information, such as identification information of the operator and other user data, may also be inserted.
According to the above mode, after inserting the program additional information packaged in advance into the extended user data field 2 in the video ES according to the available bandwidth information, the video ES carrying the program additional information is obtained.
Note that, the order of (1) to (3) or other identification information fields inserted here is not particularly limited as long as the inserted order coincides with the order of terminal resolution.
S105) carrying out PES encapsulation and TS encapsulation processing on the video ES carrying the program additional information to generate a video TS carrying the program additional information.
And according to the specification of the MPEG-2 system standard, PES encapsulation is carried out on the video ES carrying the program additional information in sequence to obtain a video PES carrying the program additional information. And encapsulating the PES according to the format requirement of the TS to obtain the video TS carrying the program additional information.
S106) mixing the video TS carrying the program additional information with the non-video TS to obtain an MPTS carrying the program additional information, and sending the MPTS carrying the program additional information.
Because the non-video TS is not modified in the process of adding the program additional information, multiplexing according to the MPEG-2 system standard is not needed, after the front end obtains the video TS carrying the program additional information, the video TS carrying the program additional information is mixed with the non-video TS obtained in the step S101) to obtain the MPTS carrying the program additional information, and the MPTS is sent to the terminal through the digital television network.
In this embodiment, after receiving the MPTS with the program additional information sent by the front end, the terminal mainly completes operations of demultiplexing the received television program, reading and decapsulating the program additional information, and displaying the decapsulated program additional information.
Referring to fig. 4, the operation of the terminal according to the embodiment of the present invention will be described in detail.
S401) receiving and analyzing the MPTS carrying the program additional information to obtain the non-video TS, and obtaining the video TS carrying the program additional information according to related data used for analyzing the video TS in the non-video TS.
The terminal receives the MPTS carrying the program additional information and parses it according to the MPEG-2 system standard. The parsing method is the same as the parsing MPTS method in step S101), and the description is not repeated here.
S402) analyzing the video TS carrying the program additional information to obtain a video ES carrying the program additional information.
The same as the parsing step in step S103), the terminal parses the video TS carrying the program additional information to obtain a PES, and then parses the PES to obtain a video ES carrying user data.
S403) reading program additional information from the video ES carrying the program additional information.
The terminal finds the encapsulated program additional information inserted by the front end by scanning the user data start identifier 0x000x010xB2 in the video ES until the next image data start identifier, between which the obtained data is the encapsulated program additional information inserted by the front end and the side information needed for decapsulation.
According to the sequence in step S104), sequentially parsing out the user data start flag 0x000x010xB2, the package type of the program additional information, the packaged program additional information, and other identification information that may be inserted by other front ends.
If the encoding anti-collision processing is performed in step S104), the terminal should perform encoding anti-collision processing on the parsed encapsulated program additional information according to the encoding anti-collision processing method of the front end. See step S104) specifically, the description will not be repeated here.
S404) decapsulates the read program additional information.
According to the encapsulation type obtained in step S203), if the program additional information is encapsulated by using the OC protocol, the read program additional information needs to be decapsulated by using the OC protocol to obtain program additional information data, and a specific decapsulation method is a method defined by the OC protocol.
If the encapsulation type obtained in step S203) is the custom protocol, a decapsulation rule corresponding to the encapsulation is adopted to parse a field identifying the data type of the program additional information, a field identifying the data source of the program additional information, a length field identifying the program additional information transmitted this time, and the program additional information transmitted this time.
S405) in the process of displaying the video ES carrying the program additional information, presenting the unpacked program additional information.
The terminal inputs the video ES into a video decoder capable of analyzing the video ES to obtain YUV data of the video and outputs a display video, and because the program additional information is the extended user data field 2 inserted in front of the related image data, the unpacked program additional information can be simultaneously presented in the process of displaying the video image. When the additional information is specifically presented, processing the additional information by the application layer corresponding to the terminal according to the data type of the additional information, and displaying or playing the additional information according to the data type of the additional information, for example, if the additional information is text data or image data, outputting the additional information to a display in the form of characters or images by the application layer of the terminal; if the additional information is audio data needing to be played, the terminal audio decoder decodes the additional information and outputs the additional information to the loudspeaker. In addition, for some types of additional information, it may be presented directly without application layer processing.
In this embodiment, the terminal of the digital system may be a digital television set-top box. The digital TV set-top box is a conversion device for converting digital TV signals into analog signals, and is used for enabling users to watch digital TV programs and high-definition digital TV programs by using the original analog TV set, namely, providing a digital/analog signal conversion function. Through the front-end insertion and display operation method described in the embodiment, a user can display various types of program additional information on the basis of the existing television network through the digital television set-top box.
The following describes in detail a system for inserting and displaying additional information of a digital television program corresponding to the method of the embodiment of the present invention, where the system includes a front-end device and a terminal device.
Referring to fig. 5, a schematic connection diagram of the front-end processing apparatus is shown. The following describes in detail the units specifically included in the front-end apparatus.
The multi-program transport stream parsing unit 501 is configured to parse the MPTS to obtain a video TS, a padding packet, and a non-video TS. The multi-program transport stream parsing unit parses the MPTS through PAT, PMT, etc. according to the specification of the MPEG-2 system standard to obtain a video TS, and obtains padding packets and non-video TS according to TS packets whose PID is 8191.
A padding packet processing unit 502 for obtaining the available bandwidth information from the padding packets obtained by the multi-program transport stream parsing unit and filtering the padding packets. Since the program additional information needs to be inserted into the video data in the form of user data in the subsequent steps, a certain bandwidth is occupied, and therefore, padding packets need to be filtered out, so that the program additional information can be inserted under the condition of a certain code rate.
And a TS parsing unit 503, configured to perform TS and PES parsing on the video TS obtained by the multi-program transport stream parsing unit in sequence according to the MPEG-2 video standard, so as to obtain an original video stream ES.
A program additional information inserting unit 504, configured to insert the pre-encapsulated program additional information into the extended user data field 2 in the video ES parsed by the TS parsing unit according to the available bandwidth information obtained by the padding packet processing unit. The program additional information inserting unit may specifically insert the pre-packaged program additional information by: searching an image data starting identifier in the video ES; the user data start flag, the package type of the pre-packaged program additional information, the pre-packaged program additional information are inserted before the image data start flag.
The pre-packaged program additional information may be the program additional information pre-packaged using the OC protocol or the program additional information pre-packaged using the custom protocol according to different playing time requirements of the program additional information. When the terminal de-encapsulates the program additional information, the terminal correspondingly uses an OC protocol or a custom protocol for de-encapsulation. When the front end encapsulates the program additional information using the custom protocol, one embodiment is to add to the program additional information: a field for identifying the type of the program additional information data, a field for identifying the data source of the program additional information, a length field for identifying the program additional information transmitted this time, and the program additional information transmitted this time. For the implementation, the decapsulation unit included in the terminal parses out the field identifying the data type of the additional information, the field identifying the data source of the program additional information, the length field identifying the program additional information transmitted this time, and the program additional information transmitted this time.
And a TS encapsulating unit 505 configured to perform PES encapsulation and TS encapsulation processing on the video ES carrying the program additional information output by the program additional information inserting unit according to the MPEG-2 system standard, and generate a video TS carrying the program additional information.
And a mixing and sending unit 506, configured to mix the video TS with the program additional information generated by the TS encapsulating unit and the non-video TS parsed by the multi-program transport stream parsing unit to obtain an MPTS with the program additional information, and send the MPTS with the program additional information to the terminal.
Referring to fig. 6, a connection diagram of the terminal device is shown. The following describes in detail the units specifically included in the terminal apparatus.
The multi-program transport stream receiving and parsing unit 601 is configured to receive and parse an MPTS carrying program additional information sent by a front end to obtain a non-video TS, and obtain a video TS carrying the program additional information according to related data in the non-video TS, such as PAT, PMT, and the like, for parsing the video TS.
The TS parsing unit 602 is configured to parse the video TS with the program additional information output by the multi-program transport stream receiving and parsing unit to obtain a PES, and then parse the PES to obtain a video ES with the program additional information.
An additional information reading unit 603, configured to read the program additional information from the video ES carrying the program additional information analyzed by the TS analyzing unit. The additional information reading unit reads the encapsulation type of the pre-encapsulated program additional information and the pre-encapsulated program additional information by searching the user data start identifier.
A decapsulating unit 604 for decapsulating the additional information of the program read by the additional information reading unit. If the read program additional information is encapsulated by adopting an object carousel protocol, the decapsulation unit decapsulates the read program additional information by using the object carousel protocol; and if the read program additional information is encapsulated by adopting a custom protocol, the decapsulating unit decapsulates the read program additional information by using the custom protocol.
A display unit 605, configured to output the program additional information decapsulated by the display decapsulation unit in the process of parsing the video ES by the TS parsing unit. And when the additional information is specifically presented, the additional information is displayed or played after being processed by the corresponding application layer of the terminal according to the data type of the additional information. For some types of additional information, it may be presented directly without application layer processing.
Since the syntax structure start identifier prefix 0x000x000x01 cannot be present in the user data as specified by the MPEG-2 video standard, in a preferred embodiment, the front-end apparatus further comprises: and the coding conflict processing unit is used for carrying out coding conflict prevention processing on the program additional information packaged in advance. The specific processing mode may be: the packaged program additional information data is scanned to detect whether it contains 0x000x000x 01. If so, replace 0x000x000x01 with other bytes preset, such as 0x110x220x330x440x550x 66. Correspondingly, the terminal device further comprises: and the encoding anti-collision processing unit is used for performing encoding anti-collision processing on the program additional information read from the video ES carrying the program additional information, namely replacing 0x110x220x330x440x550x66 with 0x000x000x 01.
The method and system for inserting and displaying additional information of a digital television program provided by the invention are described in detail, a specific example is applied in the text to explain the principle and the implementation mode of the invention, and the description of the above embodiment is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, the specific embodiments and the application range may be changed. In view of the above, the present disclosure should not be construed as limiting the invention.
Claims (10)
1. A method for inserting and presenting additional information of digital TV programs is characterized by comprising front-end operation and terminal operation, wherein,
the front end operations include:
analyzing the multi-program transport stream MPTS to obtain a video transport stream TS, a stuffing packet and a non-video transport stream TS;
obtaining available bandwidth information according to the filling packet, and filtering the filling packet;
analyzing the video TS to obtain a video original stream ES;
inserting program additional information packaged in advance into an extended user data field 2 in the video ES according to the available bandwidth information to obtain a video ES carrying the program additional information; the inserting the program additional information encapsulated in advance into the extended user data field 2 in the video ES to obtain the video ES carrying the program additional information specifically includes: searching an image data starting identifier in the video ES; inserting a user data start identifier, a packaging type of pre-packaged program additional information and pre-packaged program additional information before the image data start identifier;
performing PES encapsulation and TS encapsulation processing on the video ES carrying the program additional information to generate a video TS carrying the program additional information;
mixing the video TS carrying the program additional information with the non-video TS to obtain an MPTS carrying the program additional information, and sending the MPTS carrying the program additional information;
the terminal operation includes:
receiving and analyzing the MPTS carrying the program additional information to obtain the non-video TS, and obtaining the video TS carrying the program additional information according to related data used for analyzing the video TS in the non-video TS;
analyzing the video TS carrying the program additional information to obtain a video ES carrying the program additional information;
reading program additional information from the video ES carrying the program additional information; wherein the reading of the program additional information from the video ES carrying the program additional information specifically includes: searching a user data starting identifier, and reading the encapsulation type of the program additional information encapsulated in advance and the program additional information encapsulated in advance;
decapsulating the read program additional information;
and presenting the unpackaged program additional information in the process of displaying the video ES carrying the program additional information.
2. The method of claim 1, wherein the pre-packaged program additional information comprises: program additional information packaged by an object carousel protocol is used in advance;
the terminal decapsulates the read program additional information, and comprises the step of decapsulating the read program additional information by using an object carousel protocol.
3. The method of claim 1, wherein the pre-packaged program additional information comprises: program additional information packaged by a user-defined protocol is used in advance;
the terminal decapsulates the read program additional information, including decapsulating the read program additional information by using a custom protocol.
4. The method of claim 3, wherein encapsulating the program additional information using the custom protocol comprises adding to the program additional information of the current transmission: a field for identifying the type of the program additional information data, a field for identifying a program additional information data source and a length field for identifying the program additional information transmitted this time;
and the step of decapsulating the read program additional information by using the custom protocol comprises analyzing a field for identifying the data type of the program additional information, a field for identifying a data source of the program additional information, a length field for identifying the program additional information transmitted this time and the program additional information transmitted this time.
5. The method of any of claims 1-4, wherein the front end inserts pre-encapsulated program additional information before the extended user data field 2 in the video ES, further comprising: coding and anti-collision processing are carried out on the program additional information packaged in advance;
after the terminal reads the program additional information from the video ES carrying the program additional information, the method further includes: and performing encoding anti-collision processing on the read program additional information.
6. The insertion display system of the additional information of the digital television program is characterized by comprising a front-end device and a terminal device, wherein,
the front-end apparatus includes:
the multi-program transport stream analyzing unit is used for analyzing the MPTS to obtain a video TS, a padding packet and a non-video TS;
the padding packet processing unit is used for obtaining the available bandwidth information according to the padding packet and filtering the padding packet;
the TS analyzing unit is used for analyzing the video TS to obtain a video original stream ES;
a program additional information inserting unit, configured to insert pre-encapsulated program additional information into an extended user data field 2 in the video ES according to the available bandwidth information, to obtain a video ES carrying the program additional information; the program additional information insertion unit is used for searching the image data starting identifier in the video ES; inserting a user data start identifier, a packaging type of pre-packaged program additional information and pre-packaged program additional information before the image data start mark;
a TS packaging unit, which is used for carrying out PES packaging and TS packaging processing on the video ES carrying the program additional information to generate a video TS carrying the program additional information;
a mixing and sending unit, configured to mix the video TS carrying the program additional information with the non-video TS, obtain an MPTS carrying the program additional information, and send the MPTS carrying the program additional information;
the terminal device includes:
a multi-program transport stream receiving and analyzing unit, configured to receive and analyze the MPTS carrying the program additional information, obtain the non-video TS, and obtain the video TS carrying the program additional information according to related data in the non-video TS for analyzing the video TS;
the TS analyzing unit is used for analyzing the video TS with the program additional information to obtain a video ES with the program additional information;
an additional information reading unit, configured to read program additional information from the video ES carrying the program additional information; the additional information reading unit is used for searching a user data starting identifier and reading the packaging type of the program additional information packaged in advance and the program additional information packaged in advance;
a decapsulation unit for decapsulating the read program additional information;
and the display unit is used for presenting the unpacked program additional information in the process of displaying the video ES carrying the program additional information.
7. The system of claim 6, wherein the pre-packaged program additional information comprises: program additional information packaged by an object carousel protocol is used in advance;
and the decapsulation unit is used for decapsulating the read program additional information by using an object carousel protocol for the read program additional information.
8. The system of claim 6, wherein the pre-packaged program additional information comprises: program additional information packaged by a user-defined protocol is used in advance;
and the decapsulation unit is used for decapsulating the read program additional information by using a custom protocol for the read program additional information.
9. The system of claim 8, wherein the encapsulating the program additional information using the custom protocol comprises adding to the program additional information of the current transmission: a field for identifying the data type of the program additional information, a field for identifying the data source of the program additional information, and a length field for identifying the program additional information transmitted this time;
the decapsulation unit is used for parsing a field for identifying the type of the additional information data, a field for identifying a program additional information data source, a length field for identifying the program additional information transmitted this time, and the program additional information transmitted this time.
10. The system of any of claims 6-9, wherein the front-end device further comprises: the encoding conflict processing unit is used for carrying out encoding anti-conflict processing on the program additional information packaged in advance;
the terminal device further includes: and the encoding anti-collision processing unit is used for performing encoding anti-collision processing on the program additional information read from the video ES carrying the program additional information.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110205012 CN102256175B (en) | 2011-07-21 | 2011-07-21 | Method and system for inserting and presenting additional information in digital television program |
Publications (2)
Publication Number | Publication Date |
---|---|
HK1163406A1 true HK1163406A1 (en) | 2012-09-07 |
HK1163406B HK1163406B (en) | 2014-02-14 |
Family
ID=
Also Published As
Publication number | Publication date |
---|---|
CN102256175B (en) | 2013-06-12 |
CN102256175A (en) | 2011-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102256175B (en) | Method and system for inserting and presenting additional information in digital television program | |
KR101828639B1 (en) | Method for synchronizing multimedia flows and corresponding device | |
KR101639358B1 (en) | Transmission apparatus and method, and reception apparatus and method for providing 3d service using the content and additional image seperately transmitted with the reference image transmitted in real time | |
KR101781887B1 (en) | Method and apparatus for transceiving broadcast signal | |
US20230260523A1 (en) | Transmission device, transmission method, reception device and reception method | |
CN101179736B (en) | Method for converting transmission stream program to China mobile multimedia broadcasting program | |
CN101621342A (en) | Method for realizing network TV program carousel based on real-time transport protocol | |
KR20120103510A (en) | Transmission apparatus and method, and reception apparatus and method for providing program associated stereoscopic broadcasting service | |
JP7200329B2 (en) | Transmission method, reception method, transmission device and reception device | |
US9426506B2 (en) | Apparatuses for providing and receiving augmented broadcasting service in hybrid broadcasting environment | |
CN100479529C (en) | Conversion method of multiplexing protocols in broadcast network | |
WO2016192413A1 (en) | Bitstream alignment and synchronous processing method and system, receiving terminal and communication system | |
JP2018182677A (en) | Information processing apparatus, information processing method, program, and recording medium manufacturing method | |
KR102818747B1 (en) | Broadcast signal transmitting device, broadcast signal receiving device, broadcast signal transmitting method and broadcast signal receiving method | |
CN105916011A (en) | Video real-time playing method and device | |
CN101179738B (en) | Conversion method from transmission stream to China mobile multimedia broadcasting multiplex protocol | |
EP3280147A1 (en) | Method and apparatus for transmitting and receiving broadcast signal | |
HK1163406B (en) | An inserting and displaying method for additional information of digital television program | |
KR100710393B1 (en) | Decoding method of compressed stream | |
CN101179737B (en) | Method of converting compound protocol in multimedia broadcasting network | |
WO2017164551A1 (en) | Broadcast signal transmission and reception method and device | |
KR101808672B1 (en) | Transmission apparatus and method, and reception apparatus and method for providing 3d service using the content and additional image seperately transmitted with the reference image transmitted in real time | |
JP2023076538A (en) | Transmission method, reception method, transmission device and reception device |