
|
Studio ftn Score Editor Classic 6 完成。
バージョン6の開発を終えて
あらすじ
![]() 2008-05-31
ここで気が付いたのであるが、印刷部分が全くの作り直しとなってしまう。 出来る限り、この部分に関して、簡単にできるように検討しておく必要がありそうである。
その他、バグ修正や、機能追加を対応した。 中でも、楽譜ファイルなどの初期フォルダが指定できるようになったので、 便利かもしれない。 今回大変だったのが説明書の更新である。 インターネット接続における説明が難しかった。 説明がまわりくどくなり、かえって、不安にならないか心配であった。 最終的には、それなりに分かりやすく説明できたと思う。 それと、Score Editor で作成した素材の規約を分かりやすく、 具体的に紹介した(このソフトの取り扱いについて)。 これは、どこまで作成した素材等が自由に使えるかを、 考えさせられる問い合わせがあったため、 誤解が生じたりしないよう、具体的に説明した。 Score Editor を実行してソフト上で作成したものに関しては、 基本的には、ユーザのものとなる。そのため作者へ報告する必要もない。 このことに関して図を入れて具体的に説明した。 作成した素材の取り扱いに関して、不安がある場合は、 一度(このソフトの取り扱いについて)を参照される事をお勧めします。 今回のバージョンであるが、問題なければベクターへもアップする予定。
ベクターへ公開可能なソフトウエアの規定である。 インターネット接続をする際に事前にユーザへの了承を得るなどの対策がソフトウエアか説明書等に必要になるようだ。 詳しい規約の発表は数ヵ月後になるようであるが、 Score Editor も、その対応を行う事にした。現在バグ対応も含め対策中。 もともと Score Editor は、バージョン4.4の段階で、個人情報対策を行っており、 安全な仕組みが備わっている。Score Editor が送信する情報は、全てハッシュ値に変換してから、 送信している。その情報から元の情報を復元することは100%不可能である。 そもそも、何の価値のない数値に変換しているので、それを得た所で無意味であろう。 この情報を、Studio ftn のサーバと照合する事で、正規ユーザを識別している。 サーバの中の情報もまたハッシュ値なため、万が一サーバ情報が漏洩したとしても、ユーザは被害に合わない。 無意味な数値が得られるだけである。そもそも、個人情報は使用していない。 このことは、大まかであるが説明書にも記載してある。 しかし、勝手に何かを送信されるとユーザは不安であるし、 何のための接続なのかユーザは知りたいと思う。 いちいちインストール時に説明書を読んでもらうのも面倒なので、 接続時には事前に確認画面を出す仕様に変更する。 この画面から、説明書を参照する事も可能である。 画面の表示は、設定画面でON/OFFできるようにしたい。 しかし、Score Editor Classic の自動バージョンチェックの際にこの画面が毎回出るのもうっとおしい。 Vista の場合は、現状でも、Vista の画面が毎回出るが、 自動バージョンチェックをOFFにしてしまうと、せっかくの機能が台無しとなる。 これは、Score Editor を起動するたびに、チェックするのが問題なので、 最新チェックオプションがONの場合、一日に一回だけチェックを行うよう仕様を変更する。 もうひとつはオンラインマニュアルの参照である。 これは、エクスプローラを起動しているだけであるので、確認画面を出すかは微妙であるが、 勝手に、インターネットを参照する事に不満を抱くユーザもいるかもしれない。 うっとおしければ確認画面表示をOFFにすれば良いので、 ひとまずは、表示するようにしたい。 と、思ったが、オンラインマニュアル参照の場合はメニューに「オンラインマニュアル」と 書かれているので、いちいち確認画面を出す必要はないだろう。
バージョン7でまずやるべき事は、 パートデータ構造の改善と時間軸入力、音符描画等の3つである。 これがうまく行けば演奏部分を対応し、後は時間軸系の音楽記号を追加していくだけである。 この3点の設計は大体終わったので、試作作りを少しずつ進めてみたい。
決まった時間に寝ようとしても眠れなくなる現象であるが、 過去に夜勤などの経験があると、ちょっとしたことでこうなってしまう。 夜勤は絶対にやらないほうが良い。睡眠リズムが崩れると、内臓が働かなくなったり、 体や目、脳の修復をいつやってよいのか分からなくなると思われる。 これが習慣化する事で、さまざまな症状を引き起こす。 実は、何年か前の夜勤勤務のダメージがあまりにも大きく、 Score Editor の開発を選ぶ運命となった。 それ以前、プログラマの一日20時間労働を続けた事でも?相当なダメージがきており、 現在、体調管理に苦しむこととなった。 一言で言えば、脳が体調を自動制御してくれない症状にずっと苦労している。 こうなると、意識的に自分を制御しなければならなくなる。 これが、コンピュータ業務を長く続けた事による、後遺症とも言える症状である。 現代において同じような症状で苦労している人は多いのではないかと思う。 人類の歴史の中で、食べて体を動かすスタイルであったものが、 コンピュータの普及によって、頭だけ動かすスタイルになりつつある。 これは、生き物にとって未知の生活スタイルなのである。おそらく、生命として、 そのような仕組みは備わっていないと思われる。 そのような訳で、再びバージョン7開発の再開としたい。
しかし、食中毒か風邪か謎の症状が続いている。 どうも、気分が悪く食欲もない。風邪の症状に似ているが、 時々、吐き気を伴う事もある。さっさと完治させたいので、 本日は休む事にする。いろいろやりたい事がある時に限って、 このような症状が伴うとは、なんとも悲しい。
後半の症状からするとインフルエンザ系と思われる。 ウイルス系によく効くのが、りんごジュースや生キャベツである。 学生時代に皆勤賞をもらった経験があるのであるが、 その時に、試行錯誤であみ出した知恵である。 さらに、ビタミンB群、貝類など、が効果的で、 それら、集中対策により、なんとか1日で回復傾向に持っていく事ができた。 素早く対処をすれば、症状はひどくならないうちに、風邪は治す事ができる。 ほったらかしにしてると、鼻や喉がやられるのである。 さらに、水分を沢山取って、体を温め、ひたすら寝続ける事が、 風邪を治す最高の方法だと思っている。今回もこの方法で治す事が出来た。 しかしながら、あまりにも、治るのが早いので、 食中毒の可能性もあるが、原因はよく分からない。 回復後のだるさなどを考えても、風邪のパターンによく似ている。 ある、食べ物が引き金になって、風邪をひいたというのは、なんとも不思議である。 潜伏していたウイルスが、一時的な体力の低下により、一気に活動をしたのかもしれない。 その数週間前、背骨が痛くなり、いつまでも回復しない症状にも苦しんでいたが、 潜伏していたウイルスだったのだろうか? 背骨が痛くなったのは2回目であるが、原因が分からない。 1回目は、1ヶ月間痛みが続き、突然朝に完治した。2回目のも同様の症状。 朝起きると、痛く、それ以外の時間帯では痛くならない、不思議な症状。 風邪の治りとともに、この痛みの症状も消えた事から、ウイルス説が考えられる。 ともかく、現在、だるさは残るものの、設計くらいならば可能な状態となった。 ある、食べ物を食べる前は、元気だったのに、こんな事になろうとは本当に驚いた。
オーケストラの本を読んで、いろいろな楽譜表現を確認している。 パートデータの構成方法さえしっかりと頭の中でまとまれば、開発がスムーズになりそう。 本来、その設計を行う予定であったが、具合が悪いため休憩中。 体調が改善したら復帰したい。
他には、書き込み音階の視聴機能。装飾記号が音符の位置に合う場合は音符の色を変えて、 その装飾記号の書き込み位置が正しい事を示す機能。 こういった入力補助機能を追加する予定で、それらの詳細な設計を行ってみた。 詳細とはいえ、堅苦しいものではなく、おおざっぱな画面イメージや、 操作方法のメモである。 バージョン7で対応予定の他の機能に関しても、詳細な設計をどんどん行っていこうと思う。 ところで、最近、作曲をしていて気が付いた事がある。 音楽の本質は、聴いていて心地よいか。 という事が重要である事が今更ながら分かった。 たとえ、騒がしい音楽や、悲しい音楽であっても、 なんらかの心地よさがなければ、音楽として失敗作かもしれない。 いわゆる、素人が作ってしまう音楽は、心地よくない音楽なのである。 もちろん、作者も素人の一人である。 今までは、和音が正しければ、響きが綺麗になり、 心地よいものだと思っていたが、これは、理論を知っている作曲者だけがそう思うだけであって、 他の人が聴いた時は、押し付けっぽい感じに聞こえがちになる。 音楽理論を何もしらない、ドレミファソラシドすら知らない人が聴くと、 理論が強く出る音楽は、聴いて心地よくはない。 あまり長い間、和音が鳴ったり、音数が多い和音が鳴り続けると、 不快感となる。 これを解決する方法はクラシックでも存在すると思うが、 最も簡単なのが、ポピュラー系の音楽である。 どうすれば心地よくなるかと考えれば、リズムがやはり重要になると思われる。 リズムにメロディがうまく乗った時に、心地よいと感じるのではないかと思われる。 ただし、リズムが永遠になっている状態であると、心地よくない。 ここで、控えめのリズムと、メロディに近いリズムを、バランスよく取り入れ、 メインのメロディとうまく一体感を出すと、とても聴きやすくなる。 リズムがないと、メロディの流れが読めなくなるため、 心地よい音楽にするには、リズムがとても重要だと思われる。 編入楽器みたいな存在を利用してリズムを時々鳴らす。 肝心な時だけ、低音を入れたり、和音を入れたりする。 いわゆる、ポピュラー系、の構造であるが、もっと基本的な考えにするとなれば、 簡単な歌の音楽の手法だと思う。 いかなるときも、音がじゃまをしてはいけないのである。 音で表現する音楽なのに、音がじゃまになってはならない。 そのため、そう簡単ではない。 こういった心地よい音楽を作るのは、とても難しい事が分かった。 難しいというよりは、気配りが要る。といった具合である。 こういった単純な音楽は、面白くないと思っていたが、 多くの人は、このような曲を好む傾向があり、決して単純ではない事が分かってきた。 いやいやながら、単純な歌曲を作っていると、今まで作った和音の曲が、 とても、聞き苦しく感じるようになってきた。それと同時に、簡単なメロディ曲に興味が引かれ始めている。 デモ曲として公開している曲も、ほとんど失敗作と判断できる。 聞き苦しいからである。和音を生かすにも、工夫が必要である。 ただし、和音を重視した曲はムードを高めるための曲だと思うし、 歌っぽいポピュラー曲は、心地よさを与えるための曲であると思う。 ftn が作っていた音楽は、ムードを高めるための曲ばかりだったのである。 それて、心地よさを与える作曲の練習や試行錯誤を最近始めた。 この練習をする事で、ムードを高める曲でも生かされてくるはずである。
バージョン7の企画書のようなものを作成してみた。 堅苦しいものではなく、バージョン7でどんな事をしたいかを、 メモ帳で書き記した程度である。この作業によって、バージョン7の全体が見えてきた。 バージョン7は、当初 Classic 版でやりたかった事のほとんどが実現されるといった具合でまとまった。 やりたいことが沢山あって、何をやってよいか分からなく混乱?していたが、 こういうときは、時間をきっちりと決めると良い事を思い出した。 一日の時間を区切るのが理想である。 バグ対応1時間、リリース作業1時間、バージョン7の開発1時間。 といった具合である。決めた時間内では、他の事を考えたりやってはいけない。 今やるべき事だけを考える。もし何も進まなくてもOKである。 ほかの事を考えなかった事がその日の成果である。 このような訓練を行うことで、余計な事を考えなくなる。 その時間になれば、必ず、やりたいことが出来る安心感もある。 決めた時間が全て終わってしまった場合は、それらの事を考えてはならない。 全て忘れるようにする。まったく別の事に目を向けるようにする。 ただし、突然のヒラメキが生じた場合はメモするに留める。 ところで、何か面白いソフトを開発している人がいないか、 窓の杜などで探してみたが、不思議なくらい面白いものがない。 もちろん ftn 自身感動が少ない状態という可能性が高いが、 とにかく、面白いものがない。 説明を読むだけで、こうしてこうやって、プログラムされていて、 このように動作するソフトだろう。と、すぐに分かってしまうのである。 所詮はフリーソフトなのだろうと、納得する。 同じ開発者の立場としても、実用的なソフトにするのは厳守するとして、 更に、これは?と思うようなソフトを作らなければならない。 そうしないと、面白くないのである。 こういうことを考えると、Score Editor の開発も、がんばらなければ。 という気になれる。 世の中の、面白くないソフトや、どんな簡単なソフトであっても、 開発は大変であるという事は、Score Editor の作者も認識している。 頭で考えるのは簡単でも、やってみると、難しいのである。 しかし、すべては、この段階から始まるものである。 Score Editor 1.0 を開発したときは、かなり感動していたが、 今思うと、この程度でよく、雑誌に載る事ができたものだと思う。 ソフトウエアは何年もかけて改善されていくのである。 がんばらなければならないと思わせられる。
現在、バージョン6のバグ対応を行っている。 SMFの設定項目が一部有効にならない問題、 フェルマータ有効範囲の改善、 ASIOの時のステータスバー表示にビット数を出さないようにする修正、 Vista 向けインストールマニュアルの修正。である。 ようやく対応のほうが終わり、明日にはリリースできる予定。 最近、音響関連に興味が流れ、なかなか開発に集中できない。 春になると、毎年、音響関連に興味が沸いてしまう。 というのも、今回の場合は、マイクを購入してしまったからである。 歌いたいからではなく、いろいろな音の収録と分析を楽しみたく購入した。 それで、サウンドツールのほうの最新版を開発したいのであるが、 Score Editor も開発しなければならず、集中できない。 そのほか作曲のほうがわりと調子がよく、開発に集中できない。 あれもこれもと手を付けたく、しかし、それぞれ大変な作業なので、 手が付かない。時々、このような状況に巻き込まれる。 この現象であるが、基本的には「逃げ」である。 しかし、脳が休憩を求めているサインでもある。 このような場合は、ふと、思ったときに、 思ったことを、少しだけでもよいから手を付ける事が重要である。何でも良い。 走る前に、まず、歩くことから始める。それがダメなら、立ち上がる事から始める。 左脳が疲れている時なので、やっぱり、休める必要がある。 脳は休む事無く、働くので脳の休憩をするにはコツがいる。 左脳の疲れを取るには右脳を活性化すると良い。その間、左脳が休憩するという具合。 交互に休憩する事で、脳の疲れを取る仕組みらしい。 このリズムが崩れると、脳が疲れやすくなるし、感動できなくなり、 何もしたくなくなる。 左脳は行動を止める脳で、右脳は行動を進める脳だと思う。 プログラマを長年やっていると、左脳が働きすぎてしまう傾向がある。 ここから抜け出すには、ふとした、思いを少しでも良いから、実際に行動してみる事である。 これを何十回と繰り返すうちに、いつのまにか普通に戻る。 考えなくても、なぜかうまく物事が進む。という状態になる。 久しぶりに、愚痴っぽい日記を書いてしまったが、 新しいバージョンを開発する時は、いつも、こんな具合である。 地道な積み重ねが重要だと思う。
きちんとアイコンを作りこむ事で愛着がわいてくる。
ところで、バージョン7であるが、本当はバージョン6よりも先に着手していた。 音源機能を先に改善すべきであると、判断し、急遽バージョン6の開発が始まったのである。 そのため、バージョン7の開発は、2006/11 に中断された。 今回、再び開発の再開という訳である。 バージョン7の目標はエディタ改善である。 時間軸対応を行う事が大きな目標となる。 つまり、クレッシェンドなどがバージョン7で対応となる。 楽譜方式において、時間軸対応は技術的にとても難しい。 画面仕様においても、設計が難しい。 しかし、バージョン6の困難な開発を乗り越える事ができた事は大きい。 バージョン7の開発は困難であるが、必ず実現できるはずである。
これにて、バージョン6に関しての作業は全て終わった。 ただ、ASIOを使用した場合のステータスバー表示にビット数が表示されてしまっているため、 時期を見て、更新版をリリースする予定。 インストールマニュアルにおいても、Vista のごみファイル削除方法を載せる必要がある。
ところで、バージョン7であるが、本当はバージョン6よりも先に着手していた。 音源機能を先に改善すべきであると、判断し、急遽バージョン6の開発が始まったのである。 そのため、バージョン7の開発は、2006/11 に中断された。 今回、再び開発の再開という訳である。 バージョン7の目標はエディタ改善である。 時間軸対応を行う事が大きな目標となる。 つまり、クレッシェンドなどがバージョン7で対応となる。 楽譜方式において、時間軸対応は技術的にとても難しい。 画面仕様においても、設計が難しい。 しかし、バージョン6の困難な開発を乗り越える事ができた事は大きい。 バージョン7の開発は困難であるが、必ず実現できるはずである。 〜 音符の向きを自動で正しく向かせるには限界がある事が分かった。 仮に楽譜上は美しく完璧になったとしても、ユーザがその向きではない。 と言えば、それまでである。 そこで、ユーザが音符の向きを決めてやる必要が出てくる。 メニューを増やせば良いのであるが、 なぜ、今まで、逆向き音符メニューがなかったかと言えば、 連符やバツ印の音符が関連している。 全てのメニューに逆向き音符を追加すると2倍の選択量になる。 メニューが音符だらけで訳が分からなくなるのである。 操作性が低下してしまうと、入力すらできなくなるため、 無念にも、逆向き音符をカットしたという訳である。 しかし、エディタ改善のバージョン7になると、 音符の向きの問題について解決しなければならない。 いろいろ悩んだ結果、音符メニュー内に、上下の向きの音符を入れ、 バツ印音符は、別メニューとするしかなさそうである。 連符に関しても、工夫が必要である。 結果的に、休符、音符、のみを残し、それ以外に、 音符の長さ変更、音符の形状変更、連符単位の変更、 といった、属性変更メニューを追加するしかない。 ストローク音符は、形状メニューに移動する。 すると、コードネームメニューは、意味がなくなるため、 これ自体不要となる。コードネームは、トップメニューより、 画面を出すようにし、ダイアログではなく、常駐型ウインドウに変更する必要がある。 コードネームをパレットのように、いつでも素早く選択できるので、 この方法のほうが、バージョン6よりも優れていると思われる。 問題は連符である。バージョン7では、4+8の3連符などを可能にする予定で、 基準音符を選択しなければならないのであるが、 連符の場合、旗の数が1つ違ってくる。 バージョン6では、形状を見て連符を選べるが、 バージョン7では、音楽知識で連符を選ばなければならず、 連符を知らないユーザが楽譜どおりに入力するのは、不可能である。 この問題を解決しなければならない。 バージョン6のように、連符関連を3メニュー増やせば良いのであるが、 音符のメニューが多くなると、通常音符を選ぶ場合、ふと、メニュー選択で考えてしまう。 作者が Score Editor を使っていると、つい操作に度惑うので、 以前から不満であった。音符関連は可能な限り、メニューからカットしたほうが、 素早く音符を選べるはずである。 メニュー操作の仕様に関して、試行錯誤がしばらく続きそうでだ。
当初アクセスが集中しているためかと思っていたが、 原因は、サーバの電源ユニットの故障であった。 朝からショッキングな出来事である。他の部品が壊れなかっただけでも良かった。 新しい電源を購入し、3日の19:00頃にサーバが復旧した。 ASIO対応版をリリースした後という事と、 予測できない出来事ということもあり、 バタバタとして、忙しいく、落ち着かなかったが、 ようやく、落ち着くことができる。 バージョン7の開発も徐々に始めている。 現在行っているのが、音符などの描画処理の見直しである。 これ自体は、実はバージョン6の開発前に着手していて、 音源関連が充実する6を先にリリースする事を決意し、 音符描画の開発は1年間、中断状態だった。 バージョン6がリリースできた事もあり、 1年前に中断した、音符描画関連の作りを見直している。 つまり、忘れてしまったので思い出している。 この音符描画処理は、90%は完成していたので、 参考にしながら、バージョン7上で復元作業を行う。 新しい音符描画処理は、印刷改善版・バージョン8に向けての前準備でもある。 音符部分が出来たら、これも中断状態となった、 バージョン7の新しいパートデータ構造と融合する。 これで、譜表機能が充実したエディタ部分が完成する。 その後、時間軸処理を組み込んでいく予定である。 7の本格的な開発はベクターのアップが終わってから行う予定である。
ASIO対応が実現できたので、これで、VST+MIDI鍵盤が意味を成す。 もう、ASIOの事を考えなくて良いのでホッとした。(いつか対応しなければ、と思うと苦しくなる) これで、バージョン6の目標は達成した。 安心してバージョン7に取り掛かれる。 それにしても、フリー版のベクター更新が遅いのが気になっていたが、 原因は、こちらの依頼ミスである事が分かった。再び公開の依頼を行った。 1〜2年ぶりの依頼という事もあってか、こちらのミスが多くてベクターには申し訳ないです。 ![]() |