Quote:
Originally Posted by Ztcoracat
When you get a chance bassmadrigal would you mind?.... turn on screensaver and play a video or audio and see if mplayer locks up on you when the screensaver launches?
|
Sorry it took me so long to get back to this. It's been a crazy few weeks.
So, I first tested this in KDE as that is what I run on my htpc. I enabled the default KDE screensaver and chose GLMatrix (as that is what I used to use back in the early 2000s when I started with Slackware). I tested both an mp3 and mp4, running mplayer from the commandline without any options and nothing more than the default system configs (no ~.mplayer/config or whatever file it uses). There was no pause with either when the screensaver came up. Both continued playing in the background while the screensaver played.
Then I logged out of KDE and logged into xfce (first login with xfce on this machine, so it was the default config). I then enabled the GLMatrix screensaver and set the blank time to 1 minute. Again I played both files with no additional options and using the system's default mplayer config. The mp3 played without issue and there was no pause when the screensaver came on. However, with the video, it paused and wouldn't resume playback when the screensaver ended. Even hitting my spacebar to resume playback didn't work. I ended up needing to skip ahead in the video to finally resume playback. I got several alsa errors while trying to resume playback.
Code:
[AO_ALSA] pcm pause error: file descriptor in bad state
[AO_ALSA] pcm resume error: file descriptor in bad state
Video playback was done with vdpau and audio playback was done with alsa (likely with a pipe to pulse, as I haven't changed any audio configurations on this machine). Both seem to be mplayer's default. The mp4's video was h264 and the audio was AAC.
I then tried switching audio output to pulse (mplayer -ao pulse video.mp4), which brought an unexpected change. When I did this, I had a slight pause when the screensaver came on (during the fade to black transition), but then the audio continued on while the screensaver played. When I exited the screensaver, the video continued playing without any errors. Since it only occurred during the transition, I disabled that under the advanced tab under the screensaver, and that prevented the pause and everything continued playing in the background. Exiting the screensaver continued the video as expected.
I then went back to alsa output (removed the -ao pulse from the command) and tried playing the video with just the transition disabled, and that created no pause. I also tested an avi file that used xvid for the video and mp3 for the audio, just in case the audio portion played a factor in the outcome, but it had the same outcome as the mp4, so it seems like it happens when video is playing.
So to recap:
mp3 - no pause when screensaver comes on
mp4/alsa - completely pauses and won't resume with transition -- no pause/stutter without transition
mp4/pulse - stutters with transition but audio continues -- no pause/stutter without transition
So, it looks like the fade-to-black transition of xscreensaver is causing the problems. I'm not sure why alsa/pulse make a difference in whether it completely locks up or just stutters.
Let me know if you have any further questions.