Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

AudioSettings.Reset

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function Reset(config: AudioConfiguration): bool;
public static bool Reset(AudioConfiguration config);

パラメーター

config 使用される新しい設定

戻り値

bool すべての設定が正常に適用された場合は True

説明

デバイス設定の変更を行います。これに呼応して AudioSettings.OnAudioConfigurationChanged デリゲートが引数 deviceWasChanged=false で呼び出されます。指定した通りの設定が使用できるとは限りませんが、システムが対応しているものの中で最も近いマッチの使用を試みます。


        
using UnityEngine;
using System.Collections;

public class TestAudioConfiguration : MonoBehaviour { void Start () { AudioSettings.OnAudioConfigurationChanged += OnAudioConfigurationChanged; }

void OnAudioConfigurationChanged(bool deviceWasChanged) { Debug.Log(deviceWasChanged ? "Device was changed" : "Reset was called"); if (deviceWasChanged) { AudioConfiguration config = AudioSettings.GetConfiguration (); config.dspBufferSize = 64; AudioSettings.Reset (config); } GetComponent<AudioSource>().Play (); }

static int[] validSpeakerModes = { (int)AudioSpeakerMode.Mono, (int)AudioSpeakerMode.Stereo, (int)AudioSpeakerMode.Quad, (int)AudioSpeakerMode.Surround, (int)AudioSpeakerMode.Mode5point1, (int)AudioSpeakerMode.Mode7point1 };

static int[] validDSPBufferSizes = { 32, 64, 128, 256, 340, 480, 512, 1024, 2048, 4096, 8192 };

static int[] validSampleRates = { 11025, 22050, 44100, 48000, 88200, 96000, };

static int[] validNumRealVoices = { 1, 2, 4, 8, 16, 32, 50, 64, 100, 128, 256, 512, };

static int[] validNumVirtualVoices = { 1, 2, 4, 8, 16, 32, 50, 64, 100, 128, 256, 512, };

int GUIRow(string name, int[] valid, int value, ref bool modified) { GUILayout.BeginHorizontal (); GUILayout.Button (name + "=" + value); for (int i = 0; i < valid.Length; i++) { string s = valid [i].ToString (); if (valid [i] == value) s = "[" + s + "]"; if (GUILayout.Button (s)) { value = valid [i]; modified = true; } } GUILayout.EndHorizontal (); return value; }

void OnGUI() { AudioSource source = GetComponent<AudioSource> (); bool modified = false;

AudioConfiguration config = AudioSettings.GetConfiguration ();

config.speakerMode = (AudioSpeakerMode)GUIRow ("speakerMode", validSpeakerModes, (int)config.speakerMode, ref modified); config.dspBufferSize = GUIRow ("dspBufferSize", validDSPBufferSizes, config.dspBufferSize, ref modified); config.sampleRate = GUIRow ("sampleRate", validSampleRates, config.sampleRate, ref modified); config.numRealVoices = GUIRow ("RealVoices", validNumRealVoices, config.numRealVoices, ref modified); config.numVirtualVoices = GUIRow ("numVirtualVoices", validNumVirtualVoices, config.numVirtualVoices, ref modified);

if (modified) AudioSettings.Reset (config);

if (GUILayout.Button ("Start")) source.Play ();

if (GUILayout.Button ("Stop")) source.Stop (); } }