問題タブ [pitch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - CMDeviceMotion を使用する場合、デバイスが真上 (ピッチ = 90) の場合、非常に不安定です。とにかくこれを解決するには?
(ピッチ、ヨー、ロール)座標系には、数学的に独自の欠陥があることを知っています。ただし、代わりに、またはこの座標から派生したものが代替になることを本当に願っています。
私がやろうとしているのは、現実の世界でデバイス (iPhone だとしましょう) を動かし、ユーザーの目に関するヨーとピッチを把握しようとすることです。したがって、ヨーの範囲は (-180, 180) で、ピッチの範囲は (-90, 90) である必要があります。iPhone (常に自分に向いている) を下から前に移動すると、CMDeviceMotion によってピッチが 0 から 90 に変化し、iPhone (まだ自分に向いている) を前から上に移動すると、CMDeviceMotion によってピッチが 90 から後ろに変化しますこれらは良好で、ピッチ データについては完全に満足しています。
ただし、ピッチが 90 に近づくと、ヨーは非常に揺れて不安定になります。ウィル、ピッチが 90 前後のときのヨーの変化は無視できるので、これは問題ではありません。ただし、実際の問題は、ピッチが増加する前とピッチが減少した後で、ヨーの値が劇的に変化することです。つまり、不安定なだけでなく、平均も変化します! 180(Pi)のように変化します。コーディネートが全然違うからかな。しかし、私は今座標転送で迷子になっています。
c - ゼロからのWAVファイル合成-C
最近、CS 101クラスでビデオ講義を見て、CでWAVファイル形式を試してみるようになりました。今日の私のプロジェクトは、単純な数学の余弦関数を使用してサウンドを作成しています。いくつかの障害にもかかわらず、私のプログラムはいくつかの入力(波の周波数、波の振幅、サンプリングレートなど)を受け入れ、指定されたピッチを含むwavファイルを作成できるようになりました。
しかし、私のコンピュータースピーカーでこれらのトーンを再生すると、サンプリングレートによって変化する、奇妙でリズミカルなポップサウンドが発生します。サンプリングレートを高くすると、飛び出る音の周波数が高くなり、不快なうなり音に変わります。
奇妙な部分は、同じファイルを使用するさまざまなコンピューター間でポップ音が一貫していることです。
以下に、WAVファイルの生成に使用するコードを投稿します。この現象を引き起こしている可能性のあるものについての洞察があれば幸いです。それはおそらくどこかで私の側の愚かな間違いです。:)
objective-c - 録音したクリップのオーディオ ピッチを変更する (m4v)
映画 (.m4v) を録音しているときにオーディオのピッチを変更しようとしているアプリを書いています。または、後でムービーのオーディオ ピッチを変更します。最終結果は、元の長さ (つまり、元と同じビジュアル) のムービー (.m4v) になりたいのですが、音のピッチが変更されています (たとえば、「シマリスの声」)。可能であれば、リアルタイム変換が優先されます。
私は iOS でのオーディオ ピッチの変更について多くのことを読みましたが、ほとんどの例は再生、つまり異なるピッチでサウンドを再生することに焦点を当てています。
私のアプリでは、ムービー (.m4v / AVFileTypeQuickTimeMovie) を記録し、標準の AVAssetWriter を使用して保存しています。ムービーを保存するときに、オーディオを操作しようとした次の要素にアクセスできます (たとえば、ピッチを変更します)。
- オーディオ バッファ (CMSampleBufferRef)
- オーディオ入力ライター (AVAssetWriterAudioInput)
- オーディオ入力ライター オプション (例: AVNumberOfChannelsKey、AVSampleRateKey、AVChannelLayoutKey)
- アセットライター (AVAssetWriter)
上記のオブジェクトにフックしてオーディオ ピッチを変更しようとしましたが、成功しませんでした。
ここで説明されているように、Dirac でも試してみました: Real Time Pitch Change In iPhone Using Dirac
And OpenAL with AL_PITCH as here: Piping output from OpenAL into a buffer
And the "BASS" library from un4seen: Change Pitch/Tempo In Realtime
上記のライブラリのいずれでも成功していません。おそらく、それらの使用方法と、オーディオ保存コードにフックする場所がよくわからないためです。
同様の効果を持つライブラリがたくさんあるようですが、再生またはカスタム録音コードに焦点を当てています。既に取得しているオーディオ ストリーム (AVAssetWriterAudioInput) を操作したり、保存したムービー クリップ (.m4v) を変更したりしたいと考えています。ビデオを視覚的に変更しないでください。つまり、同じ速度で再生します。しかし、オーディオを速くしたり (シマリスのように) 遅くしたり (... モンスターのように) したいですか?
ピッチをリアルタイムで (ムービーの録画時)、または後でムービー全体 (.m4v ファイル) を変換して変更する方法について何か提案はありますか? Dirac、OpenAL、SoundTouch、BASS、またはその他のライブラリをさらに調べる必要がありますか?
オーディオを変更して他のユーザーとムービーを共有できるようにしたいので、再生のみのピッチ変更に頼ることはできません。
android - getorientation と getrotation マトリックスを使用してピッチ、ロールを計算する方法
デバイスの 4 方向の傾きを検出するために、ロールとピッチの値を取得したいと考えています。getorientation と getrotation マトリックスを使用してそれを行いたいです。どうすればできますか?リンクでも役に立ちます。
math - セント単位のピッチシフトビデオレート計算
数学/音楽の知識が乏しく申し訳ありません.. ビデオファイルを 50% と 75% の速度で再生したい場合、同じピッチを維持するには、両方の状況で何セントシフトする必要がありますか? また、式は何でしょうか?
前もって感謝します!!
c++ - wavファイルに存在するメモのリストを取得するには?
私は人々がギターを学ぶのを助けるプログラムを書いています。これを行うには、時間のサンプルを見て、彼らが演奏した音符を確認できる必要があります。FFTW を見ましたが、これを機能させる方法がわかりません。私はまた、Goertzel アルゴリズムを理解しようとしましたが、それはダイヤル トーンのような単一周波数のノート用のようです (それについてはわかりません)。明確にするために、(コードが演奏されているかどうかを確認するために) 複数の音符を検出できる必要がありますが、そこにいくつかのハーモニクスが含まれていても、それほど問題ではありません。
私はこれを C++ でコーディングしていますが、クロスプラットフォームのソリューションを好むでしょう。
更新: 特定のメモを検出することはそれほど重要ではないことに気付きました。私が本当に必要としているのは、特定の周波数が存在し、他の周波数が存在しないことを確認することです。たとえば、誰かが C を演奏する場合、C 周波数 (約 262 Hz) が存在すること、およびおそらく 524 Hz と 786 Hz が存在することを確認し、倍音系列で近くにない近くの音 ( B および D) は存在しません。
ios - appceleratorを使用したリアルタイムのサウンドピッチシフト
私はAppceleratorのTitaniumSDKの完全な初心者なので、この質問に明白な答えがあれば、事前に謝罪します。
appceleratorを使用してリアルタイムでサウンドのピッチを変更する方法はありますか?それができるモジュールはありますか?
答えを探しているときに、それを実行できるいくつかのObjective-cライブラリ(たとえば、dirac-2)について知りました。専用モジュールなしでTitaniumを介してそのようなライブラリに接続する方法はありますか?
ios - iPhoneの傾斜角度-ジャイロスコープを使用しますか?
iPhoneを直立させたときに何度傾いているか知りたいのですが、iPhoneを上に向けると、何度見上げているのか知りたいのですが。これにはジャイロスコープとコアモーションが使えると思いますし、欲しいピッチだと思いますが、ピッチはラジアン/秒で表した「速度」です。ユーザーがiPhoneをどれだけ速く動かしたかにはあまり興味がなく、傾いた角度に興味があります。だから、写真を撮るために携帯電話を上に向けている場合、上に向ける角度を知りたいのですが、何かアイデアはありますか?
ありがとうございました。
android - Android コンパス: ピッチに応じて異なる方位角の値
アプリを開発していますが、カメラとコンパスを同時に使用する必要があります。問題は、Azimuth の値が Pitch の 1 つに応じて変化することです (つまり、電話を持っているかテーブルに置いているか)。2 つの値の間には数学的な相関関係があるようです: 180 を指しています。 °違いはありません...それ以外の場合は、20〜30°のギャップがあります。
+の使用Sensor.TYPE_ORIENTATION
と組み合わせの両方でコンパスを実装しましたが、何も変わっていません。Sensor.TYPE_ACCELERATION
Sensor.TYPE_MAGNETIC_FIELD
注: ロールではなく、ピッチについて話しています。明らかに、電話を左または右に回すと、結果を +-90° で調整する必要があります。
テストには LG P500 (Optimus One) を使用しています。それは私のデバイスの問題ですか?または、何か不足していますか?
ありがとう。
編集:他の誰かがすでに同じ質問をしていることがわかりました...まだ解決されていませ ん
android - getOrientation()ピッチは地平線について反映します
スマートフォンを地平線のすぐ下に置くと、-90を超えることに気づきました。空を指すように電話を傾け始めると、-90前後、つまり-88、-90、-88が反射します。地面から空に向かって傾いているように。
誰かがこれを以前に経験したことがありますか。(remapCoordinateSystemとは関係がないようです)。(私は以前にそれをコメントアウトしました)。電話のカメラを地面に向けると、ピッチの読み取り値はゼロになります。天井に向けると、それもゼロになります。
助けてくれてありがとう。
私のニーズに対する一時的な修正には、getorientationを呼び出す前にマトリックスを回転させることが含まれます。
どのように完全に反転しても、同じ問題が発生します。(これはAzimuthを追加することで解決する必要があります)しかし、それは素晴らしい解決策ではありません。
したがって、他の人がこれを読んでいて、地平線を0度にしようとしている場合。ディスプレイを回転させるのとは対照的に、前にマトリックスを回転させます(OpenGLを使用しています)