Giter Site home page Giter Site logo

santoshsrinivas79 / audible-activator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from inaudible-ng/audible-activator

0.0 0.0 0.0 21 KB

Retrieves your activation data (activation_bytes) from Audible servers. Using https://github.com/inAudible-NG/tables project instead is recommended.

Home Page: http://ffmpeg.org/ffmpeg-all.html#Audible-AAX

License: GNU General Public License v3.0

Python 92.68% C 7.32%

audible-activator's Introduction

audible-activator

A script to retrieve your activation data (activation_bytes) from Audible servers.

Last tested on macOS 10.14.1 + Google Chrome 70 + ChromeDriver 2.44 in November, 2018.

Donations

Donations are gladly accepted. Please send BTC to 1FDFp8kWjnUCGTLw1SVkim6kRnYDge2vYh to support the development, and maintenance of this project. Thank you!

Usage

$ ./audible-activator.py -h
Usage: audible-activator.py [options]

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -d, --debug           run program in debug mode, enable this for 2FA enabled
                        accounts or for authentication debugging
  -f, --firefox         use this option to use firefox instead of chrome
  -l LANG, --lang=LANG  us (default) / de / fr / jp / uk (untested)
  -p PLAYER_ID          Player ID in hex (for debugging, not for end users)
  --username=USERNAME   Audible username, use along with the --password option
  --password=PASSWORD   Audible password
...

$ ./audible-activator.py
<enter username and password>

$ ./audible-activator.py -l de  # for "de" users
<enter username and password>

$ mpv --demuxer-lavf-o=activation_bytes=CAFED00D sample.aax

$ echo -e "\ndemuxer-lavf-o=activation_bytes=CAFED00D" >> ~/.config/mpv/mpv.conf  # for convenience

$ ffplay -activation_bytes CAFED00D sample.aax

Quick Setup

Python 2 (or Python >= 3.6) is required along with Selenium, Requests, ChromeDriver, and Google Chrome.

pip install --user requests  # use "easy_install" if pip is missing

pip install --user selenium

Download and extract the correct ChromeDriver zip file from here to this folder.

Download Google Chrome from https://www.google.com/chrome/ and install it on your computer.

Ryan reports that the 32-bit Mac ChromeDriver works fine under a 64-bit Mac environment.

Anti-Piracy Notice

Note that this project does NOT 'crack' the DRM. It simplys allows the user to use their own encryption key (fetched from Audible servers) to decrypt the audiobook in the same manner that the official audiobook playing software does.

Please only use this application for gaining full access to your own audiobooks for archiving/converson/convenience. DeDRMed audiobooks should not be uploaded to open servers, torrents, or other methods of mass distribution. No help will be given to people doing such things. Authors, retailers, and publishers all need to make a living, so that they can continue to produce audiobooks for us to hear, and enjoy. Don't be a parasite.

This message is borrowed from the https://apprenticealf.wordpress.com/ page.

Debugging Tips

  • If you see an error message like "audible_error=Internal service error has occured while processing the request, please contact service admin" during the activation process, then contact Audible customer care and they will clear up your activation slots (there are 8 such slots).

  • If you see an "activation loop" in the official software (e.g. Audible Download Manager), then you are seeing the same exact problem (you activation slots are all used up).

  • Too many authentication attempts result in a temporary 30 minutes ban!

  • Use the following command to extract the SHA1 checksum from .aax files.

    $ ffprobe test.aax  # extract SHA1 checksum
    ...
    ...
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x1dde580] [aax] file checksum == 999a6a...
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x1dde580] [aax] activation_bytes option is missing!
    
  • In case of login problems use the ./audible-activator.py -d command to run the program in debugging mode and to login manually.

  • This program is pretty short and easy to debug. I cannot provide end-user support but I would be very happy to accept patches.

  • If this program does not work for you and all the debugging steps fail, then use the https://github.com/inAudible-NG/tables project to recover your "activation_bytes" in an offline manner. The good news is that you need to retrieve your "activation_bytes" only once.

  • Running wine AudibleGeneratePCPlayerID.exe multiple times under Linux can result in different outputs (different Player ID values). To get stable output run wine AudibleGeneratePCPlayerID.exe after running the "Audible Manager" program (Manager.exe) under Wine once.

Notes

  • It is possible to extract the "activation_bytes" from an existing 'AudibleActivation.sys' file.

    $ ./AAS-parser.py AudibleActivation.sys
    CAFED00D
    

    You can grab the 'AudibleActivation.sys' file from various already-activated devices like Android phones, and Sansa music players.

  • If you have an Audible username (not an email address), please help in testing and fixing this program.

  • xhost local:root

Credits

  • sfgasdfsafggfgg (spindoctors_mix [email protected])

  • kidburglar

  • Jason Peper (jasontrublu, for "de" support and cleaner code)

  • Braden (braden337, add Google Chrome as a requirement)

  • Fernando Paladini (non-interactive credentials input)

  • wolfi101 (Firefox support)

  • corbolais (chromedriver autodetection)

  • Thies Mueller (td00, Python 3 support)

  • Ziyuan Guo (shadowmourne, Audible JP support)

  • Ryan Connors (ryanpconnors, Python 3 fixes)

audible-activator's People

Contributors

inaudible-ng avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.