Home of the Squeezebox™ & Transporter® network music players.
Page 3 of 4 FirstFirst 1234 LastLast
Results 21 to 30 of 35
  1. #21
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    2,389
    Quote Originally Posted by D1eter View Post
    How do I build squeezeplay-pulse? I didn't see this mentioned in the makefile.
    You need to use the Makefile.linux-pulse file.

    Pre build steps and requirements are at the top.

    Cleanup the i386 alsa build first if building in the same source tree.

    make -f Makefile.linux clean

    Also, use PulseAudioHostAPImulti branch in the git checkout instead of PulseAudioHostAPI.

    The pulseaudio support in portaudio is still rough around the edges and does segfault if you do not have at least 1 pulseaudio device available at runtime.
    Last edited by ralphy; 2020-02-20 at 07:52.
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

  2. #22
    Quote Originally Posted by ralphy View Post
    You need to use the Makefile.linux-pulse file.
    Of course, stupid me!

    Quote Originally Posted by ralphy View Post
    Pre build steps and requirements are at the top.

    Cleanup the i386 alsa build first if building in the same source tree.

    make -f Makefile.linux clean

    Also, use PulseAudioHostAPImulti branch in the git checkout instead of PulseAudioHostAPI.

    The pulseaudio support in portaudio is still rough around the edges and does segfault if you do not have at least 1 pulseaudio device available at runtime.
    Thanks, this is useful to know when/if I decide to try.

    Since I suspected the instability I saw may be due to using the ALSA version with pulseaudio I have removed pulseaudio as a first step. Result: jive_alsa doesn't crash anymore. But there's a downside: Now jive_alsa uses 20% CPU constantly, no matter if playing or idle. I can't seem to find a combination that idles (that's what it will spend most of it's time doing) with acceptable CPU usage... I'll try squeezelite next.

  3. #23
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    2,389
    Quote Originally Posted by D1eter View Post
    Now jive_alsa uses 20% CPU constantly, no matter if playing or idle. I can't seem to find a combination that idles (that's what it will spend most of it's time doing) with acceptable CPU usage... I'll try squeezelite next.
    Not sure what's happening there. jive_alsa does continue to output silence to the audio device even when the squeezeplay player is stopped.

    On my 11 year old debian 7 i386 2.4GHz 4 core system jive_alsa uses 1% when playing and doesn't register cpu usage in top when idle.

    Pulseaudio is often harder to remove than one might expect. Perhaps, there's still some bits active?
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

  4. #24
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    2,389
    Quote Originally Posted by ralphy View Post
    You need to use the Makefile.linux-pulse file.

    Pre build steps and requirements are at the top.

    Also, use PulseAudioHostAPImulti branch in the git checkout instead of PulseAudioHostAPI.
    I've updated the makefile build details in the repository.
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

  5. #25
    Went on to try Jivelite + Squeezelite. Squeezelite uses by far the most CPU when playing but that's okay. I can get it to idle with negligible CPU usage by using the -C option.

    But I have issues with my build of Jivelite:

    When using the power button in the top left corner of the home screen to turn the player off there is no way to turn it on again. Jivelite doesn't react to mouse clicks or key presses anymore. The only way out is turning on the player remotely on the server. Squeezeplay doesn't do this. Can Jivelite be set up to behave the same as SqueezePlay?

    Also, in power management of the PC the display is set to turn off a after period of inactivity but this never happens. Even with Jivelite in the off-state and Jivelite screen saver set to blank the screen the display backlight always remains on. Is there anything I can do to change this?

    I guess what I need is a combination of jive as in SqueezePlay + Squeezelite. Can this be achieved somehow?

  6. #26
    Quote Originally Posted by ralphy View Post
    Not sure what's happening there. jive_alsa does continue to output silence to the audio device even when the squeezeplay player is stopped.
    That explains quite well why CPU usage is constant.

    Quote Originally Posted by ralphy View Post
    On my 11 year old debian 7 i386 2.4GHz 4 core system jive_alsa uses 1% when playing and doesn't register cpu usage in top when idle.
    The box in question has a single core Intel Atom at 1.6 GHz with hyperthreading. In return, it uses passive cooling and looks good enough to place in the living room.

    Quote Originally Posted by ralphy View Post
    Pulseaudio is often harder to remove than one might expect. Perhaps, there's still some bits active?
    I'm pretty sure there is nothing left of pulseaudio. If I can get Jivelite to react to mouse/touch input again after turning it off I'd be fine I guess.

  7. #27
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    2,389
    Quote Originally Posted by D1eter View Post
    When using the power button in the top left corner of the home screen to turn the player off there is no way to turn it on again. Jivelite doesn't react to mouse clicks or key presses anymore. The only way out is turning on the player remotely on the server. Squeezeplay doesn't do this. Can Jivelite be set up to behave the same as SqueezePlay?
    Try applying this change to jivelite.

    Code:
    Index: share/jive/applets/ScreenSavers/ScreenSaversApplet.lua
    ===================================================================
    --- share/jive/applets/ScreenSavers/ScreenSaversApplet.lua
    +++ share/jive/applets/ScreenSavers/ScreenSaversApplet.lua
    @@ -559,7 +559,7 @@
    
            if not self:isSoftPowerOn() then
                    --allow input to pass through, so that the following listeners will be honored
    -               self:_setSSAllowedActions(true, {}, true)
    +               --self:_setSSAllowedActions(true, {}, true)
    
                    window:ignoreAllInputExcept(    { "power", "power_on", "power_off" },
                                                    function(actionEvent)

    Quote Originally Posted by D1eter View Post
    Also, in power management of the PC the display is set to turn off a after period of inactivity but this never happens. Even with Jivelite in the off-state and Jivelite screen saver set to blank the screen the display backlight always remains on. Is there anything I can do to change this?
    Try setting this before running Jivelite/Squeezeplay.

    export SDL_VIDEO_ALLOW_SCREENSAVER=1

    Quote Originally Posted by D1eter View Post
    I guess what I need is a combination of jive as in SqueezePlay + Squeezelite. Can this be achieved somehow?
    SqueezePlay and squeezelite need special handling to coexist.

    You either need to use the squeezelite -m command line option with a fake mac address or
    disable the local player in Squeezeplay by setting enableAudio=0 in $HOME/.squeezeplay/userpath/settings/Playback.lua. Squeezeplay must NOT be running when you make the change otherwise squeezeplay will just rewrite the file with the original setting.

    Otherwise the 2 players conflict with each other and LMS.
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

  8. #28
    Quote Originally Posted by ralphy View Post
    Try applying this change to jivelite.

    Code:
    Index: share/jive/applets/ScreenSavers/ScreenSaversApplet.lua
    ===================================================================
    --- share/jive/applets/ScreenSavers/ScreenSaversApplet.lua
    +++ share/jive/applets/ScreenSavers/ScreenSaversApplet.lua
    @@ -559,7 +559,7 @@
    
            if not self:isSoftPowerOn() then
                    --allow input to pass through, so that the following listeners will be honored
    -               self:_setSSAllowedActions(true, {}, true)
    +               --self:_setSSAllowedActions(true, {}, true)
    
                    window:ignoreAllInputExcept(    { "power", "power_on", "power_off" },
                                                    function(actionEvent)



    Try setting this before running Jivelite/Squeezeplay.

    export SDL_VIDEO_ALLOW_SCREENSAVER=1
    I have tried with the patch above and with SDL_VIDEO_ALLOW_SCREENSAVER=1. Now Jivelite turns on when I click anywhere on the screen (no need for an additional click on the power button). Thanks a lot for this fix! I'll find out about display backlight as soon as I get to the box.

    Jivelite prints a lot of warning messages "libpng warning: Interlace handling should be turned on when using png_read_image". In an attempt to get rid of them I have added the libs from SqueezePlay to the library path for Jivelite because I never saw SqueezePlay print these warnings. Result: Jivelite doesn't print these warning anymore. I hope this doesn't break anything I didn't notice yet.

    Quote Originally Posted by ralphy View Post
    SqueezePlay and squeezelite need special handling to coexist.

    You either need to use the squeezelite -m command line option with a fake mac address or
    disable the local player in Squeezeplay by setting enableAudio=0 in $HOME/.squeezeplay/userpath/settings/Playback.lua. Squeezeplay must NOT be running when you make the change otherwise squeezeplay will just rewrite the file with the original setting.

    Otherwise the 2 players conflict with each other and LMS.
    I'll also try to setting enableAudio=0 in Squeezeplay as I might like SqueezePlay + Squeezelite even better. Thanks a lot for all the expert information!

  9. #29
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    2,389
    Quote Originally Posted by D1eter View Post
    Jivelite prints a lot of warning messages "libpng warning: Interlace handling should be turned on when using png_read_image". In an attempt to get rid of them I have added the libs from SqueezePlay to the library path for Jivelite because I never saw SqueezePlay print these warnings. Result: Jivelite doesn't print these warning anymore. I hope this doesn't break anything I didn't notice yet.
    The warning is a bug in libpng that is reported as fixed. There should be no issue using the older version from squeezeplay. I usually build jivelite using the libraries and header files from squeezeplay.
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

  10. #30
    I have set enableAudio=0 in $HOME/.squeezeplay/userpath/settings/Playback.lua. However, this does not keep jive_alsa from running and consuming CPU. Should jive_alsa run with enableAudio=0?

    edit: I've renamed jive_alsa so it cannot be started. SqueezePlay (with enableAudio=0) doesn't even complain. I have also found out that setting the ALSA device to plughw:0,0 rather than using defaults causes both squeezelite and jive_alsa to use dramatically less CPU.
    Last edited by D1eter; 2020-02-24 at 11:37.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •