作品プログラム
- 動作環境
- 投稿者
- ゆうと
- 更新日
- 2014-11-08 23:56:01
- ダウンロード数
- 402
作品のプログラム
NAudioというドットネットアセンブリ(「[今の位置]NAudio.dll」)を作る
WaveOut=NAudioから「NAudio.Wave.WaveOut」を取得したもの
メイン画面を表示する
待機する
メイン画面とは
ウィンドウを継承する
はじめの手順
初期化する
ーー貼り付けた部品に対する操作をここに書きます
Lは、キャンバス1へ四角形を描いたもの
Lの線色を青に変える
Lの太さを1に変える
Lの背景色を黄色に変える
Rは、キャンバス1へ四角形を描いたもの
Rの線色を青に変える
Rの太さを1に変える
Rの背景色を黄色に変える
終わり
初期化する手順
ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
この内部領域大きさを{295、324}に変える
この内容を「NAudioによるレベルメーター」に変える
このドラッグドロップを○に変える
再生ボタンというボタンを作る
その位置と大きさを{12、12、75、23}に変える
その内容を「再生」に変える
その移動順を1に変える
キャンバス1というキャンバスを作る
その位置と大きさを{119、12、155、296}に変える
その移動順を2に変える
その位置固定方向を「左+下+上」に変える
終わり
再生ボタンがクリックされた時の手順
WaveFileReader=NAudioから「NAudio.Wave.WaveFileReader」を取得したもの
WaveOutからインスタンスを作ってoutputDeviceとする
NAudioから「NAudio.Wave.WaveOut」をインスタンスとして作ってoutputDeviceとする
outputDeviceのDeviceNumber=0
outputDeviceのDesiredLatency=250
// WAVE形式の場合
NAudioから「NAudio.Wave.WaveFileReader」を{「C:\Windows\Media\Alarm05.wav」}でインスタンスとして作ってwavStreamとする
// MP3形式の場合
//NAudioから「NAudio.Wave.Mp3FileReader」を{「XXX.mp3」}でインスタンスとして作ってwavStreamとする
NAudioから「NAudio.Wave.SampleProviders.SampleChannel」を{wavStream}でインスタンスとして作ってsampleChannelとする
NAudioから「NAudio.Wave.SampleProviders.MeteringSampleProvider」を{sampleChannel}でインスタンスとして作ってpostVolumeMeterとする
postVolumeMeterのSamplesPerNotificationは、postVolumeMeterのWaveFormatのSampleRate/500
postVolumeMeterのStreamVolume時の手順は、StreamVolumeされた
outputDevice:Init(NAudioから「NAudio.Wave.SampleProviders.SampleToWaveProvider」を{postVolumeMeter}でインスタンスとして作ったもの)
outputDevice:Play()
終わり
StreamVolumeされた手順
高さは、キャンバス1の高さ-40
値配列は、この時のMaxSampleValues
Lの位置と大きさは、{20,20+(1-値配列(1))*高さ,50,値配列(1)*高さ}
Rの位置と大きさは、{80,20+(1-値配列(2))*高さ,50,値配列(2)*高さ}
キャンバス1を更新する
終わり
終わりの手順
outputDevice:Stop()
終わり
終わり