プチコン3号&BIGまとめWiki

プチコン音楽広場

パンくずリスト

プチコンで使われているMMLについて色々まとめました。
最後の方にMML紹介所があるのでMMLを紹介したい場合はコメントしてください。

フォーマット一覧

こちらとできるだけかぶらないようにしています。

拡張子制作者詳細説明
.MMLNaExtended MML フォーマット
Toukou/ExtendedMML
MML読み込みは通常のMMLファイルと同様。マクロ定義と同じようにタイトルや制作者を指定可能。略称ExMML。
.BEDtakumiBEDフォーマット
Toukou/BED-FORMAT
タイトルとMMLのみ保存できる。冒頭で全楽曲数を指定する必要がある。
.BHDtakumiBHDフォーマット
Toukou/BHDPLAYER,
 Toukou/BHD_v2.0
BEDより進化し、タイトルや制作者も一緒に保存可能。Ver.1とVer.2があり、両者に互換性はない。
.MCDイスターリャMML Carrier Data
Toukou/MML_CARRIER_forSB3
MMLを複数行にわたって記述可能。説明文を入れることができる。MMLを素材として扱うことを重視。
.NNMNa&高原のなNNMフォーマット
Toukou/音楽パックフォーマット「NNM」
単純なMML記述形式であるが、ExMML連携拡張によりExMML相当の機能が使える。MMLをデータとして扱うことを重視。
.TGM☆Tatsukin★TGMフォーマット
Toukou/TAGeLorix Player
MML全体の音量を設定できる。音量を0にすると、自動的に70に設定される。また、CHOMMLの記述も可能。
.REDtakumiRED-FORMAT
Toukou/RED_FORMAT
TALK命令が使える。ラジオ的な使用が可能。
.NMP高原のなNMPACKS
Toukou/プチコンシリーズ共通音楽パックフォーマット NMPACKS
サポートおよび公開終了のはずだが稀に使われている。Extended MMLの要素関連の仕様はこれに由来。以下「.NMP」と略記。

各フォーマットの仕様

 ExMMLBEDBHD1BHD2MCDNNMTGM.NMP
複数曲の収録×
タイトル表記×
制作者表記××
曲別説明文表記××
ファイル別説明文表記*1×*2×
標準命令集有無×××*3×
MML複数行化××
CHOMMLの記述×××××××
説明文の改行×××*4×
音量設定×××××*5
WAVSET×××××
WAVSETA××××××××
独自要素作成××××××
他バージョンMML×××××*6
ジャケット表示××××*7×××
  • 「他バージョンMML」の〇はそのまま読み込めるプチコンのバージョンの指定が可能なもの、◎は別バージョンのプチコン用のMMLも併記可能なものを表す。
  • ExMMLとNMPACKSは独自要素の定義を行うことで事実上すべての機能に対応できるため、標準要素の有無を掲載した
  • NNMはMML終端がDATA 0のためREADするときに細工が必要
  • NNM単体は対応機能が非常に限定されているが、ExMMLとの連携を開発者がサポートしており、それによってかなり多くの機能が使用可能となる

各フォーマットの記述例

Extended MML

  • MMLマクロ同様、{}でしっかりと括って指定する。
  • 指定できるものはCOMP(作曲者名)、TEXT(詳細テキスト)など多数ある(NMPACKSのものを縮約したものである)。
    • また、その指定に順序は問わないほか、独自に要素を定義可能である。
    • ただしMMLマクロの制約上、要素名は7文字に制限される。
  1. {TITLE=サンプル}
  2. {ALBUM=サンプル}
  3. {VER=3}
  4. :0@144Q8L4CDEF  ’MML記述欄
  5. GAB<C
  6. {TEXT=ここで改行→
  7. 改行終わり}
  • MML文字列中の改行はBGMPLAYには影響を及ぼさないのでEDITモードで編集可能。
  • 通常のMMLとして読み込むことができる(そのまま読み込んでもMML解釈のエラーを発生しない)。

BED

  • DATA 楽曲数が定義楽曲数より大きいとエラーになる。
  • @STARTと@NAMEで分ける必要がある。
  1. @BED
  2. DATA 楽曲数
  3. @START
  4. DATA MML文字列1
  5. DATA MML文字列2
  6. DATA MML文字列3
  7. DATA MML文字列4
  8. DATA MML文字列5
  9. DATA MML文字列6
  10. DATA MML文字列7
  11. @NAME
  12. DATA MML文字列1の題名
  13. DATA MML文字列2の題名
  14. DATA MML文字列3の題名
  15. DATA MML文字列4の題名
  16. DATA MML文字列5の題名
  17. DATA MML文字列6の題名
  18. DATA MML文字列7の題名
  19. @TEXT
  20. DATA ”ステータスメッセージ”
  • 読み込みが楽。
  • フォーマットファイルが作りやすい。

BHD

BHD Ver.1.0
  • DATA 楽曲数が定義楽曲数より大きいとエラーになる。
  • BEDとラベルが若干異なる。
  1. @BHD
  2.  DATA 楽曲数
  3. @BHD_TITLE
  4.  DATA ”アルバム”
  5. @MMLDATA
  6.  DATA ”タイトル1”
  7.  DATA ”制作者1”
  8.  DATA ”コメント1”
  9.  DATA ”ジャンル1”
  10.  DATA ”時間1”
  11.  DATA ”MML文字列1”
  12.  DATA 0
  13.  DATA ”タイトル2”
  14.  DATA ”制作者2”
  15.  DATA ”コメント2”
  16.  DATA ”ジャンル2”
  17.  DATA ”時間2”
  18.  DATA ”MML文字列2”
  19.  DATA 0
  20. @TEXT
  21.  DATA ”ステータスメッセージ”
  22. @DATE
  23.  DATA ”最終更新日”
  • 時間を記述可能。
BHD Ver.2.0
  • (初期の告知とは異なり、)BHD Ver.1.0との互換性がない書式である。
  • 新たにMML複数行化に対応。
  • 全楽曲数の指定は必要無し。
  • ジャケット表示対応
    • 画像解像度は160×160、それ以上は表示されない。
  • これらの変更に対応するため、@TEXTの前に 「DATA "-1"」 が必要となった。
  1. @BHD2_TITLE
  2.  DATA ”アルバム”
  3. @MMLDATA
  4.  DATA ”タイトル1”
  5.  DATA ”制作者1”
  6.  DATA ”コメント1”
  7.  DATA ”画像ファイル名1”
  8.  DATA ”時間1”
  9.  DATA ”MML文字列1”
  10.  DATA ”0”
  11.  DATA ”タイトル2”
  12.  DATA ”制作者2”
  13.  DATA ”コメント2”
  14.  DATA ”画像ファイル名2”
  15.  DATA ”時間2”
  16.  DATA ”MML文字列2−1”
  17.  DATA ”MML文字列2−2”
  18.  DATA ”0”
  19.  DATA ”−1”
  20. @TEXT
  21.  DATA ”ステータスメッセージ”
  22. @DATE
  23.  DATA ”最終更新日”
注意
  • V2.0はV1.0と互換性がない
    • 読み込み方法が全く異なる。

MML Carrier Data

  • 定義前@MCDラベルが必要。
  1. @MCD
  2. DATA ”制作者名”
  3. ’曲データ
  4. DATA ”タイトルA”, ”説明A”, ”MML A”, ”0”
  5. DATA ”タイトルB”
  6. DATA ”説明B”
  7. DATA ”MML B (1)”
  8. DATA ”MML B (2)”
  9. DATA ”MML B (3)”, ”0”
  10. ’終了
  11. DATA ”−1”
  12. @COM
  13. DATA”共通の説明文”
  • 制作者名、曲のタイトル、説明、MMLをDATA文で列挙する形式。
  • コメント改行は/nで可能(対応作品の場合)。
  • プチコン4では終端の0、-1は文字列でない数値でも可。
  • プチコン4ではプレイヤーの背景画像を設定できる。

NNM

  • 楽曲定義の前に@BGM◯ラベルを0から順に使うということを決めただけで、その他の点は何の機能もない。
    • ただし、標準命令集同梱の「NNM with Extended MML」を使用することで、Extended MML相当の機能を使用できる。
  1. @BGM0
  2. DATA ”CDERCDERCDE”
  3. DATA 0
  4. ’↓NNM with Extended MML向け
  5. @BGM1
  6. DATA ”{TITLE=FADE}{COMP=高原のな}”
  7. DATA ”{TEXT=Polyglot}”
  8. DATA ”{DATEND=}”
  9. DATA ”FADE L8FGAB−L4B+.”
  10. DATA 0
  • NNM with Extended MMLを使用する際は、@NNMラベル内にExtended MML同様の形式でメタデータを書いておくと、MML内に検索している要素が発見できなかった時に検索される。
  • MMLデータの末端にDATA 0を使用するため、BGMSETD命令以外を使用して読み込む場合は工夫が必要になる。

TGM

  • MMLは@MML_DATA◯に0から順に記述。
  • @MML_TITLEのデータ数(最後の空文字列を除く)がMMLの数を超過してる場合はエラー。
  1. @MML_TITLE
  2. ’DATA 音量,”曲名”,”作曲者”,”編曲者”,”コメント”
  3. DATA 070,”曲A”,”あああ”,””,””
  4. DATA 080,”曲B”,”いいい”,””,””
  5. DATA 000,””,””,””,””
  6. @MML_DATA0
  7. DATA ”MML文字列”
  8. DATA ””
  9. @MML_DATA1
  10. DATA ”MML文字列(1行目)”
  11. DATA ”MML文字列(2行目)”
  12. DATA ”MML文字列(3行目)”
  13. DATA ””
  • MMLの音量設定が可能
  • 音量を0にした場合、自動的に70に設定される(付属プレーヤーの場合)。
  • CHOMMLの記述が可能(MMLの1行目にDATA "*CHO*"が必要)。
  • プチコン4ではMMLの末端はDATA 0でも可。

RED

  • TALK命令とMMLが合併して利用できる
  • 様々な機能が利用できる
  1. @RED
  2. DATA”タイトル”
  3. @MML
  4. DATA”MML”
  5. DATA”0”
  6. @MHZ
  7. DATA”00.0”
  8. @TEXT
  9. DATA”情報1”
  10. DATA”情報2”
  11. @START
  12. DATA”<TL>ハローワールド<RE>hello world”
  13. DATA”0

NMPACKS

  • 公式にはサポート終了としているが、一部機能がまだNNMに取り込まれていないため、一部では新規採用されたりもしている。
    • ただし、2020年1月20日時点では標準ライブラリが公開終了となったままのため、全機能への対応は若干手間が大きい。
  • @NMTRACKSにラベル名の@D_や@M_を除く部分を列挙、@NMPACKには各MMLのデータ部分に検索している要素が発見できなかった時に検索される内容を記述する。
  • @D_からはじまるラベル内にはメタデータを「要素名:内容」の形式で記述する。要素名の大文字小文字は区別されない。
  • @M_からはじまるラベル内にはMMLデータを記述し、データの最後は空文字と0を連続させて終わる。
    • その他記述形態がとにかく複雑なのでこのページでは詳細は説明しない。
  1. @NMTRACKS
  2. DATA”MYBGM1”
  3. DATA”MYBGM2”
  4. DATA””
  5. @NMPACK
  6. DATA”album:はじめての きょくパック”
  7. DATA””
  8. @D_MYBGM1
  9. DATA”title:はじめての きょく”
  10. DATA”composer:○○○○”
  11. DATA””
  12. @M_MYBGM1
  13. DATA”(中略:MMLデータ)”
  14. DATA””,0
  15. @D_MYBGM2
  16. DATA”title:かっこいい きょく”
  17. DATA”composer:○○○○”
  18. DATA””
  19. @M_MYBGM2
  20. DATA”(中略:MMLデータ)”
  21. DATA””,0

フォーマットを利用した作品

 最新版Ver.ExMMLBEDBHD1BHD2MCDNNMTGM.NMP
MPlay1 *8ver.2.5*9
Musics King *10ver.2.0*11×
MusicsG for Switch *123001×××
MusicsG *133203*14×
MML Carrier for SB3 *15Ver.03×××××*16
オトヒロバver.2.2.0×××
TAGeLorix Playerver.1.30
  • NNMの〇はNNM with Extended MML対応を表す。
  • TGMの△はCHOMMLと音量設定に非対応を表す。

※各フォーマットの概要は、サンプルを元に制作しています。作品の中には対応していない機能がある場合があります(例:MusicsGでのTGM Vol機能)。※
※ほかにもありましたら各自追加・コメントにてお知らせください。

コメント

  • 高原のな : オトヒロバ バージョン2に関して勝手に加筆修正しました (2019/12/25 (水) 00:49:16)
  • 名無しさん : BHD正確には時間の前にジャンル(?)が入るのでは? (2019/12/25 (水) 16:53:12)
  • Na : フォーマットではないですがよく使われるものにToukou/とりぷれいやーToukou/万能MMLプレイヤーがありますね (2019/12/25 (水) 17:07:27)
  • 高原のな : NMPACKSをNMPと略されるの不本意なので伸ばしました、ごめんなさい (2019/12/25 (水) 17:26:26)
  • 名無しさん : ↑そもそも拡張子NMPなんですがそれは…() (2019/12/25 (水) 17:36:31)
  • 高原のな : NMPACKS自体が略称であること、慣例的に拡張子は3文字とすること(DOSだ!)という理由です (2019/12/25 (水) 17:41:18)
  • 名無しさん : PCだと別に3文字じゃない拡張子とかあるので(jsonとかjpegとか)いいのでは…? (2019/12/25 (水) 17:56:28)
  • 名無しさん : (Nona Music PACKSと推測) (2019/12/25 (水) 17:57:04)
  • 高原のな : さすがにファイル自体の文字数制限がある環境で6文字拡張子は厳しいでしょう。フォーマット自体を指してNMPと呼ばなければ構いません(たとえばNMPファイル、とかならOKです) (2019/12/25 (水) 18:01:32)
  • Na : BHDについて、勝手にジャンル追加しました (2019/12/25 (水) 18:25:01)
  • takumi : ありがとうございます。 (2019/12/26 (木) 10:50:41)
  • takumi : オトヒロバは、プチバース振り返ってたらあったので書きました。 (2019/12/26 (木) 10:51:05)
  • 名無しさん : BHDライブラリ作ってくれよな〜頼むよ〜 (2019/12/26 (木) 13:30:47)
  • takumi : 互換性をなくし、ジャケット対応にしようかと考えています。 (2019/12/26 (木) 13:36:33)
  • 高原のな : ExMML、NNMの特徴的な点について追記、表現統一を目指し一部修正、一部コメント化をしました (2019/12/26 (木) 16:08:38)
  • 高原のな : 表現統一を目指し一部修正についてなんですが、「自作命令」よりも「ライブラリ」とか「基本命令集」とした方が良いかと思われます(たぶんそういうことを言いたかったのではないかという推測ですが) (2019/12/26 (木) 16:10:35)
  • 高原のな : あと「オトヒロバ」はExMML, (2019/12/26 (木) 16:12:09)
  • 高原のな : 失礼しました。「オトヒロバ」はExMMLとNNMの特徴を活かして、独自拡張をいくつか行うので、「フォーマットのサンプル」には該当しないという扱いでお願いします。 (2019/12/26 (木) 16:13:13)
  • takumi : 了解です。 (2019/12/26 (木) 16:36:25)
  • Na : >最後の方にMML紹介所があるので どこに() (2019/12/26 (木) 17:09:15)
  • takumi : 一応ここなんです (2019/12/26 (木) 17:36:46)
  • takumi : BHDV2.0の仕様を、240*240から160*160に変更します。 (2019/12/26 (木) 17:37:22)
  • takumi : 240だとでかすぎたのです。 (2019/12/26 (木) 17:37:40)
  • 高原のな : BHD v2読み込み関係ですが、自前でMCDを実装しているならそれを少し改造すればプログラムの大部分が流用できますね。TGMもNMPACKS読み込みを若干改造すれば使えそうです。 (2019/12/29 (日) 16:29:17)
  • takumi : そうですね……まぁ僕は色々苦労しましたが。 (2020/01/03 (金) 22:02:24)
  • 高原のな : そういえば、MCDはフォーマット名でもなければ、ただの拡張子であったので、NMPACKSと一緒に扱い方を変更しておきました (2020/01/13 (月) 22:18:24)
  • Na : MCDはMML Carrier Dataの略称では? (2020/01/13 (月) 22:27:54)
  • Na : フォーマット名MCDで合ってると思いますよ (2020/01/13 (月) 22:28:19)
  • 高原のな : すみません、どこかで間違って記憶していたようです。 (2020/01/15 (水) 18:30:23)
  • 高原のな : それと、ExMMLと関連性の高いNNMをExMMLの次の項目としておきたいのですが、制作者なのでなんとなくやりづらいです。そのように変更してよいですかね? (2020/01/15 (水) 18:34:14)
  • Na : ExMMLを後ろに持ってきたらいいと思います (2020/01/15 (水) 19:14:01)
  • 高原のな : どっちでも構いませんが、その点の判断は該当項目の制作者じゃない人に任せたいですね (2020/01/15 (水) 19:28:43)
  • 高原のな : と、NNMとExMMLの項目の位置関係を、という話をしていたのですが、NNMからExMMLを明確に切り離すことにしたので今の位置で続行でいいと思います (2020/01/15 (水) 19:59:02)

メニュー 【3号】

ヘルプ

リンク

最近の更新

最近の人気ページ

オンライン情報

  • 現在同時に 4 人がこのサイトを見ています
  • このページはこれまでに 493 回、本日は 1 回、昨日は 2 回閲覧されました

ページの先頭に戻る

*1 「曲別説明文」と同等
*2 ExMML連携拡張では〇
*3 ExMML連携拡張ライブラリを同梱
*4 そもそも説明文の設定ができない
*5 標準要素未収録。要素名はVOLを推奨
*6 ただし記述方法が複雑
*7 プチコン4版は背景画像が設定可能
*8 対応ファイルは音楽フォーマット以外にラジオファイル、お餅ファイル等に対応
*9 音量設定非対応
*10 全楽曲時の読込みに限界あり、約250曲
*11 構造上対応しているがサポート外
*12 楽曲の読込みに限界あり、約250曲
*13 楽曲の読込みに限界あり、約250曲
*14 構造上対応しているがサポート外
*15 表示に不具合あり、23曲
*16 埋め込み構文非対応

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.065 秒 | このページの最終更新 : 2020/01/20 (月) 20:19:42 (3d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30