Menu

Tree [r6] /
 History

HTTPS access


File Date Author Commit
 mythsqueezebox2 2010-05-04 ggalt [r6] Attempted fixes for downloading large number of...
 qtc-gdbmacros 2010-04-08 ggalt [r1] Initial Import
 squeezeslave 2010-04-08 ggalt [r1] Initial Import
 theme 2010-04-08 ggalt [r1] Initial Import
 .directory 2010-04-08 ggalt [r1] Initial Import
 AUTHORS 2010-04-08 ggalt [r1] Initial Import
 COPYING 2010-04-08 ggalt [r1] Initial Import
 ChangeLog 2010-04-08 ggalt [r1] Initial Import
 README 2010-04-12 ggalt [r2] Fixing portaudio/pulse audio issues
 mythlog 2010-04-08 ggalt [r1] Initial Import
 mythsqueezebox2.pro 2010-04-08 ggalt [r1] Initial Import
 mythsqueezebox2.pro.user 2010-05-04 ggalt [r6] Attempted fixes for downloading large number of...
 qtsqueezerc 2010-04-08 ggalt [r1] Initial Import

Read Me

MythSqueezebox 2 -- NOTE: FOR MYTHTV Version 0.22 OR GREATER ONLY and for SQUEEZEBOX SERVER Version 7.4 OR GREATER ONLY
Release 0.01

INTRODUCTION
------------

I cobbled the original Mythsqueezebox program together from Richard Titmuss's squeezeslave libraries and from translating some of his display code from SoftSqueeze into C++ from Java, mostly to get things started, and not to have the last word.  This program relies more explicitly on the SqueezeSlave program and actually builds a copy that gets launched as its own process to handle playing music.  As with the past program, this program was written more to satisfy my own needs than anything else.

The program has changed significantly and now presents a interface by which the user can control all Slimp3 and SqueezeBox (and Squeezeslave or SoftSqueeze programs) attached to the Squeezebox Server.  Control is through the command-line interface functionality of the SqueezeBox Server.

George Galt


GOALS:
------

1)	Fix what I can from the list below, and hope others help out with some of the other issues (and the many new ones that are likely to crop up).
2)	Change the audio decoding code to be based on the libraries already existing in Myth rather than importing lots of news things.
3)	Clean up the mess.
4)	Implement the display transitions and visualizations used by SqueezeBox.
5)	Implement some means for controlling and interfacing with the newer screen-based devices such as the SqueezeBox Radio and the Duet.

BUILD/CONFIGURATION INSTRUCTIONS
--------------------------------

PREREQUISITES (need -devel packages too, if you go that route):

MythTV 0.22 or higher.  THIS WILL NOT WORK with version <0.22.
Squeezebox Server Version 7.4 or greater.  While it will kind of work, there is a bug in the CLI display module for versions before 7.4 r28242 (check nightly builds at http://downloads.slimdevices.com/nightly/?ver=7.4)

libportaudio	available through http://www.portaudio.com.  Need version >- .19
libFLAC		
libmad 
libogg 
libvorbisfile 
libvorbis 
curses (NOTE: this is to build squeezeslave, which needs it to provide an interface that we piggyback off of).

When all prerequisites are in place:

$ qmake-qt4 -recursive
$ make
$ sudo make install

This will install libmythsqueezebox.so into PREFIX/lib/mythtv/plugins

Finally, you will need to create a button in the library.xml file (my suggestion) found in the default location of PREFIX/share/mythtv/themes/defaultmenu/:

   <button>
	   <type>MYTHSQUEEZEBOX2</type>
	   <text>MythSqueezeBox2</text>
	   <depends>mythsqueezebox2</depends>
	   <action>PLUGIN mythsqueezebox2</action>
   </button>

And changes to media_settings.xml (also my suggestion) found in the same location.

   <button>
           <type>MYTHSQUEEZEBOX2</type>
           <text>MythSqueezeBox2 Settings</text>
           <depends>mythsqueezebox2</depends>
           <action>CONFIGPLUGIN mythsqueezebox2</action>
   </button>

USING
-----

-- Setup
Before you can use mythsqueezebox, you need to setup the location of the server. By default this is set to 127.0.0.1 but if you use an external server you will need to go into setup and change the IP address of the server.  There are a few other settings as well, but I suggest you leave them at their defaults unless you know what you are doing.  These fields should be self-explanatory.


I have not tested authentication, so I would suggest that you don't use it unless you are truly paranoid.

************** NOTE ON PULSE AUDIO, PORTAUDIO, AND MYTHTV **************************
It seems that sometimes portaudio, which is used by the underlying squeezeslave player, sometimes uses Pulse Audio as the default output.  MythTV appears to turn this off (at least my testing version of 0.23, though it may be possible to alter this behavior somewhere).  If you experience this, try the following:
1)  Launch a terminal window.
2)  Start MythTV as usual
3)  Alt-Tab to the terminal window.
4)  Type the following command: "squeezeslave-alsa -L", this will list the devices that PortAudio sees.
5)  Attempt to play something through squeezeslave **while mythtv** is running by using the following command: "squeezeslave -D -o<device number <squeezeboxserver address>"  Note that this will give you the curses interface so you can control the player using the arrow keys.
6)  Cycle through the available devices until you find one that works **while MythTV is playing**
7)  Go to the settings screen (mythtv->Utilities/Setup->setup->media settings->mythsqueezebox2 settings) and insert the working device number in the appropriate place (currently last setting item).
8)  See if this fixes it.

BUGS, PROBLEMS, ISSUES:
-----------------------

A short list of the many:
1)	Display does not aways update the "Now Playing" info (try hitting the "space" bar to refresh the "Now Playing" display).
2)	The display is only rudimentary.  It does not handle the fancy transitions or animations that the normal SqueezeBox player or Richard's SoftSqueeze handle.  However, it puts up the essential information.
3)	The player does not handle streaming radio stations.  This is a known issue for the "squeezeslave" client and I'm not sure it's ever going to be fixed.  The real solution is to create my own player, but I just haven't had the time.
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.