QMMPに会う-音楽プレーヤー

GPLv2ライセンスの下で、Qtの同胞によって開発されたwimampのような音楽プレーヤー-Qmmpを紹介します。 一見特別なものはありませんが、私はプログラマーとして大きな可能性を感じています。 このトピックでは、その機能について簡単に説明し、その特殊性についても書き留めます。





インターフェース



既に述べたように、プレーヤーはwinampに似ており、winamp 2.xのスキンを完全にサポートしています。 XMMSとAudaciousに似ています。 インターフェイスは、コントロールウィンドウ、イコライザー、プレイリストのこのタイプのプレーヤーの標準です。



画像



qmmpには、他にもインターフェイス設計があります: amarok-likeおよびfoob​​ar-like詳細







特徴



特定のDEにバインドせずに、Qtを使用してC ++で記述されています。 Openbox、Metacityとの互換モードがあります。 KDE4通知システムのサポート。

すべての機能の完全なリストは、プロジェクトのWebサイトにあります: リンク



設置



Ubuntuの場合


プレーヤーの古いバージョン( 0.3.1 )はリポジトリから入手できます。 新しいバージョン(トピックの執筆時点では、 Launchpad.net0.4.0が利用可能です



他のディストリビューションの場合


Qmmp音楽プレーヤー 、ほとんどのディストリビューションにすでに含まれています。

そうでない場合は、公式サイトからダウンロードページを確認してください



実際、ハイライトは何ですか?



著者が開発したコード構造のハイライト。 すべてはOOPの最高の伝統に従って行われ、プレーヤーはカーネル、GUI、およびモジュールに分割されます。 コンポーネント間の通信は、いくつかのAPIを介して実行されます。 コンポーネントの特定の実装は、プレーヤーの残りの部分には影響しません。 これにより、たとえば、残りのプレーヤーを書き換えずにGUIを書き換えることができます。

モジュールの形式で実装された形式のサポート。 将来、別の形式をサポートするには、ファイルを再生するカーネルAPIを実装するだけです。

トレイ、歌詞、歌のカバー、スクローバーなどのすべての追加機能も、モジュールの形式で実装されます。 適切に設計されたカーネルAPIは、モジュールとしてベンチャーを実装する十分な機会を提供します。



そして、私はプログラマーではありません。 それで何?



単純なユーザーの観点からは、コードの実装方法は問題ではありません。 主なことは、それが機能することです。 しかし、このようなコード構造を使用すると、プレーヤーの保守と調整が簡単になります。 多くのプログラマーは、比較的少ない労力で、プレーヤーの開発に貢献できます。 プログラムの構造やそのソースコードなどを調べる必要はありません。カーネルが提供するAPIを使用するだけです。 これは、プログラムの開発に大きな可能性をもたらします。



そして、なぜこれがすべて書かれているのですか?



このトピックにはいくつかの目標があります。 まず、このようなプレーヤーにコミュニティを紹介したいと思います。 第二に、このプレーヤーは本当に高品質のプログラム構造の鮮明な例です。 そして第三に、プログラムの作者は、プログラミングだけでなく、プロジェクトに関する特別な支援を妨げることはないと思います。



あとがき



私はこのプロジェクトとは何の関係もありません。 私は著者に精通しておらず、このトピックから利益を得ることはありません。 上記はすべて私の意見であり、客観的なふりをするものではありません。 彼らが言うように、彼らは味について議論しません。



UPD。 セクション「 インターフェース 」を更新しました。 ヒントを提供してくれたDexon Harbraiserに感謝します。



All Articles