問題タブ [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 に答える
711 参照

c++ - libsndfile ライブラリによって生成された ogg ファイルのビットレートを設定します

以下のコードを使用してサウンド ファイルを ogg vorbis に変換しましたが、常に 128 kb/s に設定されている出力ファイルのビットレートを設定する方法が libsndfile のドキュメントにありません。libsndfile で生成された出力ファイルのビットレートを変更することはできますか?

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

c - オーディオ遅延が機能する

私は C で単純なオーディオ遅延を実装しようとしています。以前に、印刷された正弦波で動作し、効果的に機能するテスト遅延プログラムを作成しました。遅延を SFProcess - libsndfile のプロセスとして組み込み、正弦波入力をオーディオ「データ」入力に置き換えてみました。

私はほとんどそれを持っていますが、きれいなサンプル遅延の代わりに、あらゆる種類のグリッチと歪みが発生しています.

これを修正する方法についてのアイデアはありますか?

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

c++ - libsndfile sf_readf_short 最大フレーム数

Wave ファイルをできるだけ速く読み込む必要があります。私が現在行っていることは次のとおりです。

このコードはこれまでのところうまく機能します。

問題: readBlockSize の値を 10 倍に増やしてから、115212164 バイトのウェーブ ファイルを読み込もうとすると、実行時にセグメンテーション フォールトが発生しsf_readf_shortます。

私が得たヘルプから、 「sf_readf_XXXX関数は読み取ったフレーム数を返します。読み取り中にファイルの終わりに達しない限り、戻り値は要求されたフレーム数と等しくなるはずです。ファイルの終わりを超えて読み取ろうとすると、エラーになりますが、sf_readf_XXXX 関数は要求されたフレーム数よりも少ない値を返すか、すでにファイルの最後にある場合は 0 を返します。」

したがって、これは10MBでも機能すると予想していました。

ヒントをありがとう。

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

c - この音声ファイルが sf_read_double で読み込まれないのはなぜですか?

ドラム シーケンスの各サブディビジョンを 2 次元配列内の個別の配列 (サブディビジョンの行、各サブディビジョンのデータの列) に分割しようとしています。コードの早い段階で、テンポと目的のサブディビジョンに関するユーザー仕様を使用して、サブディビジョンあたりのサンプル数を決定します。サンプルで入力ファイルのサイズを計算するためのある程度合理的な方法があると思います (最初のセクションを示します)。私の質問は: そのままでは、sf_read_double while ループは実行されません。ループが実行されるのは、「buflen」に 2 (おそらくチャネル数) を掛けたときだけです。そして、ループが実行されると、計算されたサンプルの総数を超えてしまい、sug フォルトが発生します。このコードで何が間違っていますか?

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

c++ - ライブラリ「sndfile.h」の関数「sf_readf_float」の問題点

音声認識に関するプロジェクトがあります。ライブラリ「sndfile.h」を使ったのですが、入力音の読み込みに行き詰まります。質問があります。関数によって読み取られたデータsf_readf_float()は時間領域の信号ですね。そうでない場合、それは何ですか?それを時間領域信号に変換する式はありますか?