問題タブ [speex]

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 投票する
0 に答える
365 参照

java - JNI : Speex エンコーディング データ エラー

JNI で sppex を使用してエンコード メカニズムを開発しています。javaからEncodeメソッドを呼び出し、

正常に動作している次のcコード。

この C コードは正常にエンコードされています。

JNIを使​​用してこれを実装し、Javaで短い配列としてファイルを読み取り、JNIエンコードを呼び出すと、エンコードされたデータが正しくありません。

ここにJNIコードがあります

pls、.上記のコードに間違いを見つけましたか..よろしくお願いします。

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

flash - Speex を SWF バージョン 10 サウンド ストリームにエンコードする

Adobe の「SWF ファイル フォーマット仕様 v10」では、Speex でエンコードされたデータをストリーミング サウンドに使用できると述べています (「ストリーミング サウンド」の定義を少し明確にします。「SWF ファイル フォーマットは、サウンド データを再生してダウンロードするストリーミング サウンド モードをサポートしています。タイムラインとの緊密な同期。このモードでは、サウンド パケットがフレームごとに保存されます。" - これは FMS ストリーミングとは関係なく、ActionScript は必要ありません - プレーンな SWF のみです)。

これは、StreamSoundCompression を 11 に設定した単一の SoundStreamHead2 タグ (上記の仕様に記載されているように、「Speex」を意味します) を使用してから、ShowFrame タグと SoundStreamBlock タグの N ペアを使用することによって実現する必要があります。ただし、これは機能しません。この方法で生成した SWF を再生すると、Flash Player はサウンドを再生しません。ストリーミングされた MP3 または PCM データを含む SWF を生成し、完全に再生できることに注意してください。Speexだけではありません...

私は厳密に仕様に準拠しています: http://www.adobe.com/content/dam/Adobe/en/devnet/swf/pdf/swf_file_format_spec_v10.pdf、ページ 220.

ストリーミング サウンド アプローチとイベント サウンドを試しましたが、どちらも機能しません。

さらに、Speex でエンコードされたストリーミング サウンド (またはイベント サウンド) を含むサンプル SWF を (インターネット上のどこを探しても) 見つけることができませんでした。それらは存在しますか?とにかく、Flash CS5.5 はそれらを生成することができません...

SWF ストリーミング サウンドの Speex サポートが仕様以外の場所にあるかどうかを知りたいだけです。(FLV に Speex を含めることができること、Flash Player が Speex をマイクからストリーミングできること、FMS が Speex をクライアントにストリーミングできることは知っていますが、これは私が求めているものではありません)

敬具、

JK

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

speex - Speex ジッタ バッファの使用方法

speex ライブラリを使用して、オーディオ データのエンコード、デコード、および前処理を行っています。speex ライブラリは非常に便利だと思いますが、speex のジッタ バッファを使用すると、いくつか問題が発生します。私はマルチスレッドを使用しており、1 つのスレッドが受信したデータをジッター バッファーに入れ、別のスレッドがアクティブなジッター バッファーからデータを取得します。データのスレッド。さらに、ミューテックスを使用してジッター バッファーを保護しています。

ジッター バッファーの正確な使用方法がわかりません。誰かが私を助けてくれることを願っています。

これは私のコードです:

speex_jitter_buffer.cpp

次に、「speex_jitter_buffer.h」ヘッダー ファイルを使用しています。

「置く」スレッドコード:

「取得」スレッド コード:

また、speex ライブラリを使用してエコー キャンセレーションを行いたいのですが、正確な方法がわかりません。いつもありがとうございます。

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

linux - リンク エラー: 静的ライブラリへの未定義の参照

誰かが情報を持っている場合は、この問題についてあなたの助けが必要です.

(ARMアーキテクチャ)speex1.2rc1用に構成し、実行して. それで、私もコンパイル済みで取得しました。しかし、ライブラリをプログラムにリンクして (を追加して)、コンパイルしようとすると、次のエラーが発生します。xscale-elfmakemake installlibspeex.a/usr/local/liblibogg.aLDFLAGS += -lspeex -lm

./configureオプションを次のように渡し ました:

リンカlibspeex.aLDFLAGS += /usr/local/lib/libspeex.a -lm.

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

c - Speex でデコードされたフレームが元のフレームと異なる

固定小数点エンコーディングに関する次のサンプル コード (speex マニュアルから取得) の問題を特定するために、あなたの助けが必要です。160 サンプル フレームのエンコードとデコードをテストしましたが、問題は、デコードされたフレームが元のフレームとはまったく異なることです (下のコメントの出力を参照)。

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

android - Speex コーデックの機能を使用してオーディオ エコーを制御し、マイクのゲイン レベルを下げる方法は?

Speex コーデックを使用して Android でオーディオ ループバック プログラムをテストしています。ラウドスピーカーをオンにすると深刻なエコーが発生します。別のスレッドから呼び出された Speex エンコードとデコード。エコーを制御し、マイクのゲイン レベルを下げる方法。簡単な例またはコード スニペットが必要です。理解する。

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

codec - オーディオ PCM サンプルの unsigned short から signed short への変換

圧縮に音声コーデック (Speex) を使用したい。コーデックは入力として short タイプ (2 バイト符号付き) のオーディオ サンプルを受け取ります。範囲は -2^15 から 2^15 -1 です。

私の問題は、タイプ unsigned short (2-bytes unsigned)、範囲: 0 から 2^16 -1 のサンプルがあることです。では、署名されていないサンプルに Speex を適用するにはどうすればよいでしょうか?

各 unsigned short から 2^15-1 を減算して signed short として取得する提案された解決策があります。

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

encoding - libavcodec (FFMpeg) で Speex をエンコードしますか?

speexを有効にして libavcodecを正常にコンパイルしました。FFMPEG ドキュメントの例を変更して、サンプル オーディオを Speex にエンコードしました。ただし、結果ファイルは VLC Player (Speex デコーダーを搭載) では再生できません。

任意のヒント?

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

android - Windows.hが見つかりません、なぜですか?

私はこのブログをフォローして、ubuntu11.10を実行するボックスにandroidndkを使用してJNIをセットアップしています...このプログラムでは、speexをオーディオをストリーミングする既存のアプリケーションと統合しています。これまでのところ、すべてが正常に機能していましたが、speex_echo_cancelationを統合すると、問題が発生しました...次のエラーが発生します...何か助けはありますか?

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

c - speex_encode_int() は常に 70 のエンコードされた出力バイトを返します

libspeex でデータをエンコードしたいと思います。ただし、speex_encode_int() 常にSpeexBits長さ 70 の a を返します。提供するもの (音楽、沈黙、声) は関係ありません。

入力仕様:16bit、PCM、Mono、サンプリングレート44100Hz、LE

エンコーディング ルーチンでエラーが発生しましたか? それとも私の初期化に何か問題がありますか?