libraop icon indicating copy to clipboard operation
libraop copied to clipboard

Contribution

Open Schlaubischlump opened this issue 4 years ago • 1 comments

Actually this is not an issue, but should rather be a pull request. Before I put in the work to open a pull request, I wanted to know if the changes are appreciated and how many pull requests I should open. I implemented the following features in my fork of RAOP-Player (they might still need a little bit of cleanup / testing):

  1. Python bindings
  2. Support for password protected Airplay targets
  3. Support for requesting and adding a new pin to an Apple TV

To implement 3. I had to break the currently existing API. I split the raopcl_connect in two functions. The first one is still called raopcl_connect, the second one is named raopcl_pair. raopcl_connect calls rtspcl_connect, while raopcl_pair will send the SETUP, ANNOUNCE etc. stuff. To request a new pin from an Apple TV, the following steps need to be performed:

  1. Call raopcl_connect
  2. Call raopcl_request_pin
  3. Call raopcl_pair with the Apple TV pin
  4. Airplay will start

You can get the newly created secret using raopcl_secret. The next time you can just use this secret with the existing -s flag. I reimplemented the raop_player script in python with the additional new features and removed the raop_player.c file, since I wanted to test the python bindings and did not want to implement every change twice.

Schlaubischlump avatar May 10 '21 17:05 Schlaubischlump

I can review these changes but I need to evaluate the "ripple effects" to my other projects as I have a few that use the library underneath RAOP_player. In fact, the player was just used for verifying the library

philippe44 avatar May 24 '21 17:05 philippe44