かなり昔、多くの人が1つの質問に興味を持っていました。 どのように機能しますか?」
そのため、この奇跡と呼ばれる-トラッカー音楽。 そして最も重要なのは、.mp3や.wavとは異なり、占有するスペースが非常に少ないことです。 最新の一般的なオペレーティングシステムでは、トラッカーファイル(MOD、XM、S3M、ITなど)は、Winamp、VLC、Amarok、Audaciousなど、ほとんどのメディアプレーヤーで再生されます。
このような音楽は、たとえば
here-keygenmusic.netまたは
www.modarchive.orgからダウンロードできます。 これらは決して唯一のリソースではなく、検索に目を向けるだけです。
このような音楽をプログラムで再生するには、ソースで利用可能なC ++およびminifmodの最低限の知識が必要です。 開発者によると、minifmodはexeファイルに50 kbのみを追加します(圧縮を除く)。
それで、簡単な理論は終わり、プログラミングに進みます。 テストのために-ここから必要なものをすべてダウンロードしてください
www2.zippyshare.com/v/26128618/file.html (アーカイブにはテストプロジェクトのソース、minifmod自体、1つの音楽ファイル、コンバーターなどがあります)
ステージ1.コンポジションを* .xmまたは* .mod形式で取得する必要があります
( * .mod形式
のファイルがある場合-mod2xmコンバーターを使用して.xm形式に変換する必要があります)
手順2.次に、テーブル抽出ツールの[ファイル]-[読み込み]メニューを開き、* .xmファイルを選択します。 設定は次のようになります。
Go!をクリックした後 、.xmファイルがあるフォルダーに、Result.txtファイルが表示されます。 名前をmusic.hに変更し、ファイル\ loadmusic \ music.hを置き換えます。 このファイルには、再生する音楽トラックが含まれています。
ステージ3.新しいプロジェクトを作成し、libとloadmusicにあるすべてのものに接続します。 次のようになります。
ステージ4。 古い「C」スタイルのプロジェクトファイルでは、スタジオはプリコンパイル済みヘッダーを無効にする必要があります。そのため、プロジェクトプロパティで無効にします(Visual Studio->プロジェクトプロパティ-> C / C ++-プリコンパイル済みヘッダー-プリコンパイル済みヘッダーを使用しない)
ステップ5.最も重要なこと-残っているのは、音楽をオンにして再生させることです)))エントリポイントのソースファイル
#include <iostream>
#include "loadmusic\loadmusic.h"
#include "lib\minifmod.h"
#define WIN32_LEAN_AND_MEAN // this will assume smaller exe
FMUSIC_MODULE *mod; // fmod music handler
using namespace std;
int main()
{
cout << "Press 'p' to play music " << endl << "'s' to stop" << endl << "'e' to exit" << endl;
char i( 'p' );
do
{
switch (i)
{
case 'p' :
if (mod == NULL) // mod handle is free? (thouh it will work fine with other loaded audio devices)
{
// We defined our music file to be loaded in LoadMusic.cpp //
//=============================================================//
loadmusic(); // Call & set ready memory to load the music
if (!FSOUND_Init(44100, 0)) // intialize memory for sound
{
return 1;
}
mod = FMUSIC_LoadSong(NULL, NULL); // handle = LoadSong()
FMUSIC_PlaySong(mod); // Play it (from memory)
}
break ;
case 's' :
if (mod != NULL) // handle is loaded (playing)?
{
FMUSIC_FreeSong(mod); // Free memory (handle)
FSOUND_Close(); // Close it (stop it from playing)
mod=NULL; // make handle to be Free again
}
break ;
}
cin >> i;
}
while (i != 'e' );
if (mod != NULL) // music is on?
{
FMUSIC_FreeSong(mod); // Free it from memory (the handle - "mod")
FSOUND_Close(); // Close Music
}
return 0;
}
* This source code was highlighted with Source Code Highlighter .
デフォルトでは、音楽はすぐに再生を開始します。 「s」を入力すると、停止し、「e」を入力してプログラムを終了します。
ファイルサイズは?
VS 2010 Express Editionで実施されたテスト。 静的リンクの使用をインストールした後、166 kbのexeを取得しました。 サイズを縮小するには、最大圧縮率-9でupxで圧縮します。 ファイルを圧縮すると、出力は84 kbファイルになります。
UPD:多分誰かがコンパイルするスタジオを持っていないでしょう。 完成したexe、84 KBのサイズの
ダウンロードはこちら