Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
opusenc(1)			  opus-tools			    opusenc(1)

NAME
       opusenc - encode	audio into the Opus format

SYNOPSIS
       opusenc [ -h ] [	-V ] [ --help-picture ]	[ --quiet ] [ --bitrate	kbit/s
       ] [ --vbr ] [ --cvbr ] [	--hard-cbr ] [ --music ] [ --speech ] [	--comp
       complexity ] [ --framesize 2.5, 5, 10, 20, 40, 60 ] [ --expect-loss pct
       ]  [  --downmix-mono ] [	--downmix-stereo ] [ --no-phase-inv ] [	--max-
       delay ms	] [ --title 'track title' ] [ --artist author ]	[ --album 'al-
       bum title' ] [ --tracknumber 'track number'  ]  [  --genre  genre  ]  [
       --date YYYY-MM-DD ] [ --comment tag=value ] [ --picture filename|speci-
       fication	 ] [ --padding n ] [ --discard-comments	] [ --discard-pictures
       ] [ --raw ] [ --raw-bits	bits/sample ] [	--raw-rate Hz ]	[ --raw-chan N
       ] [ --raw-endianness flag ] [ --ignorelength ] [	--serial serial	number
       ] [ --save-range	file ] [  --set-ctl-int	 ctl=value  ]  input.wav  out-
       put.opus

DESCRIPTION
       opusenc reads audio data	in Wave, AIFF, FLAC, Ogg/FLAC, or raw PCM for-
       mat  and	 encodes  it into an Ogg Opus stream. If the input file	is "-"
       audio data is read from stdin.  Likewise, if the	output file is "-" the
       Ogg Opus	stream is written to stdout.

       Unless quieted opusenc displays fancy  statistics  about	 the  encoding
       progress.

OPTIONS
   General options
       -h, --help
	      Show command help

       -V, --version
	      Show the version number

       --help-picture
	      Show help	on attaching album art

       --quiet
	      Enable quiet mode. No messages are displayed.

   Encoding options
       --bitrate N.nnn
	      Set target bitrate in kbit/s (6-256 per channel)

	      In  VBR mode this	specifies the average rate for a large and di-
	      verse collection of audio. In CVBR and Hard-CBR mode  it	speci-
	      fies the specific	output bitrate.

	      The  default  for	input with a sample rate of 44.1 kHz or	higher
	      is 64 kbit/s per mono stream and 96 kbit/s per coupled pair.

       --vbr  Use variable bitrate encoding (default)

	      In VBR mode the bitrate may go up	and down freely	 depending  on
	      the content to achieve more consistent quality.

       --cvbr Use constrained variable bitrate encoding.

	      Outputs  to a specific bitrate. This mode	is analogous to	CBR in
	      AAC/MP3 encoders and managed mode	in Vorbis coders. This	deliv-
	      ers  less	 consistent  quality  than VBR mode but	consistent bi-
	      trate.

       --hard-cbr
	      Use hard constant	bitrate	encoding.

	      With hard-cbr every frame	will be	exactly	the same size, similar
	      to how speech codecs work. This delivers lower  overall  quality
	      but is useful where bitrate changes might	leak data in encrypted
	      channels or on synchronous transports.

       --music
	      Override	automatic  detection and tune low bitrate encoding for
	      music.  By default, music	 is  detected  automatically  and  the
	      classification may vary over time.

	      Tuning  impacts  lower  bitrates	that involve tradeoffs between
	      speech clarity and musical accuracy, and has no  impact  at  bi-
	      trates typically used for	high quality music encoding.

       --speech
	      Override	automatic  detection and tune low bitrate encoding for
	      speech.  By default, speech is detected  automatically  and  the
	      classification may vary over time.

	      Tuning  impacts  lower  bitrates	that involve tradeoffs between
	      speech clarity and musical accuracy, and has no  impact  at  bi-
	      trates typically used for	high quality music encoding.

       --comp N
	      Set  encoding computational complexity (0-10, default: 10). Zero
	      gives the	fastest	encodes	but lower quality, while 10 gives  the
	      highest quality but slower encoding.

       --framesize N
	      Set  maximum frame size in milliseconds (2.5, 5, 10, 20, 40, 60,
	      default: 20)
	      Smaller framesizes achieve lower latency but less	quality	 at  a
	      given bitrate.
	      Sizes  greater  than 20ms	are only interesting at	fairly low bi-
	      trates.

       --expect-loss N
	      Set expected packet loss in percent (default: 0)

       --downmix-mono
	      Downmix to mono

       --downmix-stereo
	      Downmix to stereo	(if >2 channels	input)

       --no-phase-inv
	      Disable use of phase inversion for intensity stereo. This	trades
	      some stereo quality for a	higher quality mono  downmix,  and  is
	      useful when encoding stereo audio	that is	likely to be downmixed
	      to mono after decoding.

       --max-delay N
	      Set  maximum  container  delay in	milliseconds (0-1000, default:
	      1000)

   Metadata options
       --title title
	      Set the track title comment field	to title

       --artist	artist
	      Set the artist comment field to artist.  This may	be used	multi-
	      ple times	to list	contributing artists individually.  Note  that
	      some  playback software does not display multiple	artists	grace-
	      fully.

       --album album
	      Set the album or collection title	field to album

       --tracknumber N
	      Set the track number comment field to N

       --date YYYY-MM-DD
	      Set the date comment field to YYYY-MM-DD.	 This may be shortened
	      to YYYY-MM or YYYY.

       --genre genre
	      Set the genre comment field to genre.  This option may be	speci-
	      fied multiple times to tag a  track  with	 multiple  overlapping
	      genres.

       --comment tag=value
	      Add an extra comment.  This may be used multiple times.  The ar-
	      gument  should  be in the	form "tag=value".  See the vorbis-com-
	      ment    specification    for    well    known	tag	names:
	      https://www.xiph.org/vorbis/doc/v-comment.html

       --picture filename|specification
	      Attach album art for the track.

	      Either  a	filename for the artwork or a more complete specifica-
	      tion form	can  be	 used.	 The  picture  is  added  to  a	 META-
	      DATA_BLOCK_PICTURE  comment  field  similar  to  what is used in
	      FLAC.  The specification is a string whose parts	are  separated
	      by  | (pipe) characters.	Some parts may be left empty to	invoke
	      default values.  Passing a plain filename	is just	shorthand  for
	      the "||||filename" specification.

	      The  format  of  specification  is [type]|[media-type]|[descrip-
	      tion]|[widthxheightxdepth[/colors]]|filename

	      type is an optional number describing the	nature of the picture.
	      Defined values are from one of:

		0: Other
		1: 32x32 pixel 'file icon' (PNG	only)
		2: Other file icon
		3: Cover (front)
		4: Cover (back)
		5: Leaflet page
		6: Media (e.g.,	label side of a	CD)
		7: Lead	artist/lead performer/soloist
		8: Artist/performer
		9: Conductor
	       10: Band/Orchestra
	       11: Composer
	       12: Lyricist/text writer
	       13: Recording location
	       14: During recording
	       15: During performance
	       16: Movie/video screen capture
	       17: A bright colored fish
	       18: Illustration
	       19: Band/artist logotype
	       20: Publisher/studio logotype

	      The default is 3 (front cover).  More than one --picture	option
	      can be specified to attach multiple pictures.  There may only be
	      one picture each of type 1 and 2 in a file.

	      media-type is optional and is now	ignored.

	      description is optional. The default is an empty string.

	      The  next	 part  specifies the resolution	and color information,
	      but is now ignored.

	      filename is the path to the picture file to be imported.

       --padding n
	      Reserve n	extra bytes for	metadata tags. This can	make later tag
	      editing more efficient. Defaults to 512.

       --discard-comments
	      Don't propagate metadata tags from the input file.

       --discard-pictures
	      Don't propagate pictures or art from the input file.

   Input options
       --raw  Interpret	input as raw PCM data without headers

       --raw-bits N
	      Set bits/sample for raw input (default: 16)

       --raw-rate N
	      Set sampling rate	for raw	input (default:	48000)

       --raw-chan N
	      Set number of channels for raw input (default: 2)

       --raw-endianness	[0/1]
	      Set the endianness for raw input:	1 for big endian, 0 for	little
	      (default:	0)

       --ignorelength
	      Ignore the data length in	Wave  headers.	Opusenc	 automatically
	      ignores  the  length  when  its  implausible (very small or very
	      large) but some STDIN usage may still need this option to	 avoid
	      truncation.

   Diagnostic options
       --serial	n
	      Force  use  of  a	specific stream	serial number, rather than one
	      that is randomly generated.  This	is used	to  make  the  encoder
	      deterministic for	testing	and is not generally recommended.

       --save-range file
	      Save check values	for every frame	to a file

       --set-ctl-int x=y
	      Pass  the	 encoder  control  x with value	y (advanced).  Preface
	      with s: to direct	the ctl	to multistream s
	      This may be used multiple	times

EXAMPLES
       Simplest	usage. Take input as input.wav	and  produce  output  as  out-
       put.opus:
	      opusenc input.wav	output.opus

       Produce a very high quality encode with a target	rate of	160 kbit/s:
	      opusenc --bitrate	160 input.wav output.opus

       Record and send a live stream to	an Icecast HTTP	streaming server using
       oggfwd:
	      arecord  -c 2 -r 48000 -twav - | opusenc --bitrate 96 -  - | og-
	      gfwd icecast.somewhere.org 8000 password /stream.opus

NOTES
       While it	is possible to use opusenc for	low  latency  streaming	 (e.g.
       with  --max-delay  set to 0 and netcat instead of Icecast) it's not re-
       ally designed for this, and the Ogg container and TCP transport	aren't
       the  best  tools	 for that application. Shell pipelines themselves will
       often have high buffering. The ability to set framesizes	as low as  2.5
       ms  in  opusenc mostly exists to	try out	the quality of the format with
       low latency settings, but not really for	actual low latency usage.
       Interactive usage should	use UDP/RTP directly.

AUTHORS
       Gregory Maxwell <greg@xiph.org>

SEE ALSO
       opusdec(1), opusinfo(1),	oggfwd(1)

Xiph.Org Foundation		  2012-08-31			    opusenc(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=opusenc&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help