FLAC音频在xine后端播放器上的进度定位

上一篇 / 下一篇  2007-12-31 09:40:49 / 个人分类:GNU/Linux

    FLAC作为自由的lossless音频格式,被广为采用(国内可能不及APE)。近日有个朋友抱怨用Amarok管理FLAC库后,很多FLAC文件播放时拖动进度标条,却一下子没了声音,要许久许久才能恢复,而且往往还是定位错误了的,而在其他一些播放器上却没有这个问题。

    Amarok目前使用的后端是xine,所以先实验了其他xine做后端的播放器,如出一辙。随即搜索了一下maillist,发觉很多人都在抱怨同样的问题,却没有搜到能解决问题的patch。思索之余,觉得如果不能改变播放器,不如从文件本身入手:flac本身可以写入元数据信息(metadata),其中包括了定位点(seek points)索引表,可能有一些文件并没有包含这部分信息。从播放器来看,只要支持索引表跳转,就能定位(xine应该是可以的,因为有些flac还是可以跳转的)。

    有了思路,下面的问题就好办了,只要安装了flac这个软件包,就可以找到metaflac这个元数据修改工具(CLI tool)。metaflac的功能强大,具体用法可看手册。加入定位点信息的参数为--add-seekpoint,为了取得较为精确平滑的定位效果,我们可以采取比较激进的参数,精确到1秒。切换到专辑文件目录下,用以下命令为当前目录下所有的flac文件写入定位索引表信息:

metaflac --add-seekpoint=1s *.flac

    然后启动Amarok播放,效果良好,完全可以达成精确快速的定位。

TAG:

双面矩阵 引用 删除 lovenemesis   /   2008-01-05 12:58:41
3
很好!感谢!
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-09-08  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 1161
  • 日志数: 8
  • 建立时间: 2007-11-18
  • 更新时间: 2008-02-09

RSS订阅

Open Toolbar