Post by Yoni RabkinGetting info from a stream is a different thing than getting it from a
file, so the info functions don't apply. The streaming info backend is
determined by the variable `*emms-stream-info-backend*', which is set to
mplayer in my case.
I also have *emms-stream-info-backend* set to mplayer. But I finally
noticed the difference: I was using one of the .pls playlist link given
in emms-stream-default-list. And playlist parsing is disabled in mplayer
by default. You have to allow it with for instance:
--8<---------------cut here---------------start------------->8---
mplayer -ao null -vo null -endpos 0 -nocache -playlist http://somafm.com/bagel64.pls
--8<---------------cut here---------------end--------------->8---
Also, in this case of a stream being played, mplayer returns the name of
the stream and not the name of song currently playing, because there
isn't any "ICY Info: StreamTitle" in the output with these options. You
can however get this field if you enable a minimum cache (150Ko is not
enough) with for instance:
--8<---------------cut here---------------start------------->8---
mplayer -ao null -vo null -endpos 0 -cache 180 -playlist http://somafm.com/bagel64.pls
--8<---------------cut here---------------end--------------->8---
It's fine when you run mplayer in a terminal but the temp buffer used
by emms-stream-info-mplayer-backend gets filled by several Mo of
"Cache fill: 0.00% (0 bytes)" messages. You can get rid of these
messages, and some other, with the following cmdline options:
--8<---------------cut here---------------start------------->8---
-msglevel decaudio=-1:cache=-1:statusline=-1:cplayer=-1
--8<---------------cut here---------------end--------------->8---
The clean thing would be to remove all messages (with all=-1) and then
only enable the right modules but I couldn't find the module responsible
for the ICY info message.
We can add these options to emms-stream-info-mplayer-backend but maybe
the -playlist one should only be used when the url is indeed a playlist.
Post by Yoni RabkinI also note that while setting `*emms-stream-info-backend*' is mentioned
in emms-stream-info.el, it isn't mentioned in the manual. I'll add it to
the manual so people can do that in future.
(unless you feel like sending in a patch against the manual adding
that...)
Would the attached patch do ?
Julien.