問題タブ [libsndfile]

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

c - WAVファイル分析C(libsndfile、fftw3)

WAVファイルの特定のタイムスタンプで特定の周波数範囲で0〜100の値を与えることができる単純なCアプリケーションを開発しようとしています。

例:44.1kHzの周波数範囲(通常のMP3ファイル)があり、その範囲をn個の範囲(0から開始)に分割したいと思います。次に、0〜100の各範囲の振幅を取得する必要があります。

私がこれまでに管理したこと:

libsndfileを使用して、WAVファイルのデータを読み取ることができるようになりました。

ただし、FFTについての私の理解はかなり限られています。しかし、必要な範囲で振幅を取得するために必要なことはわかっています。しかし、どうすればここから先に進むことができますか?その目的に合っていると思われるライブラリFFTW-3を見つけました。

私はここでいくつかの助けを見つけました:https ://stackoverflow.com/a/4371627/1141483

ここでFFTWチュートリアルを見てください:http ://www.fftw.org/fftw2_doc/fftw_2.html

しかし、FFTWの振る舞いがよく​​わからないので、ここから先に進むかどうかはわかりません。

また、libsndfileを使用していると仮定すると、別の質問があります。読み取りを(ステレオファイルを使用して)シングルチャネルに強制してから、サンプルを読み取る場合。それでは、実際には、ファイル全体のサンプルの半分しか読み取っていませんか?それらの半分はチャネル1からのものですか、それとも自動的にそれらを除外しますか?

あなたの助けをたくさんありがとう。

編集:私のコードはここで見ることができます:

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

c++ - サウンドアレイを正しくFFTする方法は?

入力オーディオサンプルに存在する周波数のリストを取得しようとしています。この結果を得るにはFFTを実行する必要があるようですが、(FFTWを使用して)FFTを実行すると、奇妙な答えが得られます。入力トーンの周波数を変更しても、FFTのサンプル長を変更しても、常に同じ場所にあります(最後から5か所、最後から46か所、その他数か所が散発的に表示されます)。私は何が間違っているのですか?これが私のコードです:

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

java - libsoxまたはlibsndfile用のjavax.soundインターフェースはありますか?

すでにjavax.soundを使用して作業を行っているJavaアプリケーションからCAF(Core Audio Format)ファイルを開いたり操作したりしようとしています。それぞれがCAFをネイティブにサポートするlibsoxまたはlibsndfileのjavax.soundラッパーを知っている人はいますか?

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

arm - Arm/Raspberry Pi の libsndfile をクロスコンパイルするにはどうすればよいですか

Linux (Debian スクイーズ amd64) で動作するクロスコンパイラを取得しようとしていますが、自分のファイルをインストール済みの にリンクできないようですlibsndfile。ソースをクロスコンパイルして Raspberry- をターゲットにする必要があると想定しています。 Pi とそのバージョンへのリンク。./configureしかし、 andmakeステージを実行してターゲットにコンパイルするための簡単な手順が見つからないようです。

注:次の手順に従いました:クロスコンパイル用の GCC 4.7 ツールチェーンを構築するにはどうすればよいですか? Eclipseを使用してビルドされたクロス コンパイラを取得します。

0 投票する
3 に答える
2071 参照

c++ - libsndfile を使用して .wav ファイルを配列にロードするにはどうすればよいですか?

libsndfile を使用するサンプル プログラムを調べましたが、どれもコンパイルできませんでした。.wav ファイルの種類やヘッダー内の内容を気にせずに、.wav ファイルを整数 (または double) の配列に読み込めるようにしたいと考えています。データを配列に入れることだけに関心があるので、個々のサンプルに対して独自の処理を行うことができます。

libsndfile のソース コードをダウンロードしました。ファイルやフォルダが多すぎて、どこから始めればよいかわかりません。何を含める必要がありますか? どのような方法を使用する必要がありますか? 誰かが実際に機能する簡単な例を持っていますか?

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

dll - Visual Studio 2010 Express での libsndfile のリンクに関する問題

初めて libsndfile (Windows 64 ビット バージョン) を使用しようとしましたが、リンクしようとしているときに問題が発生しました。プログラムをコンパイルしようとすると、次のエラーが発生します。

エラー LNK2019: 未解決の外部シンボル _sf_close が関数 _main で参照されています

これは、プログラムにリンクするためにこれまで行ってきたプロセスです。

プロジェクトのプロパティで、Config に移動しました。Prop.-> VC++ ディレクトリ、およびヘッダー ファイルへのパスをインクルード ディレクトリ タブに追加し、.lib ファイルへのパスをライブラリ ディレクトリ タブに追加しました。

C/C++ -> 一般 -> 追加のインクルード ディレクトリで、ヘッダー ファイルへのパスを追加しました。

Linker->Input->Additional Dependencies で、.lib ファイルへのパスを追加しました。これは、私にとっては C:\Program Files\Mega-Nerd\libsndfile\lib\libsndfile-1.lib です。

#include "sndfile.h" を .cpp ファイルに追加しましたが、何らかの理由で dll の関数にアクセスできないようです。私はリンクについてあまり詳しくありません。私がやったことは、インターネットを精査してつなぎ合わせることができたものに過ぎないので、何が間違っていて何が正しいのかはよくわかりません. どんな助けでも大歓迎です。

0 投票する
0 に答える
296 参照

c++ - iOS用の許容サウンドファイル解析ライブラリ

libsndfileの代わりに、iOSで使用できるようにパーミッシブライセンスを持つサウンドファイル解析ライブラリを知っている人はいますか?理想的にはC/C ++コードを探していますが、ObjCコードも検討します。

l / gplに閉じ込められていない限り、ライブラリの機能が不足していても問題ありません。

これまでのところ、検索では何も思いつきませんでした。誰かが宝石を知っていますか?

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

visual-c++ - お問い合わせ: libsndfile と Visual Studio 2010 C++ の統合。エラー: libsndfile.dll が見つかりません

C++の学習の一環として、wavファイルをC++に読み込む方法を独学しています。次のライブラリを推奨する多くのリソースをオンラインで見つけました: libsnfile ライブラリ したがって、以下のチュートリアルに従ってライブラリの基本機能をテストしましたが、ライブラリを Visual Studio 2010 でコンパイルすることはできません。

次のエラーをオンラインで検索しましたが、特定のエラーに役立つものは見つかりませんでした。ここにある libsndfile C++ Windows インストーラーをダウンロードしました。win32 C++ コンソール バージョンを使用しているため、32 ビット バージョンを使用しました。ただし、私の Visual Studio は 64 ビットです。インストーラーをダウンロードした後、次のことを行いました。

Visual Studio に入りました。私のプロジェクトでは、次のことを行いました。

プロジェクトのプロパティ: 1. VC++


インクルード >> ...\libsnfile\include を追加 ライブラリ >> ... \ libsnfile\lib を追加

このサードパーティのライブラリをプロジェクトに追加するためにこれを行いました。この後、テストするために、次のコードを実行しました。

プログラムで sndfile.h にアクセスでき、すべてがコンパイルされていることを確認するために、それをコーディングしました。次のコードを実装しようとしたときに問題が発生しました。

プログラムを実行しようとしたときに Visual Studio 内で実行をクリックすると、システム エラーが発生します。それは言う、

64ビットのWindowsインストーラーを試してみましたが、うまくいきませんでした。私が何をしているのか誰でも理解できますか?開発環境として Windows 7 で Visual Studio の 2010 を実行しています。

ばかげた間違いを犯していたら申し訳ありませんが、誰かが私を助けてくれれば、深く感謝します。上記で説明したように、いくつかのハッキーな修正を試みましたが、何も機能しませんでした.

編集:私はこのスレッドhereも認識していますが、彼らが話しているこのパスのことは何もしていないため、これは私の現在の問題には意味がありません。

よろしく、 GeekyOmega

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

visual-studio-2010 - C++ プログラムが Visual Studio 2010 で絶対パスを読み取らない

Visual Studio で絶対パスを読み取らない C++ プログラムがあります。

次のコードは、私のデスクトップ環境 (Windows 7、Visual Studio 2010、64 ビット) で動作します。ただし、私の macbook では、まったく同じ Visual Studio 2010 を持つ Windows 7 64 ビット仮想マシンに対して bootcamp や VMware を実行しています。

この問題を修正するための私の試み:

  1. デスクトップとMacbookの絶対パスが同じであることを確認しました。さらに、デスクトップで2回行ったのと同じ方法でwaveファイルを読み取るために、サードパーティのライブラリをインストールしたことを2回確認しました.

  2. デスクトップで実行するプログラムを書き直し、Macbook にライブラリを再インストールしました。デスクトップではより単純なプログラムが動作しますが、残念ながら、Macbook では絶対パスを読み取ることができませんでした。

  3. パスではなく、実際のプロジェクト ソリューション自体に wav ファイルを移動しました。変化なし。

  4. グーグル。

あなたの利益のために、コードを一番下に含めます。libsndfile ライブラリを使用して wav ファイルを読み込みました。非常に古い粗末な Windows ラップトップを使用しようとするだけかもしれませんが、Macbook VM マシンで何が問題になるのか理解できません。

}

このプログラムを実行したときの私の出力は

いつものように、この質問を読んでいただきありがとうございます。どなたかの助け、援助、または知恵をいただければ幸いです。特に、同様の問題に遭遇した場合。

よろしく、 GeekyOmega

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

linux - ARM アーキテクチャ用の libsndfile ライブラリをビルドする

Iphone/Ipad のオーディオ エンジンで使用する libsndfile をビルドする必要があります。エラーなしでビルドしましたが、i386 アーキテクチャ用なので、プロジェクトをビルドするときにいくつかのエラーが発生しました。

アームアーキテクチャ用にビルドするにはどうすればよいですか?

エリック・デ・カストロ・ロポがそうするように言ったこの主題を見つけました:

しかし、私がビルドするとき、私はこれを持っています:

どのようにできるのか ?ありがとう!