> mpd
I think. It makes sense, though, seeing the content of the pic.
I'm not entirely sure on the customization end. MPD is the backend, plays all your music for you. There are tons of different frontends, so one may do what you're looking for. I was partial to GMPC for playing things locally.
Might check out Music Player Daemon. There are tons of clients for it, GUI, console, web, etc. I am using it with a web UI called ympd for a bot that plays music on my Mumble server.
Music Player Daemon, it's a service that runs and manages all your music, like what's playing, full library indexing, playlists, you name it. Thing is, it's just a service, no interface (beyond very simple terminal commands). But it has a standard interface library, so anyone can (and has) written interfaces for it. Because it runs as a network service, you can have these interfaces run on a completely different computer than the MPD itself. I used to run a client from my Droid so I had full control over my library even when up and about using my wireless headphones.
Even further, it has an HTTP stream built in, if you enable it, allowing for you to have this single point of music, and access it anywhere you have network access to the device running it. It was great for quickly popping the music onto the living room entertainment system, for instance.
Anyways, enough rambling, I've only really told you what I used it for, for more detailed info, check the wiki, or ask me something more specific :p http://www.musicpd.org/
(Disclaimer: Time without internet has made me a jabbermouth, so forgive the wall of text...)
If anyone's curious, mpd has a plugin called despotify for playing tracks from spotify, though it looks like it's only a way to add the Spotify URLs for individual songs.
But OP's tool can do searches and stuff, which is very nice.
eso suena a que te hace falta mpd. te bajas el demonio y le tiras tu carpeta de musica, despues te conectas con un monton de clientes localmente o por red y lo controlas.
para consola yo uso ncmpc, y para desktop usaba sonata.
I've got just the thing. Try music player daemon. I don't have a link, but you can basically set it up for IP and get an app on your phone. I'm on mobile, but here's the homepage. http://www.musicpd.org
You can install with apt-get.
It doesn't have it's own interface, so there are a bunch of options.
Chimney is a Microsoft store app that is well designed and does the job.
MPDroid is my preferred interface. It is an android app that looks nice and does the job excellently.
There is a command line package, mpd-client, that allows you to control it natively. You could use SSH to do this remotely if you want.
Hoefnix has a link to a web client that interfaces with the music player.
There's probably an ios app, but I don't have an iPhone so I don't know.
With all of these, you can control it from outside the house if you forward a port on the router.
This protocol competes with the MPD protocol for the interface between a music player server and music player client (and it's the protocol that Groove Basin server and client use to communicate with each other).
Main differences are:
MPD is plain text, GBP is over HTTP/WebSockets which means it can use SSL/WSS for secure connections.
With MPD you request information; with GBP you subscribe to information and get pushed new information when it changes.
GBP supports delta information, e.g. when you subscribe to the entire music library index, if a single song is added, with MPD you'd have to fetch the entire music library index again, but with GBP you could get just a delta with the change that occurred.
I'm hoping that this improved protocol inspires more robust clients than are possible with the MPD protocol.
Pulse audio can be used for this sort of task. It's basically a software later between your audio application and audio driver that provides functions such as routing sound to another pulse audio instance on another machine. MPD interfaces with it well and has a multitude of client applications including iOS and android interfaces you can control playback with. MPD has the capability to interface with a multitude of audio destinations including your pulse audio instances and these interfaces can be enabled/disabled through an MPD client.
http://www.freedesktop.org/wiki/Software/PulseAudio/ http://www.musicpd.org
mpd stands for Music Player Daemon, it's a server. You use clients to interact with mpd (for example, I use Cantata to interact with mpd). Configuring mpd takes like 2-3 minutes. (depends on how skilled you are, it's not hard though. The configuration is straightforward even for newbies)
mpd is on almost all popular distributions, you can install it on Ubuntu/Debian with apt-get install mpd
and here's a how to set up from Ubuntu or Arch Linux one
mpd, 'nuff said. i like gmpc on the desktop (or just mpc from the console) and mpdroid on android. there is a client list
How about mpd with the frontend of your choice? Some frontends can be found here. I prefer the terminal client ncmpc myself, but I think popular graphical clients are gmpc and Ario, but it looks like they haven't got any updates recently...
mpd is a reaaally good server, but from my experience some of the graphical clients are a bit lacking at times.
Edit: Not sure if it counts as an organizer per se... but... yeah. It does present your music library to you in the way I think you want it, but it doesn't change anything on the file system.
This would be even awesomer if it could be integrated with MPD (http://www.musicpd.org/).
I've tried to get seemless syncing between computers using various methods based on MPD but could never get it perfect - could this be the answer?
Great work!
You are playing whatever you have, playlists, spotify, youtube, via mpd, the heart of volumio or musicbox or runeaudio. mpd takes this input and sends it to your audio out via alsa.
It could as well output via pipe and have a batch script start which has all my steps into it as a filter to convert mpd's output from stereo to ac3.
One other question: You have the digi+, which outputs the S/PDIF signal to the amp. Usually, you make the conversion to multi-channel stereo or pseudo-ac3 in the amp. At home, I switch my amp from stereo to multi-channel stereo to get exactly what you want with a flick of a switch. Can't you do the same in your setup?
> working in Visual Studio
That leads me to think you use windows. I was about to suggest you to take a look at mpd, mopidy and related extensions, and consider contributing with an extension of your own if necessary.
Maybe you can try running it on Windows, it's mostly python and js so I guess it should work.
The ultimate juke box setup for whole house audio is a program called Music Player Daemon. It needs some sort of minimal computer to run on, but because it just does audio that computer can be real minimal. People have run it on a Raspberry PI.
MPD can be controlled from an IPhone ... from any device really ... there are zillions of different clients.
You could gin something up DIY-style. A popular choice is MPD (music player daemon) and then the graphical client of your choice. Many graphical clients allow you to select which server to talk to. You can use a cheap embedded board (such as a Raspberry Pi) to host the thing, and then point them to a file share of your music.
Then you're talking: board (~$30-80, depending), DAC (~$0-70, depending), + speakers of your choice on per-room basis. Plus all the work to get it set up.
$200 isn't that bad considering it's all integrated for you. But, I have no clue how good the Sonos speaker unit sounds. So, if the speaker is good, this may all be moot. If the speaker is bad, this could seriously be worth your time.
On the downside to the DIY version, you probably wouldn't get "true" remote volume control for the speakers. You'd have to leave the speakers turned on and set to a normal listening level, and use the MPD client to set the output volume level.
Here's an example: http://lesbonscomptes.com/pages/raspmpd-details.html
And some info on other boards: https://learn.adafruit.com/embedded-linux-board-comparison/overview (there are many more than these 4)
I have very little experience with this, but it seems that mpd could be an option. It's a music server that can be controlled with all kinds of clients. For a list of clients, look here.
When I used it, it was just with a local desktop client, so I don't know how to set an http client, but it shouldn't be very hard.
I think you can do this using mpd and defining different audio outputs.
You need to send the currentsong
command first like so:
#include <mpd/client.h> #include <stdio.h>
int main(void) { struct mpd_connection *conn; struct mpd_song *song;
conn = mpd_connection_new(0, 0, 0); if (!mpd_send_command(conn, "currentsong")) return 1; song = mpd_recv_song(conn); if (!song) return 1;
printf("%s\n", mpd_song_get_uri(song));
mpd_connection_free(conn); return 0; }
Read the overview of the MPD protocol to get a basic understanding of how it works. For figuring out how it works in detail you can just use netcat
$ nc 127.0.0.1 6600 OK MPD 0.18.0 currentsong file: electronic/chiptune/Dubmood/2008 - Live at Kafe 44 Stockholm/Dubmood - Live at Kafe 44 Stockholm.mp3 Last-Modified: 2012-06-18T21:16:15Z Time: 5598 Artist: Dubmood Title: Live at Kafe 44 Stockholm Album: Live at Kafe 44 Stockholm Track: 01 Date: 2008 Genre: Electronic Pos: 0 Id: 164 OK
See if you can get MPD installed and running on your NAS (certainly possible on many of them which run GNU/Linux, I've installed it on my NetGear ReadyNAS Duo, but have used Linux for quite a few years so it wasn't that new to me). Configure it to do http streaming (either internally or via Icecast, see the documentation).
Once thats done you can then use MPDroid on your phone/tablet to control whats playing and listen to it.
A great solution IMO and works well streaming to different devices in different rooms.
Checkout Music Player Daemon (MPD). You can use python-mpd or python-mpd2 to interface with it from Python.
You haven't actually specified what features you're looking for - "good" is ridiculously subjective and vague.
Personally, I use mpd on my headless server which is connected to my wireless headphones transmitter and my amplifier, and whatever client I wish to use to control it - typically gmpc on my laptop, MPDroid on my Android phone, the command-line mpc client sometimes, and for parties, my own "jukebox" type webapp running on a cheap old laptop to let anyone search for and queue tracks easily.
Also, mpd contains built-in streaming support, so I can stream music straight to my phone (usig MPDroid) or to any other device that can play a HTTP stream (e.g. to my laptop using VLC, mplayer, whatever)...
Amazing flexibility and power, I'd certainly recommend giving it a try.
I use mpd with mpc to listen to music on my computer. So folder organization is how I organize my music. I don't really use tags.
My ~/music/ folder contains mostly last names of composers, sometimes first names or full names, depending on what's easiest for me to recognize. beethoven, hildegard, bach, and cpe_bach are some of my folders. Within these folders, I sometimes categorize by genre (piano_solo, piano_concerto, string_quartets, and symphonies are some of my subfolders in beethoven), with works and then individual recordings thereof inside. Sometimes, I have folders for specific works immediately inside the composer folder (ricercar, bwv1080, wtc1, wtc2 are some of my sub-folders in bach), and then recordings further down. For some composers, I have just the albums as immediate subfolders. (hildegard contains a_feather_on_the_breath_of_god and celestial_stairs, for instance).
When an album has multiple composers or multiple works, I sometimes split the album up and put different tracks into different folders. Sometimes, if I have a lot of albums by a soloist (Richter, Ruth Laredo, Harvey Sollberger), I make a folder for them and put their albums in there, instead of in the composers' folders.
My music folder is kind of a mess, but it's my mess, and I know how to get to what I want to listen to.
Catana might be what you want. And you can run it in Windows as well.
It's a Qt front end for MPD, which is a server that takes care of the management and tagging. And if you like the idea of MPD, there are numerous other front ends for it as well.
MusicBee (which is excellent in Windows) might be able to run on Wine or Mono.
Clementine or Rhythmbox if you have big libraries of music that you want to organize and search easily.
EDIT:
There's also the option of installing a server on your pc (http://www.musicpd.org/) and access that media with many clients from different devices: http://mpd.wikia.com/wiki/Clients
I've never tried it, but I believe you can just set up an httpd output. And then connect to it with a player.
Here's a commented out example from my mpd.conf:
#audio_output {
# type "httpd"
# name "My HTTP Stream"
# encoder "vorbis" # optional, vorbis,lame,flac,wave
# port "8000"
## quality "5.0" # do not define if bitrate is defined
# bitrate "128" # do not define if quality is defined
# format "44100:16:1"
#}
From the changelog of MPD
ver 0.19 (2014/10/10) * protocol - new commands "addtagid", "cleartagid", "listfiles", "listmounts", "listneighbors", "mount", "rangeid", "unmount" ...
So yes, addtagid was added after 0.18.7. Youll need to install at east 0.19.
Id suggest maybe going straight for latest and follow these instructions http://www.musicpd.org/doc/user/install_source.html
Well, I may have answered my own questions. A friend recommended Media Player Daemon, and it is very nice. Runs as a daemon on a Linux box, and is controlled via clients, a web interface, smartphone app, Windows gui client, Linux gui client, OSX gui client, etc. Audio can be output via the server's audio interface, or sent to another device (a Raspbery Pi with a USB DAC for instance). IR remote and local LCD display appear to be possible with plugins.
I could see it done through a shoutcast stream. If it's possible to for the internal minecraft client to tune to a stream.. probably not, but most people have media player. but! user control over the tunes. that's a possibility for a tenacious young server admin.
Linux server running mpd which outputs the music stream, build a minecraft client to control the remote server, either through various web or cli interfaces or directly via a minecraft mod.
Could even be done through a giant computercraft boombox interface in your world which could also transmit mpd client requests to the mpd server.
software url: http://www.musicpd.org/
my experience with mpd was a huge pain in the butt though.
edit: I see from the comments that openblocks radio can do streams!
ftpd. I'm more familiar with that than Samba, personally; and from memory it's what Windows' Network Neighbourhood usually uses anyway, just disguised. I prefer ftp over http for my own files, because I can send as well as receive with it.
Nginx/Apache for various things.
Tmux server. If you're a console user, you can manage what all of your mobile devices are doing centrally, on your home machine.
The Music Player Daemon.
Repository for to-do lists and similar stuff. This doesn't need to be complicated; vim and a shell will do. Just use it to put down bullet points about things you want to get done.
Here are some bluetooth presence ideas:
http://sourceforge.net/projects/blueproximity/
http://www.dreamgreenhouse.com/projects/2012/rpibt/index.php
MPD (Music Player Daemon) can be controlled from pretty much anything:
mpd is an example of passing media data from a process to another.
There are several reasons why one might want to detach loading and displaying media, such as recording a streaming. Personally, I'll not benefit from this...
Thinking better, maybe there are some more serious use cases such as desktop handling of events (such as USB plugging)...
Just use some sort of Bluetooth audio device? Or are you wanting to stream the files to some device that decodes it and feeds it to the receiver?
For an off-the-shelf device... do you have any monitors with either HDMI or composite video inputs laying around? Because you could use a Roku to browse and play music served up by Plex Media Server running on Ubuntu.
For a more DYI solution, you can run Music Player Daemon (mpd) on your Ubuntu box to serve some client software on a remote linux host/device.
I have 3 sound cards in my Linux server, each of which connect via phono to a small, cheap amp ($20 each) which connects to speaker wire wall jacks in the wiring closet, which are wired to speakers throughout the house.
The Linux server runs Music Player Daemon and I use Android apps on the phones and tablets to control it, along with a wireless air mouse in the shower that I'm trying to figure out how to waterproof. The Linux server has a few gigs of .mp3s and .oggs on it, as well as movies and TV shows.
I have sets of in-ceiling speakers in the kitchen and master bed and bath, which are wired back to the wiring closet. I had them put in when they built the house, along with cat6 ethernet to the living room, loft, and bedrooms.
I've found the doxygen documentation online and came up with the code in just a few minutes reading the generated documentation and the headers themselves. It was so intuitive and easy to start, that I have to commend the developers of the library for having designed such a great practically self-documented API.
If you just want a jukebox use MPD, it's far better suited for that purpose and runs great on a Pi. XBMC is massive overkill.
I use subsonic to listen to my music on my phone when I'm away from home.
I have a Model A hooked up to my stereo for streaming web radio and music from a NFS share on my NAS. I just wondered what software you are using. I use MPD on the Pi, as XBMC seemed a bit over the top for the job.
ESD provides network-transparent audio. Dunno what the auth scheme is like if your network isn't trusted; you may want to investigate.
EDIT: Oh, I'm sorry...you don't want to push audio from the board to speakers elsewhere, but from an audio streaming server to mpd. MPD can stream audio from a remote server.