SMI/SAMI 字幕

SAMI 1.0, 全称 Microsoft® Synchronized Accessible Media Interchange (SAMI)
Captioning Technologies
简介
SAMI Captioning 是WMP(Windows Media Player)专用字幕文件格式,使用类似HTML的格式记录
SAMI的语法规则近似HTML,有根节点,有一个和,还可以使用CSS控制样式

<SAMI>
<HEAD>
<TITLE>SAMI Example</TITLE>
<SAMIParam>
  Media {cheap44.wav}
  Metrics {time:ms;}
  Spec {MSFT:1.0;}
</SAMIParam>
<STYLE TYPE="text/css">
<!--
  P { font-family: Arial; font-weight: normal; color: white; background-color: black; text-align: center; }
  #Source {color: red; background-color: blue; font-family: Courier; font-size: 12pt; font-weight: normal; text-align: left; }
  .ENUSCC { name: English; lang: en-US ; SAMIType: CC ; }
  .FRFRCC { name: French;  lang: fr-FR ; SAMIType: CC ; }
-->
</STYLE>
</HEAD>
<BODY>
<-- Open play menu, choose Captions and Subtiles, On if available -->
<-- Open tools menu, Security, Show local captions when present -->
<SYNC Start=0>
  <P Class=ENUSCC ID=Source>The Speaker</P>
  <P Class=ENUSCC>SAMI 0000 text</P>
  <P Class=FRFRCC ID=Source>French The Speaker</P>
  <P Class=FRFRCC>French SAMI 0000 text</P>
</SYNC>
<SYNC Start=1000>
  <P Class=ENUSCC>SAMI 1000 text</P>
  <P Class=FRFRCC>French SAMI 1000 text</P>
</SYNC>
<SYNC Start=2000>
  <P Class=ENUSCC>SAMI 2000 text</P>
  <P Class=FRFRCC>French SAMI 2000 text</P>
</SYNC>
<SYNC Start=3000>
  <P Class=ENUSCC>SAMI 3000 text</P>
  <P Class=FRFRCC>French SAMI 3000 text</P>
</SYNC>
</BODY>
</SAMI>

SAMI 1.0 定义
Microsoft Synchronized Accessible Media Interchange (SAMI) 设计之初的目的是为开发人员、教育工作者以及多媒体制作人和设计人员简化他们的工作,使其更易于访问。 SAMI 文件格式规范作为开放(无许可费用)标准向公众开放。
字幕最初是由 WGBH (波士顿公共电视台) 为大约 2000 万失聪或听力障碍的美国人开发的。 SAMI 技术扩展了为各种多媒体产品提供隐藏式字幕的能力。 本文档的唯一目的是介绍 PC 多媒体中使用的字幕技术。 不包括电视字幕。
CPB/WGBH 国家无障碍媒体中心 (NCAM) 对本文档的开发和更新提供了很大帮助。 有关详细信息,请参阅 NCAM 网站。
SMIL
同步多媒体集成语言 (SMIL™) 侧重于实时编排音频、视频、文本和图形的多媒体演示。 SMIL 1.0 是万维网联盟 (W3C) 的推荐标准(1998 年 6 月)。 W3C 开发了后续版本(SMIL 2.0)。 有关 W3C 和 SMIL 2.0 的更多信息,请参阅网站 http://www.w3.org/AudioVideo/。
Internet Explorer 5.5(或更高版本)支持基于 SMIL 2.0 规范的 HTML+TIME。 此处提供的 MSDN 文章中提供了 HTML+TIME 的技术细节。
SAMI
SAMI 1.0 旨在为 PC 系统中广泛可用的数字媒体添加字幕。 SAMI 字幕作为单独的简单文本文件与数字媒体共存。 可以针对不同语言轻松修改、维护、自定义和本地化字幕。
SAMI 规范受 Microsoft® Encarta® Encyclopedia、Windows Media® Player 和一些 Microsoft 多媒体游戏的支持。 本文档和 Windows Media Player 9 系列软件开发工具包 (SDK) 中提供了技术细节。
本文档中提供了 SAMI 隐藏式字幕示例。
有关更多信息,请参阅向数字媒体添加隐藏式字幕。
File Extension
SAMI documents must use the following extensions: .smi or .sami
SAMI 结构和声明
由于 SAMI 密切基于 HTML,因此它具有类似(但不完全相同)的组件结构,使其成为一种易于学习和编辑的格式。 所有 SAMI 文档都必须以 标签开始并以 标签结束。
标题标签
header 部分(在 和 标记之间)是必需的,它包含 SAMIParam 和 Style 部分。 这些部分包含基本布局和格式信息。
标题标签

标记用于 SAMI 中的信息目的,并且是可选的。 SAMI 参数 SAMI 参数在 SAMIParam 部分中输入,以 和 为边界。 SAMI 参数有两种类型。 一些参数是严格的信息。 SAMI 引擎会忽略这些参数。 例如,版权不会成就或破坏 SAMI 文档; 它只是所有权的指定。 其他参数用于设置显示字幕的初始属性或编码器/解码器属性的基本值。 Copyright 版权的使用仅供参考,SAMI 渲染引擎不会对其进行解析。 它与 SAMIParam 部分一起使用意味着版权仅涵盖转录、格式和时间戳。 媒体的版权必须在别处指定。 用法:Copyright {<版权字符串>}

Media
媒体参数既用作媒体激活的交叉引用,也用作基本媒体的记录。 可以在 Media 参数中指定主要 URL 和辅助 URL。 在大多数情况下,只会使用 Primary 值。 在用户选择是要播放带声音的视频剪辑还是只播放声音文件的情况下,可以使用辅助 URL。 Media 参数不是必需的(尽管这是一个很好的做法,并且在未来的版本中可能需要)。
用法: Media {<主要 URL>}, {<次要 URL>}

Metrics
Metrics指定同步和持续时间的时间单位。 Microsoft® DirectShow® 和 Windows Media Player 仅支持毫秒 (ms),但 SAMI 适合与使用不同时间增量的其他系统一起使用。
用法: Metrics {time: <时间单元>; duration:<时常>}

Specification 规范
规范指定 SAMI 文档规范的版本。
用法: Spec {MSFT:1.0;}

例子:

<SAMIParam>
Copyright {(c)1998-2001, Microsoft Corporation}
Media {SAMI.jpg}
Metrics {time:ms; duration: 73000;}
Spec {MSFT:1.0;}
</SAMIParam>

Style parameters 样式参数
Style parameters are used to format textual display and to provide a method for multiple language support. SAMI style supports methods and attributes of W3C CSS2 (Cascading Style Sheets, level 2). SAMI styles are based on CSS (W3C Cascading Style Sheet) methods and attributes. Style parameters are entered within the Style section, bounded by 标记内。
段落标签
一个标题块(一到四个标题行)在 SAMI 中被定义为一个段落。 可以使用段落样式将基本格式应用于所有标题块。 任何 CSS 样式都可以使用。
例如:

P {
margin-left: 8pt; 
margin-right: 8pt;
margin-bottom: 2pt; 
margin-top:-10pt;
text-align: left; 
font-size: 12pt; 
font-family: arial, sans-serif; 
font-weight: bold;
color: #fee8c6; }

Class and Localization 类和本地化
类用于定义特定于语言的标题或动作。 解析 SAMI 文档时,呈现引擎会将用户选择的语言值与类定义中的名称值进行匹配。 SAMI 渲染引擎将仅呈现 Name 值与用户选择(或作者选择)Language 值匹配的那些行。 有关示例,请参阅 Windows Media Player 的播放菜单上的语言。 如果用户(或作者)没有明确选择语言,则默认使用第一个类(语言)定义。
为保持一致性,语言值应遵循标准 ISO639-ISO3166 命名约定。 例如,“en”是 ISO 639 语言代码 ,“US”是ISO 3166 语言代码(国家码) 。 因此,“en-US”是如何指定英语类型(对于美国)。
SAMI 中的类命名是通过创建一个以句点开头的唯一名称来实现的。 例如,.ENCC 可用于英文字幕,.FRFRCC 可用于法语/法国字幕(与法语/加拿大字幕相反)。 通过将 Class 参数放置在段落标记中来引用 Class。
例如:

除了语言之外,Class 还可用于修改 Caption 块格式。 也就是说,段落样式(如前所述)中支持的任何格式参数都可以添加到类样式中。 这对于字体和边距可能会相应更改的多种语言很有帮助(例如,德语比英语多占用 30% 的行空间)。 在类样式中使用格式参数将取代任何段落样式参数。
用法
{Name: <名称>; Lang: -;
<文字样式格式描述>}
示例

.ENCC {Name: English; lang: en-US; color: white; margin-left: 30pt; margin-right: 30pt;} 

.FRFRCC {Name: French; lang: fr-FR; color: yellow; margin-left: 12pt; margin-right: 12pt;} 

.DECCGer {Name: German; lang: de-DE; color: yellow; margin-left: 3pt; margin-right: 3;}

ID Style
通常,特殊格式有助于满足特定受众(例如,儿童或视障人士)的需求。在 SAMI 中,这是通过 ID 属性完成的。例如,大字标题可以 18pt 显示。这是通过创建 BigPrint ID 样式并将其应用于适当的段落来完成的。 ID 样式是通过将唯一名称附加到井号 (#) 来定义的,后跟支持的格式参数列表。
在 HTML 使用 CSS 样式时,作者创建并应用了 ID。使用 SAMI,作者只需要创建 ID 样式。 SAMI 渲染引擎根据用户选择的样式在同步时应用 ID 样式。也就是说,如果用户选择 Big Print 样式,SAMI 引擎会将编写的 #BigPrint 样式应用于呈现的每个

标记。
用法
#<唯一名称> {<格式参数>}
示例

P {font-size: 14pt; text-align: left; font-family: sans-serif; color: white; background-color: black;} 

解析为 标准格式 14号
#Standard {Name: Standard; margin-left: 30pt; margin-right: 30pt;} 

解析为 放大字体
#Youth {Name: Youth; color: yellow; margin-left: 15pt; margin-right: 15pt;} 

解析为 标题
#BigPrint {Name: BigPrint; color: yellow; margin-left: 4pt; margin-right: 3pt;} 

Source ID
Source ID 始终显示为标题块顶部的附加行(请参阅下文)。 这用于显示被加字幕的声音或声音的来源。 它可以包含说话者的名称或对象的名称(例如,收音机)。 要使 SAMI 引擎支持 Source ID 功能,必须在 Style 块中定义 #Source。 然后在同步块中指定源 ID(请参阅以下示例和同步部分)。 源 ID 仅在源更改时才需要更新。
用法
#Source {<格式参数>}

示例

#Source {background-color: silver; color: black; font-size: 11pt; font-family: sans-serif; font-weight: normal;} 

以下是在 Style 块中定义 Source ID 的示例:

<P Class=ENCC ID=Source> Pres. John F. Kennedy 
<P Class=ENCC> Let the word go forth, from this time and place...

Synchronization
SAMI 引入了 <Sync Start=> 标记来支持此功能。 为 Start 参数分配媒体的 Elapsed Time 值(以毫秒为单位)。 当媒体经过的播放时间与同步开始时间匹配时,SAMI 渲染引擎会将 <Sync Start=> 标记后面的内容传递给 SAMI 显示引擎。 要将段落留空,请使用不间断空格实体 ( )。
定义
当媒体的经过时间与其 Start= 值匹配时,SAMI 引擎会解析特定 块的所有内容。 如果 块中的段落包含 Class 属性,则它必须与要呈现的用户选择的语言相匹配。 每个 块只能包含以下 HTML 标记标签,用于标题文本的样式、字体和格式。 所有标记标签都在 W3C HTML 4.01 中定义。
Table 1. HTML Markup Tags Supported in SAMI 1.0

最后一个完整的示例

<SAMI>
<Head>
   <Title>President John F. Kennedy Speech</Title>
   <SAMIParam>
      Copyright {(C)Copyright 1997, Microsoft Corporation}
      Media {JF Kennedy.wav}
      Metrics {time:ms; duration: 73000;}
      Spec {MSFT:1.0;}
   </SAMIParam>

   <STYLE TYPE="text/css"><!--
      P {margin-left: 29pt; margin-right: 29pt; font-size: 12pt; 
      text-align: left; font-family: tahoma, arial, sans-serif; 
      font-weight: normal; color: white; background-color: black;}

      TABLE {Width: "248pt" ;}

      .ENUSCC {Name: "English Captions"; lang: en-US-CC;}

      #Source {margin-bottom: -15pt; background-color: silver; 
         color: black; vertical-align: normal; font-size: 12pt; 
         font-family: tahoma, arial, sans-serif; 
         font-weight: normal;}

      #Youth {color: greenyellow; font-size: 18pt;}

      #BigPrint-1 {color: yellow; font-size: 24pt;}-->
   </Style>
</Head>

<Body>
   <SYNC Start=0>
      <P Class=ENUSCC ID=Source>Pres. John F. Kennedy   
   <SYNC Start=10>
      <P Class=ENUSCC>Let the word go forth, 
         from this time and place to friend and foe 
         alike that the torch
   <SYNC Start=8800>
      <P Class=ENUSCC>has been passed to a new generation of Americans, 
         born in this century, tempered by war,
   <SYNC Start=19500>
      <P Class=ENUSCC>disciplined by a hard and bitter peace, 
         proud of our ancient heritage, and unwilling to witness
   <SYNC Start=28000>
      <P Class=ENUSCC>or permit the slow undoing of those human rights
          to which this nation has always
   <SYNC Start=38000>
      <P Class=ENUSCC>been committed and to which we are 
         committed today at home and around the world.
   <SYNC Start=46000>
      <P Class=ENUSCC>Let every nation know, 
         whether it wishes us well or ill, 
         that we shall pay any price, bear any burden,
   <SYNC Start=61000>
      <P Class=ENUSCC>meet any hardship, support any friend, 
         oppose any foe, to ensure the survival and
         success of liberty.
   <SYNC Start=73000>
      <P Class=ENUSCC ID=Source>End of:
      <P Class=ENUSCC>President John F. Kennedy Speech
</Body>
</SAMI>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值