ogg123 - plays Ogg Vorbis files
ogg123 [ -vqrzZVh ] [ -k seconds ] [ -x nth ] [ -y ntimes ] [ -b buffer_size ] [ -d driver [ -o option:value ] [ -f filename ] ] file ... | directory ... | URL ...
ogg123 reads Ogg Vorbis and FLAC audio files and decodes them to the devices specified on the command line. By default, ogg123 writes to the standard sound device, but output can be sent to any number of devices. Files can be read from the file system, or URLs can be streamed via HTTP. If a directory is given, all of the files in it or its subdirectories will be played.
--audio-buffer n Use an output audio buffer of approximately 'n' kilobytes. -@ playlist, --list playlist Play all of the files named in the file 'playlist'. The playlist should have one filename, directory name, or URL per line. Blank lines are permitted. Directories will be treated in the same way as on the command line. -b n, --buffer n Use an input buffer of approximately 'n' kilobytes. HTTP-only option. -p n, --prebuffer n Prebuffer 'n' percent of the input buffer. Playback won't begin until this prebuffer is complete. HTTP-only option. -d device, --device device Specify output device. See DEVICES section for a list of devices. Any number of devices may be specified. -f filename, --file filename Specify output file for a file device previously specified with --device. The filename "-" writes to standard out. If the file already exists, ogg123 will overwrite it. -h, --help Show command help. -k n, --skip n Skip the first 'n' seconds. 'n' may also be in minutes:seconds or hours:minutes:seconds form. -K n, --end n Stops playing 'n' seconds from the start of the stream. 'n' may also have the same format as used in the --skip option. -o option[:value], --device-option option[:value] Sets the option option to value for the preceding device. See DEVICES for a list of valid options for each device. -q, --quiet Quiet mode. No messages are displayed. -V, --version Display version information. -v, --verbose Increase verbosity. -x n, --nth Play every 'n'th decoded block. Has the effect of playing audio at 'n' times faster than normal speed. -y n, --ntimes Repeat every played block 'n' times. Has the effect of playing audio 'n' times slower than normal speed. May be with -x for interesting fractional speeds. -r, --repeat Repeat playlist indefinitely. -z, --shuffle Play files in pseudo-random order. -Z, --random Play files in pseudo-random order forever.
ogg123 supports a variety of audio output devices through libao. Only those devices supported by the target platform will be available. The -f option may only be used with devices that write to files. Options supported by all devices: debug Turn on debugging output [if any] for a chosen driver. matrix:value Force a specific output channel ordering for a given device. value is a comma seperated list of AO style channel names, eg, L,R,C,LFE,BL,BR,SL,SR. verbose Turn on verbose output for a chosen driver. the -v option will also set the driver verbose option. quiet Force chosen driver to be completely silent. Even errors will not produce any output. -q will also set the driver quiet option. aixs AIX live output driver. Options: dev:value Set AIX output device to value alsa Advanced Linux Sound Architecture live output driver. Options: buffer_time:value Override the default hardware buffer size (in milliseconds). dev:value ALSA device label to use. Examples include "hw:0" for the first soundcard and "hw:1" for the second. The alsa driver normally chooses one of "surround71", "surround51", "surround40" or "default" automatically depending on number of output channels. For more information, see http://alsa.opensrc.org/ALSA+device+labels period_time:value Override the default hardware period size (in microseconds). period_time:value Override the default hardware period size (in microseconds). use_mmap:value value is set to "yes" or "no" to override the compiled-in default to use or not use mmap device access. In the past, some buggy alsa drivers have behaved better when not using mmap access at the penalty of slightly higher CPU usage. arts aRts Sound Daemon live output driver. Options: multi:value value is set to "yes" or "no" to allow opening the aRts playback device for multiply concurrent playback. Although the driver works properly in multi mode, it is known to occasionally crash the aRts server itself. Default behavior is "no". au Sun audio file output. Writes the audio samples in AU format. The AU format supports writing to unseekable files like standard out. In such circumstances, the AU header will specify the sample format, but not the length of the recording. esd Enlightened Sound Daemon live output. Options: host:value value specifies the hostname where esd is running. This can include a port number after a colon, as in "whizbang.com:555". (Default = localhost) irix IRIX live output audio driver. macosx MacOS X 'AUHAL' live output driver. This driver supports MacOS X 10.5 and later (10.4 and earlier uses an earlier, incompatable interface). Options: buffer_time:value Set the hardware buffer size to the equivalent of value milliseconds. nas Network Audio Server live output driver. Options: buf_size:value Set size of audio buffer on server in bytes. host:value Set location of NAS server; See nas(1) for format. null Null driver. All audio data is discarded. (Note: Audio data is not written to /dev/null !) You could use this driver to test raw decoding speed without output overhead. oss Open Sound System driver for Linux and FreeBSD, versions 2, 3 and 4. Options: dsp:value DSP device for soundcard. Defaults to /dev/dsp. pulse Pulseaudio live audio sound driver. Options: server:value Specifies location of remote or alternate Pulseaudio server. sink:value Specifies a non-default Pulseaudio sink for audio stream. raw Raw file output. Writes raw audio samples to a file. Options: byteorder:value Chooses big endian ("big"), little endian ("little"), or native ("native") byte order. Default is native order. roar Roar Audio Daemon live output driver. Options: host:value Specifies location of remote Roar server to use. sndio OpenBSD SNDIO live output driver. Options: dev:value Specifies audio device to use for playback. sun Sun Audio live output driver for NetBSD, OpenBSD, and Solaris. Options: dev:value Audio device for soundcard. Defaults to /dev/audio. wav WAV file output. Writes the sound data to disk in uncompressed form. If multiple files are played, all of them will be concatenated into the same WAV file. WAV files cannot be written to unseekable files, such as standard out. Use the AU format instead. wmm Windows MultiMedia live output driver for Win98 and later. Options: dev:value Selects audio device to use for playback by device name. id:value Selects audio device to use for playback by device id (card number).
The ogg123 command line is fairly flexible, perhaps confusingly so. Here are some sample command lines and an explanation of what they do. Play on the default soundcard: ogg123 test.ogg Play all of the files in the directory ~/music and its subdirectories. ogg123 ~/music Play a file using the OSS driver: ogg123 -d oss test.ogg Pass the "dsp" option to the OSS driver: ogg123 -d oss -o dsp:/dev/mydsp Use the ESD driver ogg123 -d esd test.ogg Use the WAV driver with the output file, "test.wav": ogg123 -d wav -f test.wav test.ogg Listen to a file while you write it to a WAV file: ogg123 -d oss -d wav -f test.wav test.ogg Note that options apply to the device declared to the left: ogg123 -d oss -o dsp:/dev/mydsp -d raw -f test2.raw -o byteorder:big test.ogg Stress test your harddrive: ogg123 -d oss -d wav -f 1.wav -d wav -f 2.wav -d wav -f 3.wav -d wav -f 4.wav -d wav -f 5.wav test.ogg Create an echo effect with esd and a slow computer: ogg123 -d esd -d esd test.ogg
You can abort ogg123 at any time by pressing Ctrl-C. If you are playing multiple files, this will stop the current file and begin playing the next one. If you want to abort playing immediately instead of skipping to the next file, press Ctrl-C within the first second of the playback of a new file. Note that the result of pressing Ctrl-C might not be audible immediately, due to audio data buffering in the audio device. This delay is system dependent, but it is usually not more than one or two seconds.
/etc/libao.conf Can be used to set the default output device for all libao programs. ~/.libao Per-user config file to override the system wide output device settings.
Piped WAV files may cause strange behavior in other programs. This is because WAV files store the data length in the header. However, the output driver does not know the length when it writes the header, and there is no value that means "length unknown". Use the raw or au output driver if you need to use ogg123 in a pipe.
Program Authors: Kenneth Arnold <firstname.lastname@example.org> Stan Seibert <email@example.com> Manpage Author: Stan Seibert <firstname.lastname@example.org>
libao.conf(5), oggenc(1), vorbiscomment(1), ogginfo(1)
Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.
Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.
Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.
Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.
The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.
Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.
Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.
Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.