ASS(Advanced SubStation Alpha)@wiki
http://w.atwiki.jp/ass_advancedssa/
ASS(Advanced SubStation Alpha)@wiki
ja
2010-03-30T04:41:05+09:00
1269891665
-
ハードサブ
https://w.atwiki.jp/ass_advancedssa/pages/66.html
*&font(20pt,#00ACFF){ハードサブ}
ここではVirtualDubとVSFilterを用いた方法を説明します。
**準備
***VirtualDub
http://www.virtualdub.org/
stable(安定版)を入手して下さい。
***VirtualDub 日本語化パッチ
http://tnetsixenon.xrea.jp/rnote/localization/virtualdub.html
VirtualDub本体のバージョンに合ったものを入手して下さい。
***VSFilter
http://sourceforge.net/projects/guliverkli2/
Download>DirectShow Filters>DirectVobSub>VSFilterの順に選択して下さい。
ダウンロードしたら、中のVSFilter.dllの拡張子を.vdfに変更した上で、VirtualDubのpluginsフォルダに入れて下さい。
**字幕の合成
+VirutualDubを起動します。
+メニューのファイル>ビデオファイルを開くから映像ファイルを開きます。
+メニューの映像>フィルターをクリックします。
+追加をクリックします。
+TextSubを選択し、OKをクリックします。
+ASSファイルを選択し、開くをクリックします。
+OKをクリックします。
+右側の出力映像に字幕が表示されるので、確認します。
+出力ファイルを圧縮する場合は、メニューの映像(音声)>フルプロセッシング(完全処理)を選択した上で、映像(音声)>圧縮から、圧縮方法を選んで下さい。&br()なお、このときコーデックが必要になりますので、予めインストールしておいて下さい。
+メニューのファイル>名前を付けて保存から保存します。
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2010-03-30T04:41:05+09:00
1269891665
-
ソフトサブ
https://w.atwiki.jp/ass_advancedssa/pages/65.html
*&font(20pt,#00ACFF){ソフトサブ}
ここでは、DirectShow対応プレイヤーとVSFilterを用いた方法を説明します。
**準備
***DirectShow対応プレイヤー
Windows標準のWindows Media Playerなどで大丈夫です。
***VSFilter
&link2(SourceForge.net:Guliverkli2,http://sourceforge.net/projects/guliverkli2/,target=blank)
Download>DirectShow Filters>DirectVobSub>VSFilterの順に選択して下さい。
ダウンロードしたら、コマンドプロンプト(cmd.exe)で「regsvr32 展開したフォルダ\VSFilter.dll」を実行して下さい。
なおWindows Vistaの場合、コマンドプロンプトを管理者権限で実行する必要があります。
**再生方法
+映像ファイルとASSファイルを同じ階層に置き、拡張子以外を同じ名前にします。
+映像ファイルをDirectShow対応プレイヤーで再生すれば、字幕も再生されます。
なお、カラオケ字幕を表示する場合は以下の設定を行って下さい。
+再生中にタスクバーに表示されるアイコンをダブルクリックします。
+Miscタブ内にあるPre-buffer usbpicturesのチェックを外します。
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-04T00:43:27+09:00
1244043807
-
\kt
https://w.atwiki.jp/ass_advancedssa/pages/64.html
*&font(20pt,#00ACFF){\kt カラオケエフェクトの絶対時間}
***書式
-&font(blue){\kt<絶対時間>}
※このタグは&font(blue){VSFilter 2.39以降}でのみ使用可です。
またソフトサブには向いていません。
***説明
[[カラオケエフェクトタグ>\k]]に併記することで、エフェクトの順番を変えたりオーバーラップさせることができます。
<絶対時間>は字幕が表示されてからの時間を1/100秒単位で指定します。
**&font(15pt,#FF0000){注意!}
例については、編集完了するまでお待ち下さい。
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-04T01:28:45+09:00
1244046525
-
ASSの再生方法
https://w.atwiki.jp/ass_advancedssa/pages/63.html
*&font(20pt,#00ACFF){ASSの再生方法}
ASSを含め、字幕ファイルの再生方法には[[ソフトサブ]]と[[ハードサブ]]という、大きく分けて2つの方法があります。
**[[ソフトサブ]]
ソフトサブとは映像を再生すると同時に字幕を重ねて表示する方法です。
再生するにはASSに対応したプレイヤーを用意する必要があります。
また、使用するフォントを再生側が用意する必要があるので、特殊なフォントを用いるのには向きません。
再生と同時に処理をするため、重いエフェクトなどをかけることにも向きません。
一方で、字幕のオン/オフや多重字幕を簡単に切り替えることができます。
また、エンドユーザーが字幕の修正をすることも簡単にできます。
**[[ハードサブ]]
ハードサブとは字幕を映像に焼き込んでしまう方法です。
出来上がった映像を一般的な映像フォーマットにしておけば、一般的なプレイヤーで再生することもできます。
特殊なフォントや重いエフェクトを用いていても何の問題もありません。
一方で、字幕のオン/オフや多重字幕を切り替えることはできません。
エンドユーザーが字幕の修正をすることも難しいでしょう。
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-03T01:30:04+09:00
1243960204
-
\clip
https://w.atwiki.jp/ass_advancedssa/pages/62.html
*&font(20pt,#00ACFF){\clip, \iclip 字幕を指定した範囲で切り取る}
***書式
-\clip(<x1>,<y1>,<x2>,<y2>)
-\clip(<ドローイングコマンド>)
-\clip(<スケール>,<ドローイングコマンド>)
-&font(blue){\iclip(<x1>,<y1>,<x2>,<y2>)}
-&font(blue){\iclip(<ドローイングコマンド>)}
-&font(blue){\iclip(<スケール>,<ドローイングコマンド>)}
※&font(blue){青字}の書式は&font(blue){VSFilter 2.39以降}でのみ使用可です。
またソフトサブには向いていません。
***説明
\clipでは指定した範囲にかかる部分のみを表示することができます。
逆に\iclipでは指定した範囲にかからない部分のみを表示することができます。
<x1>,<y1>,<x2>,<y2>では画面左上からのピクセル数を指定します。
これらは整数でなければなりませんでしたが、&font(blue){VSFilter 2.39以降}では小数も使用可になりました。
x=<x1>,y=<y1>,x=<x2>,y=<y2>の4直線で囲まれた矩形の範囲が指定範囲になります。
また[[ドローイングコマンド]]を用いて、複雑な図形を指定範囲とすることもできます。
このときの座標も、画面左上からのピクセル数で指定します。
<スケール>は[[\p]]のものと同様、2^(<スケール>-1)倍の大きさで図形を指定できます。
<スケール>を省略した場合や<スケール>が1の場合は、画面上の座標で指定することになります。
上記の矩形を指定範囲にしたときと異なり、[[\t]]によって連続的に指定範囲を変化させることはできません。
指定範囲を変化させたい場合には、1フレームごとに指定範囲で切り取った同じ字幕を並べていかなくてはなりません。
\iclipを使用した場合、その字幕イベント内の全ての切り取り範囲が逆転します。
***例
-{\clip(318,215,355,265)}インスパイア
-{\iclip(318,215,355,265)}インスパイア
-
2009-06-04T01:26:39+09:00
1244046399
-
\t
https://w.atwiki.jp/ass_advancedssa/pages/61.html
*&font(20pt,#00ACFF){\t タグの変数を連続的に変化させる}
***書式
-\t(<変化させるタグ>)
-\t(<加速度>,<変化させるタグ>)
-\t(<t1>,<t2>,<変化させるタグ>)
-\t(<t1>,<t2>,<加速度>,<変化させるタグ>)
***説明
<変化させるタグ>の変数を変化させて、スタイルを連続的に変化させることができます。
<変化させるタグ>に複数のタグを含ませることもできます。
<変化させるタグ>となり得るのは以下のタグだけです。
&b(){太字}のタグは&font(blue){VSFilter 2.39以降}でのみ使用可です。
-[[\fs]]
-[[\fsp]]
-[[\c]], [[\1c>\c]], [[\2c>\c]], [[\3c>\c]], [[\4c>\c]]
-[[\alpha]], [[\1a>\alpha]], [[\2a>\alpha]], [[\3a>\alpha]], [[\4a>\alpha]]
-[[\fscx>\fsc]], [[\fscy>\fsc]]
-[[\frx>\fr]], [[\fry>\fr]], [[\frz>\fr]], [[\fr]]
-&b(){[[\fax>\fa]]}, &b(){[[\fay>\fa]]}
-[[\bord]], &b(){[[\xbord>\bord]]}, &b(){[[\ybord>\bord]]}
-[[\shad]], &b(){[[\xshad>\shad]]}, &b(){[[\yshad>\shad]]}
-&b(){[[\be]]}, &b(){[[\blur>\be]]}
-[[\clip]], &b(){[[\iclip>\clip]]}(書式が矩形のもののみ)
<t1>と<t2>は表示されてからの時間をミリ秒単位で指定します。
<t1>から<t2>にかけて変化します。
<t1>と<t2>を省略した場合には、表示時間全体をかけて変化します。
<加速度>を用いると、直線的ではなく指数関数的に変化させることができます。
<加速度>が1のとき、直線的に変化します。
<加速度>が1より小さい場合、始めは速く、だんだんゆっくりになります。
<加速度>が1より大き
2009-06-04T02:25:32+09:00
1244049932
-
\fad
https://w.atwiki.jp/ass_advancedssa/pages/60.html
*&font(20pt,#00ACFF){\fad, \fade フェード}
***書式
-\fad(<フェードイン>,<フェードアウト>)
-\fade(<a1>,<a2>,<a3>,<t1>,<t2>,<t3>,<t4>)
***説明
\fadでは字幕をフェードインやフェードアウトさせることができます。
<フェードイン>と<フェードアウト>はミリ秒単位で指定します。
<フェードイン>や<フェードアウト>を0にすると、フェードしなくなります。
フェードを加えても字幕が表示される時間は変わらず、表示時間内でフェードが施されます。
そのため<フェードイン>と<フェードアウト>を合わせた時間が表示時間より長くなってはいけません。
\fadeではより複雑なフェードをすることができます。
<a1>,<a2>,<a3>は透明度を0~255の数値で指定します。
0は完全に不透明、255は完全に透明になります。
<t1>,<t2>,<t3>,<t4>は字幕が表示されてからの時間をミリ秒単位で指定します。
+<t1>より前では字幕の透明度は<a1>になります。
+<t1>から<t2>にかけて、透明度が<a1>から<a2>へと変化します。
+<t2>から<t3>までの間では、透明度は<a2>になります。
+<t3>から<t4>にかけて、透明度が<a2>から<a3>へと変化します。
+<t4>より後では、透明度は<a3>になります。
**&font(15pt,#FF0000){注意!}
例については、編集完了するまでお待ち下さい。
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-04T01:29:32+09:00
1244046572
-
\org
https://w.atwiki.jp/ass_advancedssa/pages/59.html
*&font(20pt,#00ACFF){\org 回転の中心}
***書式
-\org(<x>,<y>)
***説明
[[ローテーションタグ>\fr]]の回転の中心座標をピクセル数で指定できます。
その字幕イベント内の全てのローテーションタグに影響します。
<x>と<y>は整数でなければなりません。
その字幕イベント内に\orgがない場合、回転の中心は[[アライメントタグ>\an]]で定められた字幕の基準点になります。
つまり\orgがなくて\moveがある場合、回転の中心は動きます。
回転の中心を画面外に置くことも可能です。
回転の中心を画面外の遠い位置に置き、小さな角度で傾けると、字幕はほぼ直線に動きます。
これをコントロールするのは難しいですが、移動速度を変化させたり何度も移動したりといった[[\move]]では不可能な移動が可能になります。
1つの字幕イベントには\orgを1つまでしか配置できません。
複数配置した場合には、最初の1つのみが有効になります。
***例
-{\an5}{\frz30}斜めに傾けた後 ←一行の中心を基準に30度回転
-{\an5}{\org(100,240)}{\frz30}斜めに傾けた後 ←座標100,240を基準に、一行の中心点を30度回転
***出力結果(クリックで大きな画像)
&blankimg(sample_org_01.png,width=120,height=90) &blankimg(sample_org_02.png,width=120,height=90) &blankimg(sample_org_03.png,width=120,height=90)
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-04T00:51:50+09:00
1244044310
-
\move
https://w.atwiki.jp/ass_advancedssa/pages/58.html
*&font(20pt,#00ACFF){\move 字幕を直線移動させる}
***書式
-\move(<x1>,<y1>,<x2>,<y2>)
-\move(<x1>,<y1>,<x2>,<y2>,<t1>,<t2>)
***説明
[[\pos]]と同じく、表示する座標をピクセル数で指定できますが、このタグでは字幕を動かすことができます。
<x1>,<y1>,<x2>,<y2>は整数でなければなりませんでしたが、&font(blue){VSFilter 2.39以降}では小数も可能になりました。
<t1>,<t2>は表示開始からの時間をミリ秒単位で指定します。
<t1>から<t2>にかけて、座標(<x1>,<y1>)から座標(<x2>,<y2>)へと移動します。
<t1>と<t2>を省略するか、両方ともを0にすると、表示時間全体をかけて移動します。
移動速度は常に一定であり、変化させることはできません。
また1つの字幕イベントには\posか\moveのどちらか1つしか置くことはできません。
1つの字幕イベントに\moveを複数配置することもできません。
2回移動させたい場合には、字幕イベントを2つに分ける必要があります。
**&font(15pt,#FF0000){注意!}
例については、編集完了するまでお待ち下さい。
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-04T01:29:15+09:00
1244046555
-
\pos
https://w.atwiki.jp/ass_advancedssa/pages/57.html
*&font(20pt,#00ACFF){\pos 表示座標}
***書式
-\pos(<x>,<y>)
***説明
字幕を表示する座標をピクセル数で指定できます。
<x>と<y>は整数でなければなりませんでしたが、&font(blue){VSFilter 2.39以降}では小数も可能になりました。
ここで指定するポイントは、[[アライメントタグ>\an]]で指定された基準点になります。
例えば\an7では、字幕の左上隅の座標を指定することになります。
***例
-{\an1}{\pos(300,200)}字幕表示位置 ←一行の左下(\an1)が、300,200の位置
-{\an5}{\pos(300,200)}字幕表示位置 ←一行の真ん中(\an5)が、300,200の位置
-{\an9}{\pos(300,200)}字幕表示位置 ←一行の右上(\an9)が、300,200の位置
***出力結果(クリックで大きな画像)
&blankimg(sample_pos_01.png,width=120,height=90) &blankimg(sample_pos_02.png,width=120,height=90) &blankimg(sample_pos_03.png,width=120,height=90)
&link_edit(text=このページを編集)
#comment(below,size=100,num=20,nsize=30)
2009-06-03T01:27:06+09:00
1243960026