Lyrics Time Tag Editor 略してLyricsTTE Version 1.1.1b (2012 8/26) ■概要 lrcファイル、いわゆるタイムタグ付き歌詞ファイルを編集します。 特に微妙なタグ時間操作を視覚的に行うことが出来ます。 行単位のみで、いわゆるカラオケタグには対応していません。 まだユーザーが自分一人だけなのでデバッグが十分ではありません。ご了承ください ■動作環境 .NET Framework 2.0 msvcr100.dllはもう要らないはず。 現状の動作確認環境(開発環境)はWindowsXP SP3のみ Windows2000では「プロシージャ エントリ ポイント DecodePointer がダイナミック リンク ライブラリ KERNEL32.dll から見つかりませんでした。」 ■簡易使用説明 適当な別のテキストエディタで歌詞を入力して保存しておく。 タブページTextEditのテキストボックスにファイルをドラッグアンドドロップ。 テキストボックス以外の部分にサウンドファイルをドラッグアンドドロップ。このソフトだけでは普通のWavファイルしか読めません。 タブページをTagStampにして「再生」。タイミングを合わせて「タグ入力」。 タブをViewTuningに。タグのある行をダブルクリックすると、そのタグ時間から再生して上の波形表示がそこに移動。 波形表示の線は、緑が現在のタグ位置、赤が次のタグ位置、青が手前のタグ位置 緑と赤は上の方で掴んで移動可能なので、これで微調整。 調整が完了したら、TexEditに戻って保存。 PlayTestで簡単な表示テストも可能。 スクリーンショット付きでもうちょっと見やすいのは http://hp.vector.co.jp/authors/VA025927/lyricstte/example.html ■操作説明 ◆波形表示 画面内操作: TextEdit,TagStamp: 左ドラッグ:停止時のみスクロール ViewTuning: クリック:リストビューにフォーカス 左ドラッグ:スクロール       緑線(選択タグ時間)・赤線(次のタグ時間)の上部でカーソル変化 その状態でドラッグでタグ時間変更 左ダブルクリック:現在の選択行を再生 右ダブルクリック:一秒再生 カーソル位置によって再生位置変化(緑の手前1秒/緑から一秒/赤の手前一秒/赤から一秒) 右ドラッグ:選択タグ移動 右に移動で次に、左で前に 一度に一つしか進みません トラックバー:再生点(灰色の線)の位置 再生:再生点の位置から再生。TextEdit,TagStamp時は再生点にあわせて波形表示が自動スクロール。 停止:停止 開く:サウンドファイルを開く 右上の数値ボックス:表示倍率 左下の数値ボックス:基準点の表示位置の画面左からのピクセル数 ◆TextEdit テキストボックス:ただのテキストボックス ドラッグアンドドロップで歌詞ファイルを開く フォント:テキストボックスのフォントを選択 ピリオド/コロン:タグの小数点位置の文字選択 [00:00?00] リセット:テキストと歌詞ファイル名を消去 開く:歌詞ファイルを開く 保存:名前を付けて保存 上書き:上書き保存 Shift-JIS:開く/保存する時の文字エンコード ◆TabStamp タグ入力:波形表示の基準点の時間を選択している行に入力して次の行に移動 ↓:次の行に移動 ↑:前の行に移動 タグ消去:選択行のタグを消去 フォント:リストビューのフォントを選択 ViewTuningのリストビューと共有 グリッド表示:リストビューにグリッド表示 ViewTuningのリストビューと共有 リストビューキー操作: Enter:選択行に基準点の時間を入力して次の行へ Space:選択行のタグを消去して次の行へ BackSpace:選択行の一つ前の行に移動してタグを消去 Delete:選択行のタグを消去 リストビュー右クリックメニュー: タイムタグ消去:タグ消去 この行を再生:タグの時間から再生 行挿入:ここに空行を挿入 ◆ViewTuning フォント、グリッド表示:TabStampの物と同一 タグ時間スライド:右の数値ボックスの秒数を、選択行以下のすべてのタグに加算します リストビュー操作: ダブルクリック:基準点をその時間に移動して、次のタグ時間まで再生 タグがなければなにもしない リストビュー右クリックメニュー: タイムタグ記入:手前のタイムタグから最大1秒足した時間でタグ入力 タイムタグ消去:タグ消去 この行を再生:ダブルクリックと同じ動作 行挿入:ここに空行を挿入 ◆PlayTest 配置  水平文字配置:そのまま。左寄せ センタリング 右寄せ  現在行位置:再生行の画面内での位置 上、真ん中、下  マージン:左右マージン(ピクセル単位) フォントとカラー  フォント:表示に使うフォントをダイアログで選択  色パネル:左上が再生行 左下がその他の行 右が背景 クリックで色選択ダイアログ  アンチエイリアス:フォントをアンチエイリアスで表示する  縁取り:縁取り文字で表示 横の数値は幅  色パネル:縁取りの色 上が再生行、下がその他の行 その他  スクロール時間:一行のスクロールに掛ける最大の時間(ミリ秒単位) マイナスは常時スクロール(次のタグ時間-現在のタグ時間)  スクロールフェード:スクロール以外の状態変化に掛ける最大時間 スクロール時間より長い場合はスクロール時間に合わせる  再生背景色:再生行の背景色 数値はα値、パネルがカラー 文字スペース(全てピクセル単位)  行間:行間のスペース  文字間:文字のスペース  行間2:ルビのない行の上への追加行間  ルビ下間:ルビと本文の間のスペース 背景画像  ダブルクリック:ダイアログ  右クリック:メニュー  画像ファイルドロップ:ファイル読み込み ■約束事  このソフトを使って、何か起こっても責任は取れません。  ただし何が起きたか伝えて貰えれば、バグであれば対処出来るかもしれません。  このプログラムの著作権はJunaにあるということにしておいてください  常識的な範囲(あいまい)で自由にしてもらっていいです  ソースも公開しているので改良等ご自由に。 ■連絡先 http://hp.vector.co.jp/authors/VA025927/ 一応掲示板があるけどあんまり見てない juna_wint@yahoo.co.jp このメールアドレスはスパムも多いので、見逃すかも。 一応スパムも全部タイトルは確認しているけど。 Juna_idlerでTwitterをやってなくもないんだが、 全然つぶやかないし、ちょくちょく見てる訳でもない。 http://juna-idler.blogspot.com/ なんとなくブログでもやってみた ■履歴 2012 8/26 (Ver.1.1.1b) [開く]ボタンで音楽ファイルを開く時に、常にnull参照が発生してエラーになっていたのを修正 2012 1/21 (Ver.1.1b) 表示DLLを最新版で調整 背景画像関連を削除 2011 11/28 RKLyricsView.dll更新に合わせて微調整 テキストにリセットボタン追加 2011 11/17 表示専用プログラム用に書き替えたRKLyricsView.dllに合わせて微調整 2011 10/28 実験的に背景画像を表示出来るように。表示DLLのデバッグの意味合いが強い。 2011 10/20 (Ver.1.0.1b) TextとStampの再生中やTestの時も画面右ドラッグで再生位置を変更できるように変更 2011 10/12 (Ver.1.0.0b) Karaoke用に弄っていたC++でのプログラムでルビ表示が出来るようになったので、 せっかくだから表示部分をDLLでインポート。 一月ほど使って基礎部分は特に問題なさそうなので、バージョンを1に。 2011 9/16 (Ver.0.10.0b) プロジェクトを作り直し、デザインをコピーする事で、必要な.NET frameworkを2.0に落とせたと思う。 こっそりとC++で作ったDLLの基本ライブラリを静的リンクにして、msvcr100.dllが要らないようになったと思う。 2011 9/15 ひととおり出来たのでとりあえずのリファクタリング。が一段落 2011 9/9 (Ver.0.92b) PlayTestにスクロールフェードを追加 2011 9/4 全タグ時間スライドでマイナスになってしまうのを修正 2011 8/25(Ver.0.91b) 編集中に、終了/ファイルを読み込もうとした時、確認を取るようにした 2011 8/23 (Ver.0.9b) テストモード追加 1/100秒区切りのピリオド/コロン選択を可能に 残りの0.1は予備 2011 8/19 (Ver.0.8b) とりあえず公開版 0.8なのは、まだ個人的に欲しい機能がすべて揃ってないから。 ■戯言 タグ時間移動に「選択行から下」、「選択行から上」が欲しくなった タグ位置スライドもそろそろ試しに実装するか WavPackは読めたけど、FLACがまずlibFLACのビルドが成功しない。5年前は行けたんだがな。 そういう訳でとりあえずLosslessはWavPackで貯める事に。 カラオケタグの発想もあるけど、めんどくさそうだし、そもそも俺の需要がない。 富豪的プログラミングで力押しは楽なんだが、なんか収まりが悪いというか。楽なんだけど。 画像表示ぐらいは、大きくするとCPU使用率が悲鳴を上げるから、ある程度は最適化した方がいい気もするんだが。 ↓とりあえずそれでやってみた。 MP3のdecoderはlibmpg123でいちおう出来たんだがライセンス(LGPL2.1)がなんだかよく解らない。 あとlibmpg123自体がいろいろ複雑そうなので、一緒について来たVC用のプロジェクトでstatic libraryを作って利用してるから、 添付するべきソースとか言われてもどの部分かわからん。mpg123そのまま全部でもいいのか? ■要らない履歴 2011 8/8 どうせ「ウインドウズ」なアプリを作るなら、あまりいい話を聞かないC++CLRより、 試しにC#でやってみるか?と、C#をインストールしてプロジェクト作成。 C++でLyricsTTEを作ってしまったので、プロジェクト名をLyricsTTE_CSにした。 2011 8/7 インスパイアされたので、VC++をインストールしてCLRでプロジェクトを作ってみる。 2011 8月上旬頃 ふと置いてあったMr.PCという雑誌でALSongというソフトを見つける。 実際使ってみると、歌詞管理が自己完結しててどうこうできないし、 そもそも歌詞表示演出が微妙だったりと、満足のいく物ではなかったが、 詳細リストビューを使った選択と一行再生だけは目から鱗だった。 2011 7月下旬頃 HDククラッシュでいろいろリセットされて再びlrcに興味が向く。 2011 7/3 ハードディスクがクラッシュ いろいろ失われた中に以前のソースも含まれる。 2011 1月頃 想定した仕様が面倒で捗らない。 他のことに気を取られて、だんだんやる気がなくなる。 2010 12月末 SONYのウォークマン(NW-E53)を買う。 一曲、自作lrcを作るも、あまりにも時間がかかりすぎてうんざり。 lrc作成ソフトを思いめぐらせる。