.\" Hey, EMACS: -*- nroff -*- .TH FFMPEG2THEORA 1 "May 14, 2010" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: .\" .nh disable hyphenation .\" .hy enable hyphenation .\" .ad l left justify .\" .ad b justify to both left and right margins .\" .nf disable filling .\" .fi enable filling .\" .br insert line break .\" .sp insert n+1 empty lines .\" for manpage-specific macros, see man(7) .SH NAME ffmpeg2theora \- command-line converter to create Ogg Theora and Ogg Vorbis files. .SH SYNOPSIS .B ffmpeg2theora .RI [ options ] " inputfile" .SH DESCRIPTION This manual page documents briefly the \fBffmpeg2theora\fP command. .PP \fBffmpeg2theora\fP is a program that converts any media file that ffmpeg can decode to Ogg Theora for video and Ogg Vorbis for audio. .SH OPTIONS To read from standard input, specify `\-' as the input filename. These programs follow the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below. .SS General output options: .TP .B \-o, \-\-output Specify the output filename. If no output filename is specified, output will be written to \fIinputfile\fP.ogv. To output to standard output, specify /dev/stdout as the output file. .TP .B \-\-no-skeleton Disables Ogg Skeleton metadata output. .TP .B \-\-seek-index Enables keyframe index in skeleton track. .TP .B \-s, \-\-starttime Start encoding at this time (in seconds). .TP .B \-e, \-\-endtime End encoding at this time (in seconds). .TP .B \-p, \-\-preset Encode file with v2v preset. Right now, there is preview, pro and videobin. Run \*(lqffmpeg2theora \-p info\*(rq for more information. .SS Video output options: .TP .B \-v, \-\-videoquality [0 to 10] Set encoding quality for video (default: 6). use higher values for better quality .TP .B \-V, \-\-videobitrate Set encoding bitrate for video (in kb/s). .TP .B \-\-soft\-target Use a large reservoir and treat the rate as a soft target; rate control is less strict but resulting quality is usually higher/smoother overall. Soft target also allows an optional \-v setting to specify a minimum allowed quality. .TP .B \-\-two-pass Compress input using two-pass rate control. This option requires that the input to the to the encoder is seekable and performs both passes automatically. .TP .B \-\-first-pass Perform first-pass of a two-pass rate controlled encoding, saving pass data to for a later second pass .TP .B \-\-second-pass Perform second-pass of a two-pass rate controlled encoding, reading first-pass data from . The first pass data must come from a first encoding pass using identical input video to work properly. .TP .B \-\-optimize Optimize output Theora video, using a full search for motion vectors instead of a hierarchical one. This can reduce video bitrate about 5%, but it is slower and therefore is disabled by default. .TP .B \-\-speedlevel encoding is faster with higher values the cost is quality and bandwidth (default 1) available values depend on the version of libtheora check ffmpeg2theora --help for supported values. .TP .B \-x, \-\-width Scale to given width (in pixels). .TP .B \-y, \-\-height Scale to given height (in pixels). .TP .B \-\-aspect Define frame aspect ratio (e.g. 4:3, 16:9). .TP .B \-\-pixel\-aspect Define pixel aspect ratio (e.g. 1:1, 4:3). .TP .B \-F, \-\-framerate output framerate e.g 25:2 or 16 .TP .B \-\-croptop, \-\-cropbottom, \-\-cropleft, \-\-cropright Crop input by given pixels before resizing. .TP .B \-K, \-\-keyint [8 to 2147483647] Set keyframe interval (default: 64). .TP .B \-d, \-\-buf-delay Buffer delay (in frames). Longer delays allow smoother rate adaptation and provide better overall quality, but require more client side buffering and add latency. The default value is the keyframe interval for one-pass encoding (or somewhat larger if \-\-soft\-target is used) and infinite for two\-pass encoding. (only works in bitrate mode) .TP .B \-\-no-upscaling only scale video or resample audio if input is bigger than provided parameter .SS Video transfer options: .TP .B \-\-pp Video Postprocessing, denoise, deblock, deinterlacer use \-\-pp help for a list of available filters. .TP .B \-C, \-\-contrast [0.1 to 10.0] contrast correction (default: 1.0). Note: lower values make the video darker. .TP .B \-B, \-\-brightness [-1.0 to 1.0] brightness correction (default: 0.0). Note: lower values make the video darker. .TP .B \-G, \-\-gamma [0.1 to 10.0] gamma correction (default: 1.0). Note: lower values make the video darker. .TP .B \-P, \-\-saturation [0.1 to 10.0] saturation correction (default: 1.0). Note: lower values make the video grey. .SS Audio output options: .TP .B \-a, \-\-audioquality [-2 to 10] Set encoding quality for audio (default: 1). use higher values for better quality .TP .B \-A, \-\-audiobitrate [32 to 500] Set encoding bitrate for audio (in kb/s). .TP .B \-c, \-\-channels Set number of output channels. .TP .B \-H, \-\-samplerate Set output samplerate (in Hz). .SS Input options: .TP .B \-\-noaudio Disable audio from input. .TP .B \-\-novideo Disable video from input. .TP .B \-\-deinterlace Force deinterlace. Otherwise only material marked as interlaced will be deinterlaced. .TP .B \-\-no-deinterlace Force deinterlace off. .TP .B \-\-vhook you can use ffmpeg's vhook system, example: ffmpeg2theora \-\-vhook '/path/watermark.so \-f wm.gif' input.dv .TP .B \-f, \-\-format Specify input format. .TP .B \-\-inputfps Override input fps. .TP .B \-\-audiostream id By default the first audio stream is selected, use this to select another audio stream. .TP .B \-\-videostream id By default the first video stream is selected, use this to select another audio stream. .TP .B \-\-sync Use A/V sync from input container. Since this does not work with all input format you have to manualy enable it if you have issues with A/V sync. .SS Subtitles options: .TP .B \-\-subtitles Encode subtitles from the given file to a multiplexed Kate stream. The input file should be in SubRip (.srt) format, encoded in UTF-8, unless the --subtitles-encoding option is also given. .TP .B \-\-subtitles-encoding encoding Assumes the corresponding subtitles file is encoded in the given encoding. If ffmpeg2theora was built with iconv support, all encodings supported by iconv may be used. Otherwise, UTF-8 and ISO-8859-1 (aka latin1) are supported. The default is UTF-8. .TP .B \-\-subtitles-language language Sets the language of the corresponding subtitles stream. This will be set in the corresponding Kate stream so a video player may make this available to the user for language selection. Language is an ISO 639-1 or RFC 3066 ASCII string and is limited to 15 characters. .TP .B \-\-subtitles-category category Sets the category of the corresponding subtitles stream. This will be set in the corresponding Kate stream so a video player may make this available to the user for selection. The default category is "subtitles". Suggested other categories may include "transcript", "commentary", "lyrics", etc. Category is an ASCII string and is limited to 15 characters .TP .B \-\-subtitles-ignore-non-utf8 When reading an UTF-8 subtitles text file, any invalid UTF-8 sequence will be ignored. This may be useful if there are stray sequences in an otherwise UTF-8 file. Note that, since those invalid sequences will be removed from the output, this option is not a substitute to converting a non UTF-8 file to UTF-8. .TP .B \-\-nosubtitles Disables subtitles from input. Note that subtitles explicitely loaded from external files will still be used. .TP .B \-\-subtitle-types Selects which subtitle types to include from the input file. Allowed types are: none, all, text, spu (spu being the image based subtitles found on DVD). By default, only text based subtitles will be included. Note that subtitles explicitely loaded from external files will still be used. .SS Metadata options: .TP .B \-\-artist Name of artist (director). .TP .B \-\-title Title. .TP .B \-\-date Date. .TP .B \-\-location Location. .TP .B \-\-organization Name of organization (studio). .TP .B \-\-copyright Copyright. .TP .B \-\-license License. .TP .B \-\-contact Contact link. .TP .B \-\-nometadata disables metadata from input .TP .B \-\-no\-oshash do not include oshash of source file(SOURCE_OSHASH) .SS Keyframe indexing options: .TP .B \-\-index-interval set minimum distance between indexed keyframes to ms (default: 2000) .TP .B \-\-theora\-index\-reserve reserve bytes for theora keyframe index .TP .B \-\-vorbis\-index\-reserve reserve bytes for vorbis keyframe index .TP .B \-\-kate\-index\-reserve reserve bytes for kate keyframe index .SS Other options: .TP .B \-\-nice n Set niceness to n. .TP .B \-h, \-\-help Output a help message. .TP .B \-\-info Output json info about input file, use -o to save json to file. .TP .B \-\-frontend print status information in json, one json dict per line .SH EXAMPLES Encode Videos: ffmpeg2theora videoclip.avi (will write output to videoclip.ogv) cat something.dv | ffmpeg2theora -f dv -o output.ogv \- Encode a series of images: ffmpeg2theora frame%06d.png -o output.ogv Live streaming from V4L Device: ffmpeg2theora \-\-no\-skeleton /dev/video0 \-f video4linux \\ \-\-inputfps 15 \-x 160 \-y 128 \\ \-o \- | oggfwd icast2server 8000 password /theora.ogv (you might have to use video4linux2 depending on your hardware) Live encoding from a DV camcorder (needs a fast machine): dvgrab - | ffmpeg2theora -f dv -x 352 -y 288 -o output.ogv -\n" Live encoding and streaming to icecast server: dvgrab \-\-format raw \- \\ | ffmpeg2theora \-\-no\-skeleton \-f dv \-x 160 \-y 128 \-o /dev/stdout \- \\ | oggfwd icast2server 8000 password /theora.ogv .SH AUTHOR ffmpeg2theora was written by jan gerber . .PP This manual page was written by Hubert Chan , for the Debian project (but may be used by others).