这个模块提供了libav c库的包装器

audiolayer的Python项目详细描述


这个包包含一个python 3扩展,用于播放音频文件、读取和 编写元数据并转换这些文件。用于解码和编码文件 使用libav库。播放由libportaudio处理。

项目网站可以在 GitHub

要求

  • python3.x(使用python3.3测试)
  • libavcodec
  • libavformat
  • libavutil
  • libportaudio

安装

使用pip:

pip install audiolayer

来自github:

git clone https://github.com/remcohaszing/python-audiolayer.git
cd python-audiolayer
python3 setup.py install

用法

正在读取歌曲元数据:

>>> from audiolayer import Song
>>> filename = 'Finntroll - Trollhammaren.flac'
>>> song = Song(filename)
>>> song['artist']
Finntroll
>>> song['album']
Trollhammaren
>>> song['title']
Trollhammaren
>>>

保存歌曲元数据:

>>> song['album'] = 'Nattfödd'
>>> song['album']
'Nattfödd'
>>> song.save()
>>>

将带有新元数据的歌曲副本保存到新文件: >;gt;gt;song.save(文件名='finntroll/nattfódd-trollhammaren.flac') >>>gt;

转换歌曲(未实现):

>>> converted = song.convert('Finntroll - Trollhammaren.ogg',
...                          format='opus', q=4)
>>> converted.filename
Finntroll - Trollhammaren.ogg
>>>

回放(当前实现):

>>> song.play()  # Wait for the song to finish.
>>>

回放(目标实现):

>>> song.play()
0.00
>>> song.pause()
4.29
>>> song.play_or_pause()
4.29
>>> song.playing_time
12.53
>>>

测试

可以使用以下命令运行单元测试:

python3 setup.py test

也可以使用nose来运行测试:

python3 setup.py nosetests

编码方式

  • C代码必须符合pep7
  • python代码必须符合pep8
  • 所有代码都必须由unittests覆盖。

要测试python代码是否符合pep8,请转到项目根目录 然后运行:

python3 setup.py flake8

许可证

本项目根据BSD 3条款许可证获得许可。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spring数据JPA+Hibernate在不首先找到父实体的情况下保存子实体   php Java:如何从CLI接收命令   spring为java中的导出数据创建访问文件   java在Windows 8.1上安装Play Framework   java Spring启动白标签错误页面(类型=未找到,状态=404)   java如何在单击时从数组中绘制?   java fn:substringAfter()上次出现   java在IFR语句中使用方法返回   java onPause()或onStop()的名称   对关联对象的关联对象具有条件的java HQL查询   java只打印一次总值,无需迭代   java如何使用抽象Uri buildOn()方法?   如何在Java中执行sudo命令并获得错误输出?   java反射:避免对getConstructor(类<?>…)的未经检查的警告调用作为原始类型类的成员   Java:如何从类中创建的对象调用类方法?   java如何在电子邮件中嵌入图像?   java如何在Android上启用详细GC?   java什么是串行版本id?