問題タブ [tarsosdsp]

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 に答える
980 参照

android-studio - Android Studio の TarsosDSP

これは SO に関する私の最初の投稿であり、自分の音楽スキルとコンピューター サイエンスを組み合わせようとしています。

Gradle 4.5、Nexus 5X、API 25、Android 7.1.1、Windows 7 で Android studio 3.1.2 を使用しています。
次の手順に注意深く従いました。

  1. Pitchbender というプロジェクトを作成します。

  2. .jarTarsosDSP をダウンロードして、

    /li>
  3. 私は自分のプロジェクトをチェックしましたbuild.gradle

    /li>
  4. 私のプロジェクトでは、次のインポートがAndroid Studioによって自動的に行われます。

    /li>
  5. マニフェスト ファイルにこの権限があります

    /li>
  6. Android Studioでは、次のコードの最初の行で Kotlin に変換するオプションが提供されます。

    Kotlin 変換に「いいえ」と答えると、次のコンパイル エラーが発生します。

    分類子「AudioDispatcher」にはコンパニオン オブジェクトがないため、ここで初期化する必要があります。

    私に何ができる?

    Kotlin 変換の質問に「はい」と答えると、そのステートメントは次のように変換されます。

    そして、このプログラムを実行すると、Android はエラーが発生したことを通知し、プロジェクトを閉じ、プロジェクトを閉じ続けます。何をすべきか?

少なくとも完全なコードの最初の命令を実行するのを手伝ってください:

質問:

エラーが何であるかを確認できるように、 Android Studioに簡単なプロジェクトはありますか?

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

java - PitchDetection が口笛でうまく機能するのはなぜですか?

TarsosDSP に付属している UtterAsterisk サンプル プログラムをいじっています。このプログラムの目的は、ユーザーが作成する必要があるメモを示す水平バーを表示することです。垂直バーが左から右に移動して、どのノートを実行するかの正しいタイミングをユーザーに示します。ユーザーが正しい時間に正しいメモを作成したかどうかに応じて、ユーザーはポイントを獲得します。

アプリケーションのスクリーンショットへのリンク: https://0110.be/files/photos/392/UtterAsterisk.png

このプログラムには 3 つのセクションがあります。

  1. 音声入力を選択
  2. 検出アルゴリズムを選択
  3. 予想されるメモと生成される実際のメモの視覚的表現: X ミリ秒ごとに小さな黒い四角形が作成され、ユーザーが作成したメモを表します。このセクションのタイトル (プログラムの最新バージョン) には、「口笛が最も効果的」と書かれています。

このコードが口笛で最もうまく機能するのはなぜでしょうか?

背景情報として、私は同様のプログラムの簡単なプロトタイプを作成しようとしていますが、ユーザーが口笛を吹かず、非ボーカル (スピーチなし) の音 (動物の音など) を生成し、正確さを一致させる必要があります。

私はプログラムに示されている音符を口笛で吹いてみましたが、かなりうまく機能します (私が口笛を吹くのが苦手であるという事実を除けば!)。

さまざまな検出アルゴリズムを選択してみましたが、口笛以外の音を出すと、音の音は必ずしも 3 番目のセクションに登録されません。

口笛を吹くと単一の音が出るように感じますが、(アヒルのような)鳴き声を出すことは実際にはハーモニクスです(これが正しいことを願っています:いくつかの音を混ぜて音を生成します)。

行 151、152: https://github.com/JorenSix/TarsosDSP/blob/master/src/examples/be/tarsos/dsp/example/UtterAsterisk.java

私が信じている PitchProcessor は、単一の周波数のみを含む pitchDetectionResult を返すため、単一のピークのみを処理します (59 行目): https://github.com/JorenSix/TarsosDSP/blob/master/src/core/be/ tarsos/dsp/pitch/PitchDetectionResult.java

残念ながら、私は主にデジタル信号処理の分野を始めたばかりであり、この特定のアプリケーションで口笛がどのように優れているかを理解するのに役立つかもしれません. 私の直感が正しいことを示している場合 (口笛 = 単音)、このプログラムと同じ基本的なことをどのように行うことができるでしょうか (ユーザーが作った動物の音と試合の録音を比較します)。

ご意見ありがとうございます。