5

G729 でエンコードされたオーディオ ファイルがあります。他のことをしているツールのフローで、プログラムでそれらを WAV PCM (16bit 8kHz mono) に変換する必要があります。私はそれを行う実行可能ファイルを持っています。しかし、変換するたびにその外部プロセスを生成するのは、リソースに負担がかかりすぎます。特に、それらの多くを並行して実行する必要がある場合。プロセス内でこれを呼び出せる .NET ライブラリまたはコードを探しています。

4

7 に答える 7

3

このリンクに従ってください: VoiceAge Open G.729 実装。また、C で記述された g729 デコーダーとエンコーダーも提供します。

于 2008-10-17T17:21:04.150 に答える
0

g729 コンバーターに関して最初に促されるのは、ITU G729-A 規格です。かなり面倒な方法の 1 つは、g729 を pcm に変換することです。最初に wav ファイルの前に wav ヘッダーを追加します。これにより、.g729 から .wav が構築されます。 ITU 公式の g729a (公式にはマルチスレッドをサポートしていません...) lib はこのアイデアに深く関わっているため、同時実行性と、g729a lib 内の一連の静的変数を使用して適切にプログラムする方法を考慮する必要があると思います。 OP descibesのような小さなプロジェクトで、私は基本的に巨大なg729ファイルをg729チャンクに分割し、合理的な並行プログラミングの方法で個別にデコードします...

于 2012-03-26T07:32:54.657 に答える
0

システムに G729 用の ACM コーデックがある場合は、NAudioを使用して PCM に変換できます。NAudio に含まれている NAudioDemo アプリケーションを使ってみてください。システムで利用可能な ACM コーデックが表示され、それらを使用してファイルがデコードされます。

于 2008-10-20T18:15:12.793 に答える
0

ファイルに必要なコーデックのみを確認したい場合は、GSoptにアクセスして最新バージョンをダウンロードします (ここをクリックしてダウンロード ページを直接開くことができます)。

ダウンロード後、ファイルを開いたフォルダを抽出して実行EXEし、参照ボタンからファイルを選択すると、ファイルがロードされた後にすべての情報が表示されます。(ファイルが表示されない場合は、から選択するだけbrowse dialogue boxです)All Files(*.*)browse file dialogue

于 2012-08-24T08:02:22.143 に答える
0

ウィキペディアによると、G.729 にはいくつかの特許が含まれており、Sipraによってライセンスされているため、適切なライブラリを見つけることはおそらく難しいでしょう。多数の非常に小さなファイルをデコードしていない限り、新しいプロセスを生成するコストは、デコードを行うコストと比較してそれほど大きくないはずなので、持っている実行可能ファイルを使用することをお勧めします.

リソースに関する限り、はい、プロセスを生成するには、スレッドを使用する場合と比較して、より多くのリソースが必要です。ただし、マシンにコアがあるのと同じ数のプロセスのみを生成する限り、これは実際には問題になりません。より多くのプロセスを生成すると、リソースが浪費されるだけで、追加の並列処理は得られません。

于 2008-10-17T17:16:44.813 に答える
0

ウィキペディアは次のように述べています。「G.729 には複数の企業の特許が含まれており、Sipro ( http://www.sipro.com/ ) によってライセンスされています。多くの国では、G.729 の使用にはライセンス料が必要であり、および/またはロイヤリティ料。」

しかし、アプリケーションですでにそれを考慮していると思います。

絶対に進行中でなければならない場合、1 つの解決策 (それが最善であるとは言いません) は、LGPL の下にある LibAVCodec を使用することです。

于 2008-10-17T17:20:05.837 に答える
0

無料で使用できる参照実装: http://www.readytechnology.co.uk/open/ipp-codecs-g729-g723.1/

他の人が提起した特許の問題、参照実装は Intel プロセッサでのみ実行されること、および商用製品の一部として IPP ライブラリを使用してコードを配布するには Intel に料金を支払う必要があることに注意してください。

于 2008-10-17T17:39:03.287 に答える