問題タブ [juce]
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.
c++ - 解析の問題 - 非修飾 ID が予想されます
やあみんなこれは私のコードで、私はC++に比較的慣れていないので、コーディングでさえなぜ解析エラーが発生するのか本当にわかりませんが、私の理解によれば、括弧を適切に配置しましたここに何か欠けている場合は誰か提案してください。
この行でエラーが発生しています
完全なコード:
juce - Introjucer/Visual Studio 2013 オブジェクト ファイルの衝突
私のビルドには、State.cpp という名前の 2 つのファイルがあります。Introjucer を使用して VS プロジェクトを生成し、コンパイルしようとすると、両方のファイルが同じオブジェクト ファイルに衝突し、次の警告が表示されます。
警告 1 警告 MSB8027: State.cpp という名前の 2 つ以上のファイルが同じ場所に出力を生成します。これにより、正しくないビルド結果が生じる可能性があります。関連するファイルは、......\audio\State.cpp、......\sg\State.cpp です。
その後、さまざまなリンク エラーが発生します。
VS プロジェクトの [オブジェクト ファイル名] プロパティを変更することで、VS 内でこれを簡単に修正できます。しかし、Introjucer でプロジェクトを再生成すると、その設定が吹き飛ばされてしまいます。
衝突を防ぐために Inrojucer の構成ページで使用できる設定はありますか?
c++ - 再生中にオーディオ信号のゲインを変更するとアーティファクトが発生する
プログラムでオーディオ ファイルを再生しています。オーディオ レンダリング コールバックで、ゲイン マルチプライヤを入力信号に適用し、それを出力バッファに追加します。私のアクションを説明するための擬似コードを次に示します。
基本的に、データに乗数を掛けるだけです。この場合、gain
GUI コールバックを介して調整されている float メンバーです。オーディオがまだ再生されている間にこの値を調整すると、スライダーを動かしたときにオーディオが柔らかくなったり大きくなったりするのが聞こえますが、小さなポップやクリックがたくさん聞こえます。
契約が何であるかはよくわかりません。私は補間について知っており、オーディオがピッチシフトされている場合はそれを行いますが、オーディオファイルの再生が完了する前にゲインがリアルタイムで調整されている場合、追加の補間または何かを行う必要があるかどうかはわかりません。
オーディオの再生が始まる前にスライダーを調整すると、ゲインが適切に設定され、クリック音は発生しません。
ここで何か不足していますか?ゲインは、入力信号の乗数以外にどのように実装されますか?
c++ - 条件付きマルチスレッドと変数の更新を同時に行うにはどうすればよいですか?
私のコードは次のとおりです。
if 条件はたまにしかトリガーされず、while ループの前のセクションで使用されたすべての変数を更新します。ループ全体は通常 (必要に応じて) リアルタイムで実行されますが、if 条件も実行する必要がある場合は遅れます。別のスレッドで if 条件を実行するにはどうすればよいですか? 必要なだけ時間がかかる可能性があります。更新が遅れて発生しても問題ありません。while ループの残りの部分をリアルタイムで実行し、「if」スレッドが完了するたびに変数が更新されるようにしたいだけです。
コンテキスト: C++/JUCE フレームワーク、リアルタイム信号処理。
ios - Xcode 6 の既存の Objective-C iOS プロジェクトで JUCE モジュールを使用する
Xcode 6 で既存の iOS プロジェクトに JUCE モジュールを何らかの方法で追加して使用しようとしています。ファイルを追加しましたが、JuceHeader.h などのヘッダーをプロジェクトに含める方法がわかりません。 . このタスクの段階的な手順を見つけるために多くのことを検索しましたが、成功しませんでした. 誰かがこの問題で私を助けてくれれば幸いです。ありがとう。
c++ - ResamplingAudioSource を実装する Juce
Visual Basic で実行されている JUCE のバッファー内にある信号をオーバーサンプリングしようとしています。 http://www.juce.com/about-juce
正確に言うと、オーバーサンプルとは、同じ時間でサンプル数を増やすことを意味します。たとえば、元のファイルが 44100 khz の場合、サンプル レートを 88200 khz に上げたいと思います。これは、信号に存在する可能性のあるデジタルアーティファクトを減衰させるのに役立ちます。
私が理解していることから、Juce にはこのためのクラスがあります。 ResamplingAudioSource http://www.juce.com/api/classResamplingAudioSource.html#details 私の問題は、クラスの実装方法がわからないことです。私は次のようにクラスの新しいインスタンスを作成しようとしました:
クラス PluginOversampler : public ResamplingAudioSource { public: PluginOversampler(); 〜PluginOversampler();
}
PluginOversampler::setResamplingRatio(ここで指定された比率) を呼び出して、リサンプリング レートを変更できるという考えがあります。
しかし、プロジェクトは Visual Basic でコンパイルされません。エラーは数百にも及びます。それらのいくつかは、さまざまな .cpp および .h ファイルで使用するグローバル変数string22に関連しています。
結果のエラーが次の場合:
の宣言を省略すると、プロジェクトは正常にコンパイルされます
他のエラー メッセージは、Juce ヘッダー ファイルがタイプを正しく定義していないことを示唆していますが、以前はプログラムが完全に機能していた (vst ファイルは DAW で正常に機能していた) ことを考えると、エラーは Juce ファイルではなく、自分のプログラミングに起因すると考えられます。これを実装しました。
私はすでに別のクラスをインスタンス化しています:
クラス「PluginAudioProcessor」に「ResamplingAudioSource」内の関数を継承させる必要がありますか? 私はかなり迷っています。
c++ - グラデーションを使用した Juce C++
小さな三角形に分割された 7 角形があり、これらのそれぞれを異なる色のグラデーションでシェーディングし、これらのグラデーション ポイントの座標を移動できるようにする必要があります。これを行うジュースの Colourgradient クラスを見つけることができましたが、2 つの座標点のみに制限されています。これを拡張してポリゴンの三角形を埋めるにはどうすればよいですか (各三角形はジュースの個別の「パス」を構成します)。最初は、すべての三角形を異なる色でシェーディングする必要があり、スライダーの値を使用して、これらの三角形間のグラデーションのフェードを制御できます (グラデーション座標ポイントを移動します)。これらを実装する方法はありますか?
c++ - JUCE のアトミック機能のメモリ順序は?
ブースト ライブラリと C++11 標準ライブラリでは、アトミック操作に、命令の並べ替えを制限するメモリ順序修飾子があります。しかし、JUCEの原子力施設にはこれがありません。では、JUCE アトミックは最も厳密なメモリ順序アサーションを使用するので、それを気にする必要はありませんか?