rxv
Automation Library for Yamaha receivers
Installation
Use pip:
$ pip install rxv or $ pip install --use-wheel rxv
Usage
The easiest way to start using is to let SSDP find all available receivers. In most cases rxv module will manage to obtain locations of local compatible devices:
>>> import rxv >>> receivers = rxv.find() >>> print(receivers) [<RXV model_name="RX-V473" ctrl_url="http://192.168.1.116:80/YamahaRemoteControl/ctrl" at 0x2c1c1d0>] >>> rx = receivers[0] >>> rx.on = True >>> rx.volume -51.0 >>> rx.inputs() {'AUDIO': None, 'HDMI1': None, 'HDMI2': None, (...) 'iPod (USB)': 'iPod_USB'} >>> rx.input "NET RADIO" >>> rx.input = "HDMI1" >>> rx.input "HDMI1" >>> rx.is_playback_supported() False >>> rx.input = "AirPlay" >>> rx.is_playback_supported() True >>> from rxv import PlaybackSupport >>> (rx.get_playback_support() & PlaybackSupport.PLAY) != 0 True >>> rx.play() >>> rx.next() >>> rx.outputs {'hdmi2': 'off', 'hdmi1': 'on'} >>> rx.enable_output('hdmi2', True) >>> rx.enable_output('hdmi1', False) >>> rx.outputs {'hdmi2': 'on', 'hdmi1': 'off'}
If SSDP causes you some problems, ctrl_url can be provided by hand.:
>>> rx = rxv.RXV("http://192.168.1.116:80/YamahaRemoteControl/ctrl", "RX-V473")
License
BSD