Headphones - Music albums & artists auto download program

  Thread Rating:
  • 7 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
rembo10 Offline
Senior Member
Posts: 127
Joined: Jun 2011
Reputation: 2
Post: #1
Headphones is an automated NZB downloader, similar to Sick Beard and CouchPotato, but for music!

Most of it is pretty automated - click a button and your whole music library gets imported.... or if you prefer, you can add your favorite artists in one by one.

It'll let you know when one of the artists on your list is coming out with a new album, and it will grab the nzb/torrent it as soon as it's available

You can get the source here: http://github.com/rembo10/headphones
And post issues/bugs/feature requests here: http://github.com/rembo10/headphones/issues

Screenshots:

[Image: LZO9a.png]

[Image: xcWNy.png]

[Image: R7J0f.png]


Run 'python Headphones.py' from the command line, or 'python Headphones.py --help' to get more options.

It will launch on port 8181 by default... just run 'python Headphones.py -p portnumber' to change it.

The latest version will always be available at: http://github.com/rembo10/headphones

HenryFord was nice enough to make a windows .exe, which he keeps updated at:
http://www.tbueter.com/tools/headphones_win32build.zip

If you have any issues, post them over at github.
(This post was last modified: 2013-07-22 03:11 by rembo10.)
find quote
darkscout Offline
Posting Freak
Posts: 2,145
Joined: Jul 2008
Reputation: 12
Post: #2
Did you ever know that you're my hero,
and everything I would like to be?
I can fly higher than an eagle,
for you are the wind beneath my wings.

It might have appeared to go unnoticed,
but I've got it all here in my heart.
I want you to know I know the truth, of course I know it.
I would be nothing without you.


I can't wait to get home and test this out.

Movies: CouchPotato.
TV: Sickbeard.
Music: Headphones.

The #1 thing that I think you should make sure you have from the beginning is an API. It makes writing 3rd party stuff much easier. Stroll into the store, scan a barcode with my Android phone....

[Image: aeKO.jpeg]
Code:
GRANT ALL PRIVILEGES ON `xbmc_%`.* TO 'xbmc'@'%';
IF you have a mysql problem, find one of the 4 dozen threads already open.
find quote
compcentral Offline
Fan
Posts: 626
Joined: Apr 2010
Reputation: 2
Post: #3
Maybe we should join forces if possible (Audio-Matic & Headphones)? What do you think?

I'm not sure how or if that would even be possible, but I have most of the things done that you don't have and you have most of the things done that I haven't done yet.... so it would be nice if there were some way to work together.
(This post was last modified: 2011-06-17 19:39 by compcentral.)
find quote
compcentral Offline
Fan
Posts: 626
Joined: Apr 2010
Reputation: 2
Post: #4
just tried it out, but it doesn't run for me:

Traceback (most recent call last):
File "C:\Program Files (x86)\HeadPhones\headphones.py", line 8, in <module>
import webServer
File "C:\Program Files (x86)\HeadPhones\webServer.py", line 2, in <module>
import config
File "C:\Program Files (x86)\HeadPhones\config.py", line 3, in <module>
from headphones import config_file
File "C:\Program Files (x86)\HeadPhones\headphones.py", line 10, in <module>
from threadtools import threadtool
File "C:\Program Files (x86)\HeadPhones\threadtools.py", line 2, in <module>
from apscheduler.scheduler import Scheduler
ImportError: No module named apscheduler.scheduler
find quote
rembo10 Offline
Senior Member
Posts: 127
Joined: Jun 2011
Reputation: 2
Post: #5
darkscout Wrote:The #1 thing that I think you should make sure you have from the beginning is an API. It makes writing 3rd party stuff much easier. Stroll into the store, scan a barcode with my Android phone....

This is a GREAT idea.

compcentral - I was going to say it would be good to work together. What version of python are you running? Right now it'll only work on 2.x.x
find quote
darkscout Offline
Posting Freak
Posts: 2,145
Joined: Jul 2008
Reputation: 12
Post: #6
Probably need "apscheduler.scheduler".

One feature I'd suggest is BlackHole (download the nzb and dump it into a folder) and torrents.
Another would be a 'backlog' search. Give the ability to not only grab new albums but old ones. Similar to the way SickBeard does it.

[Image: aeKO.jpeg]
Code:
GRANT ALL PRIVILEGES ON `xbmc_%`.* TO 'xbmc'@'%';
IF you have a mysql problem, find one of the 4 dozen threads already open.
find quote
rembo10 Offline
Senior Member
Posts: 127
Joined: Jun 2011
Reputation: 2
Post: #7
Just tested it with the latest version on Windows 7 and Python 2.7.1, it opens fine. apscheduler is bundled with it so that shouldn't be a problem.

You can do backlog searches - when you add an artist it gets their whole catalog info, so you can just click "Wanted" for any album (old or new, upcoming albums are automatically marked as Wanted) and it'll download it if available or queue it for the interval searches.

I should add though that post-processing isn't working yet, but I'm talking to the guy who is developing beets (http://github.com/sampsyo/beets), and I'm going to integrate that into headphones for tagging, renaming, etc. The good thing is both programs use Musicbrainz, so tagging will be accurate.
find quote
ghostelement Offline
Fan
Posts: 444
Joined: Sep 2010
Reputation: 3
Location: Portland, Oregon
Post: #8
Looks nice! I'll give this a try later tonight. Smile

My only request is that you do the obvious and make this have a webUI like sickbeard and CP.

[Image: tgdb-buttonlogosmall.png]
thegamesdb.net - An open video games database.
scottbrant.net - Blog
(This post was last modified: 2011-06-17 22:43 by ghostelement.)
find quote
rembo10 Offline
Senior Member
Posts: 127
Joined: Jun 2011
Reputation: 2
Post: #9
ghostelement Wrote:Looks nice! I'll give this a try later tonight. Smile

My only request is that you do the obvious and make this have a webUI like sickbeard and CP.

It is browser-based just like sickbeard and couchpotato. Needless to say those are the apps that inspired me to do this Smile

Gonna work on a mobile interface for it soon too

@compcentral- did you manage to get it to run with python 2.x?
Anyone else getting the apscheduler error?
find quote
steve1977 Offline
Posting Freak
Posts: 1,948
Joined: Dec 2006
Reputation: 0
Post: #10
Yup, this is fantastic. Really love it!!! Discovered it on another forum and encouraged rembo to join us here. This has all the potential to be the next CP and SB and even more so when joining forces with compcentral.

A few requests. Unfortunately, I cannot code myself, but would hope that someone will be joining rembo shortly to drive this along:

1) Allow foreign artists (currently disabled)
2) Allow compilation and remixes (both optional though; ideally optional by artist similar how SB treats quality levels)
3) Allow BlackHole (download the nzb and dump it into a folder)
4) 'Backlog' search. Give the ability to not only grab new albums but old ones. Similar to the way SickBeard does it.
5) API (e.g., for easy integration into MFP)
6) Post-processing (most importantly song titles directly into the tags, posters into the files, ideally also fanart and nfo for the artists)
7) Avoid duplicates
8) Option how often the backlog will be searched (currently every 24 hours?)
9) Upcoming album function not working for me yet?
10) Converting lossless to mp3 not working for me yet?
11) Auto-add billboard chart albums
12) Make artists with " in the name work (e.g., "Weird Al" Yancovic)


I am aware that these are a lot of asks and may take months to happen. Just wanted to share my wishlist right away :-)

Again, thanks so much. This is fantastic!!!

Server: Asus Sabertooth Z77 | Intel Core i5 3.4 GHz | 12 GB DDR3 | 256 GB SSD, 40 TB (1 x 4 TB, 6 x 3TB, 9 x 2 TB)
HTPC 1: Apple Mac Mini (mid-2011) | Intel Core i5 2.5 GHz | 4GB DDR3 | 500 GB
HTPC 2: Apple Mac Mini (mid-2007) | Intel Core 2 Duo 2.0 GHz | 4 GB DDR2 | 16 GB SSD
(This post was last modified: 2011-06-18 05:08 by steve1977.)
find quote
DPickles Offline
Senior Member
Posts: 144
Joined: Dec 2010
Reputation: 0
Location: Melbourne, VIC
Post: #11
i found this on the sab forum last week. I've installed it without and problems. It just doesnt seem to find anything when albums are set as wanted. I know these albums are there as i searched nzbmatrix beforehand. As there isn't a logging option yet i'm unsure as to what the problem is.

Really looing forward to the development of this. I'll be following this very closely.

[Image: watched-fanart.jpg]
find quote
gugahoi Offline
Fan
Posts: 724
Joined: Aug 2009
Reputation: 5
Post: #12
Yess this looks fantastic! Will put myself through some python tutes to see if I can contribute with anything! Any advices of good ones?

As I mentioned on git tho, adding some javascript would definitely make more responsive and possibly solve the ordering of the artists. Among other features that javascript would provide too.

Maraschino - github - website
find quote
rembo10 Offline
Senior Member
Posts: 127
Joined: Jun 2011
Reputation: 2
Post: #13
steve1977 Wrote:1) Allow foreign artists (currently disabled)
2) Allow compilation and remixes (both optional though; ideally optional by artist similar how SB treats quality levels)
3) Allow BlackHole (download the nzb and dump it into a folder)
4) 'Backlog' search. Give the ability to not only grab new albums but old ones. Similar to the way SickBeard does it.
5) API (e.g., for easy integration into MFP)
6) Post-processing (most importantly song titles directly into the tags, posters into the files, ideally also fanart and nfo for the artists)
7) Avoid duplicates
8) Option how often the backlog will be searched (currently every 24 hours?)
9) Upcoming album function not working for me yet?
10) Converting lossless to mp3 not working for me yet?
11) Auto-add billboard chart albums
12) Make artists with " in the name work (e.g., "Weird Al" Yancovic)

Working on 1, 2 and 7 right now.

#9 should be fixed in the latest version on github (the actual updating of the database, the upcoming summary tab still doesn't show anything, still thinking about how I want to lay that all out - probably similar to CouchPotato, maybe with reviews, etc)

6 & 10 (post-processing stuff) coming really soon, just need to finalize a few things.

For #4, the backlog search, just click "Want" next to the album name to download it. Similarly, I'll add an option to customize the search interval - for the meantime I've just added in a "Force Search" button in manage.

#11 is a great idea (billboard chart albums) - I gotta think about this more but I really like it and will definitely add it or something similar



I'll get a BlackHole option working probably during the rewrite when I add in jQuery, templates, etc.
find quote
rembo10 Offline
Senior Member
Posts: 127
Joined: Jun 2011
Reputation: 2
Post: #14
steve1977 Wrote:12) Make artists with " in the name work (e.g., "Weird Al" Yancovic)

Fixed in the latest version :-)
find quote
ghostelement Offline
Fan
Posts: 444
Joined: Sep 2010
Reputation: 3
Location: Portland, Oregon
Post: #15
Couple more requests. Hope you're making a big list! lol.

1- Include support for HTTPS SSL. Both for connecting to the headphones webUI, and connecting to your SSL sabnzbd port.

2- Include support to download flac audio.

[Image: tgdb-buttonlogosmall.png]
thegamesdb.net - An open video games database.
scottbrant.net - Blog
find quote
Post Reply