[3b4b994] | 1 | So, you want to develop gutenbach, eh? Good! |
---|
| 2 | |
---|
[c94338b] | 3 | Gutenbach is a distributed music player built on top of CUPs. It |
---|
| 4 | essentially enables anybody with access to it to play music from their |
---|
| 5 | own computer -- all they have to do is "print" to the Gutenbach |
---|
| 6 | instance as they would any other document! |
---|
| 7 | |
---|
[423cc42] | 8 | The current Gutenbach features are: |
---|
| 9 | - the Gutenbach server (packaged as gutenbach-server) |
---|
| 10 | - a terminal queue display (packaged as gutenbach-queue) |
---|
| 11 | - remctl bindings (packaged as gutenbach-remctl) |
---|
| 12 | - client-side scripts to print to, list, and delete from |
---|
| 13 | queues (packaged as gutenbach-client) |
---|
| 14 | - a Rhythmbox plugin |
---|
| 15 | - iTunes plugins |
---|
| 16 | - a webapp interface |
---|
[3b4b994] | 17 | |
---|
[c94338b] | 18 | All of these are located on GitHub: |
---|
[423cc42] | 19 | http://github.com/jhamrick/gutenbach |
---|
[28f66a3] | 20 | |
---|
[7bc8b29] | 21 | Additionally, see README.old for how Gutenbach /used/ to be installed. |
---|
| 22 | This can sometimes offer insight into how to fix things that are |
---|
| 23 | broken. |
---|
| 24 | |
---|
| 25 | Questions or comments should be directed at gutenbach@mit.edu |
---|
| 26 | |
---|
[4ac44b2] | 27 | NOTES: |
---|
| 28 | |
---|
| 29 | - If you keep getting zephyrs with the following errors: |
---|
| 30 | |
---|
| 31 | Playback completed with the following errors: |
---|
| 32 | bt_audio_service_open: connect() failed: Connection refused (111) |
---|
| 33 | bt_audio_service_open: connect() failed: Connection refused (111) |
---|
| 34 | bt_audio_service_open: connect() failed: Connection refused (111) |
---|
| 35 | |
---|
[423cc42] | 36 | This is because you have alsa configured for bluetooth, but |
---|
| 37 | bluetooth is not enabled. You should either enable bluetooth, or |
---|
| 38 | uninstall the bluez-alsa package. |
---|
[4ac44b2] | 39 | |
---|
[423cc42] | 40 | - The commands to print and remove jobs should be used via the scripts |
---|
| 41 | in gutenbach-client package. However, if you insist on using them, |
---|
| 42 | the correct syntax is: |
---|
| 43 | |
---|
| 44 | CUPS_SERVER=servername lp -dqueuename foo.mp3 |
---|
| 45 | CUPS_SERVER=servername cancel [ID|-a] queuename |
---|
[4ac44b2] | 46 | |
---|
[423cc42] | 47 | TODO: |
---|
[4ac44b2] | 48 | |
---|
[28f66a3] | 49 | - include mixer and channel in debconf, or even better, move it to |
---|
[c6f9cbe] | 50 | gutenbach-remctl and implement debconf in that package |
---|
[4ac44b2] | 51 | |
---|
[423cc42] | 52 | - this should really not conflict with pulse (the biggest problem at |
---|
| 53 | the moment is that pulse will spew a bunch of errors like "Home |
---|
| 54 | directory /var/spool/cups/tmp not ours." I can't figure out how to |
---|
| 55 | get rid of them, but they're really annoying. As long as pulse is |
---|
| 56 | in system mode, things seem to work otherwise.) |
---|
[4ac44b2] | 57 | |
---|
[1e04f22] | 58 | - CUPS issues |
---|
[423cc42] | 59 | |
---|
| 60 | * the CUPS daemon processes do not inherit groups from the lp user |
---|
| 61 | (so, for example, even if we add 'lp' to 'audio', the process |
---|
| 62 | will not be running in group 'audio'). For the time being, I've |
---|
| 63 | set the CUPS daemon to always run under group 'audio', but there |
---|
| 64 | should really be a better solution. |
---|
| 65 | |
---|
| 66 | * when the Purge-Jobs command is sent, the jobs are removed, but |
---|
| 67 | the current mplayer instance continues playing. This |
---|
| 68 | unfortunately leads to jobs being played over each other when |
---|
| 69 | the CUPS server restarts |
---|
| 70 | |
---|
| 71 | - Making it easier to use across multiple platforms, regardless of |
---|
| 72 | debathena/normal linux/etc? |
---|
| 73 | |
---|
| 74 | - Gutenbach should not depend on Debathena -- ideally, |
---|
| 75 | gutenbach-server should be debathena free, and then if people want |
---|
| 76 | to use zephyr, etc., they can install an additional gutenbach-zephyr |
---|
| 77 | package or something |
---|
| 78 | |
---|
| 79 | - add regex support to the client scripts, so you can do something |
---|
| 80 | like `gbr sipbmp3 *.mp3` and have it send separate jobs to the queue |
---|
| 81 | |
---|
| 82 | - fix the web interface |
---|
| 83 | |
---|
| 84 | - fix the youtube feature. Additionally, make it possible to play |
---|
| 85 | movies! |
---|