音声処理ソフトを作りたいんだけどプログラミングに詳しい人助けて
■ このスレッドは過去ログ倉庫に格納されています
wavファイルの音声データってどういう形で収納されてるの?
wavファイルのフォーマットは出てくるんだけど肝心の音声データの部分は波形データが収納されてるくらいの説明しかでてこなくて
波形データがどういうものなのかがよくわからなかった 最も単純な形式だから時刻と音の強さの配列じゃないの そこからの知識で音声処理に手を出そうとしてるのか・・・ あとステレオだと1サンプルずつ左右交互に配置される そのレベルはさすがに自力で探せたり理解できないと無理だろ
本一冊分のノウハウをスレで説明するとか不可能だろうし >>4
>波形情報を格納するチャンクである。
波形情報がどういう形で収納されてるのかが知りたいんだよ >>8
違ったかごめん、なんかフィーリエ変換とかで調べたら出てこないか?根本的には違うかもだけど。 >>7
そこまで難しい話じゃないだろ
どうやって記述してるかってだけの話 >>10
なんでここでフーリエ変換が出てくるのかがわからない
別にピッチ検出しようとしてるわけではないんだが >>11
だったら普通に数字だけだと思うけど、前音声のデータをそのまま書き換えれるソフトが有ったんだけどそれは数字いじってた。
これもまた違うかもだけど... >>11
フォーマットが分からないだけなら、プログラムに詳しい人に助けを求めることないじゃん
きっとフォーマットが分かったら、次はこれが分からないから教えろって延々続くんじゃないの? これはちょっと俺には何が知りたいのかわからんかった。
わかるんだけどわからん、すまない.. 詳しい人助けて(俺の代わりに作って)って意味だと解釈した
やる気ないなら糞して寝ろ >>18
なんでそんなわけのわからん解釈をするのか・・・ 煽るわけじゃないけど、これ読んで理解できないならいろいろアレだぞ
PCMであれば、8ビット長または16ビット長
ステレオであれば、L R L R L R … の順で交互に時間順に記録
16ビットの数値は、リトルエンディアン
データ
8ビットPCMは、unsigned char (0 〜 255、無音は 128)
16ビットPCMは、signed short (-32768 〜 +32767、無音は 0) >>20
お前が俺の質問の意味を理解できてないってことはわかった >>16
普通にググって一番頭くらいに出てきたこのサイトで十分な気がする
この内容のどこが分からないか?ってことすら言えてない時点で
お前ら全部説明しろ、って言ってるんじゃないかと思うんだが?
https://www.youfit.co.jp/archives/1418 >>21
いや、、、、あの、、、バカ?
音ってそもそも波形でしかないのよ
波でしかないの
わかる? >>22
それはwavファイルのフォーマットだろ
俺が聞いてるのはwavファイルの中の波形データのフォーマットなんだよ バカだこいつw
波形データにフォーマットもクソもねえよ
音そのものが波形なんだよバーカ 画像がRGBの各ピクセルの羅列だってのは知ってますか >>26
PCで処理するのに音がそのまま保存されるわけねえだろ
全部数字に変換されてるんだよ >>24
> データ * 波形データを格納。リニアPCMの場合は時間順に格納される。
> ステレオは左→右→左→右…のように格納される。
> 8ビットの場合は符号無し整数 (0 ? 255)、16ビットの場合は符号付き整数 (-32768 ? 32767) で表わす。 >>28
音がそのまま保存されてる
と思っていい
例外としてADPCMとかあるが頭の悪い1はそれは考えなくていい >>30
8ビットの場合は符号無し整数、16ビットの場合は符号付き整数でどういうフォーマットで表されてるのかを聞いてるんだよ >>22のとおりだろ
データ*
波形データを格納。リニアPCMの場合は時間順に格納される。ステレオは左→右→左→右…のように格納される。8ビットの場合は符号無し整数 (0 – 255)、16ビットの場合は符号付き整数 (-32768 – 32767) で表わす。 ある周波数ほにゃららHZのデータを仕込むときには具体的にどういうバイナリをデータチャンクに入れるのかみたいなのが知りたいんだろ? テキストファイルみたいになってると思ってるってこと? 瞬間瞬間の圧力の数値を並べただけのものがいわゆる波形データなので画像の1ピクセルに相当するのは一つのFloat値かShort値
フォーマットもクソもないただの配列
数値が並んでるだけ
解釈すべき速度だけがサンプリングレートとして別に記録されてる
これで分からなければ無理 >>32
バカは黙ってろよ
そのまま保存されてねえんだよ >>37
日本語わからないの?
符号無し整数、符号付き整数とはなんなのかじゃなくて
符号無し整数、符号付き整数を使ってどうやって記述してるのかを聞いてるんだぞ 強いて言うならバイナリ状態の配列
cならfreadとかで読め >>38
なってないファイルがあるとしたらそれは量子コンピュータだからノーベル賞貰えるぞ
>>39
その数値の単位は? >>34
どういうフォーマットってWAVなんだからそのままだろw
そもそも >>22 くらい詳しく書いてあって、自分の知りたいことだけが抜け落ちてるって発想がおかしい
自分の理解がそこの説明に追いついてないだけってのがオチだろ >>46
バカは黙っててよ
自分が説明できない質問されたからって発狂すんな あの
まずお前はプログラム上でバイナリファイル開いたことすらないだろ
そっからやり直して
普通は出てこないような阿呆な質問してるから >>34
>>20の通り
16bitなら16bit(2byte)読み込んでリトルエンディアンだから最初の1byteと次の1byteを入れ替えてsigned shortに変換すればよろし >>49
聞いてるのはデータ型じゃなくてフォーマットなんだが >>50
それを書いたら俺の質問に答えずに勝手に「俺が変わりに作ってやる」とか言い出して俺が作りたいものと違うもの作って押し付けてくるやつが出てきそう >>47
馬鹿なのはお前だ
例えば、16bit48KHzで1秒のWAVなら、データ部は16ビットのデータが48000個並んでるだけだ
それを理解できないならそもそも >>22 のサイトの説明が理解できてないだけ >>50
>>35の通り
データ部を>>49の通りに扱え >>53
その16ビットのデータの中身を聞いてるんだよ
何回言えばわかるんだよ
>>54
聞いてるのは扱い方じゃなくて中身なんだが 強いて言うなら
何らかのセンサーで測定できる負の圧力の最大値をshort型の負の最大値
正の圧力の最大値をshort型の正の最大値に対応させた仮の単位
ということになる
例えば各最大値を交互に取るような波形を再生すると爆音が鳴って死ぬ
これでわかるか? >>55
中身って何を聞いてるの?ちゃんと正しく質問しろよ
WAVがどういうフォーマットなのか理解してれば、1サンプルの音声データは1つの値があるだけなのくらい分かるだろ? 多分何デシベルとかいう実際の単位に対応した値が入ってると思い込んでたんだろ?
頼むそうであってくれ >>59
それなら>>57が全てだからちゃんと読んでくれ >>61
圧力が時系列順に入ってて
圧力の単位はセンサーによって変わる
ってこと? >>55
音が波形データってことは知ってる?
10,256,257,258みたいな
で、リニアPCM16bitならそのそれぞれの数値が16bitずつリトルエンディアンでデータ部に入ってるんだよ
10,256, 257, 258は16進数でそれぞれ
0x000a, 0x0100, 0x0101, 0x0102
これらがそれぞれリトルエンディアンで格納されてるから、8bitずつ書くと、
0a 00 00 10 01 01 02 01 >>59
最終的にはスピーカーに出力される電圧値になるだけ
そもそもWAV以前に音声周りで当たり前のことが分かってなくね?
分かったら次が質問されるとか言った俺の憶測以前に、
そもそも何が分かってないのかが芋ずる式に出てくるだけじゃね? そういうライブラリ使えよ
ずいぶん昔にDirectSound使って波形編集アプリ作ったわ
もう忘れたがな 疎密波の概念とかサンプリング定理とか
講義で聞くと要らんだろそこの説明とか思ってたけど
要るやつには要るんだな 本当に >>57 の説明を読んで >>62 で理解したのか怪しいと思うが強制的に終わらせた感w wavであればアナログ信号がそのまま入ってるとかいう意味不明なこと思ってそうだよな >>71
最初から俺が知りたかったのはこれなんだが
お前は質問の意図を未だに理解できてないんだな >>72
間逆なんだが
どういう数字に変換されて入ってるのかを聞いてるのに
そのまま入ってるってしつこくお前らが言ってきてたんだが >>73
俺が言ってるのは、それが分かってないなら質問の仕方が悪い
それだけ 音声ってものは電気的には時間とともに変化する電圧の値でしかない
それを一定の周波数でサンプルするってことは1個ずつは電圧に応じたただの1つの値でしかない
これはフォーマットの問題じゃなくて音声データのしくみそのものの話だから
フォーマットに絡める限り出てくる答えじゃない 質問の意図を理解できてなくてずれたことをグダグダ言ってたくせに
解決後もぐだぐだと管巻いてる奴みっともなさすぎ >>77
だから>>1でフォーマットの中身の音声データの中身を聞いたじゃん たとえばこの12時の時報のポッ、ポッ、ポッ、ポー↑
だとどんな感じの数字が入ってそうか予想はつくのか? >>79
>>1 はWAVファイルの〜って文で聞いてるじゃん
WAVファイルに限らず、音声とはそもそもどうやってデータにしてるのか?
って方向で、そもそもWAVが関係ないことを明言しないで通じるわけがない
WAVを例に話をするにしても >>30 の引用部分を自分で出して
その先の質問してればすんなり答え出てたろ 普通にやってたら疑問に思わないことだから
気持ちが先行して実力以上のことやろうとしちゃったんだろ
基礎って大事なんだなって しかし画像のピクセルの輝度については自然に最小値から最大値までの線形って解釈してるはずなのに
音波に関して何らかの単位に沿ってるはずって思い込んだのは何でなんだろな >>82
多分WAVデータを編集アプリとかで見れば、波形がすぐに表示されるし
その波形の時間軸を伸ばしてサンプルレートで見れば1ドットが1サンプルに対応してるってのは
普通見れば判ると思うんだよね
それを判ってないってことが普通の人間には簡単に理解できない "16ビットの方"の軸にしか注意を向けてないし理解できてないんだろうな データヘッダーの構造やチャンク構造の話じゃないの? >>87
オーディオ情報のデジタル表現の話らしいよ
俺たちはデルタシグマの話でもしようず ■ このスレッドは過去ログ倉庫に格納されています