Roland Petera wrote:
>> You need to look at the logs /tmp/freevo/mplayer* or
>> /var/log/freevo/mplayer* and see what mplayer is telling you.
>
> Duncan,
> I looked at the /tmp/freevo/mplayer-stderr.log and found:
> [AO OSS] audio_setup: Can't open audio device /dev/dsp: Device or resource
> busy
Don't know the answer to why /dev/dsp is busy, lsof should tell you but
isn't.
Have you tried, in local_conf.py:
MPLAYER_AO_DEV = 'alsa'
I think that alsa should be the default audio device, but I don't use
esd or arts.
Duncan
>
> Well, to get nearer to the problem I put only one song in my music collection
> directory and to find out which process blocks the audio device I added some
> lines to the mplayer.py
> (print 'STEP x' - os.system('lsof /dev/dsp') - print 'STEP x') :
>
> class MPlayerApp(childapp.ChildApp2):
> """
> class controlling the in and output from the mplayer process
> """
> def __init__(self, app, player):
> self.item = player.item
> self.player = player
> self.elapsed = 0
> self.stop_reason = 0 # 0 = ok, 1 = error
> self.RE_TIME = re.compile("^A: *([0-9]+)").match
> self.RE_TIME_NEW = re.compile("^A: *([0-9]+):([0-9]+)").match
>
> # check for mplayer plugins
>
> print 'STEP 1'
> os.system('lsof /dev/dsp')
> print 'STEP 1'
> self.stdout_plugins = []
> self.elapsed_plugins = []
> for p in plugin.get('mplayer_audio'):
> if hasattr(p, 'stdout'):
> self.stdout_plugins.append(p)
> if hasattr(p, 'elapsed'):
> self.elapsed_plugins.append(p)
>
> print 'STEP 2'
> os.system('lsof /dev/dsp')
> print 'STEP 2'
> childapp.ChildApp2.__init__(self, app, stop_osd=0)
> print 'STEP 3'
> os.system('lsof /dev/dsp')
> print 'STEP 3'
>
>
> When starting the song and having that scrolling problem, the output of the
> terminal window looks like no process blocks the audio device at the moments
> when the "print Stepx' is done (but the mplayer-stderr.log says device busy):
>
> mplayer.py (178): MPlayer.play(): Starting cmd=['--prio=-20',
> '/usr/bin/mplayer'
> , '-slave', '-autosync', '100', '-nolirc', '-autoq', '100', '-screenw',
> '768',
> '-screenh', '576', '-fs', '-vo', 'null', '-ao', 'oss:/dev/dsp', '',
> '-demuxer', '
> 17', '', '',
> '/home/roland/Musik/Ace-Of-Base-Platinum-And-Gold-Collection-Retail
> /01-ace_of_base_-all_that_she_wants-xxl.mp3']
> STEP 1
> STEP 1
> STEP 2
> STEP 2
> protokolliert nach "/tmp/freevo/mplayer-stdout.log"
> protokolliert nach "/tmp/freevo/mplayer-stderr.log"
> self.t1.isAlive()=True, self.t2.isAlive()=True
> ChildApp.__init__(), pid=6467, app=/usr/bin/mplayer -slave -autosync 100
> -nolirc
> -autoq 100 -screenw 768 -screenh 576 -fs -vo null -ao oss:/dev/dsp -demuxer
> 17
> /home/roland/Musik/Ace-Of-Base-Platinum-And-Gold-Collection-Retail/01-ace_of_bas
> e_-all_that_she_wants-xxl.mp3, poll=-1
> STEP 3
> STEP 3
>
>
> In comparison this is what the output of the terminal window looks like when
> the song starts without problems (which is does after serval tries) :
>
> mplayer.py (178): MPlayer.play(): Starting cmd=['--prio=-20',
> '/usr/bin/mplayer'
> ,
> '-slave', '-autosync', '100', '-nolirc', '-autoq', '100', '-screenw', '768',
> '-screenh', '576', '-fs', '-vo', 'null', '-ao', 'oss:/dev/dsp', '',
> '-demuxer', '
>
> 17', '', '',
> '/home/roland/Musik/Ace-Of-Base-Platinum-And-Gold-Collection-Retail
> /01-ace_of_base_-all_that_she_wants-xxl.mp3']
> STEP 1
> STEP 1
> STEP 2
> STEP 2
> protokolliert nach "/tmp/freevo/mplayer-stdout.log"
> protokolliert nach "/tmp/freevo/mplayer-stderr.log"
> self.t1.isAlive()=True, self.t2.isAlive()=True
> ChildApp.__init__(), pid=6514, app=/usr/bin/mplayer -slave -autosync 100
> -nolirc
> -autoq 100 -screenw 768 -screenh 576 -fs -vo null -ao oss:/dev/dsp -demuxer
> 17
>
> /home/roland/Musik/Ace-Of-Base-Platinum-And-Gold-Collection-Retail/01-ace_of_bas
>
> e_-all_that_she_wants-xxl.mp3, poll=-1
> STEP 3
> COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
> mplayer 6514 roland 4w CHR 14,3 9328 /dev/dsp
> STEP 3
>
>
> Any idea how to find out more about the busy device ?
>
> Roland
>
>
>
>
>
>
>
>
>
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys - and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Freevo-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/freevo-users
>
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freevo-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-users