サウンドプログラミング5

このエントリーをはてなブックマークに追加
810デフォルトの名無しさん:2013/11/17(日) 21:59:32.66
811デフォルトの名無しさん:2013/12/14(土) 16:52:45.90
HTML5でオーディオプログラミングやっている人いませんか?
812デフォルトの名無しさん:2013/12/27(金) 00:08:15.70
友人の結婚式で新郎がギター演奏して、ギター二つあるからってことで式で使ったギターをもらった。
格好良かったから自分もやってみたいところだったが、USBギターケーブルってものを見つけた。
USB GUITAR LINK GUITLINK という製品。
プログラマの端くれとしてはギターの音を拾うプログラムを書いてみたくなったんたけど、
これってどういう仕組みなんだろう?
この機器に関係なく楽器用のAPIとかってあるのかな?
813デフォルトの名無しさん:2013/12/27(金) 02:06:57.85
ADコンバータにそれっぽい名前をつけてるだけでしょ
814デフォルトの名無しさん:2013/12/27(金) 08:35:18.84
>>812
PCや普通のAV機器の入力に直でギター繋ぐなよー、受け側が壊れる場合もある
ttp://www.g200kg.com/jp/docs/dic/impedance.html
815デフォルトの名無しさん:2013/12/27(金) 15:07:40.44
ギターの直出力レベルで機器が壊れるってのは初めて聞いた
816デフォルトの名無しさん:2013/12/29(日) 11:15:14.72
引用:
> 通常のミキサーのマイク入力などにそのまま接続しても正常に音が出ない。

「正常に音が出ない」という表現を「壊れる」と解釈するのは斬新だなw
817デフォルトの名無しさん:2013/12/30(月) 04:53:09.66
音が壊れるってことだろ。
818デフォルトの名無しさん:2014/01/05(日) 16:14:20.64
>>812

まず、音声を機器に取り込むには、マイク入力と、ライン入力 とかあったりする。
どちらも、電圧をオシロスコープで見ると、よくある音声波形が見えるのだが、
2つの違いは、その大きさが違うということ。(詳しく言うと、インピーダンスの違いが大きいが、それはおいておこう)

ところで、コイルに磁石を出し入れすると電圧(電流)を生じるのは分かるかな。
エレキギターも、コイルが入っていて、弦の振動が、電圧になるのだが、微弱すぎるんだ。
そこで、ギター入力可能な端子というのは、ギターの微弱な電気を、増幅させる回路が入っている。
( 詳しくいうと、入力インピーダンスがすごく高い、かつ、増幅率の高いアンプ、というのがポイント)

つまり、USBギターケーブルっていうのは、いろんなPCにもついている音声入力端子 を、
ギターの微弱音に対応させた専用のもの、と覚えておけばよいだろう。
819デフォルトの名無しさん:2014/01/05(日) 16:33:14.29
次に、この音声入力信号を扱うプログラムを書く方法だが、
察しのとおり、PCに入ってきた音声信号は、OSやAPI、ドライバなどがまとめて取り扱う。
自作のプログラムは、用意されたAPIに対して、データのやりとりをして処理を行うこととなる。

なお、USBの信号を、OSやAPIに渡すまでの処理は、機器のメーカーが用意してある。
通常、USBを指したら、ドライバをインストールしてください、って出るだろ?それ。
で、例えばWindows の場合、音声信号を扱うAPIは、何種類かある。

マイクロソフトが標準で用意しているドライバは、
Windows マルチメディアAPI(MME) mmsystem.h
Windows Audio Session API (WASAPI)
DirectSound
など。
でも、マイクロソフトのAPIは、割とどんな機器でも対応できるような仕様で音声信号をまとめるので、
それがいやだ、って言う人のために、楽器用のオーディオドライバも第3者から提供されている。
それが、ASIOとかいうドライバ。


で、ASIOとかに対応したプログラムを書きたいなら、ASIOのSDKを入手して、
asiodrivers.h をインクルードして、、、などとプログラムをすればよいのだが、
一定時間内に処理を終わらせないと音が途切れるなど、各種のオーディオプログラミングテクニックが必要。
820デフォルトの名無しさん:2014/01/05(日) 16:46:47.67
ということで、ギターの音を拾うプログラムをしたければ、
(a) USBギターケーブルと通信するための、USB信号を自分で解析して、自分で制御する
(b) a はメーカーの用意したUSBドライバに任せて、
自分は、そのUSBドライバが対応しているオーディオAPIとやりとりするプログラムを自作する
といったプログラムをすることとなる。

どちらも結構面倒である。 というか (a)は無理。
(a)をやりたければ、ハードウェアの自作から始めた方が早い。

つまり、ギターの音を拾うのはあなたには無理であろう。あきらめなさい。
821デフォルトの名無しさん:2014/01/05(日) 16:48:14.94
だが、ギターの音を拾うところまでは、先人の開発したソフトウェアに任せてしまえば、
そのソフトウェアを使ったプログラミングならば、割と簡単にできる。

例えば、Processing のmimimライブラリを使えば、簡単に音声入力を扱える
http://r-dimension.xsrv.jp/classes_j/minim/

もし、音声エフェクトアプリとかに興味あるのなら、VSTエフェクトの自作とかも探ってみる。
VSTっぽいみたいなのを、簡単にやってみたいなら ↓ とか面白いかも。
http://jvaptools.sourceforge.net/scripteffect/screenshot.htm
Javaの文法で音声エフェクトを簡単にリアルタイムコーディングできて面白い。
822デフォルトの名無しさん:2014/01/05(日) 17:35:31.98
もっというと、ブラウザ上のJavaScriptでギター入力音を扱える時代が来るかもしれない。

ブラウザがオーディオ入力信号を扱うことができれば、
あとは自分のJavaScriptは、そのAPIに対してデータのやりとりとかメソッド実行を行うだけだ。

今のところ Chrome なら、
WebRTC とか WebAudio API を使えば、
オーディオ入力データを getUserMedia()関数で取得できる。
823デフォルトの名無しさん:2014/01/16(木) 02:58:43.07
mp3等の圧縮って先にLPFで帯域制限してるみたいなんだけど
単にフーリエ変換後ある周波数以上のデータを含めないって帯域制限の掛け方できる?
824デフォルトの名無しさん:2014/01/16(木) 03:09:57.75
デジタルフィルターってのが、一般にそれをやってるんじゃないの。
逆フーリエ変換のときに。
825デフォルトの名無しさん:2014/01/17(金) 22:51:27.40
普通にできるけど、逆変換した後にフレーム間の波形のつながりが悪くなるから、
フレームに処理前のサンプルを入れる時点で余分にサンプルをとって、
フレームを重複させながら処理するんだったような。
826デフォルトの名無しさん:2014/03/31(月) 14:53:16.34 ID:OkqtQFpz
インパルスレスポンスの入ってるwaveファイルって
元となる音の一番目のサンプルとインパルスのサンプルの一番目の音を掛け算して
次に元となる音の一番目の音とインパルスの2番目の音と掛けて、元となる2番目とインパルスの1番目を
掛けたものを足すみたいにやってけばいいんですよね?
827デフォルトの名無しさん:2014/04/02(水) 12:23:16.75 ID:FY64sASs
たずねる前に、まずやってみることです。
828デフォルトの名無しさん:2014/04/23(水) 01:22:14.76 ID:Be8/NqvO
テープレコーダーがブームらしいけど、テープレコーダーのノイズや信号ずれの音を再現できないだろうか
829デフォルトの名無しさん:2014/04/23(水) 09:35:49.37 ID:Fk2AHs0t
パンで音の広がりってどうやって再現するんですか?
たくさん右に振ったパンとたくさん左に振ったパンを混ぜると広くて
たくさんを小さくにすると狭いんですか?
あとパンの振ってあるステレオファイルをパンを振るにはどうするんですか?
830デフォルトの名無しさん:2014/04/23(水) 09:45:29.51 ID:5vldvyzp
パン振るだけじゃいわゆる広がりは出ない
ディレイをかける
831デフォルトの名無しさん:2014/04/23(水) 10:22:20.03 ID:ezfyJwXq
位相をずらす
832デフォルトの名無しさん:2014/04/23(水) 10:34:58.59 ID:Fk2AHs0t
位相って右から音がなると右のほうが先に聞こえるってことですよね?
それと広がりとどう関係するんですか?
833デフォルトの名無しさん:2014/04/23(水) 11:06:08.12 ID:GdSWjfVB
単純にそういうわけでもないけど、、
脳が空間を認識するからだろ
834デフォルトの名無しさん:2014/04/23(水) 12:51:33.30 ID:6VikSZRx
横の広がりはディレイ
縦の広がりはリバーブ
835デフォルトの名無しさん:2014/04/30(水) 17:30:57.64 ID:96+BbSAH
ミキサーで加算するとき、信号をソートして小さい方から足していかないと情報落ちが起きますよね
このときの誤差ってどの程度のものなんですか?
836デフォルトの名無しさん:2014/04/30(水) 19:01:17.86 ID:+zw06xcU
>>835
式は思い出せないけど、
計算機イプシロン 情報落ち でググって。
837デフォルトの名無しさん:2014/05/05(月) 11:16:12.48 ID:Mu2ScZdD
その情報落ちより、浮動小数点を整数に直すときのズレが大きすぎるから気にしなくていいよ。
838デフォルトの名無しさん:2014/05/11(日) 11:50:22.46 ID:0MhL7reQ
最近のソフトシンセの機能と音質の凄さに、
「これじゃあ、わざわざ、立派な外部スピーカー買わなくても良いじゃんw」
とさえ考えてしまう俺がいるのであった...。
プロはどう思うか知らんが、素人だと、そこまで考えてしまうくらいだから。
839デフォルトの名無しさん:2014/05/11(日) 11:54:30.79 ID:uVLDDIJF
そうなんだ
ソフトにしろハードにしろシンセで作った
濃厚な音を再現性良く出すには
それなりのスピーカーが必要だと思ってた
840デフォルトの名無しさん:2014/05/11(日) 16:16:19.06 ID:xo7pnJy3
スピーカーの特性を検出して、
信号にその逆特製を施してやるとかできないもんだろうか?
841デフォルトの名無しさん:2014/05/11(日) 16:23:16.03 ID:Kc1eCup4
音場補正ならこういうのあるよ
http://www.ikmultimedia.com/mobile/products/arc/?O=JP

割と安価だし自分でやる必要性は感じないかな
842デフォルトの名無しさん:2014/05/11(日) 16:46:14.09 ID:+P2aAX7z
CONEQとか既にその手の処理は飽和気味だよね
843デフォルトの名無しさん:2014/05/12(月) 13:02:09.34 ID:qGQ9K653
イコライザーっていうものはそういうもののために存在しているわけだが。
844デフォルトの名無しさん:2014/05/12(月) 13:20:51.32 ID:2vYhWLPf
リアルタイムに外からの騒音も消してくれるなら良いんだけど
測定時の部屋の反響程度だよね
845デフォルトの名無しさん:2014/05/12(月) 20:12:08.66 ID:di4+ZeX/
>>843
言われてみれば、等化器か。
正直、調味料的な見方してた。
846デフォルトの名無しさん:2014/05/12(月) 20:33:27.39 ID:eNXkL11P
補正なんてしたら頭動かせなくなるんじゃん?固定器具必要じゃん?
847デフォルトの名無しさん:2014/05/12(月) 22:42:37.82 ID:cG/EbP95
そんなんカメラで位置検出すれば大丈夫だって
848デフォルトの名無しさん:2014/05/13(火) 18:53:31.89 ID:TbMp8/0S
キネクト使えばいけそうやな
849デフォルトの名無しさん:2014/05/18(日) 12:40:16.32 ID:7YUGvOzg
サイン波で少しずつ音を上げていかないとプチっていうんですけど、
波形自体がそういう音の成分を含んでいるのか、スピーカーを通すとそういう音が鳴るのか
どちらですか?
850デフォルトの名無しさん:2014/05/18(日) 13:16:24.42 ID:vXasxGe8
both
851デフォルトの名無しさん:2014/05/18(日) 13:19:50.84 ID:OJTIBpRp
波形の立ち上がり(時間)の事か解像度の荒さの事か分からんけど、

前者ならA点からB点をサイン曲線とかで補間してやれば立ち上がりが若干緩くなる
他のやり方だとオーバーサンプリングして戻してもノイズ消えるんじゃないかな?

後者はそもそも補間してないって話だよね
852デフォルトの名無しさん:2014/06/02(月) 16:32:33.23 ID:2EOO5SfK
元々モノラルお音をステレオに二重化するとき
音を左右大きさ変えて音源移動してるイメージにしたいのに
なかなかうまくいかないわ
853デフォルトの名無しさん:2014/06/04(水) 11:14:33.83 ID:JjkiX3zX
パンを一番左にすると普通左からしか聞こえないけど
実際は右からも聞こえるからな。
反射音なしなら左からしかきこえないってことなんだろうけど。
854デフォルトの名無しさん:2014/06/04(水) 23:03:23.65 ID:ZoWoj1bU
位相をずらす
855デフォルトの名無しさん:2014/11/01(土) 01:49:48.99 ID:i3hu5hPg
音声認識はスレ違い?
856デフォルトの名無しさん:2014/11/01(土) 22:17:04.75 ID:TOmVtt0r
ギリありじゃね
857デフォルトの名無しさん:2014/12/12(金) 03:57:40.57 ID:L50nhIUx
ビブラート入れるプログラムくれー
858デフォルトの名無しさん:2014/12/16(火) 14:13:56.88 ID:mKQuEY+m
道具に頼らず歌の練習しろ
859デフォルトの名無しさん