"To take it effective, you need to re-open DTXMania." );\r
this.list項目リスト.Add( this.iLogOutputLog );\r
\r
+ #region [ WASAPI / ASIO ]\r
// #24820 2013.1.3 yyagi\r
this.iSystemSoundType = new CItemList( "SoundType", CItemList.Eパネル種別.通常, CDTXMania.ConfigIni.nSoundDeviceType,\r
"サウンドの出力方式:\n" +\r
this.list項目リスト.Add( this.iSystemSoundType );\r
\r
// #24820 2013.1.15 yyagi\r
- //this.iSystemWASAPIBufferSizeMs = new CItemInteger( "WASAPIBufSize", 0, 99999, CDTXMania.ConfigIni.nWASAPIBufferSizeMs,\r
- // "WASAPI使用時のバッファサイズ:\n" +\r
- // "0~99999ms を指定可能です。\n" +\r
- // "0を指定すると、OSがバッファの\n" +\r
- // "サイズを自動設定します。\n" +\r
- // "値を小さくするほど発音ラグが\n" +\r
- // "減少しますが、音割れや異常動作を\n" +\r
- // "引き起こす場合があります。\n" +\r
- // "※ 設定はCONFIGURATION画面の\n" +\r
- // " 終了時に有効になります。",\r
- // "Sound buffer size for WASAPI:\n" +\r
- // "You can set from 0 to 99999ms.\n" +\r
- // "Set 0 to use a default sysytem\n" +\r
- // "buffer size.\n" +\r
- // "Smaller value makes smaller lag,\n" +\r
- // "but it may cause sound troubles.\n" +\r
- // "\n" +\r
- // "Note: Exit CONFIGURATION to make\n" +\r
- // " the setting take effect." );\r
- //this.list項目リスト.Add( this.iSystemWASAPIBufferSizeMs );\r
+ this.iSystemWASAPIBufferSizeMs = new CItemInteger( "WASAPI BufferSize", 0, 99999, CDTXMania.ConfigIni.nWASAPIBufferSizeMs,\r
+ "WASAPI使用時のバッファサイズ:\n" +\r
+ "\n" +\r
+ // "0~99999ms を指定可能です。\n" +\r
+ "0を指定すると、設定可能な最小のバッファサイズを自動設定します。" +\r
+ "1以上を指定すると、その値以上で指定可能な最小のバッファサイズを自動設定します。\n" +\r
+ "\n" +\r
+ "値を小さくするほど発音遅延が減少しますが、音割れや性能低下などの問題が発生する場合があります。" +\r
+ "タブレットなど性能の低いPCを使う場合は、手動で大きめの値を指定してください。\n" +\r
+ "\n" +\r
+ "※ 設定はCONFIGURATION画面の終了時に\n" +\r
+ " 有効になります。",\r
+ "Sound buffer size for WASAPI:\n" +\r
+ "You can set from 0 to 99999ms.\n" +\r
+ "Set 0 to use a minimum buffer size automatically.\n" +\r
+ "Smaller value makes smaller lag, but it may cause sound troubles. " +\r
+ "So if you use poor CPU PC (tablet etc), please specify a little bigger value.\n" +\r
+ "\n" +\r
+ "Note: Exit CONFIGURATION to make the setting take effect." );\r
+ this.list項目リスト.Add( this.iSystemWASAPIBufferSizeMs );\r
\r
// #24820 2013.1.17 yyagi\r
string[] asiodevs = CEnumerateAllAsioDevices.GetAllASIODevices();\r
"This settings is avilable only when you use WASAPI/ASIO.\n"\r
);\r
this.list項目リスト.Add( this.iSystemSoundTimerType );\r
-\r
+ #endregion\r
// #33700 2013.1.3 yyagi\r
//this.iSystemMasterVolume = new CItemInteger( "MasterVolume", 0, 100, CDTXMania.ConfigIni.nMasterVolume,\r
// "マスターボリュームの設定:\n" +\r
// new string[] { "OFF", "SEMI", "FULL" } );\r
//this.list項目リスト.Add( this.iDrumsInvisible );\r
\r
- this.iDrumsLanePosition = new CItemList( "LanePosition", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eドラムレーン表示位置,\r
- "ドラムのレーン表示位置を設定します。\n" +\r
- "LEFT(左側), またはCENTER(中央)を設定できます。",\r
- "Choose drums lane position.\n" +\r
- "You can choose LEFT or CENTER.",\r
- new string[] { "LEFT", "CENTER" } );\r
- this.list項目リスト.Add( this.iDrumsLanePosition );\r
+ //this.iDrumsLanePosition = new CItemList( "LanePosition", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eドラムレーン表示位置,\r
+ // "ドラムのレーン表示位置を設定します。\n" +\r
+ // "LEFT(左側), またはCENTER(中央)を設定できます。",\r
+ // "Choose drums lane position.\n" +\r
+ // "You can choose LEFT or CENTER.",\r
+ // new string[] { "LEFT", "CENTER" } );\r
+ //this.list項目リスト.Add( this.iDrumsLanePosition );\r
\r
this.iCommonDark = new CItemList( "Dark", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eDark,\r
"HALF: 背景、レーン、ゲージが表示されなくなります。\n" +\r
this.ct三角矢印アニメ = new CCounter();\r
\r
this.iSystemSoundType_initial = this.iSystemSoundType.n現在選択されている項目番号; // CONFIGに入ったときの値を保持しておく\r
- // this.iSystemWASAPIBufferSizeMs_initial = this.iSystemWASAPIBufferSizeMs.n現在の値; // CONFIG脱出時にこの値から変更されているようなら\r
+ this.iSystemWASAPIBufferSizeMs_initial = this.iSystemWASAPIBufferSizeMs.n現在の値; // CONFIG脱出時にこの値から変更されているようなら\r
// this.iSystemASIOBufferSizeMs_initial = this.iSystemASIOBufferSizeMs.n現在の値; // サウンドデバイスを再構築する\r
this.iSystemASIODevice_initial = this.iSystemASIODevice.n現在選択されている項目番号; //\r
this.iSystemSoundTimerType_initial = this.iSystemSoundTimerType.GetIndex(); //\r
// #33689 2014.6.17 yyagi CONFIGでSoundTimerTypeの設定を変更した場合も、サウンドデバイスを再構築する。\r
#region [ サウンドデバイス変更 ]\r
if ( this.iSystemSoundType_initial != this.iSystemSoundType.n現在選択されている項目番号 ||\r
- // this.iSystemWASAPIBufferSizeMs_initial != this.iSystemWASAPIBufferSizeMs.n現在の値 ||\r
+ this.iSystemWASAPIBufferSizeMs_initial != this.iSystemWASAPIBufferSizeMs.n現在の値 ||\r
// this.iSystemASIOBufferSizeMs_initial != this.iSystemASIOBufferSizeMs.n現在の値 ||\r
this.iSystemASIODevice_initial != this.iSystemASIODevice.n現在選択されている項目番号 ||\r
this.iSystemSoundTimerType_initial != this.iSystemSoundTimerType.GetIndex() )\r
}\r
\r
CDTXMania.Sound管理.t初期化( soundDeviceType,\r
- 0,\r
- // this.iSystemWASAPIBufferSizeMs.n現在の値,\r
+ this.iSystemWASAPIBufferSizeMs.n現在の値,\r
0,\r
// this.iSystemASIOBufferSizeMs.n現在の値,\r
this.iSystemASIODevice.n現在選択されている項目番号,\r
private CItemToggle iSystemBufferedInput;\r
private CItemInteger iSystemRisky; // #23559 2011.7.27 yyagi\r
private CItemList iSystemSoundType; // #24820 2013.1.3 yyagi\r
-// private CItemInteger iSystemWASAPIBufferSizeMs; // #24820 2013.1.15 yyagi\r
+ private CItemInteger iSystemWASAPIBufferSizeMs; // #24820 2013.1.15 yyagi\r
// private CItemInteger iSystemASIOBufferSizeMs; // #24820 2013.1.3 yyagi\r
private CItemList iSystemASIODevice; // #24820 2013.1.17 yyagi\r
\r
private int iSystemSoundType_initial;\r
-// private int iSystemWASAPIBufferSizeMs_initial;\r
+ private int iSystemWASAPIBufferSizeMs_initial;\r
// private int iSystemASIOBufferSizeMs_initial;\r
private int iSystemASIODevice_initial;\r
private CItemToggle iSystemSoundTimerType; // #33689 2014.6.17 yyagi\r
//private CItemToggle iDrumsSudden;\r
private CItemToggle iDrumsTight;\r
private CItemToggle iDrumsGraph; // #24074 2011.01.23 add ikanick\r
- private CItemList iDrumsLanePosition;\r
+ //private CItemList iDrumsLanePosition;\r
\r
//private CItemToggle iGuitarAutoPlay;\r
private CItemThreeState iGuitarAutoPlayAll; // #23886 2012.5.8 yyagi\r
CDTXMania.ConfigIni.bUseBoxDefSkin = this.iSystemUseBoxDefSkin.bON; // #28195 2012.5.6 yyagi\r
\r
CDTXMania.ConfigIni.nSoundDeviceType = this.iSystemSoundType.n現在選択されている項目番号; // #24820 2013.1.3 yyagi\r
-// CDTXMania.ConfigIni.nWASAPIBufferSizeMs = this.iSystemWASAPIBufferSizeMs.n現在の値; // #24820 2013.1.15 yyagi\r
+ CDTXMania.ConfigIni.nWASAPIBufferSizeMs = this.iSystemWASAPIBufferSizeMs.n現在の値; // #24820 2013.1.15 yyagi\r
// CDTXMania.ConfigIni.nASIOBufferSizeMs = this.iSystemASIOBufferSizeMs.n現在の値; // #24820 2013.1.3 yyagi\r
CDTXMania.ConfigIni.nASIODevice = this.iSystemASIODevice.n現在選択されている項目番号; // #24820 2013.1.17 yyagi\r
CDTXMania.ConfigIni.bUseOSTimer = this.iSystemSoundTimerType.bON; // #33689 2014.6.17 yyagi\r
CDTXMania.ConfigIni.eDark = (Eダークモード)this.iCommonDark.n現在選択されている項目番号;\r
CDTXMania.ConfigIni.nRisky = this.iSystemRisky.n現在の値; // #23559 2911.7.27 yyagi\r
//CDTXMania.ConfigIni.e判定表示優先度.Drums = (E判定表示優先度) this.iDrumsJudgeDispPriority.n現在選択されている項目番号;\r
- CDTXMania.ConfigIni.eドラムレーン表示位置 = (Eドラムレーン表示位置) this.iDrumsLanePosition.n現在選択されている項目番号;\r
+ //CDTXMania.ConfigIni.eドラムレーン表示位置 = (Eドラムレーン表示位置) this.iDrumsLanePosition.n現在選択されている項目番号;\r
}\r
private void tConfigIniへ記録する・Guitar()\r
{\r
//public STDGBVALUE<E判定表示優先度> e判定表示優先度;\r
public E判定表示優先度 e判定表示優先度;\r
public STDGBVALUE<E判定位置> e判定位置; // #33891 2014.6.26 yyagi\r
- public Eドラムレーン表示位置 eドラムレーン表示位置;\r
+// public Eドラムレーン表示位置 eドラムレーン表示位置;\r
public bool bScoreIniを出力する;\r
public bool bSTAGEFAILED有効;\r
public STDGBVALUE<bool> bSudden;\r
public STAUTOPLAY bAutoPlay;\r
public int nSoundDeviceType; // #24820 2012.12.23 yyagi 出力サウンドデバイス(0=ACM(にしたいが設計がきつそうならDirectShow), 1=ASIO, 2=WASAPI)\r
public int nWASAPIBufferSizeMs; // #24820 2013.1.15 yyagi WASAPIのバッファサイズ\r
- public bool bWASAPIBufferAutoSet;\r
// public int nASIOBufferSizeMs; // #24820 2012.12.28 yyagi ASIOのバッファサイズ\r
public int nASIODevice; // #24820 2013.1.17 yyagi ASIOデバイス\r
public bool bUseOSTimer; // #33689 2014.6.6 yyagi 演奏タイマーの種類\r
this.bLeft = new STDGBVALUE<bool>();\r
this.e判定位置 = new STDGBVALUE<E判定位置>(); // #33891 2014.6.26 yyagi\r
this.判定文字表示位置 = new STDGBVALUE<E判定文字表示位置>();\r
- this.eドラムレーン表示位置 = new Eドラムレーン表示位置();\r
+ //this.eドラムレーン表示位置 = new Eドラムレーン表示位置();\r
this.n譜面スクロール速度 = new STDGBVALUE<int>();\r
this.nInputAdjustTimeMs = new STDGBVALUE<int>(); // #23580 2011.1.3 yyagi\r
this.nJudgeLinePosOffset = new STDGBVALUE<int>(); // #31602 2013.6.23 yyagi\r
this.strSystemSkinSubfolderFullName = ""; // #28195 2012.5.2 yyagi 使用中のSkinサブフォルダ名\r
this.bUseBoxDefSkin = true; // #28195 2012.5.6 yyagi box.defによるスキン切替機能を使用するか否か\r
this.bTight = false; // #29500 2012.9.11 kairera0467 TIGHTモード\r
+ #region [ WASAPI/ASIO ]\r
this.nSoundDeviceType = FDK.COS.bIsVistaOrLater ?\r
(int) ESoundDeviceTypeForConfig.WASAPI : (int) ESoundDeviceTypeForConfig.ACM; // #24820 2012.12.23 yyagi 初期値はACM | #31927 2013.8.25 yyagi OSにより初期値変更\r
-// this.nWASAPIBufferSizeMs = 0; // #24820 2013.1.15 yyagi 初期値は0(自動設定)\r
+ this.nWASAPIBufferSizeMs = 0; // #24820 2013.1.15 yyagi 初期値は0(自動設定)\r
this.nASIODevice = 0; // #24820 2013.1.17 yyagi\r
// this.nASIOBufferSizeMs = 0; // #24820 2012.12.25 yyagi 初期値は0(自動設定)\r
+ #endregion\r
+\r
this.bUseOSTimer = false;; // #33689 2014.6.6 yyagi 初期値はfalse (FDKのタイマー。FROM氏考案の独自タイマー)\r
this.bDynamicBassMixerManagement = true; //\r
this.bTimeStretch = false; // #23664 2013.2.24 yyagi 初期値はfalse (再生速度変更を、ピッチ変更にて行う)\r
sw.WriteLine();\r
\r
sw.WriteLine( "; WASAPI使用時のサウンドバッファサイズ" );\r
- sw.WriteLine( "; (0=デバイスに設定されている値を使用, 1~9999=バッファサイズ(単位:ms)の手動指定" );\r
+ sw.WriteLine( "; (0=デバイスに設定可能な最小値を自動設定, 1~9999=バッファサイズ(単位:ms)の手動指定" );\r
sw.WriteLine( "; WASAPI Sound Buffer Size." );\r
- sw.WriteLine( "; (0=Use system default buffer size, 1-9999=specify the buffer size(ms) by yourself)" );\r
+ sw.WriteLine( "; (0=set minimum buffer size automaticcaly, 1-9999=specify the buffer size(ms) by yourself)" );\r
sw.WriteLine( "WASAPIBufferSizeMs={0}", (int) this.nWASAPIBufferSizeMs );\r
sw.WriteLine();\r
-\r
+ \r
sw.WriteLine( "; ASIO使用時のサウンドデバイス" );\r
sw.WriteLine( "; 存在しないデバイスを指定すると、DTXManiaが起動しないことがあります。" );\r
sw.WriteLine( "; Sound device used by ASIO." );\r
sw.WriteLine( "; judgement/combo display priority (0:under chips, 1:over chips)" );\r
sw.WriteLine( "JudgeDispPriority={0}" , (int) this.e判定表示優先度 );\r
sw.WriteLine();\r
- sw.WriteLine( "; ドラムのレーン表示位置(0:左側, 1:中央)" );\r
- sw.WriteLine( "; drums lane position (0:LEFT, 1:CENTER)" );\r
- sw.WriteLine( "DrumsLanePosition={0}", (int) this.eドラムレーン表示位置 );\r
- sw.WriteLine();\r
+ //sw.WriteLine( "; ドラムのレーン表示位置(0:左側, 1:中央)" );\r
+ //sw.WriteLine( "; drums lane position (0:LEFT, 1:CENTER)" );\r
+ //sw.WriteLine( "DrumsLanePosition={0}", (int) this.eドラムレーン表示位置 );\r
+ //sw.WriteLine();\r
\r
\r
sw.WriteLine( "; リザルト画像自動保存機能(0:OFF, 1:ON)" ); // #25399 2011.6.9 yyagi\r
{\r
this.nSoundDeviceType = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, this.nSoundDeviceType );\r
}\r
- //else if ( str3.Equals( "WASAPIBufferSizeMs" ) )\r
- //{\r
- // this.nWASAPIBufferSizeMs = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 9999, this.nWASAPIBufferSizeMs );\r
- //}\r
+ else if ( str3.Equals( "WASAPIBufferSizeMs" ) )\r
+ {\r
+ this.nWASAPIBufferSizeMs = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 9999, this.nWASAPIBufferSizeMs );\r
+ }\r
else if ( str3.Equals( "ASIODevice" ) )\r
{\r
string[] asiodev = CEnumerateAllAsioDevices.GetAllASIODevices();\r
{\r
this.e判定表示優先度 = (E判定表示優先度) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 1, (int) this.e判定表示優先度 );\r
}\r
- else if ( str3.Equals( "DrumsLanePosition" ) )\r
- {\r
- this.eドラムレーン表示位置 = (Eドラムレーン表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 1, (int) this.eドラムレーン表示位置 );\r
- }\r
+ //else if ( str3.Equals( "DrumsLanePosition" ) )\r
+ //{\r
+ // this.eドラムレーン表示位置 = (Eドラムレーン表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 1, (int) this.eドラムレーン表示位置 );\r
+ //}\r
else if ( str3.Equals( "AutoResultCapture" ) ) // #25399 2011.6.9 yyagi\r
{\r
this.bIsAutoResultCapture = C変換.bONorOFF( str4[ 0 ] );\r