音声ブラウザご使用の方向け: ナビメニューを飛ばして本文へ ナビメニューへ

3.5 Advanced Settings(高度な設定)タブ

Default Paths(デフォルトパス)

picture of the validator general settings area

Default Destination Directory(デフォルトの保存先)およびDefault Meta Location(デフォルトのメタ位置)を使うと、DTB出力ファイルおよびメタインポートファイルそれぞれのデフォルトパスが設定されます。これらのデフォルトはジョブリストに追加された各ジョブに適用されます。

Misc Settings(その他の設定)

[Halt on regeneration / file rendering error(再生/ファイルの実行エラー時に停止)]を使うと、ジョブの一つで重大なエラーが発生したときに、Regeneratorにバッチキュー内のジョブ処理を中断させるか継続させるか指定できます。このチェックボックスにチェックすると、Regeneratorではログウィンドウに関連するエラーメッセージが表示された後、バッチキュー内にある後続ジョブが続行されます。

Misc Fix(その他の変更)

無効なSMIL parエレメントの調整

[PB2K/TK NCC layout fix(PB2K/TK NCCレイアウト変更)]チェックボックスにチェックすると、Playback 2000 ソフトウェアおよびPlextalk TK シリーズのハードウェア再生機器との互換性のため、NCC文書内のレイアウトが変更されます。これらハードウェア装置の再生能力を確実にするため、このオプションを有効にすることをお奨めします。

Add default CSS(デフォルトCSSの追加)

このオプションを有効にすると、RegeneratorではそれまでCSSリファレンスの存在していなかった各XHTML文書(NCC、コンテンツ文書)にカスケードスタイルシートのリンクが追加されます。 RegeneratorではCSS文書に格納されたインストールフォルダの[resources]サブフォルダ内が参照されます。デフォルトでcss文書(「default.css」)がこのフォルダにあります。この「default.css」文書を削除したり別の文書を追加すると、使用したいスタイルシートと置き換えることができます。ただ一つ条件としてはCSS文書に「css」拡張子が含まれるということです。

Advanced Fix(高度な調整)

picture of the validator general settings area

[Advanced Settings(高度な設定)]タブの[Advanced Fix(高度な調整)]エリアには、その実行が必要条件ではない一連のRegeneratorアクションが格納されています。したがってここでは、これらのアクションを無効にするオプションを用意しています。

Adjust invalid smil par elements(無効なSMIL parエレメントの調整)

[Adjust invalid smil par elements(無効なSMIL parエレメントの調整)]オプションを使うと、最初のparエレメントがNCC見出しから参照されていないsmilファイルを見つけて、parエレメントを先行するSMILファイル(もしあれば)の末尾へ移動することができます。
さらに[Adjust invalid smil par elements(無効なSMIL parエレメントの調整)]オプションを使うと、SMILファイル内の重複されたtextエレメントを持つparエレメントを検地できます。次に重複イベントを新規作成の直前parへと移動したり、このテキストイベントを短いサイレントオーディオクリップ(長さ0.8秒)と関連付けようとする試みが実行されます。これらの調整によってSMILファイルは仕様準拠となり、例えばプレイヤーのナビゲーションモードで「前のページ」を使って「前に移動する」ことができないといった問題も解決できます。
この調整は裏を返すと、短いサイレントオーディオクリップがプレゼンテーションに追加されることを意味しています。図書をMP3形式でエンコードすると、Regeneratorでは元のオーディオと同じビットレートのオーディオファイルを追加しようと試みられます。この調整はさらに、オーディオファイルとSMILファイルの間の対等な関係が破綻していることを意味しています。対等な関係は仕様の要求ではありませんが、古い再生装置の中にはこの調整を充分に処理できないものがあります。

Rebuild link structure(リンク構造のリビルド)

[Rebuild link structure(リンク構造のリビルド)]オプション使うと、DTBファイルセット内でポインタ構造全体が作成し直されます。各IDには新しい値が指定され、このIDを示す各リンクにはその変更が反映されます。
ID値とURI値での大/小文字の不一致は別途処理されますが(大/小文字修正機能がオプションでない場合)、この機能は文書内の複製IDインスタンスを除去するのに役立ちます。さらに、名前変更は定義済みのネーミングスキーム(新規値は常に「rgn_」で始まる)を使って実行されるので、再生処理が終了した状態の図書内において、マニュアルで容易にエラー構造体を発見できるようになります。「rgn_」で始まらないフラグメント値は、何か異常現象が発生していることを示しています。
このオプション使うとID値とURI値にある無効文字も削除されます。

Make True NCC only(正しいNCCのみの図書の作成)

[Make True NCC only(正しいNCCのみの図書の作成)] オプション使うとDTBファイルセットが変換されるので、すべての付属するXHTML文書は削除されます。「正しいNCCのみ」とは、存在する二種類の「NCCのみのDTB」のうち一つを指しています。
・ 正しいNCCのみ:付属のXHTML文書が存在しません。表示されるテキストはNCC文書内のエレメントのテキストです。
・ 正しくないNCCのみ:最低一つのXHTML文書が存在します。表示されたテキストは付属文書内のエレメントのテキストです。DTBがNCCのみ(すなわちフルテキストでも部分テキストでもない)の場合は、とにかくこのテキストはNCC文書内のテキストと同一なので、論理的かつコンテンツ的に付属のXHTML文書は目的を満たしません。
DTBを真正NCCに変換することは、以下の二つの主な理由からメリットがあります。
1. DTBの詳細な編集が、既存の制作ツールの多くでできます。
2. DAISY 3への将来的なアップグレードが円滑になり、よい結果が得られるようになる。
何らかの特殊な事情によりDTBをNCCのみに変換したいときは、フルテキストおよび部分テキストのDTB上で[真正NCCのみ作成]オプションが動作するので注意してください。

Broken NCC /Content Doc Links(破損したNCC/コンテンツ文書のリンク)

このオプション(デフォルトはオフ)を使うと、変換できないNCC文書およびXHTMLコンテンツ文書のSMILフラグメントレファレンスが無効化されます。この無効化はアイテムをコメントへ変換します。すなわち、変換できないSMILフラグメントレファレンスを技術者が障害対応することはできても、再生機器でのナビゲーションには使用できない(必ず失敗する)ということです。
下記のNCCアイテムが無効を示していると仮定します。

 <h4 id="heading_000033" class="section">
<a href="dtb_0003.smil#bookid_000003x">Karl Marx</a>
</h4>

[Disable broken links(破損したリンクの無効化)] オプションを有効にすると、Regeneratorではアイテムが以下にように変換されます。

 <!-- <span class="disabled">
<h4 id="heading_000033" class="section">
<a href="dtb_0003.smil#bookid_000003x">Karl Marx</a>
</h4>
</span> -->

NCCリンクを実際に再生処理中に無効にすると、Regeneratorログから警告メッセージが発せられます。
[Attempt estimation first option(まず予測してみる)]オプションを有効にすると、Regeneratorでは破損リンクの元の目標地点を予測して破損リンクを復元しようと試みられます。この予測オプションでの復元が失敗すると、リンクは上述のとおり無効化されます。
Regeneratorから予測リンクおよび無効化リンクそれぞれについて警告メッセージが発せられます。

Point SMIL targets to ...(SMILターゲットのポイント先)

DAISY 2.02では、SMILファイル内に他の文書(NCC文書、コンテンツ文書)からのリンク先となる地点が二箇所(<par>エレメントおよび<text>エレメント)存在します。[SMILターゲットを…に向ける]オプションを使うと、二箇所のどちらを使うべきか決定することができます。オプションは下記のとおりです。

No change(変更なし)
SMILターゲットは変更されません。これは本オプションの無効化と同様です。
<par>
SMILターゲットは<par>エレメントに常駐します。
<text>
SMILターゲットは<text>エレメントに常駐します。

DAISY 3では<text>エレメントへのポインタは認められていません。すなわち目標は<par>エレメントに常駐しなければなりません。これが本オプションを有効化する第一の理由です。DTBの詳細な編集をDAISY 2.02製作ツール内で実行すると、SMIL目標がまた再び<text>エレメントに常駐するようポインタの再調整が必要になることがあります。このオプションを<text>オルタナティブに設定し、再度、Regeneratorを使うと容易に再調整できます。

Merge short first phrases(短い第一フレーズの結合)

[Merge short first phrases(短い第一フレーズの結合)]オプションを有効にすると、Regeneratorではオーディオシーケンスで最初に発生した短いオーディオフレーズについて結合が試行されます。これは、ときどき見出しやページ宣言の前で発生する「無音の」フレーズが削除されるということです。
[Merge short first phrases(短い第一フレーズの結合)]チェックボックス下にある四つのスライダを使うと、短いフレーズの検知アルゴリズムの動作が規定されます。これらのスライダでは、この動作について、あるフレーズが結合案件とみなされる時間を指定する値が設定されます。
Merge with next if clip is shorter than(クリップが…より短いときは次のフレーズと結合)
このスライダの値を使うと最短のミリ秒数が指定されます。つまり、この秒数より短いすべての第一フレーズはの次のフレーズと結合されるということです。
Merge with next if clip is shorter than(クリップが…より短いときは次のフレーズと結合)
このスライダを使うと、最短のミリ秒数が指定されてこの秒数が次のスライダに関連付けられます。
... and next slip is shorter than(そして後続クリップは…より短い)
…したがって上述のスライダの値が「1000」ミリ秒でこのスライダの値が「5000」ミリ秒の場合、1000ミリ秒より短いフレーズはその次のフレーズが5000ミリ秒より短い場合にのみ次のフレーズと結合されることを意味します。
Allowed span between clip-end and clip-begin(クリップ終端とクリップ始端の間の許容範囲)
二つのフレーズ間の時間差がこの値を超えるときは、結合処理は取り消されます。これは次のような場合に考えられます。

<seq>
<audio src="audio.mp3" clip-begin="npt=10.123s" clip-end="npt=10.245" />
<audio src="audio.mp3" clip-begin="npt=17.123s" clip-end="18.387s" />
</seq>

第二フレーズは17秒で開始するのに、第一フレーズは10秒で終了する状況に注目してください。二つのフレーズを結合するのは得策ではありません。

3.6 Log Settings(ログ設定)タブ

[Log Settings(ログ設定)]タブの[Log file save path(ログファイルの保存先)]フィールドを使うと、Regeneratorログが保存される場所の指定が可能になります。ここではパス変数は使えません。また、フォルダを指定すればよく、ファイル名は省略してください。
[Verbose log(詳細ログ)]オプションを有効にすると、Regeneratorログには警告アイテムとエラーアイテムが記録されます。

ログ情報

ディスクに保存されるログはXML形式です。つまり、ログはXML処理を使って考察したり分析することができるということです。
同一のログファイルは、セッション間であっても数個のRegeneratorジョブに使用できる(つまりRegeneratorでは、データはこのファイルに追加され、上書きされない)ようになっています。数個のジョブが同一のログファイルに記録されている場合、整形式のファイルを整列させるために手動でルートエレメントを追加する必要があります。場合によっては、同様にエンコード情報の追加が必要になることがあります。
変更前のログファイル:

<job>
[...]
<job>
<job>
[...]
<job>

ルートエレメントおよびエンコード情報を追加した変更後のログファイル:

<?xml version="1.0" encoding="windows-1252"?>
<root>
<job>
[...]
<job>
<job>
[...]
<job>
</root>

3.7パス変数

Regeneratorでは入出力データを円滑に処理できるようパス変数が使われます。このパス変数はバッチモードでRegeneratorを実行するときに役立ちます。
パス変数の種類は以下のとおりです。

*dtbid*
このパス変数にはDTBのdc:identiferメタデータ値に相関するストリングが格納されています。dc:identifer(またはncc:identifer)が存在しないとき値はunknownにセットされています。
*validationresult*
このパス変数には図書のバリデーション結果を記述したストリングが格納されています。このストリングはpass、not_tested、error_critical、error_noncritical、warningの値のいずれかになります。
*dtbdirectory*
このパス変数にはDTBが置かれたフォルダの名前に等しい値が格納されています。DTBがD:\books\thisbook\フォルダ内にあるときは、*dtbdirectory*の値はthisbookです。
*fulldtbpath*
このパス変数にはDTBディレクトリのフルパスが格納されています。DTBがD:\books\thisbook\フォルダ内にあるときは、*fulldtbpath*の値はD:\books\thisbook\です。

パス変数の使用例

バッチジョブには四種類の図書を一度に更新するようにセットアップされています。これらのすべての図書では、メタデータインポートパスは*fulldtbpath*\metadata.xml に設定されています。それぞれの図書に、RegeneratorではDTBフォルダ内でmetadata.xmlと呼ばれるファイルが検索され、そこに格納されたデータのインポートが試行されるということです。
代わりにメタデータインポートパスがD:\metadata\*dtbid*\metadata.xmlに設定されていると、Regeneratorではその図書のdc:identifierと同一名の「metadata」フォルダのサブフォルダが予想されます。例えばメタデータフォルダは以下のように表示されることがあります。

D:\metadata\se-tpb-c12456\metadata.xml
D:\metadata\se-tpb-c12236\metadata.xml
D:\metadata\se-tpb-c12223\metadata.xml
D:\metadata\se-tpb-c12224\metadata.xml

さらにバッチジョブ内のすべての図書では、出力DTB保存先パスがD:\books\*validationresult*\*dtbid*\に設定されています。これはRegeneratorで問題なく実行できたすべての図書が、DTBメタデータのdc:identifier値を使ったフォルダ内に置かれるということです。このようなフォルダはそれぞれ順番がくると、バリデーション結果を記述したフォルダ内に置かれます。バッチジョブ完了後にDTBは下記のように配置されます。

D:\books\pass\se-tpb-c12456\ncc.html
D:\books\pass\se-tpb-c12236\ncc.html
D:\books\warning\se-tpb-c12223\ncc.html
D:\books\error_critical\se-tpb-c12224\ncc.html

付録1.ジョブバッチリストのフォーマット

ジョブバッチリストのルートエレメントは<joblist>です。<job>エレメントは<joblist>の子とということになります。各種プロパティは<job>エレメントにサブエレメントを追加すると設定できます。
<nccfile>
図書のNCCパスを設定します。必須(ストリング値)
<metafile>
図書のメタデータインポートの場所とファイルを設定します(ストリング値)
<outputpath>
図書の実行パスを設定します(ストリング値)
<dtbtype>
図書のDTBタイプを設定します。下記の値(整数値)が入力できます
0 (audioOnly)
1 (audioNcc)
2 (audioPartialText)
3 (audioFullText)
4 (textPartialAudio)
5 (textNcc)

<charset>
図書の入力文字セットを設定します。下記の値(整数値)が入力できます
0 (western)
1 (shift-jis)
2 (big5)
3 (utf-8)
4 (other, see subcharset)

<subcharset>
<charset>タグで4(other)が選択されている場合、図書の入力文字セットを設定します。ここでの値(整数値)はcharsets.xmlファイル内の文字セットから0をベースにして選択されます。このcharsets.xmlファイルはアプリケーションインストールフォルダの「resources」サブフォルダ内にあります。
<seqrename>
図書ファイルを順番どおりに並べるかどうかを設定します。これはブール値(trueまたはfalse)です。
<prefix>
図書のファイル名変更の接頭辞(ストリング値)を設定します。この値はusenumeric がtrueに設定されていると無視されます。
<usenumeric>
図書のdc:identifierまたはncc:identifierに対応する接頭辞を図書ファイルに付与するかどうか設定します。これはブール値(trueまたはfalse)です。
プロパティを設定しないと、Regeneratorでは特定のプロパティの代わりにデフォルト値を使ったプロパティが挿入されます。オプションの<default>エレメントを宣言すると、どの値をデフォルトにするか設定できます。この<default>エレメントは<job>エレメントと同様に、厳密に使用します。

ジョブバッチリストの例:

<joblist>
<default>
<dtbtype>1</dtbtype>
<!-- sets the dtb type to audioNcc for all jobs in list -->
<charset>0</charset>
<!-- sets the charset to western for all jobs in list -->
<seqrename>true</seqrename>
<!-- enables sequential rename for all jobs in list -->
<usenumeric>false</usenumeric>
<!-- sets the "use numeric portion of dc:identifier
as rename prefix" to false -->
</default>
<job>
<nccfile>d:\dtbs\book1\NCC.HTMl</nccfile>
<metafile>d:\dtbs\book1\meta.xml</metafile>
<prefix>C10972</prefix>
</job>
<job>
<nccfile>d:\dtbs\book2\ncc.html</nccfile>
<metafile>d:\dtbs\book2\meta.xml</metafile>
<prefix>C10873</prefix>
</job>
</joblist>

batchlist.xmlと呼ばれるジョブバッチリストテンプレートは、アプリケーションインストールフォルダの「resources」サブフォルダ内にあります。

付録2.メタデータインポート文書のフォーマット

メタデータインポート文書には、XHTML およびDaisy 2.02における<meta>子付きの<head>エレメントのシンタックスとほぼ同一のシンタックスが含まれます。そのシンタックスの規則は以下のとおりです。
・必ず一つルートエレメントがあります。名前はなんでもかまいません。
・このルートエレメントの子として必ず<meta>エレメントが派生します(XHTML 1.0規則および Daisy 2.02仕様に準拠)

例:

<root>
<meta name='dc:identifier' content='se-tpb-c23671' />
<meta name='dc:date' content='1970-09-17' scheme='iso8601'/>
...
<meta name='ncc:narrator' content='Brian Burrows'/>
<meta name='prod:recEngineer' content='Jesper Klein'/>
</root>

Regeneratorでは内部で追加または再計算されたメタエレメントは変更されます。例えばメタエレメントncc:totalTimeがメタデータインポートセットに追加されると、そのメタエレメントは無視されます(こうして変更されたエレメントのリストは、本アプリケーションの「resources」サブディレクトリにあるforbiddenMeta.xmlファイル内に格納される)。
使用するエンコードがUTF-8か7ビットASCII以外の場合は、忘れずに文書のプロログ内で文字エンコードを指定してください。以下の例では、メタデータインポート文書に西ヨーロッパ文字セットが使用されていますが、これはWindows™プラットフォームで作成されたものです。

<?xml version="1.0" encoding="windows-1252"?>
<root>
<meta name='dc:identifier' content="se-tpb-c23671" />
...
</root>

付録3.DTBで使用される文字セット

これはDaisy DTBでもっとも共通的に使用されている文字セットの一覧です。
DTB内の従来の文字セット情報は妥当なものとは言い難いので、その情報には依存しないようにしましょう。例えば、ごく一般的にメタエレメントの文字セットはISO-8859-1に対応している、という記述はとても正しいとは言えません。
代わりに、時間をかけて実際に使用されている文字セットの種類を見つけてから、その情報をRegeneratorに入力してください。そうして初めて充分な結果を期待することができます。
このリストでは、既存のDaisy DTB製作ツールのいずれか(LpStudio/Pro、LpStudio/Plus、Sigtuna DAR 2、 Sigtuna DAR 3、 TIPS、 WIPS、 MyStudio PCまたはPlextalk Recording Systemなど)を使ってDTBが作成されているものと仮定しています。
A~Zおよび北欧、ゲルマン、ヒスパニックの特殊文字を含む西ヨーロッパ文字セットを使って作成されたDTB
ほとんどの場合、DTB内で使用されている文字セットはWindows-1252です。Regeneratorでは[Input charset(入力文字セット)]ドロップダウンボックスで代わりに[Western]を選択すると、西ヨーロッパの選択入力がWindows-1252と解釈されます。エンコードをUTF-8に変換したくないときは、[other] を選択してから隣りのドロップダウンボックスで[Windows-1252]を選択してください。
日本語を使って作成されたDTB
ほとんどの場合、DTB内で使用されている文字セットはshift_jis(Windows-932とラベリングされることもある)です。Regeneratorでは[Input charset(入力文字セット)]ドロップダウンボックスで[shift_jis]を選択してください。
タイ語を使って作成されたDTB
ほとんどの場合、DTB内で使用されている文字セットはWindows-874(TIS-620とラベリングされることもある)です。Regeneratorでは[Input charset(入力文字セット)]ドロップダウンボックスで[other]を選択してから、隣りのドロップダウンボックスで[Windows-874]を選択してください。
韓国語を使って作成されたDTB
ほとんどの場合、DTB内で使用されている文字セットはkcs5601です。Regeneratorでは[Input charset(入力文字セット)]ドロップダウンボックスで[other]を選択してから、隣りのドロップダウンボックスで[kcs5601] を選択してください。
中国語を使って作成されたDTB
ほとんどの場合、DTB内で使用されている文字セットはBig5です。Regeneratorでは[Input charset(入力文字セット)]ドロップダウンボックスで[Big5]を選択してください。注:本書執筆時点でGB2312のサポートについてはテストされていません。
本書の情報で不充分と思われる場合は、Daisyサポートメーリングリストまでご連絡ください。

Valid XHTML 1.0!