1@anchor{codec-options} 2@chapter Codec Options 3@c man begin CODEC OPTIONS 4 5libavcodec provides some generic global options, which can be set on 6all the encoders and decoders. In addition each codec may support 7so-called private options, which are specific for a given codec. 8 9Sometimes, a global option may only affect a specific kind of codec, 10and may be unsensical or ignored by another, so you need to be aware 11of the meaning of the specified options. Also some options are 12meant only for decoding or encoding. 13 14Options may be set by specifying -@var{option} @var{value} in the 15FFmpeg tools, or by setting the value explicitly in the 16@code{AVCodecContext} options or using the @file{libavutil/opt.h} API 17for programmatic use. 18 19The list of supported options follow: 20 21@table @option 22@item b @var{integer} (@emph{encoding,audio,video}) 23Set bitrate in bits/s. Default value is 200K. 24 25@item ab @var{integer} (@emph{encoding,audio}) 26Set audio bitrate (in bits/s). Default value is 128K. 27 28@item bt @var{integer} (@emph{encoding,video}) 29Set video bitrate tolerance (in bits/s). In 1-pass mode, bitrate 30tolerance specifies how far ratecontrol is willing to deviate from the 31target average bitrate value. This is not related to min/max 32bitrate. Lowering tolerance too much has an adverse effect on quality. 33 34@item flags @var{flags} (@emph{decoding/encoding,audio,video,subtitles}) 35Set generic flags. 36 37Possible values: 38@table @samp 39@item mv4 40Use four motion vector by macroblock (mpeg4). 41@item qpel 42Use 1/4 pel motion compensation. 43@item loop 44Use loop filter. 45@item qscale 46Use fixed qscale. 47@item gmc 48Use gmc. 49@item mv0 50Always try a mb with mv=<0,0>. 51@item input_preserved 52 53@item pass1 54Use internal 2pass ratecontrol in first pass mode. 55@item pass2 56Use internal 2pass ratecontrol in second pass mode. 57@item gray 58Only decode/encode grayscale. 59@item emu_edge 60Do not draw edges. 61@item psnr 62Set error[?] variables during encoding. 63@item truncated 64 65@item naq 66Normalize adaptive quantization. 67@item ildct 68Use interlaced DCT. 69@item low_delay 70Force low delay. 71@item global_header 72Place global headers in extradata instead of every keyframe. 73@item bitexact 74Use only bitexact stuff (except (I)DCT). 75@item aic 76Apply H263 advanced intra coding / mpeg4 ac prediction. 77@item cbp 78Deprecated, use mpegvideo private options instead. 79@item qprd 80Deprecated, use mpegvideo private options instead. 81@item ilme 82Apply interlaced motion estimation. 83@item cgop 84Use closed gop. 85@end table 86 87@item me_method @var{integer} (@emph{encoding,video}) 88Set motion estimation method. 89 90Possible values: 91@table @samp 92@item zero 93zero motion estimation (fastest) 94@item full 95full motion estimation (slowest) 96@item epzs 97EPZS motion estimation (default) 98@item esa 99esa motion estimation (alias for full) 100@item tesa 101tesa motion estimation 102@item dia 103dia motion estimation (alias for epzs) 104@item log 105log motion estimation 106@item phods 107phods motion estimation 108@item x1 109X1 motion estimation 110@item hex 111hex motion estimation 112@item umh 113umh motion estimation 114@item iter 115iter motion estimation 116@end table 117 118@item extradata_size @var{integer} 119Set extradata size. 120 121@item time_base @var{rational number} 122Set codec time base. 123 124It is the fundamental unit of time (in seconds) in terms of which 125frame timestamps are represented. For fixed-fps content, timebase 126should be @code{1 / frame_rate} and timestamp increments should be 127identically 1. 128 129@item g @var{integer} (@emph{encoding,video}) 130Set the group of picture size. Default value is 12. 131 132@item ar @var{integer} (@emph{decoding/encoding,audio}) 133Set audio sampling rate (in Hz). 134 135@item ac @var{integer} (@emph{decoding/encoding,audio}) 136Set number of audio channels. 137 138@item cutoff @var{integer} (@emph{encoding,audio}) 139Set cutoff bandwidth. 140 141@item frame_size @var{integer} (@emph{encoding,audio}) 142Set audio frame size. 143 144Each submitted frame except the last must contain exactly frame_size 145samples per channel. May be 0 when the codec has 146CODEC_CAP_VARIABLE_FRAME_SIZE set, in that case the frame size is not 147restricted. It is set by some decoders to indicate constant frame 148size. 149 150@item frame_number @var{integer} 151Set the frame number. 152 153@item delay @var{integer} 154 155@item qcomp @var{float} (@emph{encoding,video}) 156Set video quantizer scale compression (VBR). It is used as a constant 157in the ratecontrol equation. Recommended range for default rc_eq: 1580.0-1.0. 159 160@item qblur @var{float} (@emph{encoding,video}) 161Set video quantizer scale blur (VBR). 162 163@item qmin @var{integer} (@emph{encoding,video}) 164Set min video quantizer scale (VBR). Must be included between -1 and 16569, default value is 2. 166 167@item qmax @var{integer} (@emph{encoding,video}) 168Set max video quantizer scale (VBR). Must be included between -1 and 1691024, default value is 31. 170 171@item qdiff @var{integer} (@emph{encoding,video}) 172Set max difference between the quantizer scale (VBR). 173 174@item bf @var{integer} (@emph{encoding,video}) 175Set max number of B frames between non-B-frames. 176 177Must be an integer between -1 and 16. 0 means that B-frames are 178disabled. If a value of -1 is used, it will choose an automatic value 179depending on the encoder. 180 181Default value is 0. 182 183@item b_qfactor @var{float} (@emph{encoding,video}) 184Set qp factor between P and B frames. 185 186@item rc_strategy @var{integer} (@emph{encoding,video}) 187Set ratecontrol method. 188 189@item b_strategy @var{integer} (@emph{encoding,video}) 190Set strategy to choose between I/P/B-frames. 191 192@item ps @var{integer} (@emph{encoding,video}) 193Set RTP payload size in bytes. 194 195@item mv_bits @var{integer} 196@item header_bits @var{integer} 197@item i_tex_bits @var{integer} 198@item p_tex_bits @var{integer} 199@item i_count @var{integer} 200@item p_count @var{integer} 201@item skip_count @var{integer} 202@item misc_bits @var{integer} 203@item frame_bits @var{integer} 204@item codec_tag @var{integer} 205@item bug @var{flags} (@emph{decoding,video}) 206Workaround not auto detected encoder bugs. 207 208Possible values: 209@table @samp 210@item autodetect 211 212@item old_msmpeg4 213some old lavc generated msmpeg4v3 files (no autodetection) 214@item xvid_ilace 215Xvid interlacing bug (autodetected if fourcc==XVIX) 216@item ump4 217(autodetected if fourcc==UMP4) 218@item no_padding 219padding bug (autodetected) 220@item amv 221 222@item ac_vlc 223illegal vlc bug (autodetected per fourcc) 224@item qpel_chroma 225 226@item std_qpel 227old standard qpel (autodetected per fourcc/version) 228@item qpel_chroma2 229 230@item direct_blocksize 231direct-qpel-blocksize bug (autodetected per fourcc/version) 232@item edge 233edge padding bug (autodetected per fourcc/version) 234@item hpel_chroma 235 236@item dc_clip 237 238@item ms 239Workaround various bugs in microsoft broken decoders. 240@item trunc 241trancated frames 242@end table 243 244@item lelim @var{integer} (@emph{encoding,video}) 245Set single coefficient elimination threshold for luminance (negative 246values also consider DC coefficient). 247 248@item celim @var{integer} (@emph{encoding,video}) 249Set single coefficient elimination threshold for chrominance (negative 250values also consider dc coefficient) 251 252@item strict @var{integer} (@emph{decoding/encoding,audio,video}) 253Specify how strictly to follow the standards. 254 255Possible values: 256@table @samp 257@item very 258strictly conform to a older more strict version of the spec or reference software 259@item strict 260strictly conform to all the things in the spec no matter what consequences 261@item normal 262 263@item unofficial 264allow unofficial extensions 265@item experimental 266allow non standardized experimental things, experimental 267(unfinished/work in progress/not well tested) decoders and encoders. 268Note: experimental decoders can pose a security risk, do not use this for 269decoding untrusted input. 270@end table 271 272@item b_qoffset @var{float} (@emph{encoding,video}) 273Set QP offset between P and B frames. 274 275@item err_detect @var{flags} (@emph{decoding,audio,video}) 276Set error detection flags. 277 278Possible values: 279@table @samp 280@item crccheck 281verify embedded CRCs 282@item bitstream 283detect bitstream specification deviations 284@item buffer 285detect improper bitstream length 286@item explode 287abort decoding on minor error detection 288@item ignore_err 289ignore decoding errors, and continue decoding. 290This is useful if you want to analyze the content of a video and thus want 291everything to be decoded no matter what. This option will not result in a video 292that is pleasing to watch in case of errors. 293@item careful 294consider things that violate the spec and have not been seen in the wild as errors 295@item compliant 296consider all spec non compliancies as errors 297@item aggressive 298consider things that a sane encoder should not do as an error 299@end table 300 301@item has_b_frames @var{integer} 302 303@item block_align @var{integer} 304 305@item mpeg_quant @var{integer} (@emph{encoding,video}) 306Use MPEG quantizers instead of H.263. 307 308@item qsquish @var{float} (@emph{encoding,video}) 309How to keep quantizer between qmin and qmax (0 = clip, 1 = use 310differentiable function). 311 312@item rc_qmod_amp @var{float} (@emph{encoding,video}) 313Set experimental quantizer modulation. 314 315@item rc_qmod_freq @var{integer} (@emph{encoding,video}) 316Set experimental quantizer modulation. 317 318@item rc_override_count @var{integer} 319 320@item rc_eq @var{string} (@emph{encoding,video}) 321Set rate control equation. When computing the expression, besides the 322standard functions defined in the section 'Expression Evaluation', the 323following functions are available: bits2qp(bits), qp2bits(qp). Also 324the following constants are available: iTex pTex tex mv fCode iCount 325mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex 326avgTex. 327 328@item maxrate @var{integer} (@emph{encoding,audio,video}) 329Set max bitrate tolerance (in bits/s). Requires bufsize to be set. 330 331@item minrate @var{integer} (@emph{encoding,audio,video}) 332Set min bitrate tolerance (in bits/s). Most useful in setting up a CBR 333encode. It is of little use elsewise. 334 335@item bufsize @var{integer} (@emph{encoding,audio,video}) 336Set ratecontrol buffer size (in bits). 337 338@item rc_buf_aggressivity @var{float} (@emph{encoding,video}) 339Currently useless. 340 341@item i_qfactor @var{float} (@emph{encoding,video}) 342Set QP factor between P and I frames. 343 344@item i_qoffset @var{float} (@emph{encoding,video}) 345Set QP offset between P and I frames. 346 347@item rc_init_cplx @var{float} (@emph{encoding,video}) 348Set initial complexity for 1-pass encoding. 349 350@item dct @var{integer} (@emph{encoding,video}) 351Set DCT algorithm. 352 353Possible values: 354@table @samp 355@item auto 356autoselect a good one (default) 357@item fastint 358fast integer 359@item int 360accurate integer 361@item mmx 362 363@item altivec 364 365@item faan 366floating point AAN DCT 367@end table 368 369@item lumi_mask @var{float} (@emph{encoding,video}) 370Compress bright areas stronger than medium ones. 371 372@item tcplx_mask @var{float} (@emph{encoding,video}) 373Set temporal complexity masking. 374 375@item scplx_mask @var{float} (@emph{encoding,video}) 376Set spatial complexity masking. 377 378@item p_mask @var{float} (@emph{encoding,video}) 379Set inter masking. 380 381@item dark_mask @var{float} (@emph{encoding,video}) 382Compress dark areas stronger than medium ones. 383 384@item idct @var{integer} (@emph{decoding/encoding,video}) 385Select IDCT implementation. 386 387Possible values: 388@table @samp 389@item auto 390 391@item int 392 393@item simple 394 395@item simplemmx 396 397@item simpleauto 398Automatically pick a IDCT compatible with the simple one 399 400@item arm 401 402@item altivec 403 404@item sh4 405 406@item simplearm 407 408@item simplearmv5te 409 410@item simplearmv6 411 412@item simpleneon 413 414@item simplealpha 415 416@item ipp 417 418@item xvidmmx 419 420@item faani 421floating point AAN IDCT 422@end table 423 424@item slice_count @var{integer} 425 426@item ec @var{flags} (@emph{decoding,video}) 427Set error concealment strategy. 428 429Possible values: 430@table @samp 431@item guess_mvs 432iterative motion vector (MV) search (slow) 433@item deblock 434use strong deblock filter for damaged MBs 435@item favor_inter 436favor predicting from the previous frame instead of the current 437@end table 438 439@item bits_per_coded_sample @var{integer} 440 441@item pred @var{integer} (@emph{encoding,video}) 442Set prediction method. 443 444Possible values: 445@table @samp 446@item left 447 448@item plane 449 450@item median 451 452@end table 453 454@item aspect @var{rational number} (@emph{encoding,video}) 455Set sample aspect ratio. 456 457@item debug @var{flags} (@emph{decoding/encoding,audio,video,subtitles}) 458Print specific debug info. 459 460Possible values: 461@table @samp 462@item pict 463picture info 464@item rc 465rate control 466@item bitstream 467 468@item mb_type 469macroblock (MB) type 470@item qp 471per-block quantization parameter (QP) 472@item mv 473motion vector 474@item dct_coeff 475 476@item skip 477 478@item startcode 479 480@item pts 481 482@item er 483error recognition 484@item mmco 485memory management control operations (H.264) 486@item bugs 487 488@item vis_qp 489visualize quantization parameter (QP), lower QP are tinted greener 490@item vis_mb_type 491visualize block types 492@item buffers 493picture buffer allocations 494@item thread_ops 495threading operations 496@end table 497 498@item vismv @var{integer} (@emph{decoding,video}) 499Visualize motion vectors (MVs). 500 501Possible values: 502@table @samp 503@item pf 504forward predicted MVs of P-frames 505@item bf 506forward predicted MVs of B-frames 507@item bb 508backward predicted MVs of B-frames 509@end table 510 511@item cmp @var{integer} (@emph{encoding,video}) 512Set full pel me compare function. 513 514Possible values: 515@table @samp 516@item sad 517sum of absolute differences, fast (default) 518@item sse 519sum of squared errors 520@item satd 521sum of absolute Hadamard transformed differences 522@item dct 523sum of absolute DCT transformed differences 524@item psnr 525sum of squared quantization errors (avoid, low quality) 526@item bit 527number of bits needed for the block 528@item rd 529rate distortion optimal, slow 530@item zero 5310 532@item vsad 533sum of absolute vertical differences 534@item vsse 535sum of squared vertical differences 536@item nsse 537noise preserving sum of squared differences 538@item w53 5395/3 wavelet, only used in snow 540@item w97 5419/7 wavelet, only used in snow 542@item dctmax 543 544@item chroma 545 546@end table 547 548@item subcmp @var{integer} (@emph{encoding,video}) 549Set sub pel me compare function. 550 551Possible values: 552@table @samp 553@item sad 554sum of absolute differences, fast (default) 555@item sse 556sum of squared errors 557@item satd 558sum of absolute Hadamard transformed differences 559@item dct 560sum of absolute DCT transformed differences 561@item psnr 562sum of squared quantization errors (avoid, low quality) 563@item bit 564number of bits needed for the block 565@item rd 566rate distortion optimal, slow 567@item zero 5680 569@item vsad 570sum of absolute vertical differences 571@item vsse 572sum of squared vertical differences 573@item nsse 574noise preserving sum of squared differences 575@item w53 5765/3 wavelet, only used in snow 577@item w97 5789/7 wavelet, only used in snow 579@item dctmax 580 581@item chroma 582 583@end table 584 585@item mbcmp @var{integer} (@emph{encoding,video}) 586Set macroblock compare function. 587 588Possible values: 589@table @samp 590@item sad 591sum of absolute differences, fast (default) 592@item sse 593sum of squared errors 594@item satd 595sum of absolute Hadamard transformed differences 596@item dct 597sum of absolute DCT transformed differences 598@item psnr 599sum of squared quantization errors (avoid, low quality) 600@item bit 601number of bits needed for the block 602@item rd 603rate distortion optimal, slow 604@item zero 6050 606@item vsad 607sum of absolute vertical differences 608@item vsse 609sum of squared vertical differences 610@item nsse 611noise preserving sum of squared differences 612@item w53 6135/3 wavelet, only used in snow 614@item w97 6159/7 wavelet, only used in snow 616@item dctmax 617 618@item chroma 619 620@end table 621 622@item ildctcmp @var{integer} (@emph{encoding,video}) 623Set interlaced dct compare function. 624 625Possible values: 626@table @samp 627@item sad 628sum of absolute differences, fast (default) 629@item sse 630sum of squared errors 631@item satd 632sum of absolute Hadamard transformed differences 633@item dct 634sum of absolute DCT transformed differences 635@item psnr 636sum of squared quantization errors (avoid, low quality) 637@item bit 638number of bits needed for the block 639@item rd 640rate distortion optimal, slow 641@item zero 6420 643@item vsad 644sum of absolute vertical differences 645@item vsse 646sum of squared vertical differences 647@item nsse 648noise preserving sum of squared differences 649@item w53 6505/3 wavelet, only used in snow 651@item w97 6529/7 wavelet, only used in snow 653@item dctmax 654 655@item chroma 656 657@end table 658 659@item dia_size @var{integer} (@emph{encoding,video}) 660Set diamond type & size for motion estimation. 661 662@item last_pred @var{integer} (@emph{encoding,video}) 663Set amount of motion predictors from the previous frame. 664 665@item preme @var{integer} (@emph{encoding,video}) 666Set pre motion estimation. 667 668@item precmp @var{integer} (@emph{encoding,video}) 669Set pre motion estimation compare function. 670 671Possible values: 672@table @samp 673@item sad 674sum of absolute differences, fast (default) 675@item sse 676sum of squared errors 677@item satd 678sum of absolute Hadamard transformed differences 679@item dct 680sum of absolute DCT transformed differences 681@item psnr 682sum of squared quantization errors (avoid, low quality) 683@item bit 684number of bits needed for the block 685@item rd 686rate distortion optimal, slow 687@item zero 6880 689@item vsad 690sum of absolute vertical differences 691@item vsse 692sum of squared vertical differences 693@item nsse 694noise preserving sum of squared differences 695@item w53 6965/3 wavelet, only used in snow 697@item w97 6989/7 wavelet, only used in snow 699@item dctmax 700 701@item chroma 702 703@end table 704 705@item pre_dia_size @var{integer} (@emph{encoding,video}) 706Set diamond type & size for motion estimation pre-pass. 707 708@item subq @var{integer} (@emph{encoding,video}) 709Set sub pel motion estimation quality. 710 711@item dtg_active_format @var{integer} 712 713@item me_range @var{integer} (@emph{encoding,video}) 714Set limit motion vectors range (1023 for DivX player). 715 716@item ibias @var{integer} (@emph{encoding,video}) 717Set intra quant bias. 718 719@item pbias @var{integer} (@emph{encoding,video}) 720Set inter quant bias. 721 722@item color_table_id @var{integer} 723 724@item global_quality @var{integer} (@emph{encoding,audio,video}) 725 726@item coder @var{integer} (@emph{encoding,video}) 727 728Possible values: 729@table @samp 730@item vlc 731variable length coder / huffman coder 732@item ac 733arithmetic coder 734@item raw 735raw (no encoding) 736@item rle 737run-length coder 738@item deflate 739deflate-based coder 740@end table 741 742@item context @var{integer} (@emph{encoding,video}) 743Set context model. 744 745@item slice_flags @var{integer} 746 747@item xvmc_acceleration @var{integer} 748 749@item mbd @var{integer} (@emph{encoding,video}) 750Set macroblock decision algorithm (high quality mode). 751 752Possible values: 753@table @samp 754@item simple 755use mbcmp (default) 756@item bits 757use fewest bits 758@item rd 759use best rate distortion 760@end table 761 762@item stream_codec_tag @var{integer} 763 764@item sc_threshold @var{integer} (@emph{encoding,video}) 765Set scene change threshold. 766 767@item lmin @var{integer} (@emph{encoding,video}) 768Set min lagrange factor (VBR). 769 770@item lmax @var{integer} (@emph{encoding,video}) 771Set max lagrange factor (VBR). 772 773@item nr @var{integer} (@emph{encoding,video}) 774Set noise reduction. 775 776@item rc_init_occupancy @var{integer} (@emph{encoding,video}) 777Set number of bits which should be loaded into the rc buffer before 778decoding starts. 779 780@item flags2 @var{flags} (@emph{decoding/encoding,audio,video}) 781 782Possible values: 783@table @samp 784@item fast 785Allow non spec compliant speedup tricks. 786@item sgop 787Deprecated, use mpegvideo private options instead. 788@item noout 789Skip bitstream encoding. 790@item ignorecrop 791Ignore cropping information from sps. 792@item local_header 793Place global headers at every keyframe instead of in extradata. 794@item chunks 795Frame data might be split into multiple chunks. 796@item showall 797Show all frames before the first keyframe. 798@item skiprd 799Deprecated, use mpegvideo private options instead. 800@end table 801 802@item error @var{integer} (@emph{encoding,video}) 803 804@item qns @var{integer} (@emph{encoding,video}) 805Deprecated, use mpegvideo private options instead. 806 807@item threads @var{integer} (@emph{decoding/encoding,video}) 808 809Possible values: 810@table @samp 811@item auto 812detect a good number of threads 813@end table 814 815@item me_threshold @var{integer} (@emph{encoding,video}) 816Set motion estimation threshold. 817 818@item mb_threshold @var{integer} (@emph{encoding,video}) 819Set macroblock threshold. 820 821@item dc @var{integer} (@emph{encoding,video}) 822Set intra_dc_precision. 823 824@item nssew @var{integer} (@emph{encoding,video}) 825Set nsse weight. 826 827@item skip_top @var{integer} (@emph{decoding,video}) 828Set number of macroblock rows at the top which are skipped. 829 830@item skip_bottom @var{integer} (@emph{decoding,video}) 831Set number of macroblock rows at the bottom which are skipped. 832 833@item profile @var{integer} (@emph{encoding,audio,video}) 834 835Possible values: 836@table @samp 837@item unknown 838 839@item aac_main 840 841@item aac_low 842 843@item aac_ssr 844 845@item aac_ltp 846 847@item aac_he 848 849@item aac_he_v2 850 851@item aac_ld 852 853@item aac_eld 854 855@item mpeg2_aac_low 856 857@item mpeg2_aac_he 858 859@item dts 860 861@item dts_es 862 863@item dts_96_24 864 865@item dts_hd_hra 866 867@item dts_hd_ma 868 869@end table 870 871@item level @var{integer} (@emph{encoding,audio,video}) 872 873Possible values: 874@table @samp 875@item unknown 876 877@end table 878 879@item lowres @var{integer} (@emph{decoding,audio,video}) 880Decode at 1= 1/2, 2=1/4, 3=1/8 resolutions. 881 882@item skip_threshold @var{integer} (@emph{encoding,video}) 883Set frame skip threshold. 884 885@item skip_factor @var{integer} (@emph{encoding,video}) 886Set frame skip factor. 887 888@item skip_exp @var{integer} (@emph{encoding,video}) 889Set frame skip exponent. 890Negative values behave identical to the corresponding positive ones, except 891that the score is normalized. 892Positive values exist primarily for compatibility reasons and are not so useful. 893 894@item skipcmp @var{integer} (@emph{encoding,video}) 895Set frame skip compare function. 896 897Possible values: 898@table @samp 899@item sad 900sum of absolute differences, fast (default) 901@item sse 902sum of squared errors 903@item satd 904sum of absolute Hadamard transformed differences 905@item dct 906sum of absolute DCT transformed differences 907@item psnr 908sum of squared quantization errors (avoid, low quality) 909@item bit 910number of bits needed for the block 911@item rd 912rate distortion optimal, slow 913@item zero 9140 915@item vsad 916sum of absolute vertical differences 917@item vsse 918sum of squared vertical differences 919@item nsse 920noise preserving sum of squared differences 921@item w53 9225/3 wavelet, only used in snow 923@item w97 9249/7 wavelet, only used in snow 925@item dctmax 926 927@item chroma 928 929@end table 930 931@item border_mask @var{float} (@emph{encoding,video}) 932Increase the quantizer for macroblocks close to borders. 933 934@item mblmin @var{integer} (@emph{encoding,video}) 935Set min macroblock lagrange factor (VBR). 936 937@item mblmax @var{integer} (@emph{encoding,video}) 938Set max macroblock lagrange factor (VBR). 939 940@item mepc @var{integer} (@emph{encoding,video}) 941Set motion estimation bitrate penalty compensation (1.0 = 256). 942 943@item skip_loop_filter @var{integer} (@emph{decoding,video}) 944@item skip_idct @var{integer} (@emph{decoding,video}) 945@item skip_frame @var{integer} (@emph{decoding,video}) 946 947Make decoder discard processing depending on the frame type selected 948by the option value. 949 950@option{skip_loop_filter} skips frame loop filtering, @option{skip_idct} 951skips frame IDCT/dequantization, @option{skip_frame} skips decoding. 952 953Possible values: 954@table @samp 955@item none 956Discard no frame. 957 958@item default 959Discard useless frames like 0-sized frames. 960 961@item noref 962Discard all non-reference frames. 963 964@item bidir 965Discard all bidirectional frames. 966 967@item nokey 968Discard all frames excepts keyframes. 969 970@item all 971Discard all frames. 972@end table 973 974Default value is @samp{default}. 975 976@item bidir_refine @var{integer} (@emph{encoding,video}) 977Refine the two motion vectors used in bidirectional macroblocks. 978 979@item brd_scale @var{integer} (@emph{encoding,video}) 980Downscale frames for dynamic B-frame decision. 981 982@item keyint_min @var{integer} (@emph{encoding,video}) 983Set minimum interval between IDR-frames. 984 985@item refs @var{integer} (@emph{encoding,video}) 986Set reference frames to consider for motion compensation. 987 988@item chromaoffset @var{integer} (@emph{encoding,video}) 989Set chroma qp offset from luma. 990 991@item trellis @var{integer} (@emph{encoding,audio,video}) 992Set rate-distortion optimal quantization. 993 994@item sc_factor @var{integer} (@emph{encoding,video}) 995Set value multiplied by qscale for each frame and added to 996scene_change_score. 997 998@item mv0_threshold @var{integer} (@emph{encoding,video}) 999@item b_sensitivity @var{integer} (@emph{encoding,video}) 1000Adjust sensitivity of b_frame_strategy 1. 1001 1002@item compression_level @var{integer} (@emph{encoding,audio,video}) 1003@item min_prediction_order @var{integer} (@emph{encoding,audio}) 1004@item max_prediction_order @var{integer} (@emph{encoding,audio}) 1005@item timecode_frame_start @var{integer} (@emph{encoding,video}) 1006Set GOP timecode frame start number, in non drop frame format. 1007 1008@item request_channels @var{integer} (@emph{decoding,audio}) 1009Set desired number of audio channels. 1010 1011@item bits_per_raw_sample @var{integer} 1012@item channel_layout @var{integer} (@emph{decoding/encoding,audio}) 1013 1014Possible values: 1015@table @samp 1016@end table 1017@item request_channel_layout @var{integer} (@emph{decoding,audio}) 1018 1019Possible values: 1020@table @samp 1021@end table 1022@item rc_max_vbv_use @var{float} (@emph{encoding,video}) 1023@item rc_min_vbv_use @var{float} (@emph{encoding,video}) 1024@item ticks_per_frame @var{integer} (@emph{decoding/encoding,audio,video}) 1025@item color_primaries @var{integer} (@emph{decoding/encoding,video}) 1026@item color_trc @var{integer} (@emph{decoding/encoding,video}) 1027@item colorspace @var{integer} (@emph{decoding/encoding,video}) 1028@item color_range @var{integer} (@emph{decoding/encoding,video}) 1029@item chroma_sample_location @var{integer} (@emph{decoding/encoding,video}) 1030 1031@item log_level_offset @var{integer} 1032Set the log level offset. 1033 1034@item slices @var{integer} (@emph{encoding,video}) 1035Number of slices, used in parallelized encoding. 1036 1037@item thread_type @var{flags} (@emph{decoding/encoding,video}) 1038Select which multithreading methods to use. 1039 1040Use of @samp{frame} will increase decoding delay by one frame per 1041thread, so clients which cannot provide future frames should not use 1042it. 1043 1044Possible values: 1045@table @samp 1046@item slice 1047Decode more than one part of a single frame at once. 1048 1049Multithreading using slices works only when the video was encoded with 1050slices. 1051 1052@item frame 1053Decode more than one frame at once. 1054@end table 1055 1056Default value is @samp{slice+frame}. 1057 1058@item audio_service_type @var{integer} (@emph{encoding,audio}) 1059Set audio service type. 1060 1061Possible values: 1062@table @samp 1063@item ma 1064Main Audio Service 1065@item ef 1066Effects 1067@item vi 1068Visually Impaired 1069@item hi 1070Hearing Impaired 1071@item di 1072Dialogue 1073@item co 1074Commentary 1075@item em 1076Emergency 1077@item vo 1078Voice Over 1079@item ka 1080Karaoke 1081@end table 1082 1083@item request_sample_fmt @var{sample_fmt} (@emph{decoding,audio}) 1084Set sample format audio decoders should prefer. Default value is 1085@code{none}. 1086 1087@item pkt_timebase @var{rational number} 1088 1089@item sub_charenc @var{encoding} (@emph{decoding,subtitles}) 1090Set the input subtitles character encoding. 1091 1092@item field_order @var{field_order} (@emph{video}) 1093Set/override the field order of the video. 1094Possible values: 1095@table @samp 1096@item progressive 1097Progressive video 1098@item tt 1099Interlaced video, top field coded and displayed first 1100@item bb 1101Interlaced video, bottom field coded and displayed first 1102@item tb 1103Interlaced video, top coded first, bottom displayed first 1104@item bt 1105Interlaced video, bottom coded first, top displayed first 1106@end table 1107 1108@item skip_alpha @var{integer} (@emph{decoding,video}) 1109Set to 1 to disable processing alpha (transparency). This works like the 1110@samp{gray} flag in the @option{flags} option which skips chroma information 1111instead of alpha. Default is 0. 1112@end table 1113 1114@c man end CODEC OPTIONS 1115 1116@ifclear config-writeonly 1117@include decoders.texi 1118@end ifclear 1119@ifclear config-readonly 1120@include encoders.texi 1121@end ifclear 1122