PushOggDecoder is a pure Java implementation of an Ogg decoder. Note: that this doesn't contain any codecs and so you can't use it on its own to decode an Ogg/Vorbis stream. All it will do is unpack the Vorbis bitstream from the Ogg container.

The library is implemented around a data push model in which you register consumers for each of the bitstream types you are interested in before asking the container to advance. It then reads from the input source you provided and pushes Ogg packets at your registered codecs. The codecs in turn push the data out towards whatever output is desired such as audio or video.

PushOggDecoder is available under the Apache 2.0 License

Library dependencies: apache-mime4j, httpmime, httpclient, httpcore