Headphones

Door Mar2zz op zondag 19 juni 2011 11:48 - Reacties (17)
CategorieŽn: Downloaden, Headphones, Muziek, Views: 11.147

Gisteren was het er ineens... De Couchpotato voor muziek! In dit topic over Sickbeard en Couchpotato kwam het ineens voorbij... Maar oh wat is het nog alpha en moet het nog groeien, het begin is er. En een app kan alleen snel verbeterd worden en groeien als er een community achter zit die het even aan de tand voelt... Dan kan het snel gaan, Spotweb is daar een mooi voorbeeld van...

Daarom ook deze blog, ten eerste omdat het natuurlijk mooi in mijn straatje past, maar ten tweede en vooral om reclame te maken... Installeer en probeer! Maar be warned, het is een rudimentair stukje software, het kan nog niet veel en het zal waarschijnlijk crashen, maar je doet mee om een reden, over een half jaar/jaar betaalt deze applicatie al je geinvesteerde tijd terug in keiharde luilakkerij; vanuit je luie stoel je muziek binnenhengelen zonder moeite ervoor te hoeven doen...

Wat doet Headphones?
Zoals Couchpotato films voor je binnenhengelt en Sickbeard tvshows, zo kan Headphones jouw artiesten in de gaten houden en hengelt het nieuwe albums voor je binnen.Het is mogelijk om de discografie van een artiest compleet te maken, dus dat je ook oudere albums die je mist kan laten ophalen. Dit kan door op een artiest te klikken in de webinterface en dan 1 voor 1 albums op Want te zetten.

Soms heb je zelf al mazzel en wordt er een complete discografie gepost in 1 nzb of torrent, maar vaker moet je de cd's zelf bij elkaar zoeken en dit kan een hele klus zijn. Headphones heeft dus de potentie om dit allemaal voor je te gaan doen.

De installatie
De installatie is pretty straight forward en gaat eigenlijk net als elke andere github applicatie die ik voorheen heb beschreven, dus in zo een beetje alle blogs uit de categorie downloaden hier. Ook heb ik gisteren gauw een installscript in elkaar geflanst, die van Couchpotato even aangepast zodat Headphones lekker makkelijk via de terminal geinstalleerd kan worden op Ubuntu (servers).

Ik loop de installatie daarom gauw door en ga er niet al te uitgebreid op in zoals bij eerdere blogs.

Om vanaf github applicaties te installeren en up2date te houden is git-core nodig.
sudo apt-get install git-core
Hiermee kun je alles van github naar je pc halen door git clone "applicatie-url" te typen. Bovendien kun je er erg makkelijk mee updaten, door naar te map te gaan waarin je applicatie is geinstalleerd en dan git pull te typen. Dit kan dus ook prima met een cronjob gedaan worden.

De installatie gaat als volgt (ff terminal code spammen):
git clone https://github.com/rembo10/headphones.git
Klaar! _/-\o_

Nu kun je het al starten door python headphones/headphones.py te typen en headphones is dan bereikbaar op ipadres:8181.

Daar kun je onder settings je sabnzbdgegevens invoeren en searchproviders inschakelen. Nu zijn nzbmatrix, newznab en nzbs.org de enige providers. De newznab-provider houdt wel in dat er meerdere sites gekoppeld kunnen worden, en dankzij Nightspirit's werk aan de spotwebapi kan ook spotweb (als zijnde een newznab-site) gekoppeld worden. Goeie zaak dat! (ik moet alleen nog ff checken of dat goed werkt, zo niet dan is Nightspirit meestal binnen een dag paraat met fixes).

Op een headless server is makkelijker om het mee te laten starten als een service (of daemon). Het script hiervan is nog niet aanwezig in de source, al heb ik 'm al wel aangeboden aan rembo10, ik heb zelf het initscript van couchpotato omgebouwd.

Om automatisch te laten starten en als service te draaien moet je dus nog even wat extra commando's doen.
wget http://dl.dropbox.com/u/18712538/Headphones/headphonesinit.d
nano headphonesinit.d #en pas path en user aan naar jouw situatie)
sudo mv headphonesinit.d /etc/init.d/headphones
sudo chmod +x /etc/init.d/headphones
sudo update-rc.d headphones defaults
sudo /etc/init.d/headphones start

Nu zal het bij elke reboot meestarten en beschikbaar zijn op ipadres:8181. Via de webinterface is de poort aan te passen (eventueel kan dit ook in de config.ini die aangemaakt wordt @ first start.

Headphones gebruiken
Tja hier kan ik nog niet heel veel over zeggen. Headphones verslikt zich in mijn verzameling van ~25K muziekfiles. Ik kan ze dus niet toevoegen, hij stopt bij een stuk of 20. Wel staat er dan een pause-link achter de artiest, waarmee je een artiest kan unpausen zodat ie in de check gaat voor nieuwe albums. Maar al de artiesten die mij zijn ingelezen hebben geen upcoming albums :p
Homescherm headphones

Wel kan ik dus al oudere albums van ze binnenhengelen door die op wanted te zetten in het artists-subscreen. Dat het nog niet volledig werkt is te zien doordat de albums die al wel heb nog niet worden herkend als albums die ik al heb. Dat wordt tezijnertijd vast gefixed.
Subscherm artiesten

Afsluiting

Het is er eindelijk al is het nog very alpha, deze app gaat groeien. Mocht je skilled pythoncoder zijn ga dan meehelpen schrijven zodat het sneller volwassen kan worden. Kan je dit niet wees dan actief door het te gebruiken en duidelijke bugs te reporten met daarbij stap voor stap beschreven hoe de bug is ontstaan en hoe het eventueel opgelost kan worden.

Het postprocessen van de muziek moet nog door sabnzbd afgehandeld worden. Op zich is dat jammer want via musicbrainz zijn alle tags van de files voor handen op een manier die zelfs de meeste stricte tag-o-fiel zal bevallen. Zolang het renamen op basis van tags nog niet in Headphones is ingebakken kan daarvoor nog steeds Albumidentify gebruikt worden, met als bijkomend voordeel dat er gelijk Replaygain wordt toegepast (healthy for ears and speakers). Maar ook dat zal vast in de toekomst in Headphones verschijnen, of dat er gewoon een lekkere koppeling gemaakt wordt tussen beide apps.

Ik krijg net een berichtje van rembo10 dat het initscript wordt toegevoegt. Dat is al een verbetering binnen 24 uur na reporten. Hopelijk blijft het zo snel gaan met updates. A git pull a day keeps the bugs away!

De volgens stap is een ebook-binnenhengel-applicatie! Wie o wie houdt zich aanbevolen om een app als deze daartoe om te batterijen?

Tot slot nog even deze, de ontwikkeling van Spotweb grafisch weergegeven, hopelijk gaat dit ook zo met Headphones:

Volgende: Spotweb als provider 06-'11 Spotweb als provider
Volgende: Conky 04-'11 Conky

Reacties


Door Tweakers user xburchartz, maandag 20 juni 2011 23:45

Misschien is het ook een goed idee om bij rembo10 te lobbyen om AlbumIdentify als postprocessing te implementeren.
Hij wil nu geloof ik Beets gaan gebruiken, maar als ik jou destijds goed begreep was je daar minder enthousiast over.

Door Tweakers user Mar2zz, dinsdag 21 juni 2011 00:07

Dat is een idee ja. Ik was niet enthousiast over Beets omdat het interactie nodig heeft of gewoon uitgaat van de tags in de file zelf (< not good for tag-o-philes). Maar Beets is ook ontwikkeling misschien is het al beter. Ik zal daar nog wel ff induiken en dan lobbyen als nodig :p

Door Tweakers user r3v0ss, woensdag 22 juni 2011 16:10

Ik heb op het XBMC forum AlbumIdentify wel genoemd voor het postprocessing gedeelte. :) Eerst maar afwachten tot het verder uitgekristalliseert is. Kan ik me ondertussen bezig houden met het installeren van spotweb.

Door Tweakers user Mar2zz, donderdag 23 juni 2011 15:54

Ik heb me ook maar ff gemeld op het XBMC forum. Ik zal die postprocessing solution met albumidentify er alvast bij zetten :p

Edit:
Ik denk dat Mutagen toch de beste manier is als Rembo10 crossplatform wil blijven, wat volgens mij een doelstelling van hem is. Mutagen is een pythonmodule dus dat is volgens mij werkend te krijgen op alle platformen die python kunnen draaien. AlbumIdentify en Beets zijn *nix/*BSD only. Ik heb dat mutagen dus ook maar even in het topic gemeld op xbmc.org.

[Reactie gewijzigd op donderdag 23 juni 2011 17:16]


Door Tweakers user CH4OS, vrijdag 22 juli 2011 21:40

Een init script word trouwens door Headphones al meegeleverd, dus die hoeft niet apart te worden gedownload, of is er veel verschil in het initscript die meegeleverd word en deze?

Door Tweakers user Mar2zz, vrijdag 22 juli 2011 22:15

Het antwoord op je vraag staat in de laatste vijf regels van de blog :)

Door Tweakers user CH4OS, zondag 24 juli 2011 13:37

Ghehehe :+ Oh... :)

Door Tweakers user bphoenix, dinsdag 2 augustus 2011 16:12

Beste Mar2zz,

Handleiding uitgevoerd, headphones draait perfect. Echter wil hij bij mij onmogelijk de automatic start up correct uitvoeren.

Handmatig starten via sudo /etc/init.d/headphones start gaat perfect.
In de logfile van alle processen die hij start zie ik ook de tekst terugkomen "Starting headphones"

Maar hij wil het simpelweg niet doen, enig idee?

Alvast bedankt.

Gr. Robbert

Door Tweakers user Mar2zz, dinsdag 2 augustus 2011 16:23

He Robbert,
Ik heb precies hetzelfde probleem, al een week of 3. Ik heb nog geen oplossing gevonden. Het gekke is dat ie af en toe wel automatisch start, maar veel vaker niet dan wel, dus ik word er wat simpel van. Debuggen lukt ook niet, want als hij niet gestart is is er ook niets te vinden in het bootlog, dus hij wordt helemaal over het hoofd gezien dan.

Door Tweakers user Mar2zz, dinsdag 2 augustus 2011 19:34

Mar2zz schreef op dinsdag 02 augustus 2011 @ 16:23:
He Robbert,
Ik heb precies hetzelfde probleem, al een week of 3. Ik heb nog geen oplossing gevonden. Het gekke is dat ie af en toe wel automatisch start, maar veel vaker niet dan wel, dus ik word er wat simpel van. Debuggen lukt ook niet, want als hij niet gestart is is er ook niets te vinden in het bootlog, dus hij wordt helemaal over het hoofd gezien dan.
Ik heb een oplossing gevonden! Headphones wordt te vroeg opgepakt ofzo, maar als we deze startup naar het einde schuiven van het bootprocess dan wordt ie wel opgepakt (bij mij bij 3 achtereenvolgende reboots netjes gestart).
sudo update-rc.d -f headphones remove && sudo update-rc.d headphones defaults 99


Hoop dat het voor jou ook werkt.

Door Tweakers user Wingie, dinsdag 16 augustus 2011 18:26

Hi Mar2zz,

zag je bijdrage op xbmc.org ook en ben nog aan het twijfelen of ik je script op mijn net tweedehands aangeschafte synology cs407 zal installeren of op mijn asrock ion ht 330HT-BD (die staat niet altijd aan) met hierop OPENELEC, heb gisteren lekker geprutst met airplay en shairport en het aan de praat gekregen op de officiŽle RC5 editie van openelec a.h.v. addom door ultraman.

Wat raad jij aan? Synology of toch de asrock ondanks dat die niet altijd aan staan (eigenlijk alleen bij film kijken of muziek luisteren)

Door Tweakers user Mystic Spirit, zaterdag 27 augustus 2011 18:13

Het begint echt entertainment vanuit de luie stoel te worden nu headphones er is. Ik draai zelf een synology met alle pakketjes (Sab, Couch, Sick en nu ook headphones) van http://synoblog.superzebulon.org/. Allemaal zonder moeite te installeren en te draaien.

Dus Wingie zeker je CS407 gebruiken! :)

Door Tweakers user tjeerdoo, woensdag 14 september 2011 13:15

Mmm, krijg de volgende melding bij het wget gebeuren ;

wget http://dl.dropbox.com/u/18712538/Headphones/headphonesinit.d
--2011-09-14 13:12:57-- http://dl.dropbox.com/u/18712538/Headphones/headphonesinit.d
Resolving dl.dropbox.com... 174.129.245.163
Connecting to dl.dropbox.com|174.129.245.163|:80... connected.
HTTP request sent, awaiting response... 404 NOT FOUND
2011-09-14 13:12:58 ERROR 404: NOT FOUND.


Door Tweakers user SparkLine, maandag 10 oktober 2011 01:11

Paar (niet zo nette) truckjes die ik bij het installen heb gebruikt:

Toevoegen artiesten via bash:
Als je van te voren even een lijstje maakt gaat 't een stuk sneller door je browser via bash op te starten met telkens een andere url. Had geen zin om er even een mooi script omheen te bouwen.

chromium-browser 'http://localhost:8181/search?type=artist&name=artiest1'

Alle albums op wanted zetten
Aangezien de interface hier nog niet echt de ruimte voor biedt, moeten we zelf de database maar induiken en wat queries roepen.

installeer sqlitebrowser: sudo apt-get install sqlitebrowser
stop headphones: /etc/init.d/headphones stop (check eventueel of het proces echt is gekilled)
backup je db: cp ~/.headphones/headphones.db ~/.headphones/headphones.db.org
open de db: sqlitebrowser ~/.headphones/headphones.db
hier zie je alle data staan, commando's die ik heb gebruikt zijn:
  • UPDATE artists SET IncludeExtras=1 WHERE 1
  • UPDATE albums SET Status='Wanted' WHERE Status='Skipped'
Opslaan en afsluiten
Headphones weer starten: /etc/init.d/headphones start

[Reactie gewijzigd op maandag 10 oktober 2011 01:12]


Door Tweakers user Mar2zz, maandag 24 oktober 2011 19:16

SparkLine schreef op maandag 10 oktober 2011 @ 01:11:
Paar (niet zo nette) truckjes die ik bij het installen heb gebruikt:

Toevoegen artiesten via bash:
Als je van te voren even een lijstje maakt gaat 't een stuk sneller door je browser via bash op te starten met telkens een andere url. Had geen zin om er even een mooi script omheen te bouwen.

chromium-browser 'http://localhost:8181/search?type=artist&name=artiest1'
Hey interesting, had ik nog niet gezien dit bericht. Ik ga eens even kijken of ik daar wat mee kan, een lijstje van een site plukken en dan via bash (of wget/curl wellicht) artiesten toevoegen. thx!

Door Tweakers user ThinkPad, maandag 17 september 2012 12:02

De link naar het install script op Dropbox is dood :'(

[Reactie gewijzigd op maandag 17 september 2012 12:02]


Reageren is niet meer mogelijk