Metadata-Version: 2.1
Name: sxm_player
Version: 0.2.4
Summary: Top-level package for sxm-player.
Home-page: https://github.com/AngellusMortis/sxm-player
License: MIT license
Keywords: sxm,SiriusXM,XM Radio
Author: Christopher Bailey
Author-email: cbailey@mort.is
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: coloredlogs
Requires-Dist: httpx
Requires-Dist: ipython
Requires-Dist: psutil
Requires-Dist: pydantic
Requires-Dist: pyyaml
Requires-Dist: sqlalchemy
Requires-Dist: sxm>=0.2.7
Requires-Dist: typer
Requires-Dist: bandit ; extra == "dev"
Requires-Dist: black ; extra == "dev"
Requires-Dist: flake8-bugbear ; extra == "dev"
Requires-Dist: flake8-builtins ; extra == "dev"
Requires-Dist: flake8-commas ; extra == "dev"
Requires-Dist: flake8-comprehensions ; extra == "dev"
Requires-Dist: flake8 ; extra == "dev"
Requires-Dist: flit ; extra == "dev"
Requires-Dist: isort ; extra == "dev"
Requires-Dist: mypy ; extra == "dev"
Requires-Dist: pip-tools ; extra == "dev"
Requires-Dist: pylint ; extra == "dev"
Requires-Dist: pyproject-flake8 ; extra == "dev"
Requires-Dist: rstcheck ; extra == "dev"
Requires-Dist: sqlalchemy-stubs ; extra == "dev"
Requires-Dist: types-click ; extra == "dev"
Requires-Dist: types-psutil ; extra == "dev"
Requires-Dist: types-PyYAML ; extra == "dev"
Requires-Dist: typing-extensions~=3.7.4.1 ; extra == "dev"
Requires-Dist: furo ; extra == "doc"
Requires-Dist: snooty-lextudio ; extra == "doc"
Requires-Dist: sphinx ; extra == "doc"
Requires-Dist: pytest ; extra == "test"
Requires-Dist: pytest-cov ; extra == "test"
Requires-Dist: pytest-socket ; extra == "test"
Requires-Dist: pytest-sugar ; extra == "test"
Requires-Dist: pytest-clarity ; extra == "test"
Requires-Dist: tox ; extra == "test"
Requires-Dist: coverage ; extra == "test"
Project-URL: Documentation, https://sxm-player.readthedocs.io/en/latest/
Provides-Extra: dev
Provides-Extra: doc
Provides-Extra: test

==========
sxm-player
==========

.. image:: https://readthedocs.org/projects/sxm-player/badge/?version=latest
    :target: https://sxm-player.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

.. image:: https://github.com/AngellusMortis/sxm-player/actions/workflows/ci.yml/badge.svg
    :target: https://github.com/AngellusMortis/sxm-player/actions/workflows/ci.yml
    :alt: CI Status

.. image:: https://api.codeclimate.com/v1/badges/afffd386b11a760d80cc/maintainability
   :target: https://codeclimate.com/github/AngellusMortis/sxm-player/maintainability
   :alt: Maintainability

.. image:: https://pypip.in/v/sxm-player/badge.png
    :target: https://pypi.org/project/sxm-player/
    :alt: Latest PyPI version

.. image:: https://img.shields.io/docker/pulls/angellusmortis/sxm-player.svg?style=flat-square
    :target: https://hub.docker.com/r/angellusmortis/sxm-player/
    :alt: Docker Pulls

.. warning:: Designed for PERSONAL USE ONLY

    ``sxm-player`` is a 100% unofficial project and you use it at your own risk.
    It is designed to be used for personal use with a small number of users
    listening to it at once. Similar to playing music over a speakers from the
    radio directly. Using ``sxm-player`` in any corporate setting, to
    attempt to pirate music, or to try to make a profit off your subscription
    may result in you getting in legal trouble.


A pluggable SXM music player written in Python


* Free software: MIT license
* Documentation: https://sxm-player.readthedocs.io.


Features
--------

* Provides a CLI SXM client
* Can easily provide any SXM client via an anonymous HLS stream that can
  be play on any compatible remote client
* Provides CLI interface to play SXM channel to a MP3 file on disk
* Can archive live streams from a channel and process any songs/shows from it
* Pluggable API to allow you to create your own SXM clients on top of it

Docker
------

If you perfer to use ``sxm-player`` via a Docker container, check out `sxm-docker`_.

.. _sxm-docker: https://github.com/AngellusMortis/sxm-docker

Player Classes
--------------

Here are a list of know pluggable player classes you can use to extend
``sxm-player``

* `sxm-discord`_: A Discord bot that lets you play SXM content

If you have developed your own player class, make a PR to add it here! Or
make an issue for me to add it.

.. _sxm-discord: https://github.com/AngellusMortis/sxm-discord

Credits
-------

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage

