[Pianod] Missing fgetln, Makefiles, svn versus latest, commands

Michael R. Hines michael at hinespot.com
Wed Dec 5 07:51:31 PST 2012


I had a similar experience with the "stop" command. A very simple 3-line
patch (below) was able to make the "stop" actually stop.

The -libao library which plays the audio keeps a reference to the audio
device open during pause or stop (because the Pianod thread hasn't
finished playing yet as Perette described.)

This is a problem for me (I use Pianod with MythTV) because MythTV
cannot acquire the audio device if I issue a stop when switching
from playing music to watching TV. I certainly don't think this behavior
should change for the 'pause' command but it would be nice if the stop
actually did stop....

Perrete, what do you think?

Index: src/pianod.c
===================================================================
--- src/pianod.c	(revision 79)
+++ src/pianod.c	(working copy)
@@ -649,6 +649,9 @@
 			return;
 		case STOP:
 			app->current_station = NULL;
+			if (app->player.mode >= PLAYER_SAMPLESIZE_INITIALIZED &&
+						app->player.mode < PLAYER_FINISHED_PLAYBACK)
+						app->player.doQuit = 1;
 			reply (event, S_OK);
 			return;
 		case PLAY:


On Wed, 2012-12-05 at 08:26 -0500, Perette Barella wrote:
> Stop kicks in after the current song playbacks.  Pause complements play, stop complements station selection.
> 
> Shutdown, likewise, takes place when the current playback is complete.
> 
> Thanks for the feedback on the missing files.  I'm adding them to SVN, as well as the pianod.service file.  The tarballs and SVN should be in sync, generally.  SVN also contains some of the XCode (development studio) files, which are excluded from the tarballs.
> 
> I'd guess if the TLS handshake just failed the once, probably a transient network problem.  Pandora periodically changes their certificates and breaks everything.
> 
> I'm researching GNU Autoconf to make a more portable build system, but while I'm good with code, I lack skill with build tools.  I'm in over my head and muddling my way through.  Michael Hines has provided info on the -lbsd and we've worked out a uname query to detect Linux, so if the autoconf transition isn't forthcoming I'll see about adding some more automation to the existing makefile to get by.
> 
> Perette
> 
> 
> 
> --
> Perette Barella • perette at barella.orghttp://perette.barella.org
> 585-286-1312 • 176 Middlesex Road, Rochester NY 14610
> 
> On 2012年12月05日, at 3:48, Peter Li wrote:
> 
> > Hey, thanks for your work on this; seems to work pretty nicely.
> > 
> > I had a few problems with building on ArchLinuxARM (RPi).  The main thing is that the version from SVN is missing fgetln.h and fgetln.c in libfootball.  I had to copy those over from latest to get it to build with NEED_FGETLN=1.
> > 
> > On latest, this wasn't an issue because I have libbsd installed.  So it just linked against libbsd and didn't NEED_FGETLN.  Would be nice if SVN version did this too by default.
> > 
> > Maybe you could explain a little bit the difference between the SVN and latest versions; seems kind of weird to me that they are so different.
> > 
> > I also had one instance in a few hours usage where the TLS handshake failed for no clear reason.  Just restarting the station worked.
> > 
> > Like I said, it's all working pretty nicely so these are just little things.
> > Best,
> > P
> > _______________________________________________
> > Pianod mailing list
> > Pianod at lists.deviousfish.com
> > http://lists.deviousfish.com/listinfo.cgi/pianod-deviousfish.com
> 
> _______________________________________________
> Pianod mailing list
> Pianod at lists.deviousfish.com
> http://lists.deviousfish.com/listinfo.cgi/pianod-deviousfish.com





More information about the Pianod mailing list