問題タブ [supercollider]

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.

0 投票する
1 に答える
2929 参照

supercollider - Buffer.read への相対パスを指定するにはどうすればよいですか?

そのため、相対パスを使用してサウンド ファイルをバッファにロードしたいと考えています。(私は自分のものをバージョン管理下に置いており、誰かがファイルシステムのどこにレポを複製するかについて仮定したくありません。)

したがって、最初は、相対に見えるパスを指定すると、SC はそれを実行中のファイルの場所に相対していると解釈するだろうと想定していました。

しかし、SC はファイルを見つけることができませんでした。だから私は調べてasAbsolutePathそれを試しました:

SCは相対パスから絶対パスを導き出すことができないため、これも機能しません。

...実際には、ファイルシステムに存在しない場所を返します。万歳!

この面倒な作業をどのように達成するかについて、誰か提案できますか?

0 投票する
1 に答える
775 参照

audio - C言語用のSuperCollider(または同様のリアルタイム合成システム)インターフェースはありますか(できればDLL形式で)?

ゲーム エンジン内で SuperCollider のさまざまなプラグインを使用することに興味があります。しかし、私のプログラミング言語 ( SwiftForth ) の FFI は、単純な古い C 言語の DLL ファイルしかサポートしていません。

まず、ある種の OSC インターフェイスが必要であることはわかっています。次に、SuperCollider を何らかの方法で実行する必要があります。これがゲームでどのように行われるかについての詳細はまだわかりません。

また、SuperCollider へのコマンドライン インターフェイスについても読んだことがあります。それは私がやりたいことにとって実用的ですか?

私は提案や代替案を受け入れますが、交渉の余地がないのは SwiftForth だけです。私は既にエンジン関連のコードを大量に作成しており、その独自性と柔軟性のためにリアルタイム合成を追加したいと考えていました。

0 投票する
1 に答える
1290 参照

linux - ジャックサーバーなしのスーパーコライダー

私のプロジェクトの要件の 1 つは、組み込みシステムのランタイム フットプリントを削減することです。Linux では必須のように見えますがjackd、現在は依存関係が強く、libasound代わりに直接使用することはできないようです。本当ですか? jackdまた、組み込みデバイスで使用し、リソースの使用状況を要約できる人からの連絡も素晴らしいでしょう。とはいえ、比較的十分なメモリを備えた BeagleBone を使用する予定ですjackd

0 投票する
2 に答える
130 参照

terminology - 「タイプ」、「インスタンス」、「クラス」、「オブジェクト」の概念の違い

クラスとオブジェクトの概念を理解しようとしていて、「型」と「インスタンス」という言葉に出くわしました。タイプはクラスとまったく同じことを意味し、インスタンスはオブジェクトを意味しますか? それとも使い方の違いなど違いはありますか?

0 投票する
1 に答える
440 参照

processing - SuperCollider - Synth インスタンスの制限

私は SuperCollider と Processing を試しています。基本的には、Processing から SC にメッセージを送信するだけです (このメモを再生する、この時点でなど)。

ただし、SC で 1 つのことを理解するのに問題がSynthDefあります。 を作成し、Processing からさまざまな MIDI ノートが入っているとしましょう。シンセの 1 つのインスタンスだけで、すべてのノートの再生を処理することはできませんか?

現在、SC はすべてのノートに対してシンセの新しいインスタンスを作成しているため、必然的にインスタンスが膨大に蓄積されます。私は試してみましたSynth(Synth.new、すべての状況で、受信したメッセージごとに新しいインスタンスが作成されるようです。

コード例:

基本的に、SynthDef とリスナーを作成します。Processing から整数を受け取り、それを配列キーにマッピングして、再生する MIDI ノートを決定します。しかし、リスナーがトリガーされるたびに、シンセの新しいインスタンスを取得します

0 投票する
2 に答える
284 参照

supercollider - この非リターン エンベロープが再トリガーされないのはなぜですか?

非リターン エンベロープを使用しようとしています (つまり、その中のセグメントが 0 に戻りません)。次のコードでは、エンベロープenvを複数回トリガーできないことがわかりました。

私が望んでいたのは、シンセが再トリガーされるたびに、ピッチがどんどん高くなることでした。実際に何が起こるかというと、最初のノートがピッチ エンベ​​ロープを再生し、後続の各ノートがちょうど最終 (つまり高い) 周波数になります。env明らかに再トリガーされていません。

これがなぜなのかはわかりません。エンベロープは、再トリガーする前に 0 に戻す必要はありません。終了する前にエンベロープを再トリガーすることは完全に可能です。私の封筒に何か問題があります。

私は基本的に の動作を持つものを探していますが、再Lineトリガーしてカスタマイズ可能な曲線を持つこともできます。

私がやろうとしていることは可能ですか?