• 通向KDE4之路(六):令多媒体编程更轻松的Phonon


      Troy Unrau

    之前我们的一些文章引见了KDE4技艺中的使命处置处罚和SVG窗口部件,昔日连续我们的‘通向KDE4之路’栏目,我们要引见的是优越的新多媒体技艺Phonon。Phonon的筹划是为了在KDE4中编写多媒体步骤可以大略化,并包管这些步骤可以在多个平台上及多种声响零碎上使命。不走运的是,写这种关于声响类技艺的文章很难配上相应的截图,所以呢,昔日就多讲些技艺细节吧。


    Phonon是一项新的KDE技艺,它为多媒体步骤播放音频或视频时供应了一套运用步骤接口(API)。这套接口被筹划成Qt函数的气势派头,如许KDE启示者们哄骗它时就不会感觉很生疏了。(如果您对Phonon的API感兴味的话,请看看这些在线文档,这些文档或者仍是最近更新的,不过不克不及包管)。


    首先要指出的是Phonon不是一个新的音乐零碎效力器,它不会与xine,GStreamer,ESD,aRts等 组成竞争关系。相反,由于这些多媒体步骤接口往往会不时变化,Phonon以这些其它多媒体技艺为后端,供应了一套稳定的API。如许就随意塞责了,比如当 GStreamer的API变化了,只需Phonon做相应的调停就可以了,其它哄骗Phonon的KDE步骤都不会遭到影响。


    Phonon的功用来源于启示者们所谓的“引擎”,每一种引擎支持一种后端。而今启示中的引擎有四种:xine,NMM,GStreamer以及avKode(aKode的担负担任者)。可以必定的是aRts光彩退休了,针对它的引擎是不会被启示的了。不过aRts还会在其它范畴连续存在的。KDE 4.0的目的是完成一个‘包管可用’的引擎,外加一些可选用的引擎。


    已被提倡启示的引擎还有MPlayer,DirectShow(在Windows平台上的),和QuickTime(在Mac OS X平台上的)。这些特殊的引擎的启示使命还没起头,由于Phonon的中心启示者们更眷注的是确保而今启示的这个API功用统统。如果Phonon的启示 者在当前这个API还很渣滓的情况下,就去忙于其它引擎的编写使命,那整个项目动摇套才怪呢(如果您想要着力编写一个引擎的话,请到 irc.freenode.org的#phonon露个脸吧)。


    当用户或步骤选用了某个引擎之后,Phonon就会哄骗这个已选中的引擎来确定各个后端所支持的文件式子和解码器,然后主动容许KDE步骤播放多媒体文 件。而今的KDE 3系列中,用户不得不手动在各个步骤(如Kaffeine,Amarok,Juk等)中更动引擎,而不是经由KDE来选用引擎。


    一旦Phonon选定了引擎,它就会使步骤共同该引擎举办典范的多媒体运转。这里的典范的多媒体运转搜罗媒体播放器中常用把持,如播放,住手,暂停,寻觅 等。Phonon也支持更低级的功用,如界说两个音轨之间跳转的体例等,如许不同的步骤就可以共享这项功用而不必每次都去重新完成它。固然,一些步骤想要 在跳转时能有更多的节制,本身筹划也没什么弗成以的。


    而今各个引擎中完成进度都好的是xine,我在我的电脑上曾经装上去并可以使命了。我也检验测验过编译NMM(出了名的难编译、难装置)和GStreamer 引擎,可惜没有乐成,别的阿谁avKode默许便是‘停用’。我原来还想拿几张Juk或Noatun接纳Phonon播放音频的截图出来贴一下,但它们与 KDE3系列版本中看起来也没什么两样(有些界面还更丑一点!)。等它们英俊点的时辰,我就在后续文章中把它们贴出来。


    Matthias Kretz供应了一个较短的视频文件,说的是在看电影时翻开您的扬声器,验证设置装备部署的切换。Phonon可以使您的原音频设置装备部署在切换后住手使命,从而您可以听到声响突从耳机中消失而在音箱中响起。


    Matthias也供应了下面这张哄骗Phonon设置模块选择输入设置装备部署的截图。这还在改进中,所以看起来还很粗糙。


    Phonon config from 4x devel


    很难用截图来反应Phonon的使命情况(音频框架的截图真实难搞),但我可以刻画下哄骗Phonon之后灵巧的一面:网络通明化。KDE哄骗 KIOSlaves来访问网络上的文件,这轻松的犹如这些文件在本身的电脑上一样。多媒体步骤如JuK或Amarok也可以大概在本身的收藏中极度通明地共享 网络音频文件,启示者在完成这个功用时还不必去考虑后端引擎能否清晰明明若何与ioslaves互把持这个成效。这项功用在KDE4中曾经局部地完成了,已可 经由音频缩略图举办可视化把持了。许多人都可以哄骗任何KIO协议,搜罗sftp://和fish://这两个KDE能人们极度兴味的协议举办文件共享。 在我的电脑上自行编译的fish://KIOslave还很不安逸,不过据#phonon IRC上的启示者声称,这个功用的将很快完毕编写并投入哄骗, 届时它的安逸性就没成效了。


    正在启示中的Phonon将成为KDE步骤的一项支柱性技艺,它会使启示者的使命更轻松,并可中止多媒体后端的变化对各运用步骤带来芜杂使命以及不安逸 性,更使得KDE步骤对其它平台的支持变得垂手可得。这就意味着那些启示者们可以在他们步骤的其它局部花更多的时辰,KDE多媒体步骤也将会变得比而今的 更出色。(插句话,比如QQ的协议如果可以安逸一点,云帆的eva 0.5,0.6乃至1.0生怕早就公布了)


    一些小新闻:Amarok的首席启示者Mark Kretschmann在本周正式起头了对Amarok 2.0的启示,而且他对Phonon对Amarok2.0能起到的感化很感兴味。Amarok启示小组仍是与他们在1.4系列版本中做的那样,还在启示本身的引擎。不过,就Phonon而今的启示形状来说,Phonon仍是可以经由调停来惬心Amarok的须要的。


    Phonon启示者们的垂老Matthias Kretz正在寻觅有人可感觉Phonon维护他们的网站,如果您想在非编程方面赞助KDE的话,没关系考虑一下。

    (yuanjiayj)



    版权声明: 原创作品,容许转载,转载时请务必以超链接情势标明文章 原始因由 、作者信息和本声明。否则将追究功令责任。

  • 相关阅读:
    我的vim开发环境搭建:C/C++/Go,持续更新中
    MFC的组合框(ComboBox)控件切换下拉样式
    回顾下杂乱的10月
    C++将整型数据转换成大端或小端存储顺序
    C/C++动态分配连续空间,下标越界导致的free():invalid next size问题
    O(n)空间复杂度,打印杨辉三角形的前n行
    C指针笔试题,蛋疼的多重指针运算,谭浩强的阴影
    2017滴滴出行笔试题:异或和为0的最大区间个数
    manjaro安装
    关于top命令
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1974584.html
Copyright © 2020-2023  润新知