| 原作者 | ジュリアン・ストーラー |
|---|---|
| 初回リリース | 2004年 |
| 安定版リリース | 7.0.12 / 2024年4月15日[1] |
| リポジトリ |
|
| 書かれた | C++ |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | 開発ライブラリ |
| ライセンス | GPL、商用 |
| Webサイト | ホームページ |
JUCEはオープンソースの クロスプラットフォーム C++ アプリケーションフレームワークで、デスクトップおよびモバイルアプリケーションの開発に使用されます。JUCEは特にGUIとプラグインライブラリに使用されます。GPLv3と商用ライセンスの二重ライセンスです。 [2]
JUCE の目的は、同じソース コードをWindows、macOS、Linuxプラットフォームで同じようにコンパイルして実行できるようにソフトウェアを作成できるようにすることです。さまざまな開発環境とコンパイラをサポートしています。
歴史
JUCE は、 Tracktion (現在の Waveform)のDAWグラフィックおよびオーディオ機能を作成するために Julian Storer によって開発された基礎となるC++コードを分割して生まれました。2004 年に初めて一般に公開されました。GPLと商用の二重ライセンスが適用されます。
JUCEとRaw Material Softwareは2014年11月にロンドンを拠点とするハードウェアメーカーROLIに非公開の金額で買収された。 [3]
2020年4月、JUCEがROLIからPACE Anti-Piracy Inc.に売却されたことが発表された。[4]
公式サポート
JUCE は、複数のプラットフォームおよびコンパイラでまったく同じように使用できるように設計されています。Raw Material Software は、サポートが公式に確認されているプラットフォームおよびコンパイラのリストを次に示します。他のものも動作する可能性がありますが、公式にテストされていません。
サポートされているプラットフォーム
JUCEは以下のプラットフォームでサポートされています。
サポートされているコンパイラ
JUCE は以下のコンパイラで正常に動作することが公式に確認されています。
- GCCバージョン 5 以降
- LLVM - LLVM Clang バージョン 3.4 以降
- Microsoft Visual Studio - Visual C++ 2015 以降
特徴
他の多くのフレームワーク(Qt、wxWidgets、GTKなど)と同様に、JUCEには、ユーザーインターフェイス要素、グラフィックス、オーディオ、XMLおよびJSON解析、ネットワーク、暗号化、マルチスレッド、ECMAScriptの構文を模倣した統合インタープリタ、およびその他のさまざまな一般的に使用される機能をカバーするさまざまな機能を提供するクラスが含まれています。複数のサードパーティライブラリを必要とするアプリケーション開発者は、JUCEライブラリのみを統合して使用するか、少なくとも使用するサードパーティライブラリの数を減らすことができます。この点で、元々のインスピレーションはJavaのJDKであり、JUCEは「C++用の同様のもの」になることを意図していました。
他の類似フレームワークと比較した場合のJUCEの注目すべき特徴は、オーディオ機能の豊富さです。これは、JUCEがもともとオーディオシーケンサーであるTracktionのフレームワークとして開発され、その後スタンドアロン製品に分割されたためです。JUCEは、オーディオデバイス(CoreAudio、ASIO、ALSA、JACK、WASAPI、DirectSoundなど)とMIDI再生、ポリフォニックシンセサイザー、一般的なオーディオファイル形式(WAV、AIFF、FLAC、MP3、Vorbisなど)の組み込みリーダー、 VSTエフェクトやインストゥルメントなどのさまざまな種類のオーディオプラグインを構築するためのラッパーをサポートしています。これにより、JUCEはオーディオ開発コミュニティで広く使用されています。[5]
JUCE には、オーディオおよびブラウザ プラグインを構築するためのラッパー クラスが付属しています。オーディオ プラグインを構築すると、複数のプラグイン形式 ( VSTおよび VST3、RTAS、AAX、Audio Units ) をサポートする単一のバイナリが生成されます。プラットフォームと形式固有のコードはすべてラッパーに含まれているため、ユーザーは単一のコードベースから Mac および Windows の VST/VST3/RTAS/AAX/AU を構築できます。JUCE7 以降では、LV2プラグインのターゲット設定とホスティングも可能になりました。[6]以前は、さまざまなフォークを使用して行われていました。[7] [8]
ブラウザ プラグインも同様の方法で処理されます。NPAPI プラグインとActiveXプラグインの両方として機能する単一のバイナリが生成されます。
ツール
「Projucer」は、JUCE プロジェクトの作成と管理を行うIDEツールです。JUCE プロジェクトのファイルと設定が指定されると、Projucer は、各ターゲット プラットフォームでプロジェクトをネイティブにコンパイルできるように、サードパーティのプロジェクト ファイルのコレクションを自動的に生成します。現在、 Xcodeプロジェクト、Visual Studioプロジェクト、Linux Makefiles、Android Antビルド、およびCodeBlocksプロジェクトを生成できます。プロジェクトのファイルと設定を管理する方法を提供するだけでなく、コード エディター、統合 GUI エディター、新しいプロジェクトとファイルを作成するためのウィザード、およびユーザー インターフェイスの設計に役立つライブ コーディング エンジンも備えています。
バージョン履歴
- バージョン 1 - 2004
- バージョン 4 - 2015 年 11 月
- バージョン 5 - 2017 年 4 月
- バージョン 6 - 2020 年 4 月 - 主な更新には、プロジェクト ビルド用の CMake サポートの追加、DSP モジュールの改良、Linux での VST3 サポートの導入、Windows での Clang サポートの導入、macOS/iOS での Webview コンポーネントの更新、およびその他のさまざまなプラットフォーム固有の機能強化が含まれます。
- バージョン7 - 2022年6月 - 重要なアップデートには、Audio Random Access (ARA) SDKとLV2プラグインのサポートの導入、macOSとiOS向けの新しいレンダリングオプション、プラットフォーム間でのハードウェア同期描画、Android APIの更新、AudioPlayHeadの改良、アクセシビリティ機能の強化などが含まれます。[9]
参照
参考文献
- ^ Tom Poole (2024-04-15). "7.0.12". github.com . 2024年5月15日閲覧。
- ^ JUCE ライセンス、JUCE、2022-04-18、2022-04-18取得
- ^ 「音楽ハードウェアメーカーROLI、音楽業界の主要フレームワークJUCEを買収」TechCrunch、2014年11月18日。 2016年3月19日閲覧。
- ^ “JUCEがPACEによる買収を発表 | JUCE”. juce.com . 2020年4月19日時点のオリジナルよりアーカイブ。2022年3月30日閲覧。
- ^ “Ecosystem”. 2013年8月7日時点のオリジナルよりアーカイブ。2017年4月25日閲覧。
- ^ JUCE7 リリースノート: https://github.com/juce-framework/JUCE/releases/tag/7.0.0
- ^ falkTX の DPF フォーク: https://github.com/DISTRHO/juce
- ^ KottV の lv2-porting-project フォーク https://github.com/lv2-porting-project/JUCE
- ^ 「JUCE/ChangeList.txt at master · juce-framework/JUCE」。GitHub 。2023年9月15日閲覧。
外部リンク
- 公式サイト
