スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 音声系の変更は二つ | トップページ | 普通は気付かない改良も »

INIファイルを導入

今は、Mirror-DTCの次バージョンを開発中で、大体の実装が終わったので、纏め段階に入った。従来、環境依存問題等に対応する為に、特殊設定を行う場合には、xxx.datファイルを作成する仕様にしていたのだが、項目が増えたので、INIファイルで指定する形式に変更した。

INIファイルというのは、作者の様に、Windows3.1なんかの頃からPCを弄っている人には懐かしい名前なのだが、アプリの設定を記述するテキストファイルになる。

Mirror-DTCの場合、現行版では、通常の設定情報はDefault.dtcファイルに保存するのだが、例えば、環境依存問題が発生した場合にDirect2Dの使用を禁止させたい場合には、MCClientと同じディレクトリ内にNoD2D.datファイルを作成する仕様になっている。

今回導入するINIファイルは、上記のNoD2D.datに相当する部分の設定のみを担当し、Default.dtcファイルや接続設定ファイルによる設定は、従来通り残す格好になる。

で、Default.dtcや接続設定ファイルはオプション扱いで、存在しなくてもデフォルト設定で動作するのだが、INIファイルも、オプション扱いにするので、次バージョンでも、MCClient.exeは単体でも動作する。

もっとも、INIファイルをゼロから作成するのは面倒な筈なので、配布パッケージにはINIファイルも同梱する。なので、設定変更は、そのINIファイルをメモ帳なんかで編集すれば簡単に行える。

と、いう事なのだが、何故、通常の設定ファイルとは別にINIファイルを導入するのか、というと、開発者的には、INIファイルの設定変更用にはUIを用意しなくても済むので楽だから、という事になるのだが、ユーザー的にも、通常は変更の必要が無い設定項目を見ないで済むというメリットがある。

つまり、INIファイル内の設定項目というのは、通常はデフォルト設定で問題のない設定項目になるので、INIファイルが存在しなくても、通常は問題なく動作できる訳だ。

にもかかわらず、INIファイルをワザワザ導入しているのは、前述の様な環境依存問題が発生した場合にも対応可能にする為、というのもあるのだが、例えば、昨日書いた様なメリットもあるものの、デメリットもある機能を実装する場合、作者的にも苦渋の選択を行っているからだ。

具体的には、昨日書いたADPCM圧縮の変更の場合、ノイズの発生は抑えられるものの、音声の周波数領域は狭まるので、これは改悪、と、思う人も一定数はいる事が想定できるのだが、作者的には、改良だと考えているので、従来仕様との切り替え機能をUIに入れる事はせず、従来仕様は切って捨てている訳だ。

しかし、変更内容は従来処理に別処理を追加した格好になっている訳なので、元の状態に戻すのは簡単だ。

なので、INIファイルで追加仕様分の処理を禁止させる事で、従来通りの動作も可能にする事にした訳なのだが、同様の苦渋の選択としては、「ウインドウに合わせる」時のサーバー側での縮小処理をヤメる、というモノもあった。

上記についても、WiFiの帯域が増えた昨今、多くの人にとっては、新仕様の方が望ましいと考えているのだが、上記変更時のブログ記事に作者が大学時代に購入した中古TVの話を書いていたのは、現行版の仕様の方を好む人も一定数はいるだろうなあ、とも、考えていたからだ。

と、いう事なので、INIファイルでは、作者的にも苦渋の選択を行った仕様については、それとは別の選択も可能にするのだが、そういう事をやりだすと、仕様が爆発的に増大していく訳なので、INIファイルの項目については、厳選し、あまり数は増やさないつもりだ。

ちなみに、今日は、昨日変更したADPCM圧縮を適用し、サンプリング周波数を11025Hzに設定した状態で、Mirror-DTC経由でリモートマシンのiTunesでApple Musicの音楽をBGMとして鳴らしていた。

少し前に書いた様に、44100Hzサンプリングの場合、CD並の音質になるので、音楽を真面目に聞こうとする場合には良いのだが、音楽をBGMとして使う場合、高い周波数までチャンと聞こえるので、気が散るというか落ち着かない。

これに対して、サンプリング周波数を落とすと、高い周波数成分はカットされるので、AMラジオの様な感じの音になって、少なくとも作者的には、BGMとしては、落ち着いて聞いていられる、というメリットがある。

もっとも、現行版の場合、ADPCM圧縮指定時には、サンプリング周波数を落とすとノイズが乗ったので、一般的には、お勧めでもなかったのだが、今回、ノイズの発生をそれなりに抑えられたので、敢えて、サンプリング周波数は落とす、というのも、選択肢としてはアリになったかもしれない。

= この記事に関連する公開中ソフト =

Mirror-DTC

Mirror-DTC

(2016/05/04追記)

« 音声系の変更は二つ | トップページ | 普通は気付かない改良も »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/63167624

この記事へのトラックバック一覧です: INIファイルを導入:

« 音声系の変更は二つ | トップページ | 普通は気付かない改良も »

2017年12月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    Cookieを無効にする設定およびAdsenseに関する詳細については、以下のリンクを参照下さい。

    広告 - ポリシーと規約 - Google