0

どちらも C 用のバインディングがあり、さまざまなフォーマットを再生できます。

どちらがより優れていますか?シンプルさ、パフォーマンス、オーバーヘッド、およびメモリフットプリントの観点から。

また、複数のストリームを処理するのに優れているのはどれですか?

4

2 に答える 2

1

私はどちらもプログラミングしたことはありませんが、OpenAL はリアルタイム パフォーマンスを要件として、ゲーム用のマルチチャンネル オーディオをレンダリングおよび出力するように設計されていると思います。

libSoX は、オーディオ ファイルからの入力と出力、およびフォーマット変換に適しています。プラグインはたくさんありますが、リアルタイムのオーディオ出力用には設計されていません。ただし、使用するのはかなり簡単なようです。

libsndfileも参照してください。

やりたいことは具体的に何ですか?

于 2010-12-22T16:43:45.937 に答える
0

私は OpenAL を使ったことはありませんが、それについて多くの悪いことを聞いたことがあります。ウィキペディアから:

OpenAL はもともと、Loki Software が Windows ゲームを Linux に移植するビジネスを支援するために開発したものです。Loki の終焉後、プロジェクトはフリー ソフトウェア/オープン ソース コミュニティによってしばらく維持され、NVIDIA nForce サウンド カードとマザーボードに実装されました。現在、Apple、Blue Ripple Sound、およびフリー ソフトウェア/オープン ソース愛好家からの継続的なサポートを受けて、Creative Technology によってホストされています (そして大部分が開発されています)。

OpenAL チャーターでは、OpenGL ARB をモデルにした「アーキテクチャ レビュー ボード」(ARB) が存在すると述べられていますが、そのような組織はこれまでに形成されておらず、OpenAL 仕様は一般に、そのパブリック メーリング リストで電子メールを介して処理および議論されています。

1.1 以降、Creative による実装はプロプライエタリになりました。フリー ライセンスの最後のリリースは、プロジェクトのサブバージョンから引き続きアクセスできます。ただし、OpenAL Soft は広く普及しているオープン ソースの代替手段です。

呼び出し元のアプリケーションの状態を台無しにするという問題もありました。それをリンクするだけでmain、プログラムの初期環境を変更し、いくつかのプログラムを壊すような方法で の呼び出しの前にいくつかのグローバル コンストラクターが実行されたと思います (おそらく MPlayer?)。この問題が修正されたかどうかは私にはわかりませんが、それは悪いライブラリを叫んでおり、歴史的にそのような悪用が含まれていたライブラリを信頼することに懐疑的です.

于 2010-12-22T16:31:33.750 に答える