HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0406
窓月ららHSP3Dishのmp3再生について(おにたまさんへのお願いw)6解決


窓月らら

リンク

2015/4/6(Mon) 21:08:01|NO.68411

スレを立てて書くのもどうかなと思いましたが、書いちゃいます。

HSP3Dishの説明には、サウンド機能について

> 長い音声の再生(.mp3形式)は、負荷軽減のため多重に再生することはできません。

とありますが、Windows上では確かにこのとおりなのですが
Androidではmp3も多重再生できます。
あれ?説明と違う!!と思ったわけですが、これは良い仕様なのでこのままでお願いします。
といいますのも、私のところでは既にこれを利用した独自のBGM管理をしてまして
多重再生できないと欠点になってしまうためです。

具体的には何をしてるかといいますと、例えば mmload "xxx.mp3",1 として登録すれば
このサウンドはループ再生されるわけですが、このループは停止してから再度再生する
というような動作で、どうしても一瞬途切れてしまいます。
しかも機種によって結果が違います。これは印象が悪いなぁ・・と思いまして
いろいろ考えた結果、mp3が多重再生できることを利用して、高精度タイマーで監視しつつ
ループのタイミングで別idで再生を開始して繋げる(瞬間的にミックスされる)
というような事をしています。
これで結構綺麗にループされるようになります。Windows上のHSP3Dishでは使えませんが。

というわけで、この仕様は残してくださいね♪
(標準機能で途切れずにループされるようになれば一番良いんでしょうけどね…)



この記事に返信する


skyblue

リンク

2015/4/7(Tue) 11:09:49|NO.68413

仕様に違反しているため、将来にわたって使えるとは限りませんし、
他の機種では使えないかもしれないのでやめておいた方がいいです。



窓月らら

リンク

2015/4/7(Tue) 21:26:03|NO.68425

手持ちのAndroid実機4機種すべてで動いてます。
説明書では負荷が理由になってますが、Android環境では大して負荷になってません。

てなわけでこのままで♪

むしろこの仕様が無かったら標準のループは使い物になりません。



窓月らら

リンク

2015/4/7(Tue) 21:36:19|NO.68426

ついでに言ってしまうと、wavも実機環境では連続して同じidを再生すると
プチノイズが入って使い物にならない、または、鳴らない事もある。
なので、これも連続して鳴らす場合は別idに複数登録しておき、idを管理して回す必要があります。
現状のHSP3Dishでは、こういうふうに工夫しないと色々不具合や制限が多いのです。



窓月らら

リンク

2015/4/7(Tue) 22:01:15|NO.68427

あと、mp3が複数再生できると、フェードアウトさせながら次のBGMをフェードイン
というような凝った事も可能になりますね。
複雑なループ演奏を自前で書くことも可能になります(イントロだけ別mp3にしておいて繋げる等)。
こんな便利な仕様を廃止しちゃダメ♪ もうモジュール化しちゃったもんね♪
hspogg/hgimg3のようにサンプル単位のogg再生でもできればこんな苦労はいらんのですけど。

負荷がどうのはプログラマが意識して対応すれば済む話です。



zakki

リンク

2015/4/7(Tue) 22:11:47|NO.68428

なんとなくdishじゃないHSPではDirectSoundがなかった頃の制限で2MB以上のWAV再生で動作が変わることの説明が
dish用のヘルプにもそのまま残ってるだけのような気がします
hsp3dishだとDirectSound使うWindowsもOpenSL使うAndroidもWAVとMP3とそのファイルサイズは
特に区別せず扱ってるっぽい

mmplay 1
mmplay 1
だとバッファ1番を鳴らしてすぐ1番を止めて最初に巻き戻して1番をまた鳴らすって意味になるので
同じ音を複数同時に鳴らしたい時はmmloadで複数バッファ用意する必要ありますね



窓月らら

リンク

2015/4/8(Wed) 00:57:51|NO.68433

zakkiさん>
ああ・・なるほど、確かにそういう動きをしてますよね。
効果音については少々不便ですが、連続して鳴る音(例えばショットや爆発音)だけは
複数バッファで対応するしかなさそうですね。

では、mp3の多重再生も正常ってことで♪
切り替えタイミングで引っかかる事も無いし、結構使えますよ。



ONION software Copyright 1997-2021(c) All rights reserved.