沼津高専 電子制御工学科

MIRS0901 ソフトウェア開発 音楽再生onマザーボードスピーカシステム導入手順仕様書

MIRS0901-SOFT-0014

改訂記録

版数

作成日

作成者

承認

改訂内容

A01

2010.2.8

戸塚

武藤

初版

 


 

目次

1.はじめに

2.用意するもの

3.使い方

4.変換に失敗したら

4.1. それでも失敗する場合

 

5.おわりに


1.はじめに

このドキュメントはMIRS0901MIRSのマザーボードのスピーカで音楽を鳴らすための手順を説明するものである。

マザーボードのスピーカで音楽を鳴らしたい場合は是非活用してもらいたい。

 

2.用意するもの

          

名称

場所

説明

beep-1.2.2.tar.gz

http://johnath.com/beep

Linux でビープ音を鳴らすためのツール

mf2t.exe

http://www.vector.co.jp/soft/dos/art/se021864.html

標準MIDIファイル(以下、SMFと略記)形式のファイルを、簡単な
規則に乗っ取り、テキストに変換したり、逆にそのテキストを、SMFに戻したりしてくれるツール

形式:Windows実行ファイル

midi変換君.exe

ドキュメント内

mf2tが出力したテキストファイルをMIRSで使える形式に変換するツール。

ドキュメント作成者が夜を徹して作成した。

VBで作成したため起動には.NET Frameworkなどのランタイムが必要。

形式:Windows実行ファイル

bgm.zip

ドキュメント内

midi変換君で変換したファイルをMIRSに組み込み、音楽を再生するプログラム。

マネージャ坂代が忙しい時間を割いて作成を手伝ってくれた。

形式:C言語ファイル

 

3.使い方

Windowsでの変換作業

1.mf2t.exemidi変換君.exeと変換したいMIDIファイルを” C:\mf2t”に移動する。

 

2.midi変換君.exeを起動しリストボックスにmidiファイルをドラック&ドロップする。

複数ファイルでもおk

 

3.変換ボタンを押して拡張子がpb(beep)のファイルができるのを確認する。

変換に失敗するとサイズ0KBのファイルができる。

失敗した場合の対策方法は「4.変換に失敗したら」に示す。

 

Linuxでの発音作業

1. beep-1.2.2.tar.gz”を下記サイトの説明に従ってインストールする。

http://home.kendomo.net/diary.php/2004-04-18/1

 

2.bgm.zipを解凍し、Cファイルをコンパイルする。

 

3.list.csv”内に再生する曲のbpファイルのパス再生スピードをカンマ区切りで入力する。

 

4. 初めにbgm_func.c 内のini_bgm()を一度だけ実行し、bgm_change(num)を実行すれば音楽が再生される。

bgm_change(num)を実行するとそれまで再生されていた曲は中断され新しい曲が再生される。

numには“list.csv”の一番上の行から0,1,2,3…行目と数えたファイル番号を入れる。

例えば以下のような場合bgm_change(1);を実行すると、” ../bgm/01_mario_goal.bp”が再生される。

bgm_change(0);を実行すると、音楽は停止される。

なおファイルパスはbgm_change()が実行されたファイルのパスが基準となるので注意が必要である。

zipファイルのプログラムでは、bgmフォルダ内またはbgmフォルダと同じ階層のフォルダ内で実行することができる。

 

zipファイルにはテスト用に” 01_mario_goal.bp”、” 02_skyrace.bp”、” 03_gurume.bp”を用意した。

再生してみると面白いだろう。

.変換に失敗したら

失敗には以下の理由が考えられる。

MIDIファイルにトラックが複数個含まれる。

DTMソフト(作者の環境では”Cubase AI 4”)でMIDIファイルを展開すると以下の様になる。

変換には必要なトラック一つだけ残して消す必要がある。

 

なお和音の場合は最も大きなMIDIノート番号の音(最も高い音階)一つだけを抽出して変換しているので、想像した曲と異なることがあるかもしれない。

マザーボードのスピーカは単音しか出せないのでその辺は勘弁して欲しい。

 

4.1. それでも失敗する場合

以下の様に音Aが始まって終わる間に音Bが始まって終了すると変換が上手くいかないことがある。

この場合はどちらか要らないほうの音を消などして編集して欲しい。

.おわりに

本ビープシステムは完全に作者の遊び心で作られている。真面目にMIRS製作をしているとこのようなものを作る余裕はない。

このドキュメントを見たならば、是非ビープを使って音楽を流し、あたかも“自分の班は余裕だぜ!”と自己主張し欲しい。

関連文書