{"iblock","Sets the impulse block bias",offsetof(OggVorbisContext,iblock),FF_OPT_TYPE_DOUBLE,0,-15,0,AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_ENCODING_PARAM},
{"iblock","Sets the impulse block bias",offsetof(OggVorbisContext,iblock),FF_OPT_TYPE_DOUBLE,{.i64=0},-15,0,AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_ENCODING_PARAM},
{"global_header","place global headers in extradata instead of every keyframe",0,FF_OPT_TYPE_CONST,CODEC_FLAG_GLOBAL_HEADER,INT_MIN,INT_MAX,V|A|E,"flags"},
{"bitexact","use only bitexact stuff (except (i)dct)",0,FF_OPT_TYPE_CONST,CODEC_FLAG_BITEXACT,INT_MIN,INT_MAX,A|V|S|D|E,"flags"},
{"aic","h263 advanced intra coding / mpeg4 ac prediction",0,FF_OPT_TYPE_CONST,CODEC_FLAG_AC_PRED,INT_MIN,INT_MAX,V|E,"flags"},
{"local_header","place global headers at every keyframe instead of in extradata",0,FF_OPT_TYPE_CONST,CODEC_FLAG2_LOCAL_HEADER,INT_MIN,INT_MAX,V|E,"flags2"},
{"direct_blocksize","direct-qpel-blocksize bug (autodetected per fourcc/version)",0,FF_OPT_TYPE_CONST,FF_BUG_DIRECT_BLOCKSIZE,INT_MIN,INT_MAX,V|D,"bug"},
{"edge","edge padding bug (autodetected per fourcc/version)",0,FF_OPT_TYPE_CONST,FF_BUG_EDGE,INT_MIN,INT_MAX,V|D,"bug"},
{"lelim","single coefficient elimination threshold for luminance (negative values also consider dc coefficient)",OFFSET(luma_elim_threshold),FF_OPT_TYPE_INT,DEFAULT,INT_MIN,INT_MAX,V|E},
{"celim","single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)",OFFSET(chroma_elim_threshold),FF_OPT_TYPE_INT,DEFAULT,INT_MIN,INT_MAX,V|E},
{"strict","how strictly to follow the standards",OFFSET(strict_std_compliance),FF_OPT_TYPE_INT,DEFAULT,INT_MIN,INT_MAX,A|V|D|E,"strict"},
{"very","strictly conform to a older more strict version of the spec or reference software",0,FF_OPT_TYPE_CONST,FF_COMPLIANCE_VERY_STRICT,INT_MIN,INT_MAX,V|D|E,"strict"},
{"strict","strictly conform to all the things in the spec no matter what consequences",0,FF_OPT_TYPE_CONST,FF_COMPLIANCE_STRICT,INT_MIN,INT_MAX,V|D|E,"strict"},
{"qsquish","how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)",OFFSET(rc_qsquish),FF_OPT_TYPE_FLOAT,DEFAULT,0,99,V|E},
{"global_header","place global headers in extradata instead of every keyframe",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG_GLOBAL_HEADER},INT_MIN,INT_MAX,V|A|E,"flags"},
{"bitexact","use only bitexact stuff (except (i)dct)",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG_BITEXACT},INT_MIN,INT_MAX,A|V|S|D|E,"flags"},
{"aic","h263 advanced intra coding / mpeg4 ac prediction",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG_AC_PRED},INT_MIN,INT_MAX,V|E,"flags"},
{"scan_offset","will reserve space for svcd scan offset user data",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG_SVCD_SCAN_OFFSET},INT_MIN,INT_MAX,V|E,"flags"},
{"local_header","place global headers at every keyframe instead of in extradata",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG2_LOCAL_HEADER},INT_MIN,INT_MAX,V|E,"flags2"},
{"direct_blocksize","direct-qpel-blocksize bug (autodetected per fourcc/version)",0,FF_OPT_TYPE_CONST,{.i64=FF_BUG_DIRECT_BLOCKSIZE},INT_MIN,INT_MAX,V|D,"bug"},
{"edge","edge padding bug (autodetected per fourcc/version)",0,FF_OPT_TYPE_CONST,{.i64=FF_BUG_EDGE},INT_MIN,INT_MAX,V|D,"bug"},
{"lelim","single coefficient elimination threshold for luminance (negative values also consider dc coefficient)",OFFSET(luma_elim_threshold),FF_OPT_TYPE_INT,{.i64=DEFAULT},INT_MIN,INT_MAX,V|E},
{"celim","single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)",OFFSET(chroma_elim_threshold),FF_OPT_TYPE_INT,{.i64=DEFAULT},INT_MIN,INT_MAX,V|E},
{"strict","how strictly to follow the standards",OFFSET(strict_std_compliance),FF_OPT_TYPE_INT,{.i64=DEFAULT},INT_MIN,INT_MAX,A|V|D|E,"strict"},
{"very","strictly conform to a older more strict version of the spec or reference software",0,FF_OPT_TYPE_CONST,{.i64=FF_COMPLIANCE_VERY_STRICT},INT_MIN,INT_MAX,V|D|E,"strict"},
{"strict","strictly conform to all the things in the spec no matter what consequences",0,FF_OPT_TYPE_CONST,{.i64=FF_COMPLIANCE_STRICT},INT_MIN,INT_MAX,V|D|E,"strict"},
{"qsquish","how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)",OFFSET(rc_qsquish),FF_OPT_TYPE_FLOAT,{.dbl=DEFAULT},0,99,V|E},
{"rc_init_occupancy","number of bits which should be loaded into the rc buffer before decoding starts",OFFSET(rc_initial_buffer_occupancy),FF_OPT_TYPE_INT,DEFAULT,INT_MIN,INT_MAX,V|E},
{"rc_init_occupancy","number of bits which should be loaded into the rc buffer before decoding starts",OFFSET(rc_initial_buffer_occupancy),FF_OPT_TYPE_INT,{.i64=DEFAULT},INT_MIN,INT_MAX,V|E},
{"bpyramid","allows B-frames to be used as references for predicting",0,FF_OPT_TYPE_CONST,CODEC_FLAG2_BPYRAMID,INT_MIN,INT_MAX,V|E,"flags2"},
{"wpred","weighted biprediction for b-frames (H.264)",0,FF_OPT_TYPE_CONST,CODEC_FLAG2_WPRED,INT_MIN,INT_MAX,V|E,"flags2"},
{"mixed_refs","one reference per partition, as opposed to one reference per macroblock",0,FF_OPT_TYPE_CONST,CODEC_FLAG2_MIXED_REFS,INT_MIN,INT_MAX,V|E,"flags2"},
{"border_mask","increases the quantizer for macroblocks close to borders",OFFSET(border_masking),FF_OPT_TYPE_FLOAT,{.dbl=DEFAULT},-FLT_MAX,FLT_MAX,V|E},
{"bpyramid","allows B-frames to be used as references for predicting",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG2_BPYRAMID},INT_MIN,INT_MAX,V|E,"flags2"},
{"wpred","weighted biprediction for b-frames (H.264)",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG2_WPRED},INT_MIN,INT_MAX,V|E,"flags2"},
{"mixed_refs","one reference per partition, as opposed to one reference per macroblock",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG2_MIXED_REFS},INT_MIN,INT_MAX,V|E,"flags2"},
{"timecode_frame_start","GOP timecode frame start number, in non drop frame format",OFFSET(timecode_frame_start),FF_OPT_TYPE_INT64,{.i64=0},0,INT64_MAX,V|E},
{"aq_mode","specify aq method",OFFSET(aq_mode),FF_OPT_TYPE_INT,1,0,INT_MAX,V|E},
{"aq_strength","specify aq strength",OFFSET(aq_strength),FF_OPT_TYPE_FLOAT,1.0,0,FLT_MAX,V|E},
{"rc_lookahead","specify number of frames to look ahead for frametype",OFFSET(rc_lookahead),FF_OPT_TYPE_INT,40,0,INT_MAX,V|E},
{"ssim","ssim will be calculated during encoding",0,FF_OPT_TYPE_CONST,CODEC_FLAG2_SSIM,INT_MIN,INT_MAX,V|E,"flags2"},
{"intra_refresh","use periodic insertion of intra blocks instead of keyframes",0,FF_OPT_TYPE_CONST,CODEC_FLAG2_INTRA_REFRESH,INT_MIN,INT_MAX,V|E,"flags2"},
{"crf_max","in crf mode, prevents vbv from lowering quality beyond this point",OFFSET(crf_max),FF_OPT_TYPE_FLOAT,DEFAULT,0,51,V|E},
{"log_level_offset","set the log level offset",OFFSET(log_level_offset),FF_OPT_TYPE_INT,0,INT_MIN,INT_MAX},
{"vbv_delay","initial buffer fill time in periods of 27Mhz clock",0,FF_OPT_TYPE_INT64,0,0,INT64_MAX},
{"audio_service_type","audio service type",OFFSET(audio_service_type),FF_OPT_TYPE_INT,AV_AUDIO_SERVICE_TYPE_MAIN,0,AV_AUDIO_SERVICE_TYPE_NB-1,A|E,"audio_service_type"},
{"aq_mode","specify aq method",OFFSET(aq_mode),FF_OPT_TYPE_INT,{.i64=1},0,INT_MAX,V|E},
{"aq_strength","specify aq strength",OFFSET(aq_strength),FF_OPT_TYPE_FLOAT,{.dbl=1.0},0,FLT_MAX,V|E},
{"rc_lookahead","specify number of frames to look ahead for frametype",OFFSET(rc_lookahead),FF_OPT_TYPE_INT,{.i64=40},0,INT_MAX,V|E},
{"ssim","ssim will be calculated during encoding",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG2_SSIM},INT_MIN,INT_MAX,V|E,"flags2"},
{"intra_refresh","use periodic insertion of intra blocks instead of keyframes",0,FF_OPT_TYPE_CONST,{.i64=CODEC_FLAG2_INTRA_REFRESH},INT_MIN,INT_MAX,V|E,"flags2"},
{"crf_max","in crf mode, prevents vbv from lowering quality beyond this point",OFFSET(crf_max),FF_OPT_TYPE_FLOAT,{.dbl=DEFAULT},0,51,V|E},
{"log_level_offset","set the log level offset",OFFSET(log_level_offset),FF_OPT_TYPE_INT,{.i64=0},INT_MIN,INT_MAX},
{"lpc_passes","number of passes to use for Cholesky factorization during LPC analysis",OFFSET(lpc_passes),FF_OPT_TYPE_INT,{.i64=-1},INT_MIN,INT_MAX,A|E},
{"slices","number of slices, used in parallelized decoding",OFFSET(slices),FF_OPT_TYPE_INT,{.i64=0},0,INT_MAX,V|E},
{"vbv_delay","initial buffer fill time in periods of 27Mhz clock",0,FF_OPT_TYPE_INT64,{.i64=0},0,INT64_MAX},
{"audio_service_type","audio service type",OFFSET(audio_service_type),FF_OPT_TYPE_INT,{.i64=AV_AUDIO_SERVICE_TYPE_MAIN},0,AV_AUDIO_SERVICE_TYPE_NB-1,A|E,"audio_service_type"},
{"indexmem","max memory used for timestamp index (per stream)",OFFSET(max_index_size),FF_OPT_TYPE_INT,1<<20,0,INT_MAX,D},
{"rtbufsize","max memory used for buffering real-time frames",OFFSET(max_picture_buffer),FF_OPT_TYPE_INT,3041280,0,INT_MAX,D},/* defaults to 1s of 15fps 352x288 YUYV422 video */
{"fdebug","print specific debug info",OFFSET(debug),FF_OPT_TYPE_FLAGS,DEFAULT,0,INT_MAX,E|D,"fdebug"},
{"analyzeduration","how many microseconds are analyzed to estimate duration",OFFSET(max_analyze_duration),FF_OPT_TYPE_INT,{.i64=5*AV_TIME_BASE},0,INT_MAX,D},
{"indexmem","max memory used for timestamp index (per stream)",OFFSET(max_index_size),FF_OPT_TYPE_INT,{.i64=1<<20},0,INT_MAX,D},
{"rtbufsize","max memory used for buffering real-time frames",OFFSET(max_picture_buffer),FF_OPT_TYPE_INT,{.i64=3041280},0,INT_MAX,D},/* defaults to 1s of 15fps 352x288 YUYV422 video */
{"fdebug","print specific debug info",OFFSET(debug),FF_OPT_TYPE_FLAGS,{.i64=DEFAULT},0,INT_MAX,E|D,"fdebug"},
{"be","output in big-endian format (for use as s16be)",0,FF_OPT_TYPE_CONST,SPDIF_FLAG_BIGENDIAN,0,INT_MAX,AV_OPT_FLAG_ENCODING_PARAM,"spdif_flags"},
{"dtshd_rate","mux complete DTS frames in HD mode at the specified IEC958 rate (in Hz, default 0=disabled)",offsetof(IEC61937Context,dtshd_rate),FF_OPT_TYPE_INT,0,0,768000,AV_OPT_FLAG_ENCODING_PARAM},
{"dtshd_fallback_time","min secs to strip HD for after an overflow (-1: till the end, default 60)",offsetof(IEC61937Context,dtshd_fallback),FF_OPT_TYPE_INT,60,-1,INT_MAX,AV_OPT_FLAG_ENCODING_PARAM},
{"be","output in big-endian format (for use as s16be)",0,FF_OPT_TYPE_CONST,{.i64=SPDIF_FLAG_BIGENDIAN},0,INT_MAX,AV_OPT_FLAG_ENCODING_PARAM,"spdif_flags"},
{"dtshd_rate","mux complete DTS frames in HD mode at the specified IEC958 rate (in Hz, default 0=disabled)",offsetof(IEC61937Context,dtshd_rate),FF_OPT_TYPE_INT,{.i64=0},0,768000,AV_OPT_FLAG_ENCODING_PARAM},
{"dtshd_fallback_time","min secs to strip HD for after an overflow (-1: till the end, default 60)",offsetof(IEC61937Context,dtshd_fallback),FF_OPT_TYPE_INT,{.i64=60},-1,INT_MAX,AV_OPT_FLAG_ENCODING_PARAM},