コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
はる ◆75Vh4SY8TdKS
2018/7/21 4:47
転送したWAVファイルをそのまま読み込んで、
劣化させずに再生するプログラム

公開キー【R3BEV2NV】


追記

Twitterに拡散されました。
http://twitter.com/SquidSky1/status/1020567547853221889

コメント

アバター
ZEX 2018/7/21 13:31 ◆RrwFtq39WJM3
それWAV形式のファイルじゃないですよねぇ
誤解を招くので RIFF waveform Audio Format でないファイルをWAVファイルなどと呼ばないで頂きたい。
PCMのサンプリング情報だけのファイルなら『RAWファイル』と呼ぶ。
アバター
はる 2018/7/21 13:45 ◆75Vh4SY8TdKS
RIFF形式のWAVファイルですよ。
それのヘッダー消してサンプリング情報だけにして再生しているだけです。
アバター
ZEX 2018/7/21 14:13 ◆RrwFtq39WJM3
あー なるほど
COPYで固定長を消しているんですね、ファイルフォーマットを解析してないから勘違いしてた。
でもこの処理だと data チャンクの位置が別の位置にあるファイルだとゴミが再生される。
アバター
はる 2018/7/21 14:14 ◆75Vh4SY8TdKS
そうです。
理解して下さりありがとうございます。
ファイルフォーマットの解析はめんどくさいのでやっていません。
色々なファイルを読み込むときには、
ファイルフォーマットの解析も必要ですね。
アバター
ZEX 2018/7/21 14:36 ◆RrwFtq39WJM3
あと 8bitのWAVファイルは正常に鳴らないだろう
アバター
はる 2018/7/21 14:37 ◆75Vh4SY8TdKS
そうです。
プログラムを改造する必要があります。
アバター
ZEX 2018/7/21 15:22 ◆RrwFtq39WJM3
1チャンネル以外のWavファイルだと複数チャンネルが混在して再生されるし、
サンプリングレート8000Hz固定なので、それ以外のWavファイルだと音程が合わなくなるだろう。
アバター
はる 2018/7/21 15:27 ◆75Vh4SY8TdKS
そうですね。
アバター
SquidSky 2018/7/21 16:09 ◆qhyT2aHAyMJC
サンプリングレートは、WAVDATA[3]で参照できるはずです。
格納されているのは3辺りだった気がします。

ちなみに、WAVプレイヤー等ではなく、ゲーム内などで使う場合はRAW(Header-less)の方がいいです。

16,24,32bit PCMの判別のしかたってどうやるんですかね?
アバター
はる 2018/7/21 16:12 ◆75Vh4SY8TdKS
その通り、サンプリングレートはヘッダーの中にあります。
アバター
あまさとしおん 2018/7/21 16:33 ◆mzDKTVUAtwqE
サンプリングレートは
第24バイト(0起算)から4バイトの範囲です。

※単位に注意
アバター
はる 2018/7/21 16:34 ◆75Vh4SY8TdKS
はい。
アバター
あまさとしおん 2018/7/21 16:36 ◆mzDKTVUAtwqE
なおbits/sampleは第34バイトから2バイトだそうですね
アバター
あまさとしおん 2018/7/21 16:46 ◆mzDKTVUAtwqE
私はヘッダーの解析のヒントを書いています

サンプリングレート…第24バイトから4バイト
ビット数…第34バイトから2バイト
(アドレスは0起算)

コレを解析すればサンプリングレートとビット数の違いに対応できる気がします。
エンディアンは記録されていませんが、規格ではリトルエンディアンが正しいのでそっちにあわせましょう。
アバター
はる 2018/7/21 16:55 ◆75Vh4SY8TdKS
ヘッダーのことは一応調べましたが、
解析はめんどくさいと思ってやっていませんでした。
ひまがあったらやろうと思います。
アバター
SquidSky 2018/7/21 17:24 ◆qhyT2aHAyMJC
突然でてきたBAKA!!さんはいったい何者?
先程から意味不明なことばかり話していますが。
アバター
あまさとしおん 2018/7/21 19:10 ◆mzDKTVUAtwqE
突然氏はおそらく挨拶と荒らしの境界線が分からないようですね。
少なくとも執拗に返信をすることは挨拶の規範を超えています。

※名前省略
アバター
SquidSky 2018/7/21 22:36 ◆qhyT2aHAyMJC
こうやって、平気で意味不明なことを言うのが困るんですよね。
恐らく小学生でしょう。

そもそもはるさんを追いかけてやってきたのはなぜ?

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -