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.

1073 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, experimental
  215. (unfinished/work in progress/not well tested) decoders and encoders.
  216. Note: experimental decoders can pose a security risk, do not use this for
  217. decoding untrusted input.
  218. @end table
  219. @item b_qoffset @var{float} (@emph{encoding,video})
  220. Set QP offset between P and B frames.
  221. @item err_detect @var{flags} (@emph{decoding,audio,video})
  222. Set error detection flags.
  223. Possible values:
  224. @table @samp
  225. @item crccheck
  226. verify embedded CRCs
  227. @item bitstream
  228. detect bitstream specification deviations
  229. @item buffer
  230. detect improper bitstream length
  231. @item explode
  232. abort decoding on minor error detection
  233. @item careful
  234. consider things that violate the spec and have not been seen in the wild as errors
  235. @item compliant
  236. consider all spec non compliancies as errors
  237. @item aggressive
  238. consider things that a sane encoder should not do as an error
  239. @end table
  240. @item has_b_frames @var{integer}
  241. @item block_align @var{integer}
  242. @item mpeg_quant @var{integer} (@emph{encoding,video})
  243. Use MPEG quantizers instead of H.263.
  244. @item qsquish @var{float} (@emph{encoding,video})
  245. How to keep quantizer between qmin and qmax (0 = clip, 1 = use
  246. differentiable function).
  247. @item rc_qmod_amp @var{float} (@emph{encoding,video})
  248. Set experimental quantizer modulation.
  249. @item rc_qmod_freq @var{integer} (@emph{encoding,video})
  250. Set experimental quantizer modulation.
  251. @item rc_override_count @var{integer}
  252. @item rc_eq @var{string} (@emph{encoding,video})
  253. Set rate control equation. When computing the expression, besides the
  254. standard functions defined in the section 'Expression Evaluation', the
  255. following functions are available: bits2qp(bits), qp2bits(qp). Also
  256. the following constants are available: iTex pTex tex mv fCode iCount
  257. mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex
  258. avgTex.
  259. @item maxrate @var{integer} (@emph{encoding,audio,video})
  260. Set max bitrate tolerance (in bits/s). Requires bufsize to be set.
  261. @item minrate @var{integer} (@emph{encoding,audio,video})
  262. Set min bitrate tolerance (in bits/s). Most useful in setting up a CBR
  263. encode. It is of little use elsewise.
  264. @item bufsize @var{integer} (@emph{encoding,audio,video})
  265. Set ratecontrol buffer size (in bits).
  266. @item rc_buf_aggressivity @var{float} (@emph{encoding,video})
  267. Currently useless.
  268. @item i_qfactor @var{float} (@emph{encoding,video})
  269. Set QP factor between P and I frames.
  270. @item i_qoffset @var{float} (@emph{encoding,video})
  271. Set QP offset between P and I frames.
  272. @item rc_init_cplx @var{float} (@emph{encoding,video})
  273. Set initial complexity for 1-pass encoding.
  274. @item dct @var{integer} (@emph{encoding,video})
  275. Set DCT algorithm.
  276. Possible values:
  277. @table @samp
  278. @item auto
  279. autoselect a good one (default)
  280. @item fastint
  281. fast integer
  282. @item int
  283. accurate integer
  284. @item mmx
  285. @item altivec
  286. @item faan
  287. floating point AAN DCT
  288. @end table
  289. @item lumi_mask @var{float} (@emph{encoding,video})
  290. Compress bright areas stronger than medium ones.
  291. @item tcplx_mask @var{float} (@emph{encoding,video})
  292. Set temporal complexity masking.
  293. @item scplx_mask @var{float} (@emph{encoding,video})
  294. Set spatial complexity masking.
  295. @item p_mask @var{float} (@emph{encoding,video})
  296. Set inter masking.
  297. @item dark_mask @var{float} (@emph{encoding,video})
  298. Compress dark areas stronger than medium ones.
  299. @item idct @var{integer} (@emph{decoding/encoding,video})
  300. Select IDCT implementation.
  301. Possible values:
  302. @table @samp
  303. @item auto
  304. @item int
  305. @item simple
  306. @item simplemmx
  307. @item libmpeg2mmx
  308. @item mmi
  309. @item arm
  310. @item altivec
  311. @item sh4
  312. @item simplearm
  313. @item simplearmv5te
  314. @item simplearmv6
  315. @item simpleneon
  316. @item simplealpha
  317. @item h264
  318. @item vp3
  319. @item ipp
  320. @item xvidmmx
  321. @item faani
  322. floating point AAN IDCT
  323. @end table
  324. @item slice_count @var{integer}
  325. @item ec @var{flags} (@emph{decoding,video})
  326. Set error concealment strategy.
  327. Possible values:
  328. @table @samp
  329. @item guess_mvs
  330. iterative motion vector (MV) search (slow)
  331. @item deblock
  332. use strong deblock filter for damaged MBs
  333. @end table
  334. @item bits_per_coded_sample @var{integer}
  335. @item pred @var{integer} (@emph{encoding,video})
  336. Set prediction method.
  337. Possible values:
  338. @table @samp
  339. @item left
  340. @item plane
  341. @item median
  342. @end table
  343. @item aspect @var{rational number} (@emph{encoding,video})
  344. Set sample aspect ratio.
  345. @item debug @var{flags} (@emph{decoding/encoding,audio,video,subtitles})
  346. Print specific debug info.
  347. Possible values:
  348. @table @samp
  349. @item pict
  350. picture info
  351. @item rc
  352. rate control
  353. @item bitstream
  354. @item mb_type
  355. macroblock (MB) type
  356. @item qp
  357. per-block quantization parameter (QP)
  358. @item mv
  359. motion vector
  360. @item dct_coeff
  361. @item skip
  362. @item startcode
  363. @item pts
  364. @item er
  365. error recognition
  366. @item mmco
  367. memory management control operations (H.264)
  368. @item bugs
  369. @item vis_qp
  370. visualize quantization parameter (QP), lower QP are tinted greener
  371. @item vis_mb_type
  372. visualize block types
  373. @item buffers
  374. picture buffer allocations
  375. @item thread_ops
  376. threading operations
  377. @end table
  378. @item vismv @var{integer} (@emph{decoding,video})
  379. Visualize motion vectors (MVs).
  380. Possible values:
  381. @table @samp
  382. @item pf
  383. forward predicted MVs of P-frames
  384. @item bf
  385. forward predicted MVs of B-frames
  386. @item bb
  387. backward predicted MVs of B-frames
  388. @end table
  389. @item cmp @var{integer} (@emph{encoding,video})
  390. Set full pel me compare function.
  391. Possible values:
  392. @table @samp
  393. @item sad
  394. sum of absolute differences, fast (default)
  395. @item sse
  396. sum of squared errors
  397. @item satd
  398. sum of absolute Hadamard transformed differences
  399. @item dct
  400. sum of absolute DCT transformed differences
  401. @item psnr
  402. sum of squared quantization errors (avoid, low quality)
  403. @item bit
  404. number of bits needed for the block
  405. @item rd
  406. rate distortion optimal, slow
  407. @item zero
  408. 0
  409. @item vsad
  410. sum of absolute vertical differences
  411. @item vsse
  412. sum of squared vertical differences
  413. @item nsse
  414. noise preserving sum of squared differences
  415. @item w53
  416. 5/3 wavelet, only used in snow
  417. @item w97
  418. 9/7 wavelet, only used in snow
  419. @item dctmax
  420. @item chroma
  421. @end table
  422. @item subcmp @var{integer} (@emph{encoding,video})
  423. Set sub pel me compare function.
  424. Possible values:
  425. @table @samp
  426. @item sad
  427. sum of absolute differences, fast (default)
  428. @item sse
  429. sum of squared errors
  430. @item satd
  431. sum of absolute Hadamard transformed differences
  432. @item dct
  433. sum of absolute DCT transformed differences
  434. @item psnr
  435. sum of squared quantization errors (avoid, low quality)
  436. @item bit
  437. number of bits needed for the block
  438. @item rd
  439. rate distortion optimal, slow
  440. @item zero
  441. 0
  442. @item vsad
  443. sum of absolute vertical differences
  444. @item vsse
  445. sum of squared vertical differences
  446. @item nsse
  447. noise preserving sum of squared differences
  448. @item w53
  449. 5/3 wavelet, only used in snow
  450. @item w97
  451. 9/7 wavelet, only used in snow
  452. @item dctmax
  453. @item chroma
  454. @end table
  455. @item mbcmp @var{integer} (@emph{encoding,video})
  456. Set macroblock compare function.
  457. Possible values:
  458. @table @samp
  459. @item sad
  460. sum of absolute differences, fast (default)
  461. @item sse
  462. sum of squared errors
  463. @item satd
  464. sum of absolute Hadamard transformed differences
  465. @item dct
  466. sum of absolute DCT transformed differences
  467. @item psnr
  468. sum of squared quantization errors (avoid, low quality)
  469. @item bit
  470. number of bits needed for the block
  471. @item rd
  472. rate distortion optimal, slow
  473. @item zero
  474. 0
  475. @item vsad
  476. sum of absolute vertical differences
  477. @item vsse
  478. sum of squared vertical differences
  479. @item nsse
  480. noise preserving sum of squared differences
  481. @item w53
  482. 5/3 wavelet, only used in snow
  483. @item w97
  484. 9/7 wavelet, only used in snow
  485. @item dctmax
  486. @item chroma
  487. @end table
  488. @item ildctcmp @var{integer} (@emph{encoding,video})
  489. Set interlaced dct compare function.
  490. Possible values:
  491. @table @samp
  492. @item sad
  493. sum of absolute differences, fast (default)
  494. @item sse
  495. sum of squared errors
  496. @item satd
  497. sum of absolute Hadamard transformed differences
  498. @item dct
  499. sum of absolute DCT transformed differences
  500. @item psnr
  501. sum of squared quantization errors (avoid, low quality)
  502. @item bit
  503. number of bits needed for the block
  504. @item rd
  505. rate distortion optimal, slow
  506. @item zero
  507. 0
  508. @item vsad
  509. sum of absolute vertical differences
  510. @item vsse
  511. sum of squared vertical differences
  512. @item nsse
  513. noise preserving sum of squared differences
  514. @item w53
  515. 5/3 wavelet, only used in snow
  516. @item w97
  517. 9/7 wavelet, only used in snow
  518. @item dctmax
  519. @item chroma
  520. @end table
  521. @item dia_size @var{integer} (@emph{encoding,video})
  522. Set diamond type & size for motion estimation.
  523. @item last_pred @var{integer} (@emph{encoding,video})
  524. Set amount of motion predictors from the previous frame.
  525. @item preme @var{integer} (@emph{encoding,video})
  526. Set pre motion estimation.
  527. @item precmp @var{integer} (@emph{encoding,video})
  528. Set pre motion estimation compare function.
  529. Possible values:
  530. @table @samp
  531. @item sad
  532. sum of absolute differences, fast (default)
  533. @item sse
  534. sum of squared errors
  535. @item satd
  536. sum of absolute Hadamard transformed differences
  537. @item dct
  538. sum of absolute DCT transformed differences
  539. @item psnr
  540. sum of squared quantization errors (avoid, low quality)
  541. @item bit
  542. number of bits needed for the block
  543. @item rd
  544. rate distortion optimal, slow
  545. @item zero
  546. 0
  547. @item vsad
  548. sum of absolute vertical differences
  549. @item vsse
  550. sum of squared vertical differences
  551. @item nsse
  552. noise preserving sum of squared differences
  553. @item w53
  554. 5/3 wavelet, only used in snow
  555. @item w97
  556. 9/7 wavelet, only used in snow
  557. @item dctmax
  558. @item chroma
  559. @end table
  560. @item pre_dia_size @var{integer} (@emph{encoding,video})
  561. Set diamond type & size for motion estimation pre-pass.
  562. @item subq @var{integer} (@emph{encoding,video})
  563. Set sub pel motion estimation quality.
  564. @item dtg_active_format @var{integer}
  565. @item me_range @var{integer} (@emph{encoding,video})
  566. Set limit motion vectors range (1023 for DivX player).
  567. @item ibias @var{integer} (@emph{encoding,video})
  568. Set intra quant bias.
  569. @item pbias @var{integer} (@emph{encoding,video})
  570. Set inter quant bias.
  571. @item color_table_id @var{integer}
  572. @item global_quality @var{integer} (@emph{encoding,audio,video})
  573. @item coder @var{integer} (@emph{encoding,video})
  574. Possible values:
  575. @table @samp
  576. @item vlc
  577. variable length coder / huffman coder
  578. @item ac
  579. arithmetic coder
  580. @item raw
  581. raw (no encoding)
  582. @item rle
  583. run-length coder
  584. @item deflate
  585. deflate-based coder
  586. @end table
  587. @item context @var{integer} (@emph{encoding,video})
  588. Set context model.
  589. @item slice_flags @var{integer}
  590. @item xvmc_acceleration @var{integer}
  591. @item mbd @var{integer} (@emph{encoding,video})
  592. Set macroblock decision algorithm (high quality mode).
  593. Possible values:
  594. @table @samp
  595. @item simple
  596. use mbcmp (default)
  597. @item bits
  598. use fewest bits
  599. @item rd
  600. use best rate distortion
  601. @end table
  602. @item stream_codec_tag @var{integer}
  603. @item sc_threshold @var{integer} (@emph{encoding,video})
  604. Set scene change threshold.
  605. @item lmin @var{integer} (@emph{encoding,video})
  606. Set min lagrange factor (VBR).
  607. @item lmax @var{integer} (@emph{encoding,video})
  608. Set max lagrange factor (VBR).
  609. @item nr @var{integer} (@emph{encoding,video})
  610. Set noise reduction.
  611. @item rc_init_occupancy @var{integer} (@emph{encoding,video})
  612. Set number of bits which should be loaded into the rc buffer before
  613. decoding starts.
  614. @item inter_threshold @var{integer} (@emph{encoding,video})
  615. @item flags2 @var{flags} (@emph{decoding/encoding,audio,video})
  616. Possible values:
  617. @table @samp
  618. @item fast
  619. allow non spec compliant speedup tricks
  620. @item sgop
  621. Deprecated, use mpegvideo private options instead
  622. @item noout
  623. skip bitstream encoding
  624. @item local_header
  625. place global headers at every keyframe instead of in extradata
  626. @item chunks
  627. Frame data might be split into multiple chunks
  628. @item showall
  629. Show all frames before the first keyframe
  630. @item skiprd
  631. Deprecated, use mpegvideo private options instead
  632. @end table
  633. @item error @var{integer} (@emph{encoding,video})
  634. @item qns @var{integer} (@emph{encoding,video})
  635. Deprecated, use mpegvideo private options instead.
  636. @item threads @var{integer} (@emph{decoding/encoding,video})
  637. Possible values:
  638. @table @samp
  639. @item auto
  640. detect a good number of threads
  641. @end table
  642. @item me_threshold @var{integer} (@emph{encoding,video})
  643. Set motion estimation threshold.
  644. @item mb_threshold @var{integer} (@emph{encoding,video})
  645. Set macroblock threshold.
  646. @item dc @var{integer} (@emph{encoding,video})
  647. Set intra_dc_precision.
  648. @item nssew @var{integer} (@emph{encoding,video})
  649. Set nsse weight.
  650. @item skip_top @var{integer} (@emph{decoding,video})
  651. Set number of macroblock rows at the top which are skipped.
  652. @item skip_bottom @var{integer} (@emph{decoding,video})
  653. Set number of macroblock rows at the bottom which are skipped.
  654. @item profile @var{integer} (@emph{encoding,audio,video})
  655. Possible values:
  656. @table @samp
  657. @item unknown
  658. @item aac_main
  659. @item aac_low
  660. @item aac_ssr
  661. @item aac_ltp
  662. @item aac_he
  663. @item aac_he_v2
  664. @item aac_ld
  665. @item aac_eld
  666. @item dts
  667. @item dts_es
  668. @item dts_96_24
  669. @item dts_hd_hra
  670. @item dts_hd_ma
  671. @end table
  672. @item level @var{integer} (@emph{encoding,audio,video})
  673. Possible values:
  674. @table @samp
  675. @item unknown
  676. @end table
  677. @item lowres @var{integer} (@emph{decoding,audio,video})
  678. Decode at 1= 1/2, 2=1/4, 3=1/8 resolutions.
  679. @item skip_threshold @var{integer} (@emph{encoding,video})
  680. Set frame skip threshold.
  681. @item skip_factor @var{integer} (@emph{encoding,video})
  682. Set frame skip factor.
  683. @item skip_exp @var{integer} (@emph{encoding,video})
  684. Set frame skip exponent.
  685. @item skipcmp @var{integer} (@emph{encoding,video})
  686. Set frame skip compare function.
  687. Possible values:
  688. @table @samp
  689. @item sad
  690. sum of absolute differences, fast (default)
  691. @item sse
  692. sum of squared errors
  693. @item satd
  694. sum of absolute Hadamard transformed differences
  695. @item dct
  696. sum of absolute DCT transformed differences
  697. @item psnr
  698. sum of squared quantization errors (avoid, low quality)
  699. @item bit
  700. number of bits needed for the block
  701. @item rd
  702. rate distortion optimal, slow
  703. @item zero
  704. 0
  705. @item vsad
  706. sum of absolute vertical differences
  707. @item vsse
  708. sum of squared vertical differences
  709. @item nsse
  710. noise preserving sum of squared differences
  711. @item w53
  712. 5/3 wavelet, only used in snow
  713. @item w97
  714. 9/7 wavelet, only used in snow
  715. @item dctmax
  716. @item chroma
  717. @end table
  718. @item border_mask @var{float} (@emph{encoding,video})
  719. Increase the quantizer for macroblocks close to borders.
  720. @item mblmin @var{integer} (@emph{encoding,video})
  721. Set min macroblock lagrange factor (VBR).
  722. @item mblmax @var{integer} (@emph{encoding,video})
  723. Set max macroblock lagrange factor (VBR).
  724. @item mepc @var{integer} (@emph{encoding,video})
  725. Set motion estimation bitrate penalty compensation (1.0 = 256).
  726. @item skip_loop_filter @var{integer} (@emph{decoding,video})
  727. @item skip_idct @var{integer} (@emph{decoding,video})
  728. @item skip_frame @var{integer} (@emph{decoding,video})
  729. Make decoder discard processing depending on the frame type selected
  730. by the option value.
  731. @option{skip_loop_filter} skips frame loop filtering, @option{skip_idct}
  732. skips frame IDCT/dequantization, @option{skip_frame} skips decoding.
  733. Possible values:
  734. @table @samp
  735. @item none
  736. Discard no frame.
  737. @item default
  738. Discard useless frames like 0-sized frames.
  739. @item noref
  740. Discard all non-reference frames.
  741. @item bidir
  742. Discard all bidirectional frames.
  743. @item nokey
  744. Discard all frames excepts keyframes.
  745. @item all
  746. Discard all frames.
  747. @end table
  748. Default value is @samp{default}.
  749. @item bidir_refine @var{integer} (@emph{encoding,video})
  750. Refine the two motion vectors used in bidirectional macroblocks.
  751. @item brd_scale @var{integer} (@emph{encoding,video})
  752. Downscale frames for dynamic B-frame decision.
  753. @item keyint_min @var{integer} (@emph{encoding,video})
  754. Set minimum interval between IDR-frames.
  755. @item refs @var{integer} (@emph{encoding,video})
  756. Set reference frames to consider for motion compensation.
  757. @item chromaoffset @var{integer} (@emph{encoding,video})
  758. Set chroma qp offset from luma.
  759. @item trellis @var{integer} (@emph{encoding,audio,video})
  760. Set rate-distortion optimal quantization.
  761. @item sc_factor @var{integer} (@emph{encoding,video})
  762. Set value multiplied by qscale for each frame and added to
  763. scene_change_score.
  764. @item mv0_threshold @var{integer} (@emph{encoding,video})
  765. @item b_sensitivity @var{integer} (@emph{encoding,video})
  766. Adjust sensitivity of b_frame_strategy 1.
  767. @item compression_level @var{integer} (@emph{encoding,audio,video})
  768. @item min_prediction_order @var{integer} (@emph{encoding,audio})
  769. @item max_prediction_order @var{integer} (@emph{encoding,audio})
  770. @item timecode_frame_start @var{integer} (@emph{encoding,video})
  771. Set GOP timecode frame start number, in non drop frame format.
  772. @item request_channels @var{integer} (@emph{decoding,audio})
  773. Set desired number of audio channels.
  774. @item bits_per_raw_sample @var{integer}
  775. @item channel_layout @var{integer} (@emph{decoding/encoding,audio})
  776. Possible values:
  777. @table @samp
  778. @end table
  779. @item request_channel_layout @var{integer} (@emph{decoding,audio})
  780. Possible values:
  781. @table @samp
  782. @end table
  783. @item rc_max_vbv_use @var{float} (@emph{encoding,video})
  784. @item rc_min_vbv_use @var{float} (@emph{encoding,video})
  785. @item ticks_per_frame @var{integer} (@emph{decoding/encoding,audio,video})
  786. @item color_primaries @var{integer} (@emph{decoding/encoding,video})
  787. @item color_trc @var{integer} (@emph{decoding/encoding,video})
  788. @item colorspace @var{integer} (@emph{decoding/encoding,video})
  789. @item color_range @var{integer} (@emph{decoding/encoding,video})
  790. @item chroma_sample_location @var{integer} (@emph{decoding/encoding,video})
  791. @item log_level_offset @var{integer}
  792. Set the log level offset.
  793. @item slices @var{integer} (@emph{encoding,video})
  794. Number of slices, used in parallelized encoding.
  795. @item thread_type @var{flags} (@emph{decoding/encoding,video})
  796. Select multithreading type.
  797. Possible values:
  798. @table @samp
  799. @item slice
  800. @item frame
  801. @end table
  802. @item audio_service_type @var{integer} (@emph{encoding,audio})
  803. Set audio service type.
  804. Possible values:
  805. @table @samp
  806. @item ma
  807. Main Audio Service
  808. @item ef
  809. Effects
  810. @item vi
  811. Visually Impaired
  812. @item hi
  813. Hearing Impaired
  814. @item di
  815. Dialogue
  816. @item co
  817. Commentary
  818. @item em
  819. Emergency
  820. @item vo
  821. Voice Over
  822. @item ka
  823. Karaoke
  824. @end table
  825. @item request_sample_fmt @var{sample_fmt} (@emph{decoding,audio})
  826. Set sample format audio decoders should prefer. Default value is
  827. @code{none}.
  828. @item pkt_timebase @var{rational number}
  829. @item sub_charenc @var{encoding} (@emph{decoding,subtitles})
  830. Set the input subtitles character encoding.
  831. @end table
  832. @c man end CODEC OPTIONS
  833. @include decoders.texi
  834. @include encoders.texi