Wavファイルのフォーマットと読込

はじめに

ここでは音声ファイルであるWAVファイル(.wav)のフォーマットの説明と簡単な読込サンプルについて解説しています。
WAVファイルについては、「wav フォーマット」などで検索するとすでに他のサイトでも解説されていますので、簡単に説明します。

WAVファイルのフォーマット

WAVファイルはRIFFファイル形式をとっています。
RIFFファイル形式では、そのファイルに必要なデータをチャンクと呼ばれるブロックに分けて保存し、チャンクにFourCCと呼ばれる4Byteの識別子(ID)を付けて管理するファイル形式です。

RIFFファイルについては下記に簡単に記載しております。必要に応じてご参照ください。

今回作成するWAVファイルの読み込み関数のサンプルはこちらからダウンロードできます。 → riffsample_20231210
※Wavファイル以外にもSoundfontファイル読込サンプルなども同梱されています。

WAVファイルのチャンク

WAVファイルのチャンクと階層構造は下記となっています。各チャンクの詳細は後述します。
2つの必須チャンクがあります。

もっと見る

VST GUIにおけるドラッグアンドドロップの対応

VST GUIにおけるドラッグアンドドロップの対応

VST GUIにおいてファイルなどをドラッグアンドドロップで受け取る方法を説明します。

なお、VST GUIの基本的な作成方法として下記をご理解いただいている前提で進めさせていただきます。

もっと見る

自作VSTプラグインのダウンロードリンク更新

自作VSTプラグインにある各自作VSTプラグインのダウンロードリンクの不具合を修正しました。
ダウンロードできないなどの不具合がまだ残っているようでしたらご連絡いただければと思います。

※更新したページ
 SoundFontプレイヤー – Utsbox SF2 Player
 グリッチエフェクト – Utsbox Glitch
 ギター奏法生成MIDIエフェクト – Utsbox MIDI Tool1
 ギターストローク生成MIDIエフェクト – Utsbox MIDI Tool2
 .wavファイル プレイヤー – .WAV Player
 テンポ同期フィルターエフェクター – Tempo Sync Filter

ご参考になればと思います。

VST3プラグイン作りの情報はこちらにもございます → はじめてのVST3プラグイン作り

ご指摘やご質問などがございましたら、コメント欄か掲示板Twitterでご連絡いただければと思います。

VST3ホスト開発04 – 音声処理クラスでの音声処理準備

音声処理クラスでの音声処理準備

前回はVST3ホストでVST3プラグインから音声処理クラスを取得する方法について記載いたしました。
今回は取得した音声処理クラスで音声処理の準備を行うプログラムの説明を実施します。

今回作成するプラグインは下記のとおりです。

  • VST3プラグインを読み込む
  • VST3プラグインから音声処理クラスを作成する
  • 音声処理クラスの情報(入出力数など)を取得する(new)
  • 音声処理クラスで音声処理の準備を行う(new)

実際に音声処理を行う一歩手前までとなります。

このVST3プラグインのサンプルソースファイルはこちらからダウンロードできます→vst3host_20210410
ZIPファイルの中の「vst3host03_音声処理クラスでの音声処理準備」フォルダが今回のサンプルソースファイルになります。

なお、Visual Studioのプロジェクトは「コンソールアプリケーション」で作成しております。
プロジェクト設定などは「Visual Studioのプロジェクト設定」もご参照ください。

今回の説明内容

本ページでは、前回説明したVST3プラグインの利用の流れ(下記)のうち、4.についての内容を説明します。
なお、前回までで説明した内容については、説明を省略させていただきます。

もっと見る

「VST3ホスト開発03 – 音声処理クラスの作成と初期化」の更新

VST3ホスト開発03 – 音声処理クラスの作成と初期化」を更新しました。
PluginContextを作成・セットアップする手順を追加しています。

※更新したページ
 VST3ホスト開発03 – 音声処理クラスの作成と初期化

VST3プラグイン作りの情報はこちらにもございます → はじめてのVST3プラグイン作り

ご指摘やご質問などがございましたら、コメント欄か掲示板Twitterでご連絡いただければと思います。