oggdec decodes Ogg Vorbis files into PCM-encoded ("uncompressed") audio files, either WAV or RAW format.
For each input file, oggdec writes to a filename based on the input filename, but with the extension changed to ".wav" or ".raw" as appropriate.
If the input file is specified as - , then oggdec will read from stdin, and write to stdout unless an output filename is specified. Likewise, an output filename of - will cause output to be to stdout.
Writing WAV format to stdout is a bad idea. WAV requires a seekable medium for the header to be rewritten after all the data is written out; stdout is not seekable.
oggdec enabler.ogg
Decode a file enabler.ogg to enabler.raw as headerless little-endian unsigned 16-bit:
oggdec --raw=1 enabler.ogg
Decode enabler.ogg to enabler.crazymonkey as unsigned 8-bit:
oggdec -b 8 -s 0 -o enabler.crazymonkey enabler.ogg
Decode enabler.ogg to enabler.raw as big-endian signed 16-bit (any of the following):
oggdec -R -e 1 -b 16 enabler.ogg
oggdec -R -e 1 -b 16 -o enabler.raw - < enabler.ogg
oggdec -R -e 1 -b 16 - < enabler.ogg > enabler.raw
Mass decoding (foo.ogg to foo.wav, bar.ogg to bar.wav, quux.ogg to quux.wav, etc.):
oggdec *.ogg
Frederick Lee <phaethon@linux.ucla.edu>, assisted by a few million monkeys armed with keyboards in irc://irc.openprojects.net/#vorbis