Embodiment
Fig. 1 shows the assembly according to general font streaming system of the present invention.In the suitable equipment 3 that comprises like multiplexer and transmission server etc., be bit stream 4 with AV and contextual data 2 (contextual data comprises text) packing (for example multiplexed) with character font data 1.Transmission can comprise broadcasting, for example, can bit stream 4 and sub-flow structure thereof be turned to multiplexed grouping.
At receiving equipment 5 places, bit stream is decomposed into ES and OD streams such as for example control, audio frequency, video and font stream, wherein control ES and comprise the scene description that comprises text, and said ES is distributed to relevant manager.Each addressable part of ES is called addressed location (AU) 6, then, it is decoded as relevant appeared in the form of platform by decoder manager 7.Specific decoding for ES needs utilizes decoder customizing messages 11 (DSI) to create decoder manager 7.For example, be utilized in the information that receives in the control stream of bit stream, can create or revise said DSI11.Decoder manager 7 produces the assembled unit (CU) 8 that is imported into combiner 9, and combiner 9 produces conversely and is used for the for example input signal 10 of reproducer such as PC or TV 13.Owing to before combiner 9 needs, produce CU, can it be buffered in the combined buffers.In data is under the situation of the present invention of character font data, and advantageously, store fonts data in the local memory device 12 of for example memory, flash memory, dish or hard disk are so that use subsequently.For example, when content supplier's appointment will be used for the font of particular text, can character font data be used for the combination of combiner 9.Because it is relevant that combiner 9 is platforms, irrelevant with streaming system, decoder manager 7 can produce the CU form that combiner 9 needs so that as the hope of institute of content supplier the reproduction text.
MPEG-4 system standard has defined administrative time can be relevant with the AU 6 that decoder manager 7 is used, as the time of decoded data.Send to combined buffers with so being converted into CU 8 and preparing the data that are used for combiner 9.For CU, have the assembly time, defined combiner 9 and be used to determine when CU is used to reproduce content.The server 3 that sends packets to client computer must guarantee to divide into groups enough to arrive client terminal 5 soon, so that information can be in time available for combiner 9.When content creating, carry out this issue.
For the present invention being used for MPEG-4 or similar situation towards streaming system, Fig. 2 shows terminal structure.Terminal 20 comprises the interface 21 that is known as the DMIF application programming interfaces.Use it for the flow data packet format conversion between layer, sync SL and the transport layer DL.In addition, it is decomposed into son stream or ES with bit stream.The son stream and the text that will comprise contextual data send to suitable decoding buffer 22,26 together, then, at the appointed time send to decoder 23,27.Each decoder is used for the ES of particular type, and has only when needs and just create.Before using decoder, can through dedicated management device 29 receive as among the special-purpose ES such as OD stream, specified the information of decoder.Decoder output is offered combined buffers 24,28, offer combiner 25 at the special time place then, that is, and at its assembly time place separately.In present embodiment of the present invention, have the decoding buffer 26, decoder 27 and the combined buffers 28 that are used for downloaded fonts information.
In one embodiment of the invention, the character font data that is received is stored in the recipient, so that use subsequently, and in another embodiment, only stores last received font, and, must download other fonts whenever content need be used at that time.In the 3rd embodiment, the font that storage is downloaded is broken off content up to client computer.In the 4th embodiment, whether bit stream can comprise should the store fonts notification of information.In the fifth embodiment of the present invention, the download that the user can the control word volume data promptly, enables or forbids.
Fig. 3 shows the Object Descriptor framework of the MPEG-4 system that also comprises character font data.It comprises initial object descriptor and five basic streams (ES).The initial object descriptor comprises two basic flow descriptors (ES_D) of pointing to ES, especially, and ES_D
SHas numerical value ES_ID
S, and therefore point to scene description stream, ES_D
OHas numerical value ES_ID
O, and so point at objects descriptor-stream.Scene description stream comprises the scene description of how much of having described scene, animation and interactivity, and through specifying how to obtain object from ES, is linked to each object of the scene that will reproduce.The leaf node that is linked to the scene description classification tree of media object has used the object descriptor identifier (ODID) of pointing to the Object Descriptor that in Object Descriptor stream, receives.An object descriptor identifier ODID
VPoint to Object Descriptor OD to visual object
V, and another object descriptor identifier ODID
TPoint to Object Descriptor OD to text object
TEach Object Descriptor comprises the one or more ES descriptor ES_D with reference to the ES that will in scene, reproduce.Text object is included in the scene description stream that comprises the actual text node, and relates to ES,, comprises the font stream of each font that is.Through having each identifier ES_ID
SAnd ES_ID
FThe ES descriptor ES_D of numerical value
SAnd ES_D
FWith reference to two streams.
For example, when in content of multimedia during, with reference to being ES_ID as shown in Figure 3 or as the font name of string value with reference to font.Before will be inserted in the MPEG-4 stream with reference to the corresponding character font data of font and corresponding ES_ID and optional additional title string, as ES, advantageously, can the store fonts data, title and relevant information so that use subsequently.In this case, for example, title can be with reference to font.Advantageously, do not transmit (stream) filename, therefore can be used for storage by the compatible filename of selective system.
The special cell that is known as the script management device at recipient place can be handled said font relevant issues, for example, has stored specific required font before choice criteria font, the inspection whether, receives new font, has upgraded the font of being stored etc.
For example, DSI and be used for this specific font relevant information that decoder creates and comprise as stated:
-font type, that is, the internal form of different character font datas for example, can be TrueType font, OpenType font or compressed font (zipped font) etc.;
-font stored information, whether should store fonts, so that use subsequently if having specified;
-font name, that is, and be as the string of font reference; And
-be used for the system-specific information of script management device, for example, whether only use said font to specific character or symbol, or, for example only use said font to capitalization.
In the MPEG-4 system, in OD stream, transmit DSI.According to the present invention, have two kinds of possibilities of the information of sending the specific font decoder: whole said packets of information are contained among the DSI, and font AU comprises raw font data, or DSI comprises said information and is in the indication among the AU with raw font data.Can encode according to font format variable among the DSI and use in two solutions which indication.
Utilize first solution, the setting that is used for the font decoder is self-centered (self-sufficient), that is, in the OD structure, define fully, and therefore, all AU that comprise font information divide into groups to have the identical inner form by the definition of font format numerical value.This means the form that dynamically to revise the font that receives, that is, be used for the font that text reproduces, but then, only need the decoder of simple types.
For second solution, only used font format variable from DSI, ignored other font related information among the DSI.On the contrary, this packets of information is contained in the AU that is used for font information divides into groups, and can be from for example extracting the packet header.This is called self-contained font.In this case, it is just enough to be used for the specific reserved value of font format of DSI.This solution means that font stream AU divides into groups to have different internal forms, and therefore, owing to must from divide into groups, extract some its DSI that need, decoder must be more complicated than first solution.But advantageously,, can carry out dynamic font and revise owing to can use the font of new reception immediately.
Realize for MPEG-4 of the present invention, be described below, only need standard is seldom improved.Said improvement refers to that stream type, AU form, decoder type and node are semantic.
Owing to used the ES of newtype, must define the new value of streamType parameter, use said new value by the terminal, so that son stream is identified as font ES, creates required decoder and is connected to ES.Based on above-mentioned standard, can add the new streamType of suggestion as follows:
The streamType value |
Stream type is described |
0×00 |
Forbid |
0×01 |
ObjectDescriptorStream |
0×02 |
ClockReferenceStream |
0×03 |
SceneDescript?ionStream |
0×04 |
VisualStream |
0×05 |
AudioStream |
0×06 |
MPEG7Stream |
0×07 |
IPMPStream |
0×08 |
ObjectContent?InfoStream |
0×09 |
MPEGJStream |
0×0A |
Interaction?Stream |
0×0B |
FontStream |
0×0C-0×1F |
Use and keep to ISO |
0×20-0×3F |
The user is privately owned |
Table 1
These streams do not need the object type indication, therefore can use numerical value 0 * FF (no object type is specified).A kind of plain mode of transmission font information is font file is embedded among the AU, creates new AU type thus.Of the MPEG-4 standard, during flow transmission, can this AU be divided into layer, sync (SL) and divide into groups.In addition, must define new decoder and manage font AU.Decoder utilizes DS I configuration from AU, to extract character font data.For example, if DSI is embodied as the class in object oriented language, then it has following form:
Class?Font_DecoderConfig?extends?DecoderSpecificInfo:
bit(8)tag=DecSpecificInfoTag{
bit(7)fontFormat;
if(fontFormat!=0×00){
bit(1)storeFont;
bit(8)fontNameLength;
bit(8)fontName[fontNameLength];
bit(8)fontSpecInfo[sizeOfInstance-fontNameLength-1];
}
}
Can stipulate to be included in the font format variable among the DSI as follows:
Font format |
The AU content |
The decoder behavior |
?0×00 |
Self-contained font |
Use 1AU as self-contained font |
?0×01 |
TrueType font (TTF) |
Use 1AU as TrueType font |
?0×02 |
Font(FON) |
Use 1AU as Font |
?0×03 |
Compression TTF |
Utilize ZIP algorithm decompress(ion) 1AU, then it is used as TTF |
?0×04 |
Compression FON |
Utilize ZIP algorithm decompress(ion) 1AU, then it is used as FON |
?0×05-0×7F |
The user is privately owned |
Privately owned font format |
Table 2
The meaning of its dependent variable that more than uses is:
Whether storeFont-has defined store fonts, so that use subsequently,
FontNameLength-has indicated the length of fontName field,
FontName-has indicated the title of font, and
FontSpecInfo-has the opaque containers to the information of specific font processor.
For the font format variable with numerical value 0 * 01 to 0 * 04, decoder needs all DSI information to come deal with data, and for the font format variable with numerical value 0 * 00, decoder can obtain its information that needs in AU.Explanation is according to exemplary font AU form of the present invention below.
If the terminal can store fonts; Can the storeFont sign be used to determine whether to store the font that is received; And through utilizing the title that receives in the fontName field is associated with file or selects significant filename, the title that receives in the fontName field is appended on the character font data.The fontSpecInfo field can be defaulted as sky, and can be used for the privately owned realization of any user by the font format indication with numerical value 0 * 05 to 0 * 07.Be self-contained font and AU be embodied as under the situation of the class in the object oriented language for example that in the AU content each font AU can comprise following data structure:
Class?FontAccessUnit(){
bit(7)fontFormat;
bit(1)storeFont;
bit(8)fontNameLength;
bit(8)fontName[fontNameLength];
bit(8)fontSpecInfoLength;
bit(8)fontSpecInfo[fontSpecInfoLength];
bit(8)fontData[sizeOfInstance - fontNameLength -
fontSpecInfoLength-2]
}
FontSpecInfoLength has defined the length of fontSpecInfo field, fontData
It is raw font data.Other fields have with DSI in identical meaning.
At last, the FontStyle node semanteme of in standard, describing needs to revise, so that can realize font stream.Corresponding paragraph is with reference to VRML97 standard (ISO/IEC 14772-1:1998).
Add following behavior to node:
" the family field also comprises the ObjectDescriptorIdentifier (ODID) with reference to ' FontStream ' type stream, and said stream comprises font information ".
For the best-of-breed functionality of node, of VRML97, a SFString numerical value of Family field should comprise font name.Second value should comprise the ODID that points to the stream that comprises font.In the present embodiment, the terminal can check that whether Already in the font in first numerical value, named in the terminal, reuse then.Otherwise it can utilize characteristic of the present invention to handle like the described font of MPEG-4 system standard system, and with its storage.For the best script management in the client terminal, the structuring of font information statement (that is fontStyle node) should be with reference at first utilizing its title and utilizing its flow identifier ES_ID to reproduce the required font of text in the second place.Utilize the typical scene sample of font stream characteristic can comprise following fragment:
fontStyle?FontStyle{
family[“Times?New?Roman”,“ODID:104”]
size 25.0
spacing?1.25
style“BOLD”
}
In this example, the terminal should utilize and have title the font of " Times New Roman " is reproduced the text string that has to sizing, spacing and genre parameters.If this font is unavailable the recipient, the MPEG-4 terminal can be connected to the stream with ODID " 104 ", to retrieve required font information.
Can also font stream characteristic of the present invention be included in the MPEG-4 authoring tool: when the author has defined the specific font that is used for text string; Instrument inserts the type family title first of family field; Establishment comprises the new ES of font information, and will be used for the second portion of the ODID insertion family field of said ES.
Advantageously, can transmit any font format, for example, TrueType font, Basic font, OpenType font, Asian character, scalable font, symbol font etc. are as long as this font can discerned and manage to receiving terminal.
More advantageously; The present invention can be used for can the display message content and can receive all types of equipment of font information; Especially the content that comprises text or symbol; For example, TV, DVB, computer display, navigator and portable equipment, for example mobile phone, mobile computer, PDA(Personal Digital Assistant), MP3 player or other have the music reproduction device of display.
The present invention is particularly useful for all MPEG-4 streaming systems.