音楽再生について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
no

音楽再生について

#1

投稿記事 by no » 15年前

現在、以下のファイルがあります。
・a.wav
・b.wav
両者ともWMPで再生可能です。
しかしながら、DXライブラリを使用し、再生させてみるとb.wavファイルは再生されません。
記述ルール、ファイルの場所、名前指定は何度も確認したので間違いは無いと思います。

して、質問です。

1. b.wav は仮に、b.mid・b.mp3、から名前を変更するだけでb.wavにしてしまったようなファイルだと、
 何らかの破損が現われ、WMP上で再生できても、DXライブラリでは再生できないものなのか。

2.解決方法にはどのようなものがあるのか。

以上です。ご存知の方、どうかよろしくお願いします。

SooA

Re:音楽再生について

#2

投稿記事 by SooA » 15年前

1
wav mp3 ogg は全て記録されている形式が違います。
一部のプレイヤーはファイルのヘッダーを読み込みこんで、
自動で形式判別し、拡張子に関係なく中身がmp3ならmp3として
再生できまが、それ以外は中身が違えば当然扱えません。

2
波形データなら変換して利用
http://pino.to/audico/

Dixq (管理人)

Re:音楽再生について

#3

投稿記事 by Dixq (管理人) » 15年前

ファイルの名前変えただけじゃだめですよ
ラベルの名前を変えただけで中身も変わるはずがない・・というのは例えば

食卓に「醤油」と書かれた醤油の入った入れ物が置いてあったとします。
でも今ソースが欲しいんです・・。そう思って入れ物に書いてある「醤油」という文字を消して「ソース」と書き直したら
中身はソースに変わりますか?

そんなはずないですよね。
ついている名前を変えただけでは中身は変わりません。

例えばmp3をwavに変換したいなら
http://www.google.co.jp/search?hl=ja&so ... =&aq=f&oq=
こんな感じで変換します。

もしiPod使っているならiTuneでも出来ますね。

なお、名前を変えてもWMPはそのファイルを「wav」だと認識はしていないのですよ。
WMPは「ソース」と書いてあっても、俺はだまされないぞと、味見をしてから中身を判断するので醤油とわかってしまうのです。
wavではないと認識していますが、wavではない設定でうまく再生してくれるのです。

仮に画像ファイル

aa.jpg

みたいなファイルを

aa.abc

みたいな意味不明な拡張子に変更して、ペイントで開いてみてください。
同様に開けますから

tk-xleader

Re:音楽再生について

#4

投稿記事 by tk-xleader » 15年前

えっ、DXライブラリは中身を見て処理方法を決定しているはずですが…
中身がMP3のファイルであればMP3として処理するはずです。

SooA

Re:音楽再生について

#5

投稿記事 by SooA » 15年前

そうですか、では mid形式を波形形式の拡張子にして
Sound系関数で再生しようとしているのかも知れませんね。

no

Re:音楽再生について

#6

投稿記事 by no » 15年前

入手した b.mp3 ファイルはPlaySoundFileでは再生されず、PlayMusicで再生されました。
そのため、midファイルではないかと思い、拡張子をmidに変更し、午後のこーだでwavファイルに変換しました。
更に、そのwavファイルを「旧シューティングの館」に記されているogg変換用のツールでoggファイルに変換し、最終的に b.ogg ファイルが手元にあります。

しかしながらこれでもPlaySoundFileでは再生されず、PlayMusicで再生できます。
また、LoadSoundMemで読み込ませた後、PlaySoundMemで再生できません。
そして、LoadMusicMemで読み込ませ、PlayMusicMemでも再生できません。

流れからすると一番最後のパターンで再生できるような気がするのですが、いったいどこに問題があるのでしょうか?

Dixq (管理人)

Re:音楽再生について

#7

投稿記事 by Dixq (管理人) » 15年前

何がなんのファイルやらわからなくなってしまっているのでは・・。

変換する前の元のファイルのファイルヘッダを見てみましょう。

http://www.zob.ne.jp/~c.mos/soft/bz.html

こんなバイナリエディタで開いて先頭の10バイト位に何が書いてあるか教えてください。

no

Re:音楽再生について

#8

投稿記事 by no » 15年前

+0 +1 +2 +3 +4 +5
49 44 33 03 00 00

先頭の10バイトがどこを指すのかわかりませんが、こんな感じになっています。
見当違いの解答のようでしたら、言ってください。すいません・・・

SooA

Re:音楽再生について

#9

投稿記事 by SooA » 15年前

名前の変更だけではなく、データ変換も行っているのですね?
最終的に変換した ogg変換が怪しいかもしれません。
一度WAVE形式で保存してそのデータに対して、
別の変換ツールを試してみてください。

Dixq (管理人)

Re:音楽再生について

#10

投稿記事 by Dixq (管理人) » 15年前

49 44 33 ということはID3v2タグの先頭文字列"ID3"を意味するので、mp3であっていると思います。

mp3ファイルを

http://www.forest.impress.co.jp/lib/pic ... acity.html

こちらのソフトで開き、oggで保存し、LoadSoundMemで読み込んでみてもらえますか?
読めこめるはずだと思います。

no

Re:音楽再生について

#11

投稿記事 by no » 15年前

変換いたしました。b.oggファイルは、以下の状態です。
+0 +1 +2 +3
4F 67 67 53
見た感じしっかりogg形式になっているようにみえます。

で、現在の状態です。

PlayMusic → 再生される
PlaySoundFile → 再生されない
LoadSoundMemでロード → PlaySoundMem → 再生されない
LoadMusicMemでロード → PlayMusicMem → 再生されない


ちと解決策が見つからないので、問題ないか添削お願いしたいです。
*再生関数関係はすべてコメント文にしています。

no

Re:音楽再生について

#12

投稿記事 by no » 15年前

こちらが音楽ファイルになります。

……と思ったら大きすぎて乗せれなかったです

Dixq (管理人)

Re:音楽再生について

#13

投稿記事 by Dixq (管理人) » 15年前

4F 67 67 = O g g
なので、ファイルはあっているようですね。

こうなるとプログラムの方が違うか、ボリュームコントローラーが下がっているのではないかと思います。

OSは何ですか?
ボリュームコントローラーを確認して、
MIDI以外のボリュームが下がっていないか確認して下さい。

後、添付されたコードのどの部分の注釈を外すすのでしょう?
oggを再生する時に外す注釈部分を教えてください。

Sound = LoadSoundMem( "b.ogg" );
PlaySoundMem( Sound , DX_PLAYTYPE_NORMAL );

正解はこうですね。
プレイタイプはDX_PLAYTYPE_BACKの方がいいですよ。
キー入力で好きな時に終了出来ますし。

_NORMALは使う機会があるんだろうかという気が・・。

no

Re:音楽再生について

#14

投稿記事 by no » 15年前

OSはウィンドウズXPで、コンパイラはVC++です。

音楽ファイルを添付して、問題を認識しやすいように全パターンを試すことができるプログラムを
添付したつもりでしたが……音楽ファイルが載せられなかったので意味の分からないものになりました。
申し訳ないです。

あと個人的な認識として、_NORMAL は再生が終了しないとWaitKeyまでたどり着かないと考えています。
音楽ファイルの長さは2分程度の為、
ボリュームがただ単に小さいだけなら起動後2分間はどのキーを押しても反応しないと考え、
ボリュームの問題か、そうではないかの見極めのために _NORMAL 使用しています。

その結果、二分をまたずしてWaitKeyに達していることが分かり、ボリューム関係の問題ではないと
勝手に考えていましたが……この認識は当たっているのかな、すいませんあまり自信ないです。
(具体的には数秒でWaitKeyに達します)

あ、正解のことも認識しています。


①PlayMusic → 再生される
②PlaySoundFile → 再生されない
③LoadSoundMemでロード → PlaySoundMem → 再生されない
④LoadMusicMemでロード → PlayMusicMem → 再生されない

現在の症状としては、↑のような感じになります。
②で再生されないのも正直変な話ですが、①と④の関係もちょっとおかしいなぁと思ったり……

うーん、どこかのアップローダに音楽ファイル載せて、みてもらった方がよいでしょうか?

SooA

Re:音楽再生について

#15

投稿記事 by SooA » 15年前

>うーん、どこかのアップローダに音楽ファイル載せて、みてもらった方がよいでしょうか?
問題が出ているのはそのファイルだけなのでしょうか?

最悪音質が低下してもかまわないのでしたら
再生できる状態にできると思いますが。
http://www.axfc.net/uploader/

閉鎖

“C言語何でも質問掲示板” へ戻る