You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1070 lines
25KB

  1. @chapter Codec Options
  2. @c man begin CODEC OPTIONS
  3. libavcodec provides some generic global options, which can be set on
  4. all the encoders and decoders. In addition each codec may support
  5. so-called private options, which are specific for a given codec.
  6. Sometimes, a global option may only affect a specific kind of codec,
  7. and may be unsensical or ignored by another, so you need to be aware
  8. of the meaning of the specified options. Also some options are
  9. meant only for decoding or encoding.
  10. Options may be set by specifying -@var{option} @var{value} in the
  11. FFmpeg tools, or by setting the value explicitly in the
  12. @code{AVCodecContext} options or using the @file{libavutil/opt.h} API
  13. for programmatic use.
  14. The list of supported options follow:
  15. @table @option
  16. @item b @var{integer} (@emph{encoding,audio,video})
  17. Set bitrate in bits/s. Default value is 200K.
  18. @item ab @var{integer} (@emph{encoding,audio})
  19. Set audio bitrate (in bits/s). Default value is 128K.
  20. @item bt @var{integer} (@emph{encoding,video})
  21. Set video bitrate tolerance (in bits/s). In 1-pass mode, bitrate
  22. tolerance specifies how far ratecontrol is willing to deviate from the
  23. target average bitrate value. This is not related to min/max
  24. bitrate. Lowering tolerance too much has an adverse effect on quality.
  25. @item flags @var{flags} (@emph{decoding/encoding,audio,video,subtitles})
  26. Set generic flags.
  27. Possible values:
  28. @table @samp
  29. @item mv4
  30. Use four motion vector by macroblock (mpeg4).
  31. @item qpel
  32. Use 1/4 pel motion compensation.
  33. @item loop
  34. Use loop filter.
  35. @item qscale
  36. Use fixed qscale.
  37. @item gmc
  38. Use gmc.
  39. @item mv0
  40. Always try a mb with mv=<0,0>.
  41. @item input_preserved
  42. @item pass1
  43. Use internal 2pass ratecontrol in first pass mode.
  44. @item pass2
  45. Use internal 2pass ratecontrol in second pass mode.
  46. @item gray
  47. Only decode/encode grayscale.
  48. @item emu_edge
  49. Do not draw edges.
  50. @item psnr
  51. Set error[?] variables during encoding.
  52. @item truncated
  53. @item naq
  54. Normalize adaptive quantization.
  55. @item ildct
  56. Use interlaced DCT.
  57. @item low_delay
  58. Force low delay.
  59. @item global_header
  60. Place global headers in extradata instead of every keyframe.
  61. @item bitexact
  62. Use only bitexact stuff (except (I)DCT).
  63. @item aic
  64. Apply H263 advanced intra coding / mpeg4 ac prediction.
  65. @item cbp
  66. Deprecated, use mpegvideo private options instead.
  67. @item qprd
  68. Deprecated, use mpegvideo private options instead.
  69. @item ilme
  70. Apply interlaced motion estimation.
  71. @item cgop
  72. Use closed gop.
  73. @end table
  74. @item sub_id @var{integer}
  75. Deprecated, currently unused.
  76. @item me_method @var{integer} (@emph{encoding,video})
  77. Set motion estimation method.
  78. Possible values:
  79. @table @samp
  80. @item zero
  81. zero motion estimation (fastest)
  82. @item full
  83. full motion estimation (slowest)
  84. @item epzs
  85. EPZS motion estimation (default)
  86. @item esa
  87. esa motion estimation (alias for full)
  88. @item tesa
  89. tesa motion estimation
  90. @item dia
  91. dia motion estimation (alias for epzs)
  92. @item log
  93. log motion estimation
  94. @item phods
  95. phods motion estimation
  96. @item x1
  97. X1 motion estimation
  98. @item hex
  99. hex motion estimation
  100. @item umh
  101. umh motion estimation
  102. @item iter
  103. iter motion estimation
  104. @end table
  105. @item extradata_size @var{integer}
  106. Set extradata size.
  107. @item time_base @var{rational number}
  108. Set codec time base.
  109. It is the fundamental unit of time (in seconds) in terms of which
  110. frame timestamps are represented. For fixed-fps content, timebase
  111. should be @code{1 / frame_rate} and timestamp increments should be
  112. identically 1.
  113. @item g @var{integer} (@emph{encoding,video})
  114. Set the group of picture size. Default value is 12.
  115. @item ar @var{integer} (@emph{decoding/encoding,audio})
  116. Set audio sampling rate (in Hz).
  117. @item ac @var{integer} (@emph{decoding/encoding,audio})
  118. Set number of audio channels.
  119. @item cutoff @var{integer} (@emph{encoding,audio})
  120. Set cutoff bandwidth.
  121. @item frame_size @var{integer} (@emph{encoding,audio})
  122. Set audio frame size.
  123. Each submitted frame except the last must contain exactly frame_size
  124. samples per channel. May be 0 when the codec has
  125. CODEC_CAP_VARIABLE_FRAME_SIZE set, in that case the frame size is not
  126. restricted. It is set by some decoders to indicate constant frame
  127. size.
  128. @item frame_number @var{integer}
  129. Set the frame number.
  130. @item delay @var{integer}
  131. @item qcomp @var{float} (@emph{encoding,video})
  132. Set video quantizer scale compression (VBR). It is used as a constant
  133. in the ratecontrol equation. Recommended range for default rc_eq:
  134. 0.0-1.0.
  135. @item qblur @var{float} (@emph{encoding,video})
  136. Set video quantizer scale blur (VBR).
  137. @item qmin @var{integer} (@emph{encoding,video})
  138. Set min video quantizer scale (VBR). Must be included between -1 and
  139. 69, default value is 2.
  140. @item qmax @var{integer} (@emph{encoding,video})
  141. Set max video quantizer scale (VBR). Must be included between -1 and
  142. 1024, default value is 31.
  143. @item qdiff @var{integer} (@emph{encoding,video})
  144. Set max difference between the quantizer scale (VBR).
  145. @item bf @var{integer} (@emph{encoding,video})
  146. Set max number of B frames.
  147. @item b_qfactor @var{float} (@emph{encoding,video})
  148. Set qp factor between P and B frames.
  149. @item rc_strategy @var{integer} (@emph{encoding,video})
  150. Set ratecontrol method.
  151. @item b_strategy @var{integer} (@emph{encoding,video})
  152. Set strategy to choose between I/P/B-frames.
  153. @item ps @var{integer} (@emph{encoding,video})
  154. Set RTP payload size in bytes.
  155. @item mv_bits @var{integer}
  156. @item header_bits @var{integer}
  157. @item i_tex_bits @var{integer}
  158. @item p_tex_bits @var{integer}
  159. @item i_count @var{integer}
  160. @item p_count @var{integer}
  161. @item skip_count @var{integer}
  162. @item misc_bits @var{integer}
  163. @item frame_bits @var{integer}
  164. @item codec_tag @var{integer}
  165. @item bug @var{flags} (@emph{decoding,video})
  166. Workaround not auto detected encoder bugs.
  167. Possible values:
  168. @table @samp
  169. @item autodetect
  170. @item old_msmpeg4
  171. some old lavc generated msmpeg4v3 files (no autodetection)
  172. @item xvid_ilace
  173. Xvid interlacing bug (autodetected if fourcc==XVIX)
  174. @item ump4
  175. (autodetected if fourcc==UMP4)
  176. @item no_padding
  177. padding bug (autodetected)
  178. @item amv
  179. @item ac_vlc
  180. illegal vlc bug (autodetected per fourcc)
  181. @item qpel_chroma
  182. @item std_qpel
  183. old standard qpel (autodetected per fourcc/version)
  184. @item qpel_chroma2
  185. @item direct_blocksize
  186. direct-qpel-blocksize bug (autodetected per fourcc/version)
  187. @item edge
  188. edge padding bug (autodetected per fourcc/version)
  189. @item hpel_chroma
  190. @item dc_clip
  191. @item ms
  192. Workaround various bugs in microsoft broken decoders.
  193. @item trunc
  194. trancated frames
  195. @end table
  196. @item lelim @var{integer} (@emph{encoding,video})
  197. Set single coefficient elimination threshold for luminance (negative
  198. values also consider DC coefficient).
  199. @item celim @var{integer} (@emph{encoding,video})
  200. Set single coefficient elimination threshold for chrominance (negative
  201. values also consider dc coefficient)
  202. @item strict @var{integer} (@emph{decoding/encoding,audio,video})
  203. Specify how strictly to follow the standards.
  204. Possible values:
  205. @table @samp
  206. @item very
  207. strictly conform to a older more strict version of the spec or reference software
  208. @item strict
  209. strictly conform to all the things in the spec no matter what consequences
  210. @item normal
  211. @item unofficial
  212. allow unofficial extensions
  213. @item experimental
  214. allow non standardized experimental things
  215. @end table
  216. @item b_qoffset @var{float} (@emph{encoding,video})
  217. Set QP offset between P and B frames.
  218. @item err_detect @var{flags} (@emph{decoding,audio,video})
  219. Set error detection flags.
  220. Possible values:
  221. @table @samp
  222. @item crccheck
  223. verify embedded CRCs
  224. @item bitstream
  225. detect bitstream specification deviations
  226. @item buffer
  227. detect improper bitstream length
  228. @item explode
  229. abort decoding on minor error detection
  230. @item careful
  231. consider things that violate the spec and have not been seen in the wild as errors
  232. @item compliant
  233. consider all spec non compliancies as errors
  234. @item aggressive
  235. consider things that a sane encoder should not do as an error
  236. @end table
  237. @item has_b_frames @var{integer}
  238. @item block_align @var{integer}
  239. @item mpeg_quant @var{integer} (@emph{encoding,video})
  240. Use MPEG quantizers instead of H.263.
  241. @item qsquish @var{float} (@emph{encoding,video})
  242. How to keep quantizer between qmin and qmax (0 = clip, 1 = use
  243. differentiable function).
  244. @item rc_qmod_amp @var{float} (@emph{encoding,video})
  245. Set experimental quantizer modulation.
  246. @item rc_qmod_freq @var{integer} (@emph{encoding,video})
  247. Set experimental quantizer modulation.
  248. @item rc_override_count @var{integer}
  249. @item rc_eq @var{string} (@emph{encoding,video})
  250. Set rate control equation. When computing the expression, besides the
  251. standard functions defined in the section 'Expression Evaluation', the
  252. following functions are available: bits2qp(bits), qp2bits(qp). Also
  253. the following constants are available: iTex pTex tex mv fCode iCount
  254. mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex
  255. avgTex.
  256. @item maxrate @var{integer} (@emph{encoding,audio,video})
  257. Set max bitrate tolerance (in bits/s). Requires bufsize to be set.
  258. @item minrate @var{integer} (@emph{encoding,audio,video})
  259. Set min bitrate tolerance (in bits/s). Most useful in setting up a CBR
  260. encode. It is of little use elsewise.
  261. @item bufsize @var{integer} (@emph{encoding,audio,video})
  262. Set ratecontrol buffer size (in bits).
  263. @item rc_buf_aggressivity @var{float} (@emph{encoding,video})
  264. Currently useless.
  265. @item i_qfactor @var{float} (@emph{encoding,video})
  266. Set QP factor between P and I frames.
  267. @item i_qoffset @var{float} (@emph{encoding,video})
  268. Set QP offset between P and I frames.
  269. @item rc_init_cplx @var{float} (@emph{encoding,video})
  270. Set initial complexity for 1-pass encoding.
  271. @item dct @var{integer} (@emph{encoding,video})
  272. Set DCT algorithm.
  273. Possible values:
  274. @table @samp
  275. @item auto
  276. autoselect a good one (default)
  277. @item fastint
  278. fast integer
  279. @item int
  280. accurate integer
  281. @item mmx
  282. @item altivec
  283. @item faan
  284. floating point AAN DCT
  285. @end table
  286. @item lumi_mask @var{float} (@emph{encoding,video})
  287. Compress bright areas stronger than medium ones.
  288. @item tcplx_mask @var{float} (@emph{encoding,video})
  289. Set temporal complexity masking.
  290. @item scplx_mask @var{float} (@emph{encoding,video})
  291. Set spatial complexity masking.
  292. @item p_mask @var{float} (@emph{encoding,video})
  293. Set inter masking.
  294. @item dark_mask @var{float} (@emph{encoding,video})
  295. Compress dark areas stronger than medium ones.
  296. @item idct @var{integer} (@emph{decoding/encoding,video})
  297. Select IDCT implementation.
  298. Possible values:
  299. @table @samp
  300. @item auto
  301. @item int
  302. @item simple
  303. @item simplemmx
  304. @item libmpeg2mmx
  305. @item mmi
  306. @item arm
  307. @item altivec
  308. @item sh4
  309. @item simplearm
  310. @item simplearmv5te
  311. @item simplearmv6
  312. @item simpleneon
  313. @item simplealpha
  314. @item h264
  315. @item vp3
  316. @item ipp
  317. @item xvidmmx
  318. @item faani
  319. floating point AAN IDCT
  320. @end table
  321. @item slice_count @var{integer}
  322. @item ec @var{flags} (@emph{decoding,video})
  323. Set error concealment strategy.
  324. Possible values:
  325. @table @samp
  326. @item guess_mvs
  327. iterative motion vector (MV) search (slow)
  328. @item deblock
  329. use strong deblock filter for damaged MBs
  330. @end table
  331. @item bits_per_coded_sample @var{integer}
  332. @item pred @var{integer} (@emph{encoding,video})
  333. Set prediction method.
  334. Possible values:
  335. @table @samp
  336. @item left
  337. @item plane
  338. @item median
  339. @end table
  340. @item aspect @var{rational number} (@emph{encoding,video})
  341. Set sample aspect ratio.
  342. @item debug @var{flags} (@emph{decoding/encoding,audio,video,subtitles})
  343. Print specific debug info.
  344. Possible values:
  345. @table @samp
  346. @item pict
  347. picture info
  348. @item rc
  349. rate control
  350. @item bitstream
  351. @item mb_type
  352. macroblock (MB) type
  353. @item qp
  354. per-block quantization parameter (QP)
  355. @item mv
  356. motion vector
  357. @item dct_coeff
  358. @item skip
  359. @item startcode
  360. @item pts
  361. @item er
  362. error recognition
  363. @item mmco
  364. memory management control operations (H.264)
  365. @item bugs
  366. @item vis_qp
  367. visualize quantization parameter (QP), lower QP are tinted greener
  368. @item vis_mb_type
  369. visualize block types
  370. @item buffers
  371. picture buffer allocations
  372. @item thread_ops
  373. threading operations
  374. @end table
  375. @item vismv @var{integer} (@emph{decoding,video})
  376. Visualize motion vectors (MVs).
  377. Possible values:
  378. @table @samp
  379. @item pf
  380. forward predicted MVs of P-frames
  381. @item bf
  382. forward predicted MVs of B-frames
  383. @item bb
  384. backward predicted MVs of B-frames
  385. @end table
  386. @item cmp @var{integer} (@emph{encoding,video})
  387. Set full pel me compare function.
  388. Possible values:
  389. @table @samp
  390. @item sad
  391. sum of absolute differences, fast (default)
  392. @item sse
  393. sum of squared errors
  394. @item satd
  395. sum of absolute Hadamard transformed differences
  396. @item dct
  397. sum of absolute DCT transformed differences
  398. @item psnr
  399. sum of squared quantization errors (avoid, low quality)
  400. @item bit
  401. number of bits needed for the block
  402. @item rd
  403. rate distortion optimal, slow
  404. @item zero
  405. 0
  406. @item vsad
  407. sum of absolute vertical differences
  408. @item vsse
  409. sum of squared vertical differences
  410. @item nsse
  411. noise preserving sum of squared differences
  412. @item w53
  413. 5/3 wavelet, only used in snow
  414. @item w97
  415. 9/7 wavelet, only used in snow
  416. @item dctmax
  417. @item chroma
  418. @end table
  419. @item subcmp @var{integer} (@emph{encoding,video})
  420. Set sub pel me compare function.
  421. Possible values:
  422. @table @samp
  423. @item sad
  424. sum of absolute differences, fast (default)
  425. @item sse
  426. sum of squared errors
  427. @item satd
  428. sum of absolute Hadamard transformed differences
  429. @item dct
  430. sum of absolute DCT transformed differences
  431. @item psnr
  432. sum of squared quantization errors (avoid, low quality)
  433. @item bit
  434. number of bits needed for the block
  435. @item rd
  436. rate distortion optimal, slow
  437. @item zero
  438. 0
  439. @item vsad
  440. sum of absolute vertical differences
  441. @item vsse
  442. sum of squared vertical differences
  443. @item nsse
  444. noise preserving sum of squared differences
  445. @item w53
  446. 5/3 wavelet, only used in snow
  447. @item w97
  448. 9/7 wavelet, only used in snow
  449. @item dctmax
  450. @item chroma
  451. @end table
  452. @item mbcmp @var{integer} (@emph{encoding,video})
  453. Set macroblock compare function.
  454. Possible values:
  455. @table @samp
  456. @item sad
  457. sum of absolute differences, fast (default)
  458. @item sse
  459. sum of squared errors
  460. @item satd
  461. sum of absolute Hadamard transformed differences
  462. @item dct
  463. sum of absolute DCT transformed differences
  464. @item psnr
  465. sum of squared quantization errors (avoid, low quality)
  466. @item bit
  467. number of bits needed for the block
  468. @item rd
  469. rate distortion optimal, slow
  470. @item zero
  471. 0
  472. @item vsad
  473. sum of absolute vertical differences
  474. @item vsse
  475. sum of squared vertical differences
  476. @item nsse
  477. noise preserving sum of squared differences
  478. @item w53
  479. 5/3 wavelet, only used in snow
  480. @item w97
  481. 9/7 wavelet, only used in snow
  482. @item dctmax
  483. @item chroma
  484. @end table
  485. @item ildctcmp @var{integer} (@emph{encoding,video})
  486. Set interlaced dct compare function.
  487. Possible values:
  488. @table @samp
  489. @item sad
  490. sum of absolute differences, fast (default)
  491. @item sse
  492. sum of squared errors
  493. @item satd
  494. sum of absolute Hadamard transformed differences
  495. @item dct
  496. sum of absolute DCT transformed differences
  497. @item psnr
  498. sum of squared quantization errors (avoid, low quality)
  499. @item bit
  500. number of bits needed for the block
  501. @item rd
  502. rate distortion optimal, slow
  503. @item zero
  504. 0
  505. @item vsad
  506. sum of absolute vertical differences
  507. @item vsse
  508. sum of squared vertical differences
  509. @item nsse
  510. noise preserving sum of squared differences
  511. @item w53
  512. 5/3 wavelet, only used in snow
  513. @item w97
  514. 9/7 wavelet, only used in snow
  515. @item dctmax
  516. @item chroma
  517. @end table
  518. @item dia_size @var{integer} (@emph{encoding,video})
  519. Set diamond type & size for motion estimation.
  520. @item last_pred @var{integer} (@emph{encoding,video})
  521. Set amount of motion predictors from the previous frame.
  522. @item preme @var{integer} (@emph{encoding,video})
  523. Set pre motion estimation.
  524. @item precmp @var{integer} (@emph{encoding,video})
  525. Set pre motion estimation compare function.
  526. Possible values:
  527. @table @samp
  528. @item sad
  529. sum of absolute differences, fast (default)
  530. @item sse
  531. sum of squared errors
  532. @item satd
  533. sum of absolute Hadamard transformed differences
  534. @item dct
  535. sum of absolute DCT transformed differences
  536. @item psnr
  537. sum of squared quantization errors (avoid, low quality)
  538. @item bit
  539. number of bits needed for the block
  540. @item rd
  541. rate distortion optimal, slow
  542. @item zero
  543. 0
  544. @item vsad
  545. sum of absolute vertical differences
  546. @item vsse
  547. sum of squared vertical differences
  548. @item nsse
  549. noise preserving sum of squared differences
  550. @item w53
  551. 5/3 wavelet, only used in snow
  552. @item w97
  553. 9/7 wavelet, only used in snow
  554. @item dctmax
  555. @item chroma
  556. @end table
  557. @item pre_dia_size @var{integer} (@emph{encoding,video})
  558. Set diamond type & size for motion estimation pre-pass.
  559. @item subq @var{integer} (@emph{encoding,video})
  560. Set sub pel motion estimation quality.
  561. @item dtg_active_format @var{integer}
  562. @item me_range @var{integer} (@emph{encoding,video})
  563. Set limit motion vectors range (1023 for DivX player).
  564. @item ibias @var{integer} (@emph{encoding,video})
  565. Set intra quant bias.
  566. @item pbias @var{integer} (@emph{encoding,video})
  567. Set inter quant bias.
  568. @item color_table_id @var{integer}
  569. @item global_quality @var{integer} (@emph{encoding,audio,video})
  570. @item coder @var{integer} (@emph{encoding,video})
  571. Possible values:
  572. @table @samp
  573. @item vlc
  574. variable length coder / huffman coder
  575. @item ac
  576. arithmetic coder
  577. @item raw
  578. raw (no encoding)
  579. @item rle
  580. run-length coder
  581. @item deflate
  582. deflate-based coder
  583. @end table
  584. @item context @var{integer} (@emph{encoding,video})
  585. Set context model.
  586. @item slice_flags @var{integer}
  587. @item xvmc_acceleration @var{integer}
  588. @item mbd @var{integer} (@emph{encoding,video})
  589. Set macroblock decision algorithm (high quality mode).
  590. Possible values:
  591. @table @samp
  592. @item simple
  593. use mbcmp (default)
  594. @item bits
  595. use fewest bits
  596. @item rd
  597. use best rate distortion
  598. @end table
  599. @item stream_codec_tag @var{integer}
  600. @item sc_threshold @var{integer} (@emph{encoding,video})
  601. Set scene change threshold.
  602. @item lmin @var{integer} (@emph{encoding,video})
  603. Set min lagrange factor (VBR).
  604. @item lmax @var{integer} (@emph{encoding,video})
  605. Set max lagrange factor (VBR).
  606. @item nr @var{integer} (@emph{encoding,video})
  607. Set noise reduction.
  608. @item rc_init_occupancy @var{integer} (@emph{encoding,video})
  609. Set number of bits which should be loaded into the rc buffer before
  610. decoding starts.
  611. @item inter_threshold @var{integer} (@emph{encoding,video})
  612. @item flags2 @var{flags} (@emph{decoding/encoding,audio,video})
  613. Possible values:
  614. @table @samp
  615. @item fast
  616. allow non spec compliant speedup tricks
  617. @item sgop
  618. Deprecated, use mpegvideo private options instead
  619. @item noout
  620. skip bitstream encoding
  621. @item local_header
  622. place global headers at every keyframe instead of in extradata
  623. @item chunks
  624. Frame data might be split into multiple chunks
  625. @item showall
  626. Show all frames before the first keyframe
  627. @item skiprd
  628. Deprecated, use mpegvideo private options instead
  629. @end table
  630. @item error @var{integer} (@emph{encoding,video})
  631. @item qns @var{integer} (@emph{encoding,video})
  632. Deprecated, use mpegvideo private options instead.
  633. @item threads @var{integer} (@emph{decoding/encoding,video})
  634. Possible values:
  635. @table @samp
  636. @item auto
  637. detect a good number of threads
  638. @end table
  639. @item me_threshold @var{integer} (@emph{encoding,video})
  640. Set motion estimation threshold.
  641. @item mb_threshold @var{integer} (@emph{encoding,video})
  642. Set macroblock threshold.
  643. @item dc @var{integer} (@emph{encoding,video})
  644. Set intra_dc_precision.
  645. @item nssew @var{integer} (@emph{encoding,video})
  646. Set nsse weight.
  647. @item skip_top @var{integer} (@emph{decoding,video})
  648. Set number of macroblock rows at the top which are skipped.
  649. @item skip_bottom @var{integer} (@emph{decoding,video})
  650. Set number of macroblock rows at the bottom which are skipped.
  651. @item profile @var{integer} (@emph{encoding,audio,video})
  652. Possible values:
  653. @table @samp
  654. @item unknown
  655. @item aac_main
  656. @item aac_low
  657. @item aac_ssr
  658. @item aac_ltp
  659. @item aac_he
  660. @item aac_he_v2
  661. @item aac_ld
  662. @item aac_eld
  663. @item dts
  664. @item dts_es
  665. @item dts_96_24
  666. @item dts_hd_hra
  667. @item dts_hd_ma
  668. @end table
  669. @item level @var{integer} (@emph{encoding,audio,video})
  670. Possible values:
  671. @table @samp
  672. @item unknown
  673. @end table
  674. @item lowres @var{integer} (@emph{decoding,audio,video})
  675. Decode at 1= 1/2, 2=1/4, 3=1/8 resolutions.
  676. @item skip_threshold @var{integer} (@emph{encoding,video})
  677. Set frame skip threshold.
  678. @item skip_factor @var{integer} (@emph{encoding,video})
  679. Set frame skip factor.
  680. @item skip_exp @var{integer} (@emph{encoding,video})
  681. Set frame skip exponent.
  682. @item skipcmp @var{integer} (@emph{encoding,video})
  683. Set frame skip compare function.
  684. Possible values:
  685. @table @samp
  686. @item sad
  687. sum of absolute differences, fast (default)
  688. @item sse
  689. sum of squared errors
  690. @item satd
  691. sum of absolute Hadamard transformed differences
  692. @item dct
  693. sum of absolute DCT transformed differences
  694. @item psnr
  695. sum of squared quantization errors (avoid, low quality)
  696. @item bit
  697. number of bits needed for the block
  698. @item rd
  699. rate distortion optimal, slow
  700. @item zero
  701. 0
  702. @item vsad
  703. sum of absolute vertical differences
  704. @item vsse
  705. sum of squared vertical differences
  706. @item nsse
  707. noise preserving sum of squared differences
  708. @item w53
  709. 5/3 wavelet, only used in snow
  710. @item w97
  711. 9/7 wavelet, only used in snow
  712. @item dctmax
  713. @item chroma
  714. @end table
  715. @item border_mask @var{float} (@emph{encoding,video})
  716. Increase the quantizer for macroblocks close to borders.
  717. @item mblmin @var{integer} (@emph{encoding,video})
  718. Set min macroblock lagrange factor (VBR).
  719. @item mblmax @var{integer} (@emph{encoding,video})
  720. Set max macroblock lagrange factor (VBR).
  721. @item mepc @var{integer} (@emph{encoding,video})
  722. Set motion estimation bitrate penalty compensation (1.0 = 256).
  723. @item skip_loop_filter @var{integer} (@emph{decoding,video})
  724. @item skip_idct @var{integer} (@emph{decoding,video})
  725. @item skip_frame @var{integer} (@emph{decoding,video})
  726. Make decoder discard processing depending on the frame type selected
  727. by the option value.
  728. @option{skip_loop_filter} skips frame loop filtering, @option{skip_idct}
  729. skips frame IDCT/dequantization, @option{skip_frame} skips decoding.
  730. Possible values:
  731. @table @samp
  732. @item none
  733. Discard no frame.
  734. @item default
  735. Discard useless frames like 0-sized frames.
  736. @item noref
  737. Discard all non-reference frames.
  738. @item bidir
  739. Discard all bidirectional frames.
  740. @item nokey
  741. Discard all frames excepts keyframes.
  742. @item all
  743. Discard all frames.
  744. @end table
  745. Default value is @samp{default}.
  746. @item bidir_refine @var{integer} (@emph{encoding,video})
  747. Refine the two motion vectors used in bidirectional macroblocks.
  748. @item brd_scale @var{integer} (@emph{encoding,video})
  749. Downscale frames for dynamic B-frame decision.
  750. @item keyint_min @var{integer} (@emph{encoding,video})
  751. Set minimum interval between IDR-frames.
  752. @item refs @var{integer} (@emph{encoding,video})
  753. Set reference frames to consider for motion compensation.
  754. @item chromaoffset @var{integer} (@emph{encoding,video})
  755. Set chroma qp offset from luma.
  756. @item trellis @var{integer} (@emph{encoding,audio,video})
  757. Set rate-distortion optimal quantization.
  758. @item sc_factor @var{integer} (@emph{encoding,video})
  759. Set value multiplied by qscale for each frame and added to
  760. scene_change_score.
  761. @item mv0_threshold @var{integer} (@emph{encoding,video})
  762. @item b_sensitivity @var{integer} (@emph{encoding,video})
  763. Adjust sensitivity of b_frame_strategy 1.
  764. @item compression_level @var{integer} (@emph{encoding,audio,video})
  765. @item min_prediction_order @var{integer} (@emph{encoding,audio})
  766. @item max_prediction_order @var{integer} (@emph{encoding,audio})
  767. @item timecode_frame_start @var{integer} (@emph{encoding,video})
  768. Set GOP timecode frame start number, in non drop frame format.
  769. @item request_channels @var{integer} (@emph{decoding,audio})
  770. Set desired number of audio channels.
  771. @item bits_per_raw_sample @var{integer}
  772. @item channel_layout @var{integer} (@emph{decoding/encoding,audio})
  773. Possible values:
  774. @table @samp
  775. @end table
  776. @item request_channel_layout @var{integer} (@emph{decoding,audio})
  777. Possible values:
  778. @table @samp
  779. @end table
  780. @item rc_max_vbv_use @var{float} (@emph{encoding,video})
  781. @item rc_min_vbv_use @var{float} (@emph{encoding,video})
  782. @item ticks_per_frame @var{integer} (@emph{decoding/encoding,audio,video})
  783. @item color_primaries @var{integer} (@emph{decoding/encoding,video})
  784. @item color_trc @var{integer} (@emph{decoding/encoding,video})
  785. @item colorspace @var{integer} (@emph{decoding/encoding,video})
  786. @item color_range @var{integer} (@emph{decoding/encoding,video})
  787. @item chroma_sample_location @var{integer} (@emph{decoding/encoding,video})
  788. @item log_level_offset @var{integer}
  789. Set the log level offset.
  790. @item slices @var{integer} (@emph{encoding,video})
  791. Number of slices, used in parallelized encoding.
  792. @item thread_type @var{flags} (@emph{decoding/encoding,video})
  793. Select multithreading type.
  794. Possible values:
  795. @table @samp
  796. @item slice
  797. @item frame
  798. @end table
  799. @item audio_service_type @var{integer} (@emph{encoding,audio})
  800. Set audio service type.
  801. Possible values:
  802. @table @samp
  803. @item ma
  804. Main Audio Service
  805. @item ef
  806. Effects
  807. @item vi
  808. Visually Impaired
  809. @item hi
  810. Hearing Impaired
  811. @item di
  812. Dialogue
  813. @item co
  814. Commentary
  815. @item em
  816. Emergency
  817. @item vo
  818. Voice Over
  819. @item ka
  820. Karaoke
  821. @end table
  822. @item request_sample_fmt @var{sample_fmt} (@emph{decoding,audio})
  823. Set sample format audio decoders should prefer. Default value is
  824. @code{none}.
  825. @item pkt_timebase @var{rational number}
  826. @item sub_charenc @var{encoding} (@emph{decoding,subtitles})
  827. Set the input subtitles character encoding.
  828. @end table
  829. @c man end CODEC OPTIONS
  830. @include decoders.texi
  831. @include encoders.texi