python-DiskPlayer/player.py

49 lines
1.3 KiB
Python
Raw Normal View History

2021-11-03 13:37:53 +00:00
import asyncio
import argparse
from mopidy_async_client import MopidyClient
parser = argparse.ArgumentParser(description="Mopdiy FloppyPlayer")
parser.add_argument("URI_string", help="Mopdiy URI to Album/Playlist.")
args = parser.parse_args()
inputURI = args.URI_string
2021-11-04 15:15:59 +00:00
async def selector():
if "ytmusic" in inputURI or "http://" in inputURI:
await run_floppy(inputURI)
2021-11-03 13:37:53 +00:00
else:
2021-11-04 15:15:59 +00:00
await action(inputURI)
2021-11-03 13:37:53 +00:00
2021-11-04 15:15:59 +00:00
async def action(action):
2021-11-03 13:37:53 +00:00
mopidy = await MopidyClient().connect()
2021-11-04 15:15:59 +00:00
if action == "stop":
2021-11-03 13:37:53 +00:00
await mopidy.playback.stop()
2021-11-04 15:15:59 +00:00
elif action == "next":
await mopidy.playback.next()
elif action == "previous":
await mopidy.playback.previous()
elif action == "play":
2021-11-03 13:37:53 +00:00
await mopidy.playback.play()
2021-11-04 15:15:59 +00:00
elif action == "pause":
await mopidy.playback.pause()
elif action == "resume":
await mopidy.playback.resume()
elif action == "shuffle":
await mopidy.tracklist.shuffle()
await mopidy.disconnect()
2021-11-03 13:37:53 +00:00
2021-11-04 15:15:59 +00:00
async def run_floppy(input):
link = input.split(" - ")[1]
2021-11-03 13:37:53 +00:00
mopidy = await MopidyClient().connect()
await mopidy.playback.stop()
await mopidy.tracklist.clear()
2021-11-04 15:15:59 +00:00
await mopidy.tracklist.add(uris=[link])
2021-11-03 13:37:53 +00:00
await mopidy.playback.play()
2021-11-04 15:15:59 +00:00
await mopidy.disconnect()
2021-11-03 13:37:53 +00:00
2021-11-04 15:15:59 +00:00
asyncio.run(selector())