Phonon (KDE)

维基百科,自由的百科全书
跳转至: 导航搜索
Phonon
Phonon Logo
開發者 Matthias Kretz u.a.
穩定版本 4.7.1 / 2013年12月6日;4個月前 (2013-12-06)
编程语言 C++
操作系统 LinuxBSDMac OS XSolarisWindows
类型 多媒體框架
许可协议 LGPL
網站 phonon.kde.org

PhononKDE 4的多媒體API 。Phonon提供一個穩定的API允許KDE 4獨立於任何一個聲音系统服务器如xine

使用了phonon,用四行C++程式碼就能播放檔案[1] ,而舊聲音框架(aRts)則需要用到30行[2]

 media = new MediaObject(this);
 connect(media, SIGNAL(finished()), SLOT(slotFinished()));
 media->setCurrentSource("/home/username/music/filename.ogg");
 media->play();

Phonon並非只能運行於Unix系統,他的後端可以是在其它平台如 Microsoft Windows 並提供相同的功能。

早期的 Phonon 設定管理員截圖

特色[编辑]

  • Phonon讓各種後端提供界面給開發者所謂的"引擎";每個引擎運作在一個具體的後端。每個後端都可讓Phonon控制基本功能,如播放、暫停和搜尋。Phonon也支持更高層次的功能,如讓音軌轉化之間變微弱。[3]
  • 使用Solid,Phonon將給予用戶更多配件的控制能力如耳機、揚聲器、麥克風。一個例子是,因為你可能只有一個VoIP會話使用您的耳機,但所有其他的聲音通過揚聲器出來。[3]
  • 支援 Unix-like 系統下的後端xineVLCMPlayer[4]
  • 支援 Windows 下的後端 DirectShowVLCMPlayer.
  • 支援 Mac OS X下的後端QuickTime

使用於 Qt[编辑]

Phonon从一开始就被设计成Qt函数的风格,Qt4.4和之後版本使用了Phonon,作為跨平台的音頻/視頻播放。[5]

示例[编辑]

    Phonon::VideoPlayer *player=new Phonon::VideoPlayer(this);
    player->setMinimumSize(1280,720);
    Phonon::MediaSource source("20110705_095213.avi");
    player->load(source);
    player->play();
    connect(player,SIGNAL(finished()),player,SLOT(play()));

參考文獻[编辑]

  1. ^ Kretz, Matthias. MediaObject Class Reference. [2007-12-19]. 
  2. ^ Sanders, N. Phonon and the future of KDE multimedia. 2006-5-9 [2007-12-19]. 
  3. ^ 3.0 3.1 Unrau, Troy. The Road to KDE 4: Phonon Makes Multimedia Easier. 2007-02-06 [2007-12-19]. 
  4. ^ Krotoff, Tanguy. VLC and MPlayer backends. 
  5. ^ Phonon Overview. Qt Software. 2008 [2008-10-09]. 

外部連結[编辑]