オブジェクトの作成メソッド:
MP3 ファイルを作成するオブジェクト。
ファイル作成の手順はおよそこのようになります:
// 入力音声 (選択範囲)
var clip = Application.ActiveDocument.CreateSoundClip();
// FileWriter_MP3 オブジェクトを作成する.
var writer = Application.CreateFileWriter("mp3");
// 適当な圧縮フォーマットを選ぶ.
var fmts = writer.CodecInfo.GetCodecFormats(44100, 2);
fmts = fmts.toArray();
var i;
for (i in fmts) {
if (Math.round(fmts[i].Bitrate / 1000) == 128) {
// フォーマットをセットする.
writer.CodecFormat = fmts[i];
break;
}
}
// ファイル作成
writer.Process(clip, "D:\\Sound Output\\test1.mp3");
Dim clip, writer, fmts, f
' 入力音声 (選択範囲)
Set clip = Application.ActiveDocument.CreateSoundClip
' FileWriter_MP3 オブジェクトを作成する.
Set writer = Application.CreateFileWriter("mp3")
' 適当な圧縮フォーマットを選ぶ.
fmts = writer.CodecInfo.GetCodecFormats(44100, 2)
For Each f In fmts
If Round(f.Bitrate / 1000) = 128 Then
' フォーマットをセットする.
writer.CodecFormat = f
Exit For
End If
Next
' ファイル作成
writer.Process clip, "D:\Sound Output\test1.mp3"
ラベルを ID3v2 の同期歌詞 (Synchronized Lyrics) として添付するには以下のように SoundClip オブジェクトのテキスト情報を改変します。
// 入力音声 (選択範囲)
var clip = Application.ActiveDocument.CreateSoundClip();
var ap = clip.Text.GetAppPrivate();
ap = ap.toArray();
var i;
for (i = 0; i < ap.length; ++i) {
if (ap[i].substring(0, 7).toUpperCase() == "SYNLYR=")
break;
}
// 歌詞の場合 1.
ap[i] = "SYNLYR=1";
// 関数の実体は Text.SetAppPrivate メソッドの項を参照.
vararg_call(clip.Text, "SetAppPrivate", ap);
Dim clip, ap, i
' 入力音声 (選択範囲)
Set clip = Application.ActiveDocument.CreateSoundClip
ap = clip.Text.GetAppPrivate
For i = LBound(ap) To UBound(ap)
If StrComp(Left(ap(i), 7), "SYNLYR=", 1) = 0 Then
Exit For
End If
Next
If i > UBound(ap) Then
' 配列要素を追加する.
ReDim Preserve ap(i)
End If
' 歌詞の場合 1.
ap(i) = "SYNLYR=1"
' 手続きの実体は Text.SetAppPrivate メソッドの項を参照.
vararg_call clip.Text, "SetAppPrivate", ap
Sazanami Help
Copyright (c) 2023 Narumi Watanabe.
All Rights Reserved.