跳转到主要内容

基于asyncio的MPD(音乐播放器守护进程)客户端

项目描述

使用示例

import asyncio
import aiompd

URLS = [
    "http://mega5.fast-serv.com:8134",
    "http://176.31.240.114:8326",
    "http://74.86.186.4:10042",
    "http://s14.myradiostream.com:4668",
]
PLAY_TIME = 10


@asyncio.coroutine
def nexter(mpc):
    yield from mpc.clear()

    for url in URLS:
        yield from mpc.add(url)

    for n in range(len(URLS)):
        yield from mpc.play(track=n)
        yield from asyncio.sleep(PLAY_TIME)


@asyncio.coroutine
def volumer(mpc):
    timeout = (len(URLS) * PLAY_TIME) / 200

    for volume in range(0, 101, 1):
        yield from mpc.set_volume(volume)
        yield from asyncio.sleep(timeout)

    for volume in range(100, -1, -1):
        yield from mpc.set_volume(volume)
        yield from asyncio.sleep(timeout)


def main():
    loop = asyncio.get_event_loop()
    mpc = loop.run_until_complete(aiompd.Client.make_connection())
    loop.run_until_complete(asyncio.wait([nexter(mpc), volumer(mpc)]))


if __name__ == '__main__':
    main()

项目详情


下载文件

为您的平台下载文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源分布

aiompd-0.4.0.tar.gz (5.9 kB 查看散列)

上传时间:

构建分布

aiompd-0.4.0-py3-none-any.whl (8.8 kB 查看散列)

上传时间: Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面