Re: [Musicpd-dev-team] [PATCH 0/4] Trivial fixes

2009-04-06 Thread Max Kellermann
On 2009/04/05 06:31, Avuton Olrich avu...@gmail.com wrote:
 
 Hi Max,
 
 The git trees are obviously down right now, take em now or I'll push 'em when 
 the server comes back up.

All merged.

git.musicpd.org is back up now.

Max

--
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


[Musicpd-dev-team] icy support for httpd output

2009-04-06 Thread Hagen Schink
Hello,

I attached a first proposal for a patch that adds icy metadata support for mpds 
httpd output.

Here are some explanations on how the patch works:

httpd_output_plugin.c
- httpd_output_tag():
 builds an icy metadata string and sends a struct page to the clients 

httpd_client.c
- httpd_client_send_response():
 sends an icy header if the client requested one

- httpd_client_out_event():
 counts the sent data
 sends the icy string if the client hasn't received one yet
 sends a zero byte if the client has already received the current tag


Known issues and improvements

- metadata will not be sent on the first connect of a client (easy to improve)
- icy string build isn't aware of NULL tags (easy to improve)

Furthermore I experienced issues with VLC, it seems it isn't able to read my 
icy data but there are no sound errors, though. MOC for example works perfect. 
Would be nice to get some feedback on the behaviour of other audio players.

Recommendations, hints or other comments concerning the patch are very welcome! 
:)

Cheers,
Hagen


icy-metadata.patch
Description: Binary data
--
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


Re: [Musicpd-dev-team] icy support for httpd output

2009-04-06 Thread Max Kellermann
Keep the mailing list on Cc, so others can participate in the discussion.

On 2009/04/06 13:49, Hagen Schink hagen.sch...@st.ovgu.de wrote:
 On Mon, 6 Apr 2009 11:44:51 +0200
 Max Kellermann m...@duempel.org wrote:
 
  Here's some criticism about formal stuff:
  
  - tab width is 8 characters.  Looks like your editor assumes a
non-standard '4' which breaks indentation
 
  - watch out for whitespace-only changes, and spaces at the end of a
line
 
 Ok, I'll change that immediately.
  
  - do you think it's possible to move the icy-metadata specific code to
a separate library?  This would simplify testing, because we could
run your code in an isolated (unit test) program, without all the
httpd stuff.
 
 First, I'm not sure if I understand you right. I guess you don't mean an 
 extra libtool-ish library but extra source files, right? (It wouldn't be a 
 problem though.)
 
 I think extra src/output/icy_metadata_output source files are a good place (I 
 guess src/icy_metadata.[c|h] is not a suitable place for the server side icy 
 protocol) for some functions like:
 
 - icy_server_metadata_header(...) -- returns the a string containing the icy 
 header
 - icy_server_metadata_string(...) -- returns an icy string with the tag 
 information
 
 convenience:
 - icy_server_metadata_page(...) -- a more mpd specific function which gets 
 tags and returns a page containing the icy string

Yes, that's exactly what I had in mind.  Put that source in ./src/,
not ./src/output/, because it's a generic library.  It should not
include httpd_internal.h.

 
 Other ideas are very welcome! :)
 
  See http://git.musicpd.org/account-policy.html if you want to publish
  your work on our git server.
 
 I'll come back to that later.
 
 Hagen

--
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


Re: [Musicpd-dev-team] icy support for httpd output

2009-04-06 Thread Max Kellermann
On 2009/04/06 10:29, Hagen Schink hagen.sch...@st.ovgu.de wrote:
 I attached a first proposal for a patch that adds icy metadata
 support for mpds httpd output.

Hello Hagen,

I had a first glance at your patch.  This seriously looks like a bunch
of good work!  I havn't tested your code yet, I will send a detailed
review later.  Here's some criticism about formal stuff:

- tab width is 8 characters.  Looks like your editor assumes a
  non-standard '4' which breaks indentation

- watch out for whitespace-only changes, and spaces at the end of a
  line

- do you think it's possible to move the icy-metadata specific code to
  a separate library?  This would simplify testing, because we could
  run your code in an isolated (unit test) program, without all the
  httpd stuff.

See http://git.musicpd.org/account-policy.html if you want to publish
your work on our git server.

Max

--
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


[Musicpd-dev-team] git account request

2009-04-06 Thread Hagen Schink
Hi,

here are the requested information:

1. Hagen Schink
2. hagen.sch...@st.ovgu.de
3. hschink
4. mpd
5. Public SSH key attached


id_dsa.pub
Description: Binary data
--
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


Re: [Musicpd-dev-team] mpdscribble

2009-04-06 Thread Max Kellermann
On 2009/04/06 20:17, Stephen Paul Weber singpol...@singpolyma.net wrote:
 More and more web services are starting to implement the
 audioscrobbler API (jamendo.com, libre.fm).  I would like to scrobble
 all my mpd listens to multiple of these services with mpdscribble.  As
 it is, I can change the host in the config, which works, but then I can
 only switch providers, I cannot use more than one.

So you have multiple MPD installations, and you want to scrobble all
of them?

 Looking at the source it seems this would not be too difficult to
 implement.  I may be able to figure it out (though I'm not familiar with
 glib), but thought I would ask the list first to see if someone has a
 better idea about this.

Sure this is possible, but it will make the code more complex and less
readable.  I'm not sure if this is a good idea.  Why not run a
separate mpdscribble on each MPD server?

Max

--
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


Re: [Musicpd-dev-team] mpdscribble

2009-04-06 Thread Jeffrey Middleton
I think the idea was to send the audioscrobbler data to multiple servers,
not to connect to multiple instances of mpd - this got confused by the use
of the word host in the sample config.  I think the idea would be more
something like this (using similar format to mpdconf):

scrobbleserver {
server = jamendo.com
user = ...
password = ...
}
scrobbleserver {
...
}
...other mpdscribble options...

Obviously the format of the config can be changed.  Is this the
functionality you had in mind?

Jeffrey

On Mon, Apr 6, 2009 at 2:44 PM, Max Kellermann m...@duempel.org wrote:

 On 2009/04/06 20:17, Stephen Paul Weber singpol...@singpolyma.net wrote:
  More and more web services are starting to implement the
  audioscrobbler API (jamendo.com, libre.fm).  I would like to scrobble
  all my mpd listens to multiple of these services with mpdscribble.  As
  it is, I can change the host in the config, which works, but then I can
  only switch providers, I cannot use more than one.

 So you have multiple MPD installations, and you want to scrobble all
 of them?

  Looking at the source it seems this would not be too difficult to
  implement.  I may be able to figure it out (though I'm not familiar with
  glib), but thought I would ask the list first to see if someone has a
  better idea about this.

 Sure this is possible, but it will make the code more complex and less
 readable.  I'm not sure if this is a good idea.  Why not run a
 separate mpdscribble on each MPD server?

 Max


 --
 This SF.net email is sponsored by:
 High Quality Requirements in a Collaborative Environment.
 Download a free trial of Rational Requirements Composer Now!
 http://p.sf.net/sfu/www-ibm-com
 ___
 Musicpd-dev-team mailing list
 Musicpd-dev-team@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team

--
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team


Re: [Musicpd-dev-team] mpdscribble

2009-04-06 Thread Max Kellermann
On 2009/04/07 01:39, Stephen Paul Weber singpol...@singpolyma.net wrote:
 Yes, this is exactly the functionality I had in mind :)

OK, understand.  While I'm not interested in that feature, I
understand others are, and I'd be willing to merge that.

Give the configuration file format a good thought when you hack on
that: currently, mpdscribble uses GKeyFile to parse the configuration
file in .INI style.  The parser invocation contains a hack, because
historically, there is no section name in the file.  We could say that
users who want to use multiple scrobbler servers have to explicitly
add the section name.

What you could do now is make one INI section per scrobbling server.
Example:

 [mpdscribble]
 log=syslog
 host=localhost
 scrobblers=foo bar

 [foo]
 username=foo
 password=secret
 server=http://foo.fm

 [bar]
 username=bar
 password=secret
 server=http://bar.fm

Be sure that old configuration files continue to work.

Max

--
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
___
Musicpd-dev-team mailing list
Musicpd-dev-team@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/musicpd-dev-team