<html xmlns:v="urn:schemas-microsoft-com:vml" | |
xmlns:o="urn:schemas-microsoft-com:office:office" | |
xmlns:w="urn:schemas-microsoft-com:office:word" | |
xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" | |
xmlns:st1="urn:schemas-microsoft-com:office:smarttags" | |
xmlns="http://www.w3.org/TR/REC-html40"> | |
<head> | |
<meta http-equiv=Content-Type content="text/html; charset=windows-1252"> | |
<meta name=ProgId content=Word.Document> | |
<meta name=Generator content="Microsoft Word 11"> | |
<meta name=Originator content="Microsoft Word 11"> | |
<!--[if !mso]> | |
<style> | |
v\:* {behavior:url(#default#VML);} | |
o\:* {behavior:url(#default#VML);} | |
w\:* {behavior:url(#default#VML);} | |
.shape {behavior:url(#default#VML);} | |
</style> | |
<![endif]--> | |
<title>JET Authoring Guidelines</title> | |
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" | |
name="place"/> | |
<!--[if gte mso 9]><xml> | |
<o:DocumentProperties> | |
<o:Author>Jennifer Hruska</o:Author> | |
<o:Description>Copyright 2009</o:Description> | |
<o:Template>techdoc.dot</o:Template> | |
<o:LastAuthor>Jennifer Hruska</o:LastAuthor> | |
<o:Revision>7</o:Revision> | |
<o:TotalTime>1339</o:TotalTime> | |
<o:LastPrinted>2006-02-09T12:22:00Z</o:LastPrinted> | |
<o:Created>2009-03-17T23:33:00Z</o:Created> | |
<o:LastSaved>2009-03-19T14:21:00Z</o:LastSaved> | |
<o:Pages>1</o:Pages> | |
<o:Words>3524</o:Words> | |
<o:Characters>20089</o:Characters> | |
<o:Company>Sonic Network, Inc. (SONiVOX)</o:Company> | |
<o:Lines>167</o:Lines> | |
<o:Paragraphs>47</o:Paragraphs> | |
<o:CharactersWithSpaces>23566</o:CharactersWithSpaces> | |
<o:Version>11.9999</o:Version> | |
</o:DocumentProperties> | |
<o:CustomDocumentProperties> | |
<o:_AdHocReviewCycleID dt:dt="float">-1127674187</o:_AdHocReviewCycleID> | |
<o:_EmailSubject dt:dt="string">New lib doc</o:_EmailSubject> | |
<o:_AuthorEmail dt:dt="string">jhruska@sonicnetworkinc.com</o:_AuthorEmail> | |
<o:_AuthorEmailDisplayName dt:dt="string">Jennifer Hruska</o:_AuthorEmailDisplayName> | |
<o:_ReviewingToolsShownOnce dt:dt="string"></o:_ReviewingToolsShownOnce> | |
</o:CustomDocumentProperties> | |
</xml><![endif]--><!--[if gte mso 9]><xml> | |
<w:WordDocument> | |
<w:ActiveWritingStyle Lang="EN-US" VendorID="8" DLLVersion="513" NLCheck="0">1</w:ActiveWritingStyle> | |
<w:ActiveWritingStyle Lang="EN-IE" VendorID="8" DLLVersion="513" NLCheck="0">1</w:ActiveWritingStyle> | |
<w:ActiveWritingStyle Lang="EN-GB" VendorID="8" DLLVersion="513" NLCheck="0">1</w:ActiveWritingStyle> | |
<w:DocumentProtectionNotEnforced>TrackedChanges</w:DocumentProtectionNotEnforced> | |
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> | |
<w:DisplayVerticalDrawingGridEvery>0</w:DisplayVerticalDrawingGridEvery> | |
<w:UseMarginsForDrawingGridOrigin/> | |
<w:ValidateAgainstSchemas/> | |
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> | |
<w:IgnoreMixedContent>false</w:IgnoreMixedContent> | |
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> | |
<w:Compatibility> | |
<w:FootnoteLayoutLikeWW8/> | |
<w:ShapeLayoutLikeWW8/> | |
<w:AlignTablesRowByRow/> | |
<w:ForgetLastTabAlignment/> | |
<w:LayoutRawTableWidth/> | |
<w:LayoutTableRowsApart/> | |
<w:UseWord97LineBreakingRules/> | |
<w:SelectEntireFieldWithStartOrEnd/> | |
<w:UseWord2002TableStyleRules/> | |
</w:Compatibility> | |
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> | |
</w:WordDocument> | |
</xml><![endif]--><!--[if gte mso 9]><xml> | |
<w:LatentStyles DefLockedState="false" LatentStyleCount="156"> | |
</w:LatentStyles> | |
</xml><![endif]--><!--[if !mso]><object | |
classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object> | |
<style> | |
st1\:*{behavior:url(#ieooui) } | |
</style> | |
<![endif]--> | |
<style> | |
<!-- | |
/* Font Definitions */ | |
@font-face | |
{font-family:Tahoma; | |
panose-1:2 11 6 4 3 5 4 4 2 4; | |
mso-font-charset:0; | |
mso-generic-font-family:swiss; | |
mso-font-pitch:variable; | |
mso-font-signature:1627421319 -2147483648 8 0 66047 0;} | |
/* Style Definitions */ | |
p.MsoNormal, li.MsoNormal, div.MsoNormal | |
{mso-style-update:auto; | |
mso-style-parent:""; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
h1 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.3in; | |
text-indent:-.3in; | |
mso-pagination:widow-orphan lines-together; | |
page-break-after:avoid; | |
mso-outline-level:1; | |
mso-list:l11 level1 lfo1; | |
tab-stops:list .3in; | |
font-size:14.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-font-kerning:14.0pt; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
h2 | |
{mso-style-update:auto; | |
mso-style-link:"Heading 2 Char"; | |
mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.4in; | |
text-indent:-.4in; | |
mso-pagination:widow-orphan lines-together; | |
page-break-after:avoid; | |
mso-outline-level:2; | |
mso-list:l11 level2 lfo1; | |
tab-stops:list .4in; | |
font-size:12.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
h3 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.5in; | |
text-indent:-.5in; | |
mso-pagination:widow-orphan lines-together; | |
page-break-after:avoid; | |
mso-outline-level:3; | |
mso-list:l11 level3 lfo1; | |
tab-stops:list .5in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-ansi-language:EN-IE; | |
font-weight:bold;} | |
h4 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.6in; | |
text-indent:-.6in; | |
mso-pagination:widow-orphan lines-together; | |
page-break-after:avoid; | |
mso-outline-level:4; | |
mso-list:l11 level4 lfo1; | |
tab-stops:list .6in; | |
font-size:11.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:"Courier New"; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
h5 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.7in; | |
text-indent:-.7in; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:5; | |
mso-list:l11 level5 lfo1; | |
tab-stops:list .7in; | |
font-size:11.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-ansi-language:EN-IE; | |
font-weight:normal;} | |
h6 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.8in; | |
text-indent:-.8in; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:6; | |
mso-list:l11 level6 lfo1; | |
tab-stops:list .8in; | |
font-size:11.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-ansi-language:EN-IE; | |
font-weight:normal; | |
font-style:italic; | |
mso-bidi-font-style:normal;} | |
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:.9in; | |
text-indent:-.9in; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:7; | |
mso-list:l11 level7 lfo1; | |
tab-stops:list .9in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoHeading8, li.MsoHeading8, div.MsoHeading8 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:1.0in; | |
text-indent:-1.0in; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:8; | |
mso-list:l11 level8 lfo1; | |
tab-stops:list 1.0in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE; | |
font-style:italic; | |
mso-bidi-font-style:normal;} | |
p.MsoHeading9, li.MsoHeading9, div.MsoHeading9 | |
{mso-style-next:Normal; | |
margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:1.1in; | |
text-indent:-1.1in; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:9; | |
mso-list:l11 level9 lfo1; | |
tab-stops:list 1.1in; | |
font-size:9.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal; | |
font-style:italic; | |
mso-bidi-font-style:normal;} | |
p.MsoIndex1, li.MsoIndex1, div.MsoIndex1 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:11.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex2, li.MsoIndex2, div.MsoIndex2 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:22.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex3, li.MsoIndex3, div.MsoIndex3 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:33.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex4, li.MsoIndex4, div.MsoIndex4 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:44.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex5, li.MsoIndex5, div.MsoIndex5 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:55.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex6, li.MsoIndex6, div.MsoIndex6 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:66.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex7, li.MsoIndex7, div.MsoIndex7 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:77.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex8, li.MsoIndex8, div.MsoIndex8 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:88.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndex9, li.MsoIndex9, div.MsoIndex9 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:99.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc1, li.MsoToc1, div.MsoToc1 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc2, li.MsoToc2, div.MsoToc2 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:10.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc3, li.MsoToc3, div.MsoToc3 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:20.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc4, li.MsoToc4, div.MsoToc4 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:30.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc5, li.MsoToc5, div.MsoToc5 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:40.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc6, li.MsoToc6, div.MsoToc6 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:50.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc7, li.MsoToc7, div.MsoToc7 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:60.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc8, li.MsoToc8, div.MsoToc8 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:70.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToc9, li.MsoToc9, div.MsoToc9 | |
{mso-style-update:auto; | |
mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:80.0pt; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoNormalIndent, li.MsoNormalIndent, div.MsoNormalIndent | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.5in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoFootnoteText, li.MsoFootnoteText, div.MsoFootnoteText | |
{mso-style-noshow:yes; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoCommentText, li.MsoCommentText, div.MsoCommentText | |
{mso-style-noshow:yes; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoHeader, li.MsoHeader, div.MsoHeader | |
{margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
tab-stops:center 3.0in right 6.0in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoFooter, li.MsoFooter, div.MsoFooter | |
{margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
tab-stops:center 3.0in right 6.0in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoIndexHeading, li.MsoIndexHeading, div.MsoIndexHeading | |
{mso-style-noshow:yes; | |
mso-style-next:"Index 1"; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
p.MsoCaption, li.MsoCaption, div.MsoCaption | |
{mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:6.0pt; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:0in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
p.MsoTof, li.MsoTof, div.MsoTof | |
{mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:22.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-22.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoEnvelopeAddress, li.MsoEnvelopeAddress, div.MsoEnvelopeAddress | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:2.0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
mso-element:frame; | |
mso-element-frame-width:5.5in; | |
mso-element-frame-height:99.0pt; | |
mso-element-frame-hspace:9.0pt; | |
mso-element-wrap:auto; | |
mso-element-anchor-horizontal:page; | |
mso-element-left:center; | |
mso-element-top:bottom; | |
font-size:12.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoEnvelopeReturn, li.MsoEnvelopeReturn, div.MsoEnvelopeReturn | |
{margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoEndnoteText, li.MsoEndnoteText, div.MsoEndnoteText | |
{mso-style-noshow:yes; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToa, li.MsoToa, div.MsoToa | |
{mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:11.0pt; | |
margin-bottom:.0001pt; | |
text-indent:-11.0pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoMacroText, li.MsoMacroText, div.MsoMacroText | |
{mso-style-noshow:yes; | |
mso-style-parent:""; | |
margin:0in; | |
margin-bottom:.0001pt; | |
text-align:justify; | |
mso-pagination:widow-orphan lines-together; | |
tab-stops:24.0pt 48.0pt 1.0in 96.0pt 120.0pt 2.0in 168.0pt 192.0pt 3.0in; | |
font-size:10.0pt; | |
font-family:"Courier New"; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-bidi-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoToaHeading, li.MsoToaHeading, div.MsoToaHeading | |
{mso-style-noshow:yes; | |
mso-style-next:Normal; | |
margin-top:6.0pt; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:12.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
p.MsoList, li.MsoList, div.MsoList | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.25in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListBullet, li.MsoListBullet, div.MsoListBullet | |
{mso-style-update:auto; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.25in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l9 level1 lfo2; | |
tab-stops:list .25in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListNumber, li.MsoListNumber, div.MsoListNumber | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.25in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l8 level1 lfo3; | |
tab-stops:list .25in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoList2, li.MsoList2, div.MsoList2 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.5in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoList3, li.MsoList3, div.MsoList3 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.75in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoList4, li.MsoList4, div.MsoList4 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:1.0in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoList5, li.MsoList5, div.MsoList5 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:1.25in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListBullet2, li.MsoListBullet2, div.MsoListBullet2 | |
{mso-style-update:auto; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.5in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l7 level1 lfo4; | |
tab-stops:list .5in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListBullet3, li.MsoListBullet3, div.MsoListBullet3 | |
{mso-style-update:auto; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.75in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l6 level1 lfo5; | |
tab-stops:list .75in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListBullet4, li.MsoListBullet4, div.MsoListBullet4 | |
{mso-style-update:auto; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:1.0in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l5 level1 lfo6; | |
tab-stops:list 1.0in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListBullet5, li.MsoListBullet5, div.MsoListBullet5 | |
{mso-style-update:auto; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:1.25in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l4 level1 lfo7; | |
tab-stops:list 1.25in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListNumber2, li.MsoListNumber2, div.MsoListNumber2 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.5in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l3 level1 lfo8; | |
tab-stops:list .5in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListNumber3, li.MsoListNumber3, div.MsoListNumber3 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.75in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l2 level1 lfo9; | |
tab-stops:list .75in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListNumber4, li.MsoListNumber4, div.MsoListNumber4 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:1.0in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l1 level1 lfo10; | |
tab-stops:list 1.0in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListNumber5, li.MsoListNumber5, div.MsoListNumber5 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:1.25in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
mso-list:l0 level1 lfo11; | |
tab-stops:list 1.25in; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoTitle, li.MsoTitle, div.MsoTitle | |
{margin-top:12.0pt; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:0in; | |
text-align:center; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:1; | |
font-size:16.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-font-kerning:14.0pt; | |
mso-ansi-language:EN-IE; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
p.MsoClosing, li.MsoClosing, div.MsoClosing | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:3.0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoSignature, li.MsoSignature, div.MsoSignature | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:3.0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:0in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyTextIndent, li.MsoBodyTextIndent, div.MsoBodyTextIndent | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListContinue, li.MsoListContinue, div.MsoListContinue | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListContinue2, li.MsoListContinue2, div.MsoListContinue2 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.5in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListContinue3, li.MsoListContinue3, div.MsoListContinue3 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.75in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListContinue4, li.MsoListContinue4, div.MsoListContinue4 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:1.0in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoListContinue5, li.MsoListContinue5, div.MsoListContinue5 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:1.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoMessageHeader, li.MsoMessageHeader, div.MsoMessageHeader | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.75in; | |
margin-bottom:.0001pt; | |
text-indent:-.75in; | |
mso-pagination:widow-orphan lines-together; | |
background:#CCCCCC; | |
mso-shading:windowtext; | |
mso-pattern:gray-20 auto; | |
border:none; | |
mso-border-alt:solid windowtext .75pt; | |
padding:0in; | |
mso-padding-alt:1.0pt 1.0pt 1.0pt 1.0pt; | |
font-size:12.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoSubtitle, li.MsoSubtitle, div.MsoSubtitle | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:3.0pt; | |
margin-left:0in; | |
text-align:center; | |
mso-pagination:widow-orphan lines-together; | |
mso-outline-level:2; | |
font-size:12.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoSalutation, li.MsoSalutation, div.MsoSalutation | |
{mso-style-next:Normal; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoDate, li.MsoDate, div.MsoDate | |
{mso-style-next:Normal; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyTextFirstIndent, li.MsoBodyTextFirstIndent, div.MsoBodyTextFirstIndent | |
{mso-style-parent:"Body Text"; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:0in; | |
text-indent:10.5pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyTextFirstIndent2, li.MsoBodyTextFirstIndent2, div.MsoBodyTextFirstIndent2 | |
{mso-style-parent:"Body Text Indent"; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.25in; | |
text-indent:10.5pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoNoteHeading, li.MsoNoteHeading, div.MsoNoteHeading | |
{mso-style-next:Normal; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyText2, li.MsoBodyText2, div.MsoBodyText2 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:0in; | |
line-height:200%; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyText3, li.MsoBodyText3, div.MsoBodyText3 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:0in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:8.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyTextIndent2, li.MsoBodyTextIndent2, div.MsoBodyTextIndent2 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.25in; | |
line-height:200%; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBodyTextIndent3, li.MsoBodyTextIndent3, div.MsoBodyTextIndent3 | |
{margin-top:0in; | |
margin-right:0in; | |
margin-bottom:6.0pt; | |
margin-left:.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:8.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
p.MsoBlockText, li.MsoBlockText, div.MsoBlockText | |
{margin-top:0in; | |
margin-right:1.0in; | |
margin-bottom:6.0pt; | |
margin-left:1.0in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
a:link, span.MsoHyperlink | |
{color:blue; | |
text-decoration:underline; | |
text-underline:single;} | |
a:visited, span.MsoHyperlinkFollowed | |
{color:purple; | |
text-decoration:underline; | |
text-underline:single;} | |
p.MsoDocumentMap, li.MsoDocumentMap, div.MsoDocumentMap | |
{mso-style-noshow:yes; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
background:navy; | |
font-size:10.0pt; | |
font-family:Tahoma; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-bidi-font-family:Arial; | |
mso-ansi-language:EN-IE;} | |
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText | |
{margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:10.0pt; | |
font-family:"Courier New"; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-bidi-font-family:Arial; | |
mso-ansi-language:EN-IE;} | |
p | |
{mso-margin-top-alt:auto; | |
margin-right:0in; | |
mso-margin-bottom-alt:auto; | |
margin-left:0in; | |
mso-pagination:widow-orphan; | |
font-size:9.0pt; | |
font-family:Arial; | |
mso-fareast-font-family:"Times New Roman";} | |
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate | |
{mso-style-noshow:yes; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan lines-together; | |
font-size:8.0pt; | |
font-family:Tahoma; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-ansi-language:EN-IE;} | |
span.Heading2Char | |
{mso-style-name:"Heading 2 Char"; | |
mso-style-locked:yes; | |
mso-style-link:"Heading 2"; | |
mso-ansi-font-size:12.0pt; | |
font-family:Arial; | |
mso-ascii-font-family:Arial; | |
mso-hansi-font-family:Arial; | |
mso-bidi-font-family:Arial; | |
mso-ansi-language:EN-IE; | |
mso-fareast-language:EN-US; | |
mso-bidi-language:AR-SA; | |
font-weight:bold; | |
mso-bidi-font-weight:normal;} | |
p.Body, li.Body, div.Body | |
{mso-style-name:Body; | |
margin:0in; | |
margin-bottom:.0001pt; | |
mso-pagination:widow-orphan; | |
font-size:10.0pt; | |
font-family:"Times New Roman"; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-bidi-font-family:Arial;} | |
p.FunctionPrototype, li.FunctionPrototype, div.FunctionPrototype | |
{mso-style-name:"Function Prototype"; | |
margin-top:0in; | |
margin-right:0in; | |
margin-bottom:0in; | |
margin-left:.5in; | |
margin-bottom:.0001pt; | |
text-indent:-.25in; | |
mso-pagination:widow-orphan lines-together; | |
font-size:9.0pt; | |
mso-bidi-font-size:10.0pt; | |
font-family:"Courier New"; | |
mso-fareast-font-family:"Times New Roman"; | |
mso-bidi-font-family:Arial; | |
mso-ansi-language:EN-IE;} | |
/* Page Definitions */ | |
@page | |
{mso-footnote-separator:url("JET_Authoring_Guidelines_files/header.htm") fs; | |
mso-footnote-continuation-separator:url("JET_Authoring_Guidelines_files/header.htm") fcs; | |
mso-endnote-separator:url("JET_Authoring_Guidelines_files/header.htm") es; | |
mso-endnote-continuation-separator:url("JET_Authoring_Guidelines_files/header.htm") ecs;} | |
@page Section1 | |
{size:595.45pt 841.7pt; | |
margin:1.1in 1.25in 1.1in 1.25in; | |
mso-header-margin:.5in; | |
mso-footer-margin:.4in; | |
mso-title-page:yes; | |
mso-even-header:url("JET_Authoring_Guidelines_files/header.htm") eh1; | |
mso-header:url("JET_Authoring_Guidelines_files/header.htm") h1; | |
mso-even-footer:url("JET_Authoring_Guidelines_files/header.htm") ef1; | |
mso-footer:url("JET_Authoring_Guidelines_files/header.htm") f1; | |
mso-first-footer:url("JET_Authoring_Guidelines_files/header.htm") ff1; | |
mso-paper-source:0;} | |
div.Section1 | |
{page:Section1;} | |
/* List Definitions */ | |
@list l0 | |
{mso-list-id:-132; | |
mso-list-type:simple; | |
mso-list-template-ids:-762522690;} | |
@list l0:level1 | |
{mso-level-style-link:"List Number 5"; | |
mso-level-tab-stop:1.25in; | |
mso-level-number-position:left; | |
margin-left:1.25in; | |
text-indent:-.25in;} | |
@list l1 | |
{mso-list-id:-131; | |
mso-list-type:simple; | |
mso-list-template-ids:828031264;} | |
@list l1:level1 | |
{mso-level-style-link:"List Number 4"; | |
mso-level-tab-stop:1.0in; | |
mso-level-number-position:left; | |
margin-left:1.0in; | |
text-indent:-.25in;} | |
@list l2 | |
{mso-list-id:-130; | |
mso-list-type:simple; | |
mso-list-template-ids:1556219102;} | |
@list l2:level1 | |
{mso-level-style-link:"List Number 3"; | |
mso-level-tab-stop:.75in; | |
mso-level-number-position:left; | |
margin-left:.75in; | |
text-indent:-.25in;} | |
@list l3 | |
{mso-list-id:-129; | |
mso-list-type:simple; | |
mso-list-template-ids:1492152526;} | |
@list l3:level1 | |
{mso-level-style-link:"List Number 2"; | |
mso-level-tab-stop:.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l4 | |
{mso-list-id:-128; | |
mso-list-type:simple; | |
mso-list-template-ids:373048972;} | |
@list l4:level1 | |
{mso-level-number-format:bullet; | |
mso-level-style-link:"List Bullet 5"; | |
mso-level-text:\F0B7; | |
mso-level-tab-stop:1.25in; | |
mso-level-number-position:left; | |
margin-left:1.25in; | |
text-indent:-.25in; | |
font-family:Symbol;} | |
@list l5 | |
{mso-list-id:-127; | |
mso-list-type:simple; | |
mso-list-template-ids:-1897731242;} | |
@list l5:level1 | |
{mso-level-number-format:bullet; | |
mso-level-style-link:"List Bullet 4"; | |
mso-level-text:\F0B7; | |
mso-level-tab-stop:1.0in; | |
mso-level-number-position:left; | |
margin-left:1.0in; | |
text-indent:-.25in; | |
font-family:Symbol;} | |
@list l6 | |
{mso-list-id:-126; | |
mso-list-type:simple; | |
mso-list-template-ids:213402420;} | |
@list l6:level1 | |
{mso-level-number-format:bullet; | |
mso-level-style-link:"List Bullet 3"; | |
mso-level-text:\F0B7; | |
mso-level-tab-stop:.75in; | |
mso-level-number-position:left; | |
margin-left:.75in; | |
text-indent:-.25in; | |
font-family:Symbol;} | |
@list l7 | |
{mso-list-id:-125; | |
mso-list-type:simple; | |
mso-list-template-ids:-1230352896;} | |
@list l7:level1 | |
{mso-level-number-format:bullet; | |
mso-level-style-link:"List Bullet 2"; | |
mso-level-text:\F0B7; | |
mso-level-tab-stop:.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in; | |
font-family:Symbol;} | |
@list l8 | |
{mso-list-id:-120; | |
mso-list-type:simple; | |
mso-list-template-ids:-1099685254;} | |
@list l8:level1 | |
{mso-level-style-link:"List Number"; | |
mso-level-tab-stop:.25in; | |
mso-level-number-position:left; | |
margin-left:.25in; | |
text-indent:-.25in;} | |
@list l9 | |
{mso-list-id:-119; | |
mso-list-type:simple; | |
mso-list-template-ids:-1849629656;} | |
@list l9:level1 | |
{mso-level-number-format:bullet; | |
mso-level-style-link:"List Bullet"; | |
mso-level-text:\F0B7; | |
mso-level-tab-stop:.25in; | |
mso-level-number-position:left; | |
margin-left:.25in; | |
text-indent:-.25in; | |
font-family:Symbol;} | |
@list l10 | |
{mso-list-id:794131674; | |
mso-list-type:hybrid; | |
mso-list-template-ids:751336376 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} | |
@list l10:level1 | |
{mso-level-number-format:bullet; | |
mso-level-text:\F0B7; | |
mso-level-tab-stop:.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in; | |
font-family:Symbol;} | |
@list l10:level2 | |
{mso-level-number-format:bullet; | |
mso-level-text:o; | |
mso-level-tab-stop:1.0in; | |
mso-level-number-position:left; | |
text-indent:-.25in; | |
font-family:"Courier New";} | |
@list l10:level3 | |
{mso-level-tab-stop:1.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l10:level4 | |
{mso-level-tab-stop:2.0in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l10:level5 | |
{mso-level-tab-stop:2.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l10:level6 | |
{mso-level-tab-stop:3.0in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l10:level7 | |
{mso-level-tab-stop:3.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l10:level8 | |
{mso-level-tab-stop:4.0in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l10:level9 | |
{mso-level-tab-stop:4.5in; | |
mso-level-number-position:left; | |
text-indent:-.25in;} | |
@list l11 | |
{mso-list-id:1411350143; | |
mso-list-template-ids:1661217014;} | |
@list l11:level1 | |
{mso-level-style-link:"Heading 1"; | |
mso-level-text:%1; | |
mso-level-tab-stop:.3in; | |
mso-level-number-position:left; | |
margin-left:.3in; | |
text-indent:-.3in;} | |
@list l11:level2 | |
{mso-level-style-link:"Heading 2"; | |
mso-level-text:"%1\.%2"; | |
mso-level-tab-stop:.4in; | |
mso-level-number-position:left; | |
margin-left:.4in; | |
text-indent:-.4in;} | |
@list l11:level3 | |
{mso-level-style-link:"Heading 3"; | |
mso-level-text:"%1\.%2\.%3"; | |
mso-level-tab-stop:.5in; | |
mso-level-number-position:left; | |
margin-left:.5in; | |
text-indent:-.5in;} | |
@list l11:level4 | |
{mso-level-style-link:"Heading 4"; | |
mso-level-text:"%1\.%2\.%3\.%4"; | |
mso-level-tab-stop:.6in; | |
mso-level-number-position:left; | |
margin-left:.6in; | |
text-indent:-.6in;} | |
@list l11:level5 | |
{mso-level-style-link:"Heading 5"; | |
mso-level-text:"%1\.%2\.%3\.%4\.%5"; | |
mso-level-tab-stop:.7in; | |
mso-level-number-position:left; | |
margin-left:.7in; | |
text-indent:-.7in;} | |
@list l11:level6 | |
{mso-level-style-link:"Heading 6"; | |
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6"; | |
mso-level-tab-stop:.8in; | |
mso-level-number-position:left; | |
margin-left:.8in; | |
text-indent:-.8in;} | |
@list l11:level7 | |
{mso-level-style-link:"Heading 7"; | |
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7"; | |
mso-level-tab-stop:.9in; | |
mso-level-number-position:left; | |
margin-left:.9in; | |
text-indent:-.9in;} | |
@list l11:level8 | |
{mso-level-style-link:"Heading 8"; | |
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8"; | |
mso-level-tab-stop:1.0in; | |
mso-level-number-position:left; | |
margin-left:1.0in; | |
text-indent:-1.0in;} | |
@list l11:level9 | |
{mso-level-style-link:"Heading 9"; | |
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9"; | |
mso-level-tab-stop:1.1in; | |
mso-level-number-position:left; | |
margin-left:1.1in; | |
text-indent:-1.1in;} | |
ol | |
{margin-bottom:0in;} | |
ul | |
{margin-bottom:0in;} | |
--> | |
</style> | |
<!--[if gte mso 10]> | |
<style> | |
/* Style Definitions */ | |
table.MsoNormalTable | |
{mso-style-name:"Table Normal"; | |
mso-tstyle-rowband-size:0; | |
mso-tstyle-colband-size:0; | |
mso-style-noshow:yes; | |
mso-style-parent:""; | |
mso-padding-alt:0in 5.4pt 0in 5.4pt; | |
mso-para-margin:0in; | |
mso-para-margin-bottom:.0001pt; | |
mso-pagination:widow-orphan; | |
font-size:10.0pt; | |
font-family:"Times New Roman"; | |
mso-ansi-language:#0400; | |
mso-fareast-language:#0400; | |
mso-bidi-language:#0400;} | |
</style> | |
<![endif]--><!--[if gte mso 9]><xml> | |
<o:shapedefaults v:ext="edit" spidmax="9218" fill="f" fillcolor="white" | |
stroke="f"> | |
<v:fill color="white" on="f"/> | |
<v:stroke on="f"/> | |
</o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml> | |
<o:shapelayout v:ext="edit"> | |
<o:idmap v:ext="edit" data="1"/> | |
</o:shapelayout></xml><![endif]--> | |
</head> | |
<body lang=EN-US link=blue vlink=purple style='tab-interval:.5in'> | |
<pre> | |
Copyright (C) 2009 The Android Open Source Project | |
Licensed under the Apache License, Version 2.0 (the "License"); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
</pre> | |
<div class=Section1> | |
<p class=MsoTitle align=left style='text-align:left'><a name="_Toc203298075"></a><a | |
name="_Toc203292246"><span style='mso-bookmark:_Toc203298075'><span lang=EN-IE | |
style='font-size:20.0pt'>JET Content Authoring Guidelines</span></span></a><span | |
lang=EN-IE style='font-size:20.0pt'><o:p></o:p></span></p> | |
<p class=MsoTitle align=left style='text-align:left'><a name="_Toc194831970"></a><a | |
name="_Toc194830086"></a><a name="_Toc194740814"></a><a name="_Toc194738556"></a><a | |
name="_Toc203298078"></a><a name="_Toc203292249"><span style='mso-bookmark: | |
_Toc203298078'><span style='mso-bookmark:_Toc194738556'><span style='mso-bookmark: | |
_Toc194740814'><span style='mso-bookmark:_Toc194830086'><span style='mso-bookmark: | |
_Toc194831970'><span lang=EN-IE>JET Interactive Music Engine</span></span></span></span></span></span></a></p> | |
<p class=MsoTitle align=left style='text-align:left'><span lang=EN-IE | |
style='font-size:12.0pt'>Vrs 1.0<o:p></o:p></span></p> | |
<p class=MsoTitle align=left style='text-align:left'><span lang=EN-IE | |
style='font-size:12.0pt'>Authored by SONiVOX<o:p></o:p></span></p> | |
<p class=MsoTitle align=left style='text-align:left'><span lang=EN-IE | |
style='font-size:12.0pt'><a href="http://www.sonivoxrocks.com/">www.sonivoxrocks.com</a><o:p></o:p></span></p> | |
<p class=MsoTitle align=left style='text-align:left'><span lang=EN-IE | |
style='font-size:12.0pt'>Copyright 2009 Sonic Network, Inc.<o:p></o:p></span></p> | |
<p class=MsoCommentText><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoHeader><span lang=EN-IE><o:p> </o:p></span></p> | |
<h1><a name="_Toc482161515"></a><a name="_Toc203298082"><span style='mso-bookmark: | |
_Toc482161515'><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family: | |
Arial'><span style='mso-list:Ignore'>1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Introduction</span></span></a></h1> | |
<h2><a name="_Toc203298083"><![if !supportLists]><span lang=EN-IE | |
style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>1.1<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Overview</span></a></h2> | |
<p class=MsoNormal><span lang=EN-IE>This document contains content creation | |
guidelines for composers and sound designers authoring music and sound effects | |
for the SONiVOX JET platform.<span style='mso-spacerun:yes'> </span>JET is an | |
interactive music player for small embedded devices, including the Google Android | |
platform. It allows applications to include interactive music soundtracks, in <st1:place | |
w:st="on">MIDI</st1:place> format, that respond in real-time to game play | |
events and user interaction. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>JET works in conjunction with SONiVOXs | |
Embedded Audio Synthesizer (EAS) which is the <st1:place w:st="on">MIDI</st1:place> | |
playback device for Android.<span style='mso-spacerun:yes'> </span>Both the | |
JET and EAS engines are integrated into the Android embedded platform as well | |
as inherent in the JET Creator application. As such, the JET content author can | |
be sure that the playback will sound exactly the same in both the JET Creator | |
and the final Android application playing back on Android mobile devices.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>The JET content author works in up to three | |
different applications to create JET content; a standard <st1:place w:st="on">MIDI</st1:place> | |
sequencer (Logic, Cubase, etc.), optionally a DLS2 instrument editor (Awave), | |
and the JET Creator application to add and audition JET interactive elements. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>The final result is a .jet file that the | |
content author gives to the application programmer for use in the game or | |
application.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><a name="_Toc203298084"><![if !supportLists]><span lang=EN-IE | |
style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>1.2<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Abbreviations and Common Terms</span></a></h2> | |
<p class=MsoNormal><span lang=EN-IE>It is important to use a common set of | |
terms to minimize confusion. Since JET uses <st1:place w:st="on">MIDI</st1:place> | |
in a unique way, normal industry terms may not always suffice. Here is the | |
definition of terms as they are used in this document and in the JET Creator | |
application:</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>Channel</span></i><span | |
lang=EN-IE>: MIDI data associated with a specific <st1:place w:st="on">MIDI</st1:place> | |
channel. Standard MIDI allows for 16 channels of <st1:place w:st="on">MIDI</st1:place> | |
data each of which are typically associated with a specific instrument. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>Controller</span></i><span | |
lang=EN-IE>: A <st1:place w:st="on">MIDI</st1:place> event consisting of a | |
channel number, controller number, and a controller value. The <st1:place | |
w:st="on">MIDI</st1:place> spec associates many controller numbers with | |
specific functions, such as volume, expression, sustain pedal, etc. JET also | |
uses controller events as a means of embedding special control information in a | |
<st1:place w:st="on">MIDI</st1:place> sequence to provide for audio | |
synchronization.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>DAW</span></i><span | |
lang=EN-IE>: Digital Audio Workstation. A common term for <st1:place w:st="on">MIDI</st1:place> | |
and audio sequencing applications such as Logic, SONAR, Cubase and others. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>EAS:</span></i><span | |
lang=EN-IE> Embedded <st1:place w:st="on">MIDI</st1:place> Synthesizer. The | |
name of the SONiVOX MIDI synthesizer engine.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>JET</span></i><span | |
lang=EN-IE>: Jet Interactive Engine. The name of the SONiVOX JET interactive | |
music engine.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>Segment</span></i><span | |
lang=EN-IE>: A musical section such as a chorus or verse that is a component of | |
the overall composition. In JET, a segment can be an entire MIDI file or a | |
derived from a portion of a <st1:place w:st="on">MIDI</st1:place> file.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>SMF-0</span></i><span | |
lang=EN-IE>: Standard MIDI File Type 0, a MIDI file that contains a single | |
track, but may be made up of multiple channels of <st1:place w:st="on">MIDI</st1:place> | |
data.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>SMF-1</span></i><span | |
lang=EN-IE>: Standard MIDI File Type 1, a MIDI file that contains a one more | |
tracks, and each track may in turn be made up of one or more channels of <st1:place | |
w:st="on">MIDI</st1:place> data. By convention, each channel is stored on a | |
separate track in an SMF-1 file. However, it is possible to have multiple MIDI | |
channels on a single track, or multiple tracks that contain data for the same <st1:place | |
w:st="on">MIDI</st1:place> channel.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-IE>Track</span></i><span | |
lang=EN-IE>: A single track in a DAW containing a timed sequence of <st1:place | |
w:st="on">MIDI</st1:place> events. Be careful not to confuse Tracks with | |
Channels. A MIDI file may contain many tracks with several tracks utilizing the | |
same <st1:place w:st="on">MIDI</st1:place> channel. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h1><a name="_Toc203298085"></a><a name="_Toc135723076"></a><a | |
name="_Toc135723793"></a><a name="_Toc135724016"></a><a name="_Toc135724241"></a><a | |
name="_Toc135724464"></a><a name="_Toc135724687"></a><a name="_Toc135724909"></a><a | |
name="_Toc135725132"></a><a name="_Toc135726607"></a><a name="_Toc135727776"></a><a | |
name="_Toc137004452"></a><a name="_Toc135724689"></a><a name="_Toc135724467"></a><![if !supportLists]><span | |
style='mso-bookmark:_Toc203298085'><span lang=EN-IE style='mso-fareast-font-family: | |
Arial'><span style='mso-list:Ignore'>1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span></span><![endif]><span style='mso-bookmark:_Toc203298085'><span | |
lang=EN-IE>The JET Interactive Music Concept</span></span></h1> | |
<p class=MsoNormal><span lang=EN-IE>Interactive music can be defined as music | |
that changes in real-time according to non-predictable events such as user | |
interaction or game play events. In this way, interactive music is much more | |
engaging as it has the ability to match the energy and mood of a game much | |
closer than a pre-composed composition that never changes. In some applications | |
and games, interactive music is central to the game play. Guitar Hero is one | |
such popular game. When the end user successfully captures the musical notes | |
coming down the fret board, the music adapts itself and simultaneously keeps | |
score of successes and failures. JET allows for these types of music driven | |
games as well.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>There are several methods for making and | |
controlling interactive music and JET is one such method. This section | |
describes the features of JET and how they might be used in a game or software | |
application. It also describes how JET can be used to save memory in small | |
footprint devices such as Android enabled mobile handsets.</span></p> | |
<h3><a name="_Toc203298086"><![if !supportLists]><span class=Heading2Char><span | |
lang=EN-IE style='font-size:12.0pt;mso-bidi-font-size:10.0pt;mso-fareast-font-family: | |
Arial;mso-bidi-font-weight:normal'><span style='mso-list:Ignore'>1.1.1<span | |
style='font:7.0pt "Times New Roman"'> </span></span></span></span><![endif]><span | |
class=Heading2Char><span lang=EN-IE style='font-size:12.0pt;mso-bidi-font-size: | |
10.0pt;font-weight:normal'>Data Compression</span></span></a><span | |
style='mso-bookmark:_Toc203298086'></span><span class=Heading2Char><span | |
lang=EN-IE style='font-size:12.0pt;mso-bidi-font-size:10.0pt;mso-bidi-font-weight: | |
normal'><o:p></o:p></span></span></h3> | |
<p class=MsoNormal><span lang=EN-IE>JET supports a flexible music format that | |
can be used to create extended musical sequences with a minimal amount of data. | |
A musical composition is broken up into segments that can be sequenced to | |
create a longer piece. The sequencing can be fixed at the time the music file | |
is authored, or it can be created dynamically under program control.</span></p> | |
<h3><a name="_Toc203298087"><![if !supportLists]><span class=Heading2Char><span | |
lang=EN-IE style='font-size:12.0pt;mso-bidi-font-size:10.0pt;mso-fareast-font-family: | |
Arial;mso-bidi-font-weight:normal'><span style='mso-list:Ignore'>1.1.2<span | |
style='font:7.0pt "Times New Roman"'> </span></span></span></span><![endif]><span | |
class=Heading2Char><span lang=EN-IE style='font-size:12.0pt;mso-bidi-font-size: | |
10.0pt;font-weight:normal'>Linear Music Example</span></span></a><span | |
style='mso-bookmark:_Toc203298087'></span><span class=Heading2Char><span | |
lang=EN-IE style='font-size:12.0pt;mso-bidi-font-size:10.0pt;mso-bidi-font-weight: | |
normal'><o:p></o:p></span></span></h3> | |
<p class=MsoNormal><span lang=EN-IE><!--[if gte vml 1]><v:shapetype id="_x0000_t75" | |
coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" | |
filled="f" stroked="f"> | |
<v:stroke joinstyle="miter"/> | |
<v:formulas> | |
<v:f eqn="if lineDrawn pixelLineWidth 0"/> | |
<v:f eqn="sum @0 1 0"/> | |
<v:f eqn="sum 0 0 @1"/> | |
<v:f eqn="prod @2 1 2"/> | |
<v:f eqn="prod @3 21600 pixelWidth"/> | |
<v:f eqn="prod @3 21600 pixelHeight"/> | |
<v:f eqn="sum @0 0 1"/> | |
<v:f eqn="prod @6 1 2"/> | |
<v:f eqn="prod @7 21600 pixelWidth"/> | |
<v:f eqn="sum @8 21600 0"/> | |
<v:f eqn="prod @7 21600 pixelHeight"/> | |
<v:f eqn="sum @10 21600 0"/> | |
</v:formulas> | |
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/> | |
<o:lock v:ext="edit" aspectratio="t"/> | |
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:431.25pt; | |
height:294.75pt' o:ole=""> | |
<v:imagedata src="JET_Authoring_Guidelines_files/image002.emz" o:title=""/> | |
</v:shape><![endif]--><![if !vml]><img border=0 width=575 height=393 | |
src="JET_Authoring_Guidelines_files/image013.gif" v:shapes="_x0000_i1025"><![endif]><!--[if gte mso 9]><xml> | |
<o:OLEObject Type="Embed" ProgID="Visio.Drawing.11" ShapeID="_x0000_i1025" | |
DrawAspect="Content" ObjectID="_1298963276"> | |
</o:OLEObject> | |
</xml><![endif]--></span></p> | |
<p class=MsoCaption><span lang=EN-IE>Figure <span style='mso-field-code:" SEQ Figure \\* ARABIC "'><span | |
style='mso-no-proof:yes'>1</span></span>: Linear Music Piece</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>This diagram shows how musical segments are | |
stored. Each segment is authored as a separate <st1:place w:st="on">MIDI</st1:place> | |
file. A post-processing tool combines the files into a single container file. | |
Each segment can contain alternate music tracks that can be muted or un-muted | |
to create additional interest. An example might be a brass accent in the chorus | |
that is played only the last time through. Also, segments can be transposed up | |
or down.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>The bottom part of the diagram shows how | |
the musical segments can be recombined to create a linear music piece. In this | |
example, the bridge might end with a half-step key modulation and the remaining | |
segments could be transposed up a half-step to match.</span></p> | |
<h3><a name="_Toc203298088"><![if !supportLists]><span lang=EN-IE | |
style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>1.1.3<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Non-linear Music Example</span></a></h3> | |
<p class=MsoNormal><span lang=EN-IE><!--[if gte vml 1]><v:shape id="_x0000_i1026" | |
type="#_x0000_t75" style='width:6in;height:291.75pt' o:ole=""> | |
<v:imagedata src="JET_Authoring_Guidelines_files/image004.emz" o:title=""/> | |
</v:shape><![endif]--><![if !vml]><img border=0 width=576 height=389 | |
src="JET_Authoring_Guidelines_files/image014.gif" v:shapes="_x0000_i1026"><![endif]><!--[if gte mso 9]><xml> | |
<o:OLEObject Type="Embed" ProgID="Visio.Drawing.11" ShapeID="_x0000_i1026" | |
DrawAspect="Content" ObjectID="_1298963277"> | |
</o:OLEObject> | |
</xml><![endif]--></span></p> | |
<p class=MsoCaption><span lang=EN-IE>Figure <span style='mso-field-code:" SEQ Figure \\* ARABIC "'><span | |
style='mso-no-proof:yes'>2</span></span>: Non-linear music piece</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>In this diagram, we see a non-linear music | |
piece. The scenario is a first-person-shooter (FPS) and JET is providing the | |
background music. The intro plays as the level is loading and then transitions | |
under program control to the Searching segment. This segment is repeated | |
indefinitely, perhaps with small variations (using the mute/un-mute feature) | |
until activity in the game dictates a change.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>As the player nears a monster lair, the | |
program starts a synchronized transition to the Danger segment, increasing the | |
tension level in the audio. As the player draws closer to the lair, additional | |
tracks are un-muted to increase the tension.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>As the player enters into combat with the | |
monster, the program starts a synchronized transition to the Combat segment. | |
The segment repeats indefinitely as the combat continues. A Bonus Hit | |
temporarily un-mutes a decorative track that notifies the player of a | |
successful attack, and similarly, another track is temporarily un-muted to | |
signify when the player receives Special Damage.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>At the end of combat, the music transitions | |
to a victory or defeat segment based on the outcome of battle.</span></p> | |
<h3><a name="_Toc203298089"><![if !supportLists]><span lang=EN-IE | |
style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>1.1.4<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Mute/Un-mute Synchronization</span></a></h3> | |
<p class=MsoNormal><span lang=EN-IE>JET can also synchronize the muting and | |
un-muting of tracks to events in the music. For example, in the FPS game, it | |
would probably be desirable to place the musical events relating to bonuses and | |
damage as close to the actual game event as possible. However, simply un-muting | |
a track at the moment the game event occurs might result in a music clip | |
starting in the middle. Alternatively, a clip could be started from the | |
beginning, but then it wouldnt be synchronized with the other music tracks.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>However, with the JET sync engine, a clip | |
can be started at the next opportune moment and maintain synchronization. This | |
can be accomplished by placing a number of short music clips on a decorative | |
track. A <st1:place w:st="on">MIDI</st1:place> event in the stream signifies | |
the start of a clip and a second event signifies the end of a clip. When the | |
application calls the JET clip function, the next clip in the track is allowed | |
to play fully synchronized to the music. Optionally, the track can be | |
automatically muted by a second <st1:place w:st="on">MIDI</st1:place> event.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><!--[if gte vml 1]><v:shape id="_x0000_i1027" | |
type="#_x0000_t75" style='width:6in;height:116.25pt' o:ole=""> | |
<v:imagedata src="JET_Authoring_Guidelines_files/image006.emz" o:title=""/> | |
</v:shape><![endif]--><![if !vml]><img border=0 width=576 height=155 | |
src="JET_Authoring_Guidelines_files/image008.gif" v:shapes="_x0000_i1027"><![endif]><!--[if gte mso 9]><xml> | |
<o:OLEObject Type="Embed" ProgID="Visio.Drawing.11" ShapeID="_x0000_i1027" | |
DrawAspect="Content" ObjectID="_1298963279"> | |
</o:OLEObject> | |
</xml><![endif]--></span></p> | |
<p class=MsoCaption><span lang=EN-IE>Figure <span style='mso-field-code:" SEQ Figure \\* ARABIC "'><span | |
style='mso-no-proof:yes'>3</span></span>: Synchronized Mute/Unmute</span></p> | |
<h2><a name="_Toc203298090"><![if !supportLists]><span lang=EN-IE | |
style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>1.2<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Audio Synchronization</span></a></h2> | |
<p class=MsoNormal><span lang=EN-IE>JET provides an audio synchronization API | |
that allows game play to be synchronized to events in the audio. The mechanism | |
relies on data embedded in the <st1:place w:st="on">MIDI</st1:place> file at | |
the time the content is authored. When the JET engine senses an event during | |
playback it generates a callback into the application program. The timing of | |
the callback can be adjusted to compensate for any latency in the audio | |
playback system so that audio and video can be synchronized. The diagram below | |
shows an example of a simple music game that involves pressing the left and | |
right arrows in time with the music.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><!--[if gte vml 1]><v:shape id="_x0000_i1028" | |
type="#_x0000_t75" style='width:6in;height:100.5pt' o:ole=""> | |
<v:imagedata src="JET_Authoring_Guidelines_files/image015.emz" o:title=""/> | |
</v:shape><![endif]--><![if !vml]><img border=0 width=576 height=134 | |
src="JET_Authoring_Guidelines_files/image010.gif" v:shapes="_x0000_i1028"><![endif]><!--[if gte mso 9]><xml> | |
<o:OLEObject Type="Embed" ProgID="Visio.Drawing.11" ShapeID="_x0000_i1028" | |
DrawAspect="Content" ObjectID="_1298963280"> | |
</o:OLEObject> | |
</xml><![endif]--></span></p> | |
<p class=MsoCaption><span lang=EN-IE>Figure <span style='mso-field-code:" SEQ Figure \\* ARABIC "'><span | |
style='mso-no-proof:yes'>4</span></span>: Music Game<span style='mso-no-proof: | |
yes'> with Synchronization<o:p></o:p></span></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>The arrows represent events in the music | |
sequence where game events need to be synchronized. In this case, the blue | |
arrow represents a time where the player is supposed to press the left button, | |
and the red arrow is for the right button. The yellow arrow tells the game | |
engine that the sequence is complete. The player is allowed a certain time | |
window before and after the event to press the appropriate key.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>If an event is received and the player has | |
not pressed a button, a timer is set to half the length of the window. If the | |
player presses the button before the timer expires, the game registers a | |
success, and if not, the game registers a failure. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>If the player presses the button before the | |
event is received, a timer is set to half the length of the window. If an event | |
is received before the timer expires, the game registers a success, and if not, | |
the game registers a failure. Game play might also include bonuses for getting | |
close to the timing of the actual event. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h1><a name="_Toc203298091"><![if !supportLists]><span lang=EN-IE | |
style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>2<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>JET Content Authoring Overview</span></a></h1> | |
<p class=MsoNormal><span lang=EN-IE>To author JET files and hear them playback interactively, | |
the content author will work in two or three applications which are designed to | |
work together smoothly. The first is application is any off-the-shelf <st1:place | |
w:st="on">MIDI</st1:place> sequencing application or Digital Audio Workstation | |
that supports VST (for PC) or AU (for Mac) plugins. (Logic, SONAR, Cubase, etc) | |
Here the author will compose their <st1:place w:st="on">MIDI</st1:place> music | |
files using the SONiVOX EAS Synth plugin as the playback synthesizer. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Once the composer has completed their <st1:place | |
w:st="on">MIDI</st1:place> file(s), they import them into the JET Creator application. | |
Here the author will setup and audition the conditions for interactive playback | |
within the JET enabled game.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Optionally, the author may elect to create | |
a custom DLS soundbank. This can be created in any off-the-shelf DLS authoring | |
application, such as Awave from MJSoft, and loaded into JET Creator along with | |
the <st1:place w:st="on">MIDI</st1:place> files.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Below is an overview of this process. A | |
more detailed explanation of each step follows.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<ul style='margin-top:0in' type=disc> | |
<li class=MsoNormal style='mso-list:l10 level1 lfo12;tab-stops:list .5in'><span | |
lang=EN-IE>Launch digital audio workstation (DAW) </span></li> | |
<ul style='margin-top:0in' type=circle> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Assign the SONiVOX EAS Synth plugin as the playback | |
synthesizer</span></li> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Optionally load a custom DLS2 soundset </span></li> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Compose and save <st1:place w:st="on">MIDI</st1:place> file(s)</span></li> | |
</ul> | |
<li class=MsoNormal style='mso-list:l10 level1 lfo12;tab-stops:list .5in'><span | |
lang=EN-IE>Launch the JET Creator application</span></li> | |
<ul style='margin-top:0in' type=circle> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Create segments using the <st1:place w:st="on">MIDI</st1:place> | |
and DLS2 source files</span></li> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Add interactive elements</span></li> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Audition interactive elements</span></li> | |
<li class=MsoNormal style='mso-list:l10 level2 lfo12;tab-stops:list 1.0in'><span | |
lang=EN-IE>Save and Export JET files for use in the Android application</span></li> | |
</ul> | |
</ul> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Launch DAW Content authors will need to | |
use a third party MIDI authoring application to compose their <st1:place w:st="on">MIDI</st1:place> | |
files. It is recommended they use a digital audio workstation (DAW) application | |
that supports VST or AU plugins as this will enable them to listen to the EAS | |
MIDI Synthesizer and DLS2 soundsets that will be utilized in the Android | |
application itself. Some examples of popular DAWs include SONAR (PC) and LOGIC | |
(MAC). </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Assign SONiVOX EAS Synth plugin as the | |
playback synthesizer The SONiVOX EAS Synth plugin is a VST and AU compatible | |
virtual instrument that plugs into VST or AU compatible DAWs. This software | |
plugin uses the same SONiVOX EAS MIDI synthesizer engine and default General | |
MIDI<span style='mso-spacerun:yes'> </span>wavetable soundset inherent in | |
Android. Using this plugin allows content authors to hear the exact audio | |
rendering of the instruments and <st1:place w:st="on">MIDI</st1:place> file | |
that will be used in their Android applications.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Optionally Load DLS2 Soundset The SONiVOX | |
EAS Synth plugin allows for the loading of any DLS2 compatible soundset for | |
playback. These could include a new GM wavetable set, or a small collection of | |
just a few custom instruments for a given application. Note, the DLS file does | |
not replace the internal GM wavetable used by the EAS engine. DLS soundsets | |
play in conjunction with the internal GM wavetable. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Compose MIDI File Compose <st1:place | |
w:st="on">MIDI</st1:place> soundtracks for the Android application.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Launch JET Creator Once all DLS2 and <st1:place | |
w:st="on">MIDI</st1:place> source files have been authored, the content author | |
should launch the JET Creator and begin creating JET Segments. The segments | |
will reference the <st1:place w:st="on">MIDI</st1:place> files and any custom | |
DLS2 soundbanks.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Assign JET Segment Attributes After | |
creating segments the content author interactive elements. Interactive elements | |
include mute and unmute settings of individual tracks in the MIDI file(s) as | |
well as <st1:place w:st="on">MIDI</st1:place> controller numbers that serve as | |
events in the game. These attributes tell the JET engine how and when to play | |
the different musical segments according to the JET API commands in the Android | |
application. See below for more detail on this.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Audition Interactive Playback After | |
assigning the segment attributes and creating the JET file, the content author | |
can audition all interactive playback elements in the JET Audition window.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Save .jtc File After the author is | |
satisfied with the result, it is recommended they save the JET Creator .jtc | |
file which will save their settings, references to source files, etc.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Export Files Exporting the JET Creator | |
file will bundle all source files and their attributes into a single .zip file. | |
The zip file will also contain a .jet file for use by the Android application.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h1><a name="_Toc203298092"></a><a name="_Toc135724912"></a><a | |
name="_Toc135725135"></a><a name="_Toc135726610"></a><a name="_Toc135727779"></a><a | |
name="_Toc137004455"></a><![if !supportLists]><span style='mso-bookmark:_Toc203298092'><span | |
lang=EN-IE style='mso-fareast-font-family:Arial'><span style='mso-list:Ignore'>3<span | |
style='font:7.0pt "Times New Roman"'> | |
</span></span></span></span><![endif]><span style='mso-bookmark:_Toc203298092'><span | |
lang=EN-IE>EAS Synth Virtual Instrument Plugin</span></span></h1> | |
<p class=MsoNormal><span lang=EN-IE>Included in the JET Creator package is the | |
EAS software synthesizer in plug-in format. The EAS plugin synth allows the | |
composer to hear the instruments used in Android as they are composing their <st1:place | |
w:st="on">MIDI</st1:place> sequence. The EAS Synth plugin allows for the | |
loading of custom DLS2 sounds as well.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Installing the EAS Synth Plugin</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>Follow the instructions for your individual | |
DAW to install and utilize the plugin. For Mac users this will typically | |
involve copying the EAS Synth.componant file into your plugins folder which | |
is usually located at /Library/Audio/Plug-ins/Components. PC users will want to | |
install the EAS Synth.dll into the plugin folder that their DAW requires. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.2<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Requirements and Settings for | |
using the EAS Synth Plugin</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>The EAS Synth is an embedded synthesizer | |
for small mobile devices. This means it does not have the flexibility of high | |
end synthesizers typically utilized in a professional application such as | |
Logic, Digital Performer, etc. As such, only the following attributes are | |
supported.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Macintosh:</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Mac OSX (Intel) Macs </span></p> | |
<p class=MsoNormal><span lang=EN-IE>ASIO Supported Soundcards </span></p> | |
<p class=MsoNormal><span lang=EN-IE>Sample Rate:<span style='mso-tab-count: | |
1'> </span>44100 hz</span></p> | |
<p class=MsoNormal><span lang=EN-IE>Buffer Size:<span style='mso-tab-count: | |
1'> </span>256 kbytes</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>PC:</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Windows 2000 or <st1:place w:st="on">Vista</st1:place> | |
operating systems</span></p> | |
<p class=MsoNormal><span lang=EN-IE>ASIO supported soundcards</span></p> | |
<p class=MsoNormal><span lang=EN-IE>Sample Rate:<span style='mso-tab-count: | |
1'> </span>44100 hz</span></p> | |
<p class=MsoNormal><span lang=EN-IE>Buffer Size:<span style='mso-tab-count: | |
1'> </span>256 kbytes</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.3<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Assigning <st1:place w:st="on">MIDI</st1:place> | |
Tracks to use the EAS Synth</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>Each DAW has its own particular method of | |
assigning <st1:place w:st="on">MIDI</st1:place> tracks to virtual instrument | |
plugins such as the SONiVOX EAS Synth. Please consult the user manual for your | |
DAW for detailed instructions. Below are some general guidelines for Logic | |
(Mac) and SONAR (PC).</span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.3.1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>LOGIC 8</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>The SONiVOX EAS Synth virtual instrument is | |
a multi-timbral synthesizer. (i.e. it plays back multiple instruments on unique | |
<st1:place w:st="on">MIDI</st1:place> channels in a single instance) In Logic | |
8, however, youll want to set up 16 Logic <i style='mso-bidi-font-style:normal'>Instruments,</i> | |
each with their own instance of the EAS Synth. Each Instrument should be assigned | |
its own <st1:place w:st="on">MIDI</st1:place> channel. Use Channel 10 for | |
Drums. The reason for this is that MIDI controller messages, such as Volume | |
(CC7) and Pan (CC10) will not be channelized if the plugin is assigned to only | |
a single Instrument and all <st1:place w:st="on">MIDI</st1:place> tracks are | |
set to playback on that Instrument. In order for each <st1:place w:st="on">MIDI</st1:place> | |
channel to respond to its own controller messages, you must assign 16 different | |
EAS Synth instances to 16 unique Logic Instruments.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>A Logic 8 template file has been included | |
in the Android Cupcake release to facilitate the above.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Playback in Logic 8 may require you to be | |
in record enable mode for each track you are auditioning. To record enable | |
multiple tracks hold down the Option key.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>To write out a standard <st1:place w:st="on">MIDI</st1:place> | |
(type 1) file from Logic, you need to use the File Export command. IMPORTANT: | |
Most edits in Logic are non-destructive edits meaning they are not modifying | |
the actual data but rather adding an overlay onto to the data. Quantize is one | |
such non-destructive edit. Therefore when you export a <st1:place w:st="on">MIDI</st1:place> | |
file, you may not see your quanitization settings. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>In addition, the mix parameters for volume, | |
pan and program changes may not appear in the event list and therefore may not | |
write out with the <st1:place w:st="on">MIDI</st1:place> file. Before exporting | |
a <st1:place w:st="on">MIDI</st1:place> file in Logic it is recommended you do | |
the following:</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Select All and use the Insert MIDI > | |
Insert MIDI Settings as Events command.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>Select All and use the Apply Quantization | |
Settings Destructively command. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.3.2<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Cakewalk SONAR 7</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>Sonar 7 is a bit easier to set up, use and | |
save than Logic 8. Simply open or start a new <st1:place w:st="on">MIDI</st1:place> | |
file. Go to the Insert menu and select Insert Soft Synth>SONiVOX>EAS | |
Synth. Then assign each <st1:place w:st="on">MIDI</st1:place> tracks output to | |
the EAS Synth. There is no need to record enable a track to hear it play back. | |
When saving, be sure to select MIDI Type 1.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>SONAR 8 works similarly to SONAR 7.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.3.3<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Digital Performer</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>Weve seen some instances when creating | |
content with Digital Performer where notes with a release velocity of non-0 | |
will generate an extra note-on event in the EAS synth. If you are hearing a | |
doubling, editing the release velocity events to zero should fix this problem.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.4<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Using Custom DLS2 Soundsets</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>The SONiVOX EAS Synthesizer supports two | |
simultaneous soundsets or wavetables. One is the internal General MIDI wavetable | |
inherent to the SONiVOX EAS Synthesizer. The other is a Downloadable Sounds | |
Level 2 (DLS2) soundset. The internal wavetable is a GM Level 1 compliant | |
wavetable with 127 melodic instruments and 1 drumkit. It is in a proprietary | |
SONiVOX format. The DLS2 soundsets are an open format published by the MIDI | |
Manufactures Association. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>In the Android Cupcake release, the | |
internal wavetable is only 200 kbytes, very small, in order to be compliant | |
with all Android devices which may not have a lot of memory. DLS2 soundsets can | |
be any size that a particular device supports. Upgraded (larger) internal | |
wavetables as well as custom DLS2 instruments can be licensed from SONiVOX.</span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.4.1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Loading a DLS2 Soundset</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>To load a custom soundset, click on the | |
Load DLS button in the EAS Synth plugin interface. Browse to the DLS2 file you | |
wish to load and say OK. <b style='mso-bidi-font-weight:normal'><i | |
style='mso-bidi-font-style:normal'>Only DLS Level 2 formatted soundsets are | |
supported.<o:p></o:p></i></b></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>3.4.2<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Using a DLS2 Soundset</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>Since both the internal EAS GM wavetable | |
and a custom DLS2 soundset are used simultaneously, you must be sure you have | |
your MIDI Program Changes set correctly. DLS2 instruments must be assigned to a | |
Bank <i style='mso-bidi-font-style:normal'>other</i> than the default GM bank | |
used by the internal synthesizer. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>The internal EAS synthesizer is assigned to | |
Banks 121 (melodic instruments) and 120 (drum instruments). This follows the | |
General MIDI Level 1 specification. Note: Most <st1:place w:st="on">MIDI</st1:place> | |
sequencers require you to use Bank 0 to select the default wavetable. Custom | |
DLS2 soundsets, therefore, should utilize a different Bank. We recommend Bank | |
1.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>The EAS synth supports MSB (Controller 0), | |
LSB (Controller 32) Bank change messages. There are two places you need to set | |
this Bank and Program Change number. The first is in your DLS2 soundset. Using | |
Bank 1, each Instrument would be assigned MSB 1, LSB 0, then the Instrument | |
Program Change number. The second place to use the Bank and Program Change | |
number is in your <st1:place w:st="on">MIDI</st1:place> sequence. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>In your <st1:place w:st="on">MIDI</st1:place> | |
track, the MSB should be sent first followed by the LSB and then the Instrument | |
number. For example, if your DLS2 instrument is assigned MSB 1, LSB 0, | |
Program1, you would send CC0, 1 followed by CC32, 0 followed by Program Change | |
Message 1. This might look like the following in an event window:</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><!--[if gte vml 1]><v:shape id="_x0000_i1029" | |
type="#_x0000_t75" style='width:278.25pt;height:504.75pt'> | |
<v:imagedata src="JET_Authoring_Guidelines_files/image011.png" o:title="Event List"/> | |
</v:shape><![endif]--><![if !vml]><img border=0 width=371 height=673 | |
src="JET_Authoring_Guidelines_files/image012.gif" v:shapes="_x0000_i1029"><![endif]></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h1><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>JET Creator Guidelines</span></h1> | |
<p class=MsoNormal><span lang=EN-IE>JET Creator is the desktop application | |
where youll edit and audition the JET interactive music elements. For details | |
on the JET Creator application please see the JET Creator User Manual. Below | |
are some additional guidelines to help you out.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Order of Tasks</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>As with all projects, its best to discuss and | |
design the interactive music scheme with the game designer and programmer | |
before beginning your composition. An outline and/or specification can go a | |
long way in saving you from having to redo things after the game is in place.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE>In general youll want to first write your | |
music in your DAW of choice the way youre used to composing, then break up the | |
final <st1:place w:st="on">MIDI</st1:place> file as needed for the application. | |
Next, move to JET Creator and create all of your music segments in the order | |
easiest to preview them when played in order. Finally, add the JET Events to | |
control the segments via the Android game and Audition them as needed in JET | |
Creator. Finally, save the project in JET Creator and hand off the .jet file to | |
the programmer to integrate it in the game. After previewing there will likely | |
be changes to the <st1:place w:st="on">MIDI</st1:place> file(s) and JET Creator | |
attributes. </span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.2<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Conserving Memory</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>If youre trying to conserve memory, | |
compose as few MIDI files as possible, and create several segments from that <st1:place | |
w:st="on">MIDI</st1:place> file. For example a 12 bar <st1:place w:st="on">MIDI</st1:place> | |
file with three sections of 4 bars, A, B, C, can create a much longer song. | |
Simply create multiple segments that reference the one <st1:place w:st="on">MIDI</st1:place> | |
file, then order them however you like. For example, A, A, B, A, C, A, B, A, A | |
would create a 36 bar song. Use JET to add repeats, transpose segments, and | |
interactively mute and unmute tracks to keep it even more interesting.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.3<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Replicate</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>To make adding segments or events faster, | |
use the Replicate command. Replicate can add multiple segments or events at one | |
time and uses an offset parameter and prefix naming convention to keep things | |
easy to read. The MOVE command is also useful for moving multiple events by a | |
set number of measures, beats or ticks.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<h2><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.4<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Interactive Options</span></h2> | |
<p class=MsoNormal><span lang=EN-IE>There are several interactive audio | |
concepts possible in JET. Below are a few examples although we hope developers | |
will come up with others we havent thought of! These are:</span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.4.1<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Multiple Segment Triggering</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>In this method the application is | |
triggering specific segments based on events in the game. For example a hallway | |
with lots of fighting might trigger segment 1 and a hallway with no fighting | |
might trigger segment 2. Using JET TriggerClips in conjunction with this method | |
creates even more diversity.</span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.4.2<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Mute Arrays</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>In this method the application is | |
triggering mute and unmute events to specific tracks in a single <st1:place | |
w:st="on">MIDI</st1:place> sequence. For example a hallway with lots of | |
fighting might play <st1:place w:st="on">MIDI</st1:place> tracks 1-16 and a | |
hallway with no fighting might play the same midi file but mute tracks 9-16. | |
Using JET TriggerClips in conjunction with this method creates even more | |
diversity.</span></p> | |
<h3><![if !supportLists]><span lang=EN-IE style='mso-fareast-font-family:Arial'><span | |
style='mso-list:Ignore'>4.4.3<span style='font:7.0pt "Times New Roman"'> | |
</span></span></span><![endif]><span lang=EN-IE>Music Driven Gameplay</span></h3> | |
<p class=MsoNormal><span lang=EN-IE>Music driven gaming is similar to what | |
Guitar Hero and JETBOY have done in that the music content determines how | |
graphic events are displayed. The application then queries the user response to | |
the graphic events and interactively modifies the music in response. In this | |
method the game is utilizing JET Application Events, MIDI controllers that are | |
embedded in the <st1:place w:st="on">MIDI</st1:place> file and read by the game | |
in real-time. Based on the user response, multiple segment triggering and/or | |
mute arrays can be set.</span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
<p class=MsoNormal><span lang=EN-IE><o:p> </o:p></span></p> | |
</div> | |
</body> | |
</html> |