ミニオーディオ 0.11.22

ミニオーディオ 0.11.22

24月0.11.22日、XNUMX年以上の開発期間を経て、クロスプラットフォームオーディオキャプチャおよび再生ライブラリのXNUMXがリリースされました。 ミニオーディオ、Cで書かれ、パブリックドメインで配布されています。
miniaudioは、主要なデスクトップおよびモバイルプラットフォームすべてで動作します。 Windows, macOS, Linux、BSD、iOS、 Android また、サードパーティの依存関係なしにWeb(Emscripten経由)も利用可能です。
このライブラリには、組み込みデコーダー (WAV、MP3、FLAC)、高度なミキシングおよびエフェクト処理 (3D を含む)、リソース管理、フィルター、データ変換などを備えたシンプルで柔軟なモジュール式 API があります。

主な変更点:

  • バージョン 0.12 以降、miniaudio は単一のヘッダー ファイルを廃止し、別々の .c/h ファイルのペアに移行します。これを準備するために、miniaudio.c ファイルがリポジトリに追加されました。現時点では、これは miniaudio.h と MINIAUDIO_IMPLEMENTATION のラッパーにすぎません。 miniaudio.h には何も変更されていませんが、バージョン 0.12 がリリースされると、コンパイルには miniaudio.c を使用する必要があります。 MINIAUDIO_IMPLEMENTATION の使用から miniaudio.c の使用への移行を開始することをお勧めします。プロジェクトを単一のコンパイル単位としてビルドし続ける場合は、#include "miniaudio.c" を使用できます。このメソッドはバージョン 0.12 以降でサポートされます。
  • extras ディレクトリ内のファイル miniaudio_libvorbis.h および miniaudio_libopus.h は非推奨になりました。これらは現在、extras/decoders ディレクトリ内の個別の .c ファイルと .h ファイルに分割されています。互換性のために古いファイルはまだ存在しますが、新しいバージョンにアップグレードする必要があります。移行は簡単なはずです。
  • オプション MA_SOUND_FLAG_LOOPING および MA_RESOURCE_MANAGER_DATA_SOURCE_FLAG_LOOPING が追加されました。これらを使用して、サウンドとリソース駆動型データ ソースをデフォルトでループするように初期化できます。これは、スレッドのループを有効にするために推奨される方法です。 ma_sound_config および ma_resource_manager_data_source_config の isLooping 構成オプションは非推奨になりました。これらを使用している場合は、新しいオプションにアップグレードする必要があります。そうしないと、将来のバージョンにアップグレードするときにコンパイラ エラーが発生します。
  • ma_rb_commit_read()、ma_rb_commit_write()、ma_pcm_rb_commit_read()、および ma_pcm_rb_commit_write() は、MA_AT_END を返さなくなりました。この変更の理由は、リング バッファーには「終了」の概念がないため、結果コードが不明確になるためです。さらに、これらの関数は、操作が正常に完了した場合でも MA_SUCCESS 以外の値を返す可能性があり、混乱を招いていました。リング バッファーにまだ空きがあるかどうかを確認する正しい方法は、rb_acquire_read/write() 関数によって返されるフレーム カウンターを確認することです。
  • ma_pcm_rb データ ソースの実装が変更され、リング バッファーに要求を満たすのに十分なデータがない場合、出力が無音で埋められるようになりました。つまり、ma_pcm_rb の ma_data_source_read_pcm_frames() は、要求した数よりも少ないフレーム数を返さなくなり、MA_AT_END を返すこともなくなります。これは、終了の概念がないため、循環バッファでは意味がありません。この変更により、リング バッファーを ma_sound のデータ ソースとして使用することがはるかに簡単になります。
  • ma_calculate_buffer_size_in_milliseconds_from_frames() 関数に小さな変更が加えられ、最も近い整数に丸められた値が返されるようになりました。
  • デコーダーの初期化に失敗した場合、以前のようにエラーに関係なく MA_NO_BACKEND が返されるのではなく、最初に発生したエラー コードが返されるようになりました。
  • デバイス ID を比較するための ma_device_id_equal() 関数を追加しました。
  • AAudio バックエンドに MA_NO_RUNTIME_LINKING のサポートを追加しました。
  • ドキュメントが更新されました。
  • 検出されたエラーは修正されました。

出所: linux.org.ru

DDoS 保護機能を備えた信頼性の高いサイト用ホスティング、VPS VDS サーバーを購入する 🔥 DDoS攻撃対策付きの信頼性の高いウェブサイトホスティング、VPS/VDSサーバーを購入しましょう | ProHoster