What I did, was to decode the entire ogg file and then not use tha "alqueuebuffer" thing. Just make a normal buffer as you normally would with a wav file. When this is done, you will have fast access to your sample(music I presume) and you can use AL.AL_LOOP to loop it. This takes a while for big files(4-5mb ogg files), but its worth it so ou can squeeze out some extra FPS during gameplay.
I'm not gonna send you my code, cuz its dead ugly right now. But the thing I did was just to adjust the buffersize to match the filesize and then load it into a normal buffer. It's not hard to do, it requires some getting-to-know example 8, but you have that pegged apparently
If you end up with a beautiful solution please pm me or something. I'm tired of restructuring code
PS: Does anyone else find the code extremely strange in example 8? All that returning booleans, its frustrating when you query for "if(initialized())..." then you are in fact doing it as you ask for it....I hate that very much!