[vorbis-dev] python bindings and ao lockup

Rob Brown-Bayliss rob at zoism.org
Sun Nov 3 00:57:16 PST 2002



Hello, I hope this is the right place to ask.

I am having random lockups from the python bindings.  My app has one or
two threads running, the lockups only occure at one point, here is the
code run as a thread

def play(self):
        self.playing = TRUE
        self.output = []
        self.lastplay = time.time()
        args = self.song_file, self.output
        retval = thread.start_new_thread(self.play_as_thread, args)

<p>def play_as_thread(self, song_file, output):
        print self.get_name() + " started"
        vf = ogg.vorbis.VorbisFile(song_file)
        print "Vorbis File Object Created"
        dev = ao.AudioDevice(ao.driver_id('esd'))
        print "Entering the While Loop to actually play song"
        while self.playing == TRUE:
                (buff, bytes, bit) = vf.read(4096)
                data = int(vf.time_tell()),int(vf.time_total(0))
                output.append(data)
                if bytes == 0:
                                break
                dev.play(buff, bytes)
        self.playing = FALSE

The propblem only occures when starting a second song, but not every
time, it might play 30 or it might play 1.

This line:	print "Vorbis File Object Created"

gets printed so I m thinking this line:
        dev = ao.AudioDevice(ao.driver_id('esd'))

Is the problem.  But  do not know where to go from here.  Any clues or
pointers welcome.

Thanks


-- 

*  Rob Brown-Bayliss
*  =================	
*      zoism.org
--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.




More information about the Vorbis-dev mailing list