`RealNetworks Technical Blueprint Series
`
`BTN0007459
`
`1
`
`NEULION 1020
`
`
`
`Information in this document is subject to change without notice. Companies, names, and data used in
`examples herein are fictitious unless otherwise noted. No part of this document may be reproduced or
`transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written
`permission of RealNetworks, Inc.
`©1998 RealNetworks, Inc.
`RealAudio, RealVideo, and RealPlayer are registered trademarks of RealNetworks, Inc.
`The Real logo, RealServer, RealPlayer Plus, RealText, RealPix, RealAudio Encoder, RealVideo Encoder,
`RealEncoder, RealPublisher, RealProducer, RealProducer Plus, RealProducer Pro, SureStream, RealBroadcast
`Network, and RealSystem are trademarks of RealNetworks, Inc.
`Macromedia is a registered trademark and Flash and Shockwave are trademarks of Macromedia, Inc.
`STiNG is a trademark of Iterated Systems, Inc.
`ACELP-NET codec used under license from Université de Sherbrooke. Sipro Lab Télécom, Inc. Copyright ©1994-
`1997. All rights reserved.
`DolbyNet is a trademark of Dolby Laboratories, Inc.
`Dolby Digital AC-3 audio system manufactured under license from Dolby Laboratories.
`Apple, Macintosh, and Power Macintosh are registered trademarks of Apple Computer, Inc.
`Microsoft, MS-DOS, Windows, and Windows NT are registered trademarks and ActiveX is a trademark of
`Microsoft Corporation.
`Netscape and Netscape Navigator are registered trademarks of Netscape Communications Corporation.
`Pentium is a registered trademark and MMX and the Intel Optimizer Logo are trademarks of Intel Corporation.
`Sonic Foundry and Sound Forge are registered trademarks of Sonic Foundry, Inc.
`Other product and corporate names may be trademarks or registered trademarks of other companies. They are
`used for explanation only, with no intent to infringe.
`
`RealNetworks, Inc.
`2601 Elliott Avenue
`Seattle, WA 98121 USA
`
`http://www.realnetworks.com
`
`BTN0007460
`
`2
`
`
`
`CONTENTS
`
`REALSYSTEM G2 SYNTAX STYLE......................................................1
`
`SYNTAX RULES................................................................................1
`Three Basic Elements for Mark-up Tags................................ 2
`Some Tags have End Tags.................................................... 2
`All Other Tags Close with a Forward Slash............................ 3
`Lowercase Text Used for Tags and Attributes........................ 3
`Attribute Values Enclosed in Double Quotation Marks.......... 4
`SMIL Body Section Required................................................ 4
`HTML-Style Comments Allowed .......................................... 4
`
`INDENTATION................................................................................5
`
`WEB PAGE EMBEDDING MARK-UP ................................................5
`
`REALSYSTEM MANUALS .................................................................6
`Manual Conventions........................................................... 7
`
`iii
`
`BTN0007461
`
`3
`
`
`
`REALSYSTEM G2 SYNTAX STYLE
`
`This technical blueprint describes syntax rules for writing RealSystem G2
`mark-up. Following the rules described below will help you avoid errors when
`producing content with the RealSystem G2 mark-up languages:
`
`1. SMIL
`SMIL (Synchronized Multimedia Integration Language) assembles a
`presentation by creating a layout in RealPlayer and timing clips. A SMIL
`file uses the extension .smil (recommended) or .smi. For complete
`information on SMIL, see RealSystem G2 Production Guide.
`
`2. RealPix mark-up language
`RealPix creates a streaming slide show with JPEG or GIF images, adding
`special effects such as fades and zooms. A RealPix file uses the extension
`.rp. For complete information on RealPix, see RealPix Authoring Guide.
`
`3. RealText mark-up language
`RealText creates a streaming text presentation, specifying font attributes
`such as size and color, as well as timing elements that determine when text
`elements appear. A RealText file uses the extension .rt. For complete
`information on RealText, see RealText Authoring Guide.
`
`Additional Information
`See “RealSystem Manuals” on page 6 for more on these
`production and authoring guides.
`
`Syntax Rules
`RealSystem G2 mark-up languages are based on Extensible Mark-up Language
`(XML), which is similar to Hypertext Mark-up Language (HTML), but is more
`structured. As a result, many practices acceptable when writing HTML, such
`as using any case for tags (<B> or <b>, for example), are not acceptable when
`writing RealSystem mark-up. The following sections describes these
`differences in detail.
`
`1
`
`BTN0007462
`
`4
`
`
`
`RealNetworks Technical Blueprint Series
`
`RealSystem G2 Syntax Style Guide
`
`Three Basic Elements for Mark-up Tags
`There are three basic elements to RealSystem G2 mark-up tags:
`
`1. tag names
`
`2. attributes
`
`3. attribute values
`For example, here’s a RealText tag with one attribute and value:
`<font color=“blue”>
`
`Every tag starts with a left angle bracket and ends with a right angle bracket.
`The tag name, font in the example above, immediately follows the left angle
`bracket. This tag has one attribute, color. Each attribute takes one value, which
`is “blue” here. Some tags do not have any attributes, such as the RealText <b>
`tag, which turns on bolding. But many tags accept multiple attributes, as
`demonstrated here:
`<font color=“blue” size=”+2” face=”Arial” charset=”us-ascii”>
`
`Some Tags have End Tags
`There are two classes of tags: those that use a corresponding end tag and those
`that do not. For example, the tag that indicates the start of SMIL mark-up,
`<smil>, has a corresponding end tag, </smil>, that indicates the close of SMIL
`mark-up. These are similar to the <HTML> and </HTML> tags that enclose HTML
`mark-up.
`When a tag includes attributes, such as the following:
`<font color=“blue” size=”+2” face=”Arial” charset=”us-ascii”>
`
`its end tag uses just the tag name and never includes attributes:
`</font>
`
`Note that how you nest tags, which attributes you include, and where you
`place end tags affects the outcome. Compare the following RealText samples
`(bolding used for emphasis only):
`Start with normal text.
`<font color=“red”>Make text red.
`<font size=”+1”>Make red text one size larger.
`</font>Turn off larger size for red text.
`</font>Turn off color.
`
`2
`
`BTN0007463
`
`5
`
`
`
`RealNetworks Technical Blueprint Series
`
`RealSystem G2 Syntax Style Guide
`
`Start with normal text.
`<font color=“red”>Make text red.
`</font>Turn off color.
`<font size=”+1”>Make text one size larger.
`</font>Turn off larger size.
`
`Start with normal text.
`<font color=“red” size=”+2”>Make text red and two sizes larger.
`<font color=“blue” size=”+1”>Make text blue and one size smaller.
`</font></font><font size=”+1”>Turn off color but keep text the same size.
`</font>Reduce text to normal.
`
`All Other Tags Close with a Forward Slash
`If a tag does not use a corresponding end tag, it must close with a forward
`slash (“/”). The closing forward slash is an crucial departure from HTML.
`Here’s a sample SMIL tag:
`<audio src=”first.rm”/>
`
`Warning
`RealPlayer will not play the presentation if you omit a
`closing forward slash from a tag that requires it.
`
`Lowercase Text Used for Tags and Attributes
`Tags and attributes must be lowercase, as illustrated in this RealPix example:
`<fadein start="4" duration="3" target="2"/>
`
`You cannot use uppercase or mixed case for tags and attributes. The following
`example, which mixes cases, will not play in RealPlayer:
`<FADEIN Start="4" duration="3" TARGET="2"/>
`
`Attribute values are typically lowercase, but can be uppercase or mixed case as
`well. Uppercase or mixed case attribute values may be required with file
`names:
`<audio src=”FIRST.RM”/>
`
`In RealSystem G2 mark-up, the file specified in the attribute value must
`match the file’s name exactly. The tag above would not work if the file on the
`operating system is actually First.rm. Also note that file names cannot contain
`spaces.
`
`3
`
`BTN0007464
`
`6
`
`
`
`RealNetworks Technical Blueprint Series
`
`RealSystem G2 Syntax Style Guide
`
`Tip
`It’s good practice always to use lowercase file names,
`such as first.rm. This makes it easier to write RealSystem
`mark-up and to host files on servers.
`
`Attribute Values Enclosed in Double Quotation Marks
`Attribute values must be enclosed in double quotation marks, as illustrated in
`this RealText example:
`<time begin="23" end="55.5"/>
`
`Again, this is an important difference from HTML, in which quotation marks
`for attribute values are often optional. If you leave quotation marks out, as in
`this next example, the presentation will not play in RealPlayer:
`<time begin=23 end=55.5/>
`
`SMIL Body Section Required
`A SMIL file can include an optional header section defined by <head> and
`</head> tags. It requires a body section defined by <body> and </body> tags:
`<smil>
` <head>
` ...optional section with all header mark-up...
` </head>
` <body>
` ...required section with all body mark-up...
` </body>
`</smil>
`
`The optional header section is used to specify presentation information and
`to define clip layout.
`
`HTML-Style Comments Allowed
`As in HTML, RealSystem G2 mark-up can include comment tags that start
`with <!-- and end with -->. Unlike all other RealSystem G2 mark-up tags, the
`comment tag does not close with a forward slash:
`<!-- This is a comment -->
`
`4
`
`BTN0007465
`
`7
`
`
`
`RealNetworks Technical Blueprint Series
`
`RealSystem G2 Syntax Style Guide
`
`Indentation
`
`As shown here, it is good practice to use line breaks, tab indentation, and
`comments to indicate a file’s structure and purpose:
`<smil>
` <head>
` <layout>
` <!-- Create root-layout and two regions for video and text -->
` <root-layout background-color=”maroon” width=”250” height=”230”/>
` <region id=”videoregion” top=”5” left=”5” width=”240” height=”180”/>
` <region id=”textregion” top=”200” left=”5” width=”240” height=”20”/>
` </layout>
` </head>
` <body>
` <!-- Play video, text, and audio in parallel -->
` <par>
` <video src=”video.rm” region=”videoregion”/>
` <audio src=”audio.rm”/>
` <textstream src=”text.rt” region=”textregion”/>
` </par>
` </body>
`</smil>
`
`The following example is the same file without line breaks, indentation, or
`comments. Persons reading this file will find it difficult to understand the
`presentation’s structure, modify the file, or locate errors:
`<smil> <head> <layout> <root-layout background-color=”maroon” width=”250”
`height=”230”/> <region id=”videoregion” top=”5” left=”5” width=”240”
`height=”180”/> <region id=”textregion” top=”200” left=”5” width=”240”
`height=”20”/> </layout> </head> <body> <par> <video src=”video .rm”
`region=”videoregion”/> <audio src=”audio.rm”/> <textstream src=”text.rt”
`region=”textregion”/> </par> </body> </smil>
`
`Web Page Embedding Mark-Up
`Not every type of mark-up you can use when creating a RealSystem G2
`presentation follows the conventions noted above. As described in RealSystem
`G2 Production Guide, you can use mark-up similar to the following to embed a
`RealSystem G2 clip or presentation in a Web page:
`<EMBED SRC=”http://realserver.company.com:8080/ramgen/sample1.rm?embed”
`WIDTH=176 HEIGHT=132 NOJAVA=true CONTROLS=ImageWindow CONSOLE=video1>
`
`5
`
`BTN0007466
`
`8
`
`
`
`RealNetworks Technical Blueprint Series
`
`RealSystem G2 Syntax Style Guide
`
`The <EMBED> tag mark-up is similar to HTML and follows conventions
`developed by Netscape Communications Corporation.
`Likewise, the <OBJECT> tag used to embed a clip or presentation in a Web page
`with the RealPlayer ActiveX control looks like this:
`<OBJECT ID=RVOCX CLASSID=”clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA”
` WIDTH=176 HEIGHT=132>
`<PARAM NAME=”SRC”
` VALUE=”http://realserver.company.com:8080/ramgen/sample1.rm”>
`<PARAM NAME=”CONTROLS” VALUE=”ImageWindow”>
`<PARAM NAME=”CONSOLE” VALUE=”video1”>
`</OBJECT>
`
`The ActiveX control syntax follows conventions developed by Microsoft
`Corporation. With the <EMBED> or <OBJECT> tag, for example, attributes can be
`any case. Additionally, tags do not close with forward slashes because these
`mark-up languages are not based on XML.
`
`RealSystem Manuals
`RealSystem G2 mark-up is described in the following manuals. You can
`download HTML and PDF versions of these manuals from
`http://service.real.com/help/library/encoders.html.
`
`• RealSystem G2 Production Guide
`This guide explains the basics of creating content for RealSystem G2,
`covering RealAudio, RealVideo, Flash, SMIL, bandwidth, presentation
`URLs, and more.
`
`• RealPix Authoring Guide
`This guide explains how to create a RealPix presentation to stream still
`images in JPEG or GIF format.
`
`• RealText Authoring Guide
`This guide tells how to create and stream RealText.
`
`6
`
`BTN0007467
`
`9
`
`
`
`RealNetworks Technical Blueprint Series
`
`RealSystem G2 Syntax Style Guide
`
`Manual Conventions
`When you use the RealSystem G2 production and authoring guides, keep in
`mind that the guides use several conventions when representing syntax.
`
`Convention
`variables
`
`Syntax Notational Conventions
`Meaning
`Italicized text represents variables. Substitute values
`appropriate for your situation.
`Bolded text is used for emphasis.
`Square brackets indicate optional values you may or may
`not need to use.
`choice 1|choice 2 Vertical lines separate values you can choose between.
`...
`Ellipses indicate nonessential information omitted from
`the example. Do not include ellipses in your syntax.
`
`emphasis
`[options]
`
`7
`
`BTN0007468
`
`10
`
`