Re: OpenAL for voicechat

"Peter Soxberger" <[email protected]>
Newsgroups gmane.comp.lib.openal
Message-ID <[email protected]>
After spending some more hours on debugging the code, I found out that the problem was caused by how I used the speex codec. It is not possible to initialize the decoder once and use it for different streams. You have to initialize a decoder for each stream, otherwise the streams affect each other.

The OpenAL code how I posted it works great for streaming. So thumbs up for OpenAL!!!

And again I want to thank you for helping me!

Best regards,
Peter Soxberger


-------- Original-Nachricht --------
> Datum: Tue, 26 Jan 2010 22:15:38 +0000
> Von: Dan Peacock <[email protected]>
> An: [email protected]
> Betreff: Re: [Openal] OpenAL for voicechat

> To determine which OpenAL device you are using, you need to call
> alcGetString(pDeviceHandle, ALC_DEVICE_SPECIFIER) after the call to
> alcOpenDevice(NULL).  It could be something like "SB X-Fi [E000]" or
> "Generic Software" etc ...
> 
> Your understanding of the buffer queue is correct, but in the
> real-world the packets are going to arrive out of sync with processed
> buffers.  Also, the number of processed buffers could vary too
> depending upon which OpenAL device you are using and what ever else
> the PC is doing at the time.  Your code will need to handle these
> situations.  Specifically - what happens if you have received a packet
> and there are no processed buffers?  What happens if an AL buffer has
> been processed but you have not received any new audio data?
> 
> Dan
> 
> On Tue, Jan 26, 2010 at 5:42 PM, Peter Soxberger
> <[email protected]> wrote:
> > Windows Vista and OpenAL 1.1
> >
> > 1) Maybe I missunderstood the princip of the buffer queue but I thought
> it works like this:
> >
> > - I create 4 buffers
> > - I add all 4 buffers to the queue
> > - I start playing the source
> > -> A new packet arrives
> > - I use processed to see if there are free buffers
> > - I unqueue one buffer and fill it with data
> > - I add the buffer to the queue again
> > (- if source stopped playing start again)
> > -> A new packet arrives
> > - I use processed to see if there are free buffers
> > - I unqueue one buffer and fill it with data
> > - I add the buffer to the queue again
> > (- if source stopped playing start again)
> > .
> > .
> > .
> > and so on
> >
> > Isn't that correct? Do I have to unqueue all buffers that are processed
> in order to prevent that the processed buffers are played again?
> > Or do you mean that I should only use 2 buffers?
> >
> > Best regards,
> > Peter Soxberger
> >
> > --
> > Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox
> 3.5 -
> > sicherer, schneller und einfacher! http://portal.gmx.net/de/go/atbrowser
> > _______________________________________________
> > Openal mailing list
> > [email protected]
> > http://opensource.creative.com/mailman/listinfo/openal
> >
> _______________________________________________
> Openal mailing list
> [email protected]
> http://opensource.creative.com/mailman/listinfo/openal

-- 
Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox 3.5 -
sicherer, schneller und einfacher! http://portal.gmx.net/de/go/chbrowser
_______________________________________________
Openal mailing list
[email protected]
http://opensource.creative.com/mailman/listinfo/openal
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.