Browse code

Merge remote-tracking branch 'qatar/master'

* qatar/master: (27 commits)
avconv: free packet in write_frame() when discarding due to frame number limit
FATE: use +/- flag option syntax for vp8 emu-edge tests
lavf: make av_interleave_packet_per_dts() private.
lavf: deprecate av_read_packet().
oggdec: output correct timestamps for Vorbis
avconv: pass input stream timestamps to audio encoders
lavc: shrink encoded audio packet size after encoding.
xa: set correct bit rate
xa: do not set bit_rate, block_align, or bits_per_coded_sample
xa: fix end-of-file handling
xa: fix timestamp calculation
bink: fix typo in FFALIGN() argument
bink: align plane width to 8 when calculating bundle sizes
doc: pass -Idoc texi2html and texi2pod
doc: texi2pod: add -I flag
movenc: Add a min_frag_duration option
rtsp: Set the default delay to 0.1 s for the RTSP/SDP/RTP demuxers
libavformat: Set the default for the max_delay option to -1
Generate manpages for AV{Format,Codec}Context AVOptions.
doc/avconv: remove entries for AVOptions.
...

Conflicts:
doc/Makefile
doc/ffmpeg.texi
doc/muxers.texi
ffmpeg.c
libavcodec/Makefile
libavcodec/options.c
libavcodec/vp8.c
libavformat/options.c
tests/fate/demux.mak
tests/ref/fate/truemotion1-15
tests/ref/fate/truemotion1-24

Merged-by: Michael Niedermayer <michaelni@gmx.at>

Michael Niedermayer authored on 2012/03/21 08:15:18
Showing 43 changed files
... ...
@@ -19,7 +19,7 @@ PROGS      := $(PROGS-yes:%=%$(EXESUF))
19 19
 INSTPROGS   = $(PROGS-yes:%=%$(PROGSSUF)$(EXESUF))
20 20
 OBJS        = $(PROGS-yes:%=%.o) cmdutils.o
21 21
 TESTTOOLS   = audiogen videogen rotozoom tiny_psnr base64
22
-HOSTPROGS  := $(TESTTOOLS:%=tests/%)
22
+HOSTPROGS  := $(TESTTOOLS:%=tests/%) doc/print_options
23 23
 TOOLS       = qt-faststart trasher
24 24
 TOOLS-$(CONFIG_ZLIB) += cws2fws
25 25
 
... ...
@@ -28,18 +28,27 @@ doc/%.txt: doc/%.texi
28 28
 	$(Q)$(TEXIDEP)
29 29
 	$(M)makeinfo --force --no-headers -o $@ $< 2>/dev/null
30 30
 
31
+doc/print_options.o: libavformat/options_table.h libavcodec/options_table.h
32
+
33
+GENTEXI  = format codec
34
+GENTEXI := $(GENTEXI:%=doc/avoptions_%.texi)
35
+
36
+$(GENTEXI): TAG = GENTEXI
37
+$(GENTEXI): doc/avoptions_%.texi: doc/print_options
38
+	$(M)doc/print_options $* > $@
39
+
31 40
 doc/%.html: TAG = HTML
32
-doc/%.html: doc/%.texi $(SRC_PATH)/doc/t2h.init
41
+doc/%.html: doc/%.texi $(SRC_PATH)/doc/t2h.init $(GENTEXI)
33 42
 	$(Q)$(TEXIDEP)
34
-	$(M)texi2html -monolithic --init-file $(SRC_PATH)/doc/t2h.init --output $@ $<
43
+	$(M)texi2html -I doc -monolithic --init-file $(SRC_PATH)/doc/t2h.init --output $@ $<
35 44
 
36 45
 doc/%.pod: TAG = POD
37
-doc/%.pod: doc/%.texi
46
+doc/%.pod: doc/%.texi $(GENTEXI)
38 47
 	$(Q)$(TEXIDEP)
39
-	$(M)$(SRC_PATH)/doc/texi2pod.pl $< $@
48
+	$(M)$(SRC_PATH)/doc/texi2pod.pl -Idoc $< $@
40 49
 
41 50
 doc/%.1: TAG = MAN
42
-doc/%.1: doc/%.pod
51
+doc/%.1: doc/%.pod $(GENTEXI)
43 52
 	$(M)pod2man --section=1 --center=" " --release=" " $< > $@
44 53
 
45 54
 $(DOCS): | doc
... ...
@@ -57,7 +66,7 @@ uninstall-man:
57 57
 	$(RM) $(addprefix "$(MANDIR)/man1/",$(ALLMANPAGES))
58 58
 
59 59
 clean::
60
-	$(RM) $(TXTPAGES) doc/*.html doc/*.pod doc/*.1 $(CLEANSUFFIXES:%=doc/%)
60
+	$(RM) $(TXTPAGES) doc/*.html doc/*.pod doc/*.1 $(CLEANSUFFIXES:%=doc/%) doc/avoptions_*.texi
61 61
 
62 62
 -include $(wildcard $(DOCS:%=%.d))
63 63
 
... ...
@@ -175,3 +175,6 @@ use @option{-option 0}/@option{-option 1}.
175 175
 
176 176
 Note2 old undocumented way of specifying per-stream AVOptions by prepending
177 177
 v/a/s to the options name is now obsolete and will be removed soon.
178
+
179
+@include avoptions_codec.texi
180
+@include avoptions_format.texi
... ...
@@ -370,25 +370,7 @@ pad=width:height:x:y:color instead.
370 370
 
371 371
 @item -vn (@emph{output})
372 372
 Disable video recording.
373
-@item -bt @var{tolerance}
374
-Set video bitrate tolerance (in bits, default 4000k).
375
-Has a minimum value of: (target_bitrate/target_framerate).
376
-In 1-pass mode, bitrate tolerance specifies how far ratecontrol is
377
-willing to deviate from the target average bitrate value. This is
378
-not related to min/max bitrate. Lowering tolerance too much has
379
-an adverse effect on quality.
380
-@item -maxrate @var{bitrate}
381
-Set max video bitrate (in bit/s).
382
-Requires -bufsize to be set.
383
-@item -minrate @var{bitrate}
384
-Set min video bitrate (in bit/s).
385
-Most useful in setting up a CBR encode:
386
-@example
387
-ffmpeg -i myfile.avi -b:v 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v
388
-@end example
389
-It is of little use elsewise.
390
-@item -bufsize @var{size}
391
-Set video buffer verifier buffer size (in bits).
373
+
392 374
 @item -vcodec @var{codec} (@emph{output})
393 375
 Set the video codec. This is an alias for @code{-codec:v}.
394 376
 @item -same_quant
... ...
@@ -435,197 +417,14 @@ Set pixel format. Use @code{-pix_fmts} to show all the supported
435 435
 pixel formats.
436 436
 @item -sws_flags @var{flags} (@emph{input/output})
437 437
 Set SwScaler flags.
438
-@item -g @var{gop_size}
439
-Set the group of pictures size.
440
-@item -intra
441
-deprecated, use -g 1
442 438
 @item -vdt @var{n}
443 439
 Discard threshold.
444
-@item -qmin @var{q}
445
-minimum video quantizer scale (VBR)
446
-@item -qmax @var{q}
447
-maximum video quantizer scale (VBR)
448
-@item -qdiff @var{q}
449
-maximum difference between the quantizer scales (VBR)
450
-@item -qblur @var{blur}
451
-video quantizer scale blur (VBR) (range 0.0 - 1.0)
452
-@item -qcomp @var{compression}
453
-video quantizer scale compression (VBR) (default 0.5).
454
-Constant of ratecontrol equation. Recommended range for default rc_eq: 0.0-1.0
455
-
456
-@item -lmin @var{lambda}
457
-minimum video lagrange factor (VBR)
458
-@item -lmax @var{lambda}
459
-max video lagrange factor (VBR)
460
-@item -mblmin @var{lambda}
461
-minimum macroblock quantizer scale (VBR)
462
-@item -mblmax @var{lambda}
463
-maximum macroblock quantizer scale (VBR)
464
-
465
-These four options (lmin, lmax, mblmin, mblmax) use 'lambda' units,
466
-but you may use the QP2LAMBDA constant to easily convert from 'q' units:
467
-@example
468
-ffmpeg -i src.ext -lmax 21*QP2LAMBDA dst.ext
469
-@end example
470
-
471
-@item -rc_init_cplx @var{complexity}
472
-initial complexity for single pass encoding
473
-@item -b_qfactor @var{factor}
474
-qp factor between P- and B-frames
475
-@item -i_qfactor @var{factor}
476
-qp factor between P- and I-frames
477
-@item -b_qoffset @var{offset}
478
-qp offset between P- and B-frames
479
-@item -i_qoffset @var{offset}
480
-qp offset between P- and I-frames
481
-@item -rc_eq @var{equation}
482
-Set rate control equation (see section "Expression Evaluation")
483
-(default = @code{tex^qComp}).
484
-
485
-When computing the rate control equation expression, besides the
486
-standard functions defined in the section "Expression Evaluation", the
487
-following functions are available:
488
-@table @var
489
-@item bits2qp(bits)
490
-@item qp2bits(qp)
491
-@end table
492
-
493
-and the following constants are available:
494
-@table @var
495
-@item iTex
496
-@item pTex
497
-@item tex
498
-@item mv
499
-@item fCode
500
-@item iCount
501
-@item mcVar
502
-@item var
503
-@item isI
504
-@item isP
505
-@item isB
506
-@item avgQP
507
-@item qComp
508
-@item avgIITex
509
-@item avgPITex
510
-@item avgPPTex
511
-@item avgBPTex
512
-@item avgTex
513
-@end table
514 440
 
515 441
 @item -rc_override[:@var{stream_specifier}] @var{override} (@emph{output,per-stream})
516 442
 Rate control override for specific intervals, formatted as "int,int,int"
517 443
 list separated with slashes. Two first values are the beginning and
518 444
 end frame numbers, last one is quantizer to use if positive, or quality
519 445
 factor if negative.
520
-@item -me_method @var{method}
521
-Set motion estimation method to @var{method}.
522
-Available methods are (from lowest to best quality):
523
-@table @samp
524
-@item zero
525
-Try just the (0, 0) vector.
526
-@item phods
527
-@item log
528
-@item x1
529
-@item hex
530
-@item umh
531
-@item epzs
532
-(default method)
533
-@item full
534
-exhaustive search (slow and marginally better than epzs)
535
-@end table
536
-
537
-@item -dct_algo @var{algo}
538
-Set DCT algorithm to @var{algo}. Available values are:
539
-@table @samp
540
-@item 0
541
-FF_DCT_AUTO (default)
542
-@item 1
543
-FF_DCT_FASTINT
544
-@item 2
545
-FF_DCT_INT
546
-@item 3
547
-FF_DCT_MMX
548
-@item 4
549
-FF_DCT_MLIB
550
-@item 5
551
-FF_DCT_ALTIVEC
552
-@end table
553
-
554
-@item -idct_algo @var{algo}
555
-Set IDCT algorithm to @var{algo}. Available values are:
556
-@table @samp
557
-@item 0
558
-FF_IDCT_AUTO (default)
559
-@item 1
560
-FF_IDCT_INT
561
-@item 2
562
-FF_IDCT_SIMPLE
563
-@item 3
564
-FF_IDCT_SIMPLEMMX
565
-@item 4
566
-FF_IDCT_LIBMPEG2MMX
567
-@item 5
568
-FF_IDCT_PS2
569
-@item 6
570
-FF_IDCT_MLIB
571
-@item 7
572
-FF_IDCT_ARM
573
-@item 8
574
-FF_IDCT_ALTIVEC
575
-@item 9
576
-FF_IDCT_SH4
577
-@item 10
578
-FF_IDCT_SIMPLEARM
579
-@end table
580
-
581
-@item -er @var{n}
582
-Set error resilience to @var{n}.
583
-@table @samp
584
-@item 1
585
-FF_ER_CAREFUL (default)
586
-@item 2
587
-FF_ER_COMPLIANT
588
-@item 3
589
-FF_ER_AGGRESSIVE
590
-@item 4
591
-FF_ER_VERY_AGGRESSIVE
592
-@end table
593
-
594
-@item -ec @var{bit_mask}
595
-Set error concealment to @var{bit_mask}. @var{bit_mask} is a bit mask of
596
-the following values:
597
-@table @samp
598
-@item 1
599
-FF_EC_GUESS_MVS (default = enabled)
600
-@item 2
601
-FF_EC_DEBLOCK (default = enabled)
602
-@end table
603
-
604
-@item -bf @var{frames}
605
-Use 'frames' B-frames (supported for MPEG-1, MPEG-2 and MPEG-4).
606
-@item -mbd @var{mode}
607
-macroblock decision
608
-@table @samp
609
-@item 0
610
-FF_MB_DECISION_SIMPLE: Use mb_cmp (cannot change it yet in ffmpeg).
611
-@item 1
612
-FF_MB_DECISION_BITS: Choose the one which needs the fewest bits.
613
-@item 2
614
-FF_MB_DECISION_RD: rate distortion
615
-@end table
616
-
617
-@item -4mv
618
-Use four motion vector by macroblock (MPEG-4 only).
619
-@item -part
620
-Use data partitioning (MPEG-4 only).
621
-@item -bug @var{param}
622
-Work around encoder bugs that are not auto-detected.
623
-@item -strict @var{strictness}
624
-How strictly to follow the standards.
625
-@item -aic
626
-Enable Advanced intra coding (h263+).
627
-@item -umv
628
-Enable Unlimited Motion Vector (h263+)
629 446
 
630 447
 @item -deinterlace
631 448
 Deinterlace pictures.
... ...
@@ -696,28 +495,6 @@ of supported sample formats.
696 696
 @table @option
697 697
 @item -atag @var{fourcc/tag} (@emph{output})
698 698
 Force audio tag/fourcc. This is an alias for @code{-tag:a}.
699
-@item -audio_service_type @var{type}
700
-Set the type of service that the audio stream contains.
701
-@table @option
702
-@item ma
703
-Main Audio Service (default)
704
-@item ef
705
-Effects
706
-@item vi
707
-Visually Impaired
708
-@item hi
709
-Hearing Impaired
710
-@item di
711
-Dialogue
712
-@item co
713
-Commentary
714
-@item em
715
-Emergency
716
-@item vo
717
-Voice Over
718
-@item ka
719
-Karaoke
720
-@end table
721 699
 @item -absf @var{bitstream_filter}
722 700
 Deprecated, see -bsf
723 701
 @end table
... ...
@@ -945,8 +722,6 @@ Exit after ffmpeg has been running for @var{duration} seconds.
945 945
 Dump each input packet to stderr.
946 946
 @item -hex (@emph{global})
947 947
 When dumping packets, also dump the payload.
948
-@item -ps @var{size}
949
-Set RTP payload size in bytes.
950 948
 @item -re (@emph{input})
951 949
 Read input at native frame rate. Mainly used to simulate a grab device.
952 950
 @item -loop_input
... ...
@@ -957,8 +732,6 @@ This option is deprecated, use -loop 1.
957 957
 Repeatedly loop output for formats that support looping such as animated GIF
958 958
 (0 will loop the output infinitely).
959 959
 This option is deprecated, use -loop.
960
-@item -threads @var{count}
961
-Thread count.
962 960
 @item -vsync @var{parameter}
963 961
 Video sync method.
964 962
 For compatibility reasons old values can be specified as numbers.
... ...
@@ -1294,6 +1067,19 @@ ffmpeg -i test1.avi -i test2.avi -map 0.3 -map 0.2 -map 0.1 -map 0.0 -c copy tes
1294 1294
 The resulting output file @file{test12.avi} will contain first four streams from
1295 1295
 the input file in reverse order.
1296 1296
 
1297
+@item
1298
+To force CBR video output:
1299
+@example
1300
+ffmpeg -i myfile.avi -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v
1301
+@end example
1302
+
1303
+@item
1304
+The four options lmin, lmax, mblmin and mblmax use 'lambda' units,
1305
+but you may use the QP2LAMBDA constant to easily convert from 'q' units:
1306
+@example
1307
+ffmpeg -i src.ext -lmax 21*QP2LAMBDA dst.ext
1308
+@end example
1309
+
1297 1310
 @end itemize
1298 1311
 @c man end EXAMPLES
1299 1312
 
... ...
@@ -181,8 +181,15 @@ Allow the caller to manually choose when to cut fragments, by
181 181
 calling @code{av_write_frame(ctx, NULL)} to write a fragment with
182 182
 the packets written so far. (This is only useful with other
183 183
 applications integrating libavformat, not from @command{ffmpeg}.)
184
+@item -min_frag_duration @var{duration}
185
+Don't create fragments that are shorter than @var{duration} microseconds long.
184 186
 @end table
185 187
 
188
+If more than one condition is specified, fragments are cut when
189
+one of the specified conditions is fulfilled. The exception to this is
190
+@code{-min_frag_duration}, which has to be fulfilled for any of the other
191
+conditions to apply.
192
+
186 193
 Additionally, the way the output file is written can be adjusted
187 194
 through a few other options:
188 195
 
189 196
new file mode 100644
... ...
@@ -0,0 +1,123 @@
0
+/*
1
+ * Copyright (c) 2012 Anton Khirnov
2
+ *
3
+ * This file is part of Libav.
4
+ *
5
+ * Libav is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * Libav is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with Libav; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+
20
+/*
21
+ * generate texinfo manpages for avoptions
22
+ */
23
+
24
+#include <stddef.h>
25
+#include <string.h>
26
+#include <float.h>
27
+
28
+#include "libavformat/avformat.h"
29
+#include "libavcodec/avcodec.h"
30
+#include "libavutil/opt.h"
31
+
32
+static void print_usage(void)
33
+{
34
+    fprintf(stderr, "Usage: enum_options type\n"
35
+            "type: format codec\n");
36
+    exit(1);
37
+}
38
+
39
+static void print_option(const AVOption *opts, const AVOption *o, int per_stream)
40
+{
41
+    printf("@item -%s%s @var{", o->name, per_stream ? "[:stream_specifier]" : "");
42
+    switch (o->type) {
43
+    case AV_OPT_TYPE_BINARY:   printf("hexadecimal string"); break;
44
+    case AV_OPT_TYPE_STRING:   printf("string");             break;
45
+    case AV_OPT_TYPE_INT:
46
+    case AV_OPT_TYPE_INT64:    printf("integer");            break;
47
+    case AV_OPT_TYPE_FLOAT:
48
+    case AV_OPT_TYPE_DOUBLE:   printf("float");              break;
49
+    case AV_OPT_TYPE_RATIONAL: printf("rational number");    break;
50
+    case AV_OPT_TYPE_FLAGS:    printf("flags");              break;
51
+    default:                   printf("value");              break;
52
+    }
53
+    printf("} (@emph{");
54
+
55
+    if (o->flags & AV_OPT_FLAG_DECODING_PARAM) {
56
+        printf("input");
57
+        if (o->flags & AV_OPT_FLAG_ENCODING_PARAM)
58
+            printf("/");
59
+    }
60
+    if (o->flags & AV_OPT_FLAG_ENCODING_PARAM) printf("output");
61
+    if (o->flags & AV_OPT_FLAG_AUDIO_PARAM)    printf(",audio");
62
+    if (o->flags & AV_OPT_FLAG_VIDEO_PARAM)    printf(",video");
63
+    if (o->flags & AV_OPT_FLAG_SUBTITLE_PARAM) printf(",subtitles");
64
+
65
+    printf("})\n");
66
+    if (o->help)
67
+        printf("%s\n", o->help);
68
+
69
+    if (o->unit) {
70
+        const AVOption *u;
71
+        printf("\nPossible values:\n@table @samp\n");
72
+
73
+        for (u = opts; u->name; u++) {
74
+            if (u->type == AV_OPT_TYPE_CONST && u->unit && !strcmp(u->unit, o->unit))
75
+                printf("@item %s\n%s\n", u->name, u->help ? u->help : "");
76
+        }
77
+        printf("@end table\n");
78
+    }
79
+}
80
+
81
+static void show_opts(const AVOption *opts, int per_stream)
82
+{
83
+    const AVOption *o;
84
+
85
+    printf("@table @option\n");
86
+    for (o = opts; o->name; o++) {
87
+        if (o->type != AV_OPT_TYPE_CONST)
88
+            print_option(opts, o, per_stream);
89
+    }
90
+    printf("@end table\n");
91
+}
92
+
93
+static void show_format_opts(void)
94
+{
95
+#include "libavformat/options_table.h"
96
+
97
+    printf("@section Format AVOptions\n");
98
+    show_opts(options, 0);
99
+}
100
+
101
+static void show_codec_opts(void)
102
+{
103
+#include "libavcodec/options_table.h"
104
+
105
+    printf("@section Codec AVOptions\n");
106
+    show_opts(options, 1);
107
+}
108
+
109
+int main(int argc, char **argv)
110
+{
111
+    if (argc < 2)
112
+        print_usage();
113
+
114
+    if (!strcmp(argv[1], "format"))
115
+        show_format_opts();
116
+    else if (!strcmp(argv[1], "codec"))
117
+        show_codec_opts();
118
+    else
119
+        print_usage();
120
+
121
+    return 0;
122
+}
... ...
@@ -318,9 +318,9 @@ Accept packets only from negotiated peer address and port.
318 318
 @end table
319 319
 
320 320
 When receiving data over UDP, the demuxer tries to reorder received packets
321
-(since they may arrive out of order, or packets may get lost totally). In
322
-order for this to be enabled, a maximum delay must be specified in the
323
-@code{max_delay} field of AVFormatContext.
321
+(since they may arrive out of order, or packets may get lost totally). This
322
+can be disabled by setting the maximum demuxing delay to zero (via
323
+the @code{max_delay} field of AVFormatContext).
324 324
 
325 325
 When watching multi-bitrate Real-RTSP streams with @command{ffplay}, the
326 326
 streams to display can be chosen with @code{-vst} @var{n} and
... ...
@@ -36,7 +36,7 @@ $shift = "";
36 36
 %defs = ();
37 37
 $fnno = 1;
38 38
 $inf = "";
39
-$ibase = "";
39
+@ibase = ();
40 40
 
41 41
 while ($_ = shift) {
42 42
     if (/^-D(.*)$/) {
... ...
@@ -52,6 +52,8 @@ while ($_ = shift) {
52 52
         die "flags may only contain letters, digits, hyphens, dashes and underscores\n"
53 53
             unless $flag =~ /^[a-zA-Z0-9_-]+$/;
54 54
         $defs{$flag} = $value;
55
+    } elsif (/^-I(.*)$/) {
56
+        push @ibase, $1 ne "" ? $1 : shift;
55 57
     } elsif (/^-/) {
56 58
         usage();
57 59
     } else {
... ...
@@ -61,10 +63,12 @@ while ($_ = shift) {
61 61
     }
62 62
 }
63 63
 
64
+push @ibase, ".";
65
+
64 66
 if (defined $in) {
65 67
     $inf = gensym();
66 68
     open($inf, "<$in") or die "opening \"$in\": $!\n";
67
-    $ibase = $1 if $in =~ m|^(.+)/[^/]+$|;
69
+    push @ibase, $1 if $in =~ m|^(.+)/[^/]+$|;
68 70
 } else {
69 71
     $inf = \*STDIN;
70 72
 }
... ...
@@ -74,7 +78,7 @@ if (defined $out) {
74 74
 }
75 75
 
76 76
 while(defined $inf) {
77
-while(<$inf>) {
77
+INF: while(<$inf>) {
78 78
     # Certain commands are discarded without further processing.
79 79
     /^\@(?:
80 80
          [a-z]+index            # @*index: useful only in complete manual
... ...
@@ -104,11 +108,10 @@ while(<$inf>) {
104 104
         push @instack, $inf;
105 105
         $inf = gensym();
106 106
 
107
-        # Try cwd and $ibase.
108
-        open($inf, "<" . $1)
109
-            or open($inf, "<" . $ibase . "/" . $1)
110
-                or die "cannot open $1 or $ibase/$1: $!\n";
111
-        next;
107
+        for (@ibase) {
108
+            open($inf, "<" . $_ . "/" . $1) and next INF;
109
+        }
110
+        die "cannot open $1: $!\n";
112 111
     };
113 112
 
114 113
     # Look for blocks surrounded by @c man begin SECTION ... @c man end.
... ...
@@ -1007,8 +1007,10 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost)
1007 1007
      * reordering, see do_video_out()
1008 1008
      */
1009 1009
     if (!(avctx->codec_type == AVMEDIA_TYPE_VIDEO && avctx->codec)) {
1010
-        if (ost->frame_number >= ost->max_frames)
1010
+        if (ost->frame_number >= ost->max_frames) {
1011
+            av_free_packet(pkt);
1011 1012
             return;
1013
+        }
1012 1014
         ost->frame_number++;
1013 1015
     }
1014 1016
 
... ...
@@ -1083,6 +1085,7 @@ static int encode_audio_frame(AVFormatContext *s, OutputStream *ost,
1083 1083
             exit_program(1);
1084 1084
         }
1085 1085
 
1086
+        frame->pts = ost->sync_opts;
1086 1087
         ost->sync_opts += frame->nb_samples;
1087 1088
     }
1088 1089
 
... ...
@@ -5065,7 +5068,7 @@ static const OptionDef options[] = {
5065 5065
     { "padleft", HAS_ARG | OPT_VIDEO, {(void*)opt_pad}, "Removed, use the pad filter instead", "size" },
5066 5066
     { "padright", HAS_ARG | OPT_VIDEO, {(void*)opt_pad}, "Removed, use the pad filter instead", "size" },
5067 5067
     { "padcolor", HAS_ARG | OPT_VIDEO, {(void*)opt_pad}, "Removed, use the pad filter instead", "color" },
5068
-    { "intra", OPT_BOOL | OPT_EXPERT | OPT_VIDEO, {(void*)&intra_only}, "use only intra frames"},
5068
+    { "intra", OPT_BOOL | OPT_EXPERT | OPT_VIDEO, {(void*)&intra_only}, "deprecated use -g 1"},
5069 5069
     { "vn", OPT_BOOL | OPT_VIDEO | OPT_OFFSET, {.off = OFFSET(video_disable)}, "disable video" },
5070 5070
     { "vdt", OPT_INT | HAS_ARG | OPT_EXPERT | OPT_VIDEO, {(void*)&video_discard}, "discard threshold", "n" },
5071 5071
     { "rc_override", HAS_ARG | OPT_EXPERT | OPT_VIDEO | OPT_STRING | OPT_SPEC, {.off = OFFSET(rc_overrides)}, "rate control override for specific intervals", "override" },
... ...
@@ -616,7 +616,7 @@ OBJS-$(CONFIG_MPEGTS_DEMUXER)          += mpeg4audio.o mpegaudiodata.o
616 616
 OBJS-$(CONFIG_MXF_MUXER)               += timecode.o
617 617
 OBJS-$(CONFIG_NUT_MUXER)               += mpegaudiodata.o
618 618
 OBJS-$(CONFIG_OGG_DEMUXER)             += flacdec.o flacdata.o flac.o \
619
-                                          dirac.o mpeg12data.o vorbis_data.o
619
+                                          dirac.o mpeg12data.o vorbis_parser.o vorbis_data.o
620 620
 OBJS-$(CONFIG_OGG_MUXER)               += xiph.o flacdec.o flacdata.o flac.o \
621 621
                                           vorbis_data.o
622 622
 OBJS-$(CONFIG_RTP_MUXER)               += mpeg4audio.o mpegvideo.o xiph.o
... ...
@@ -146,6 +146,8 @@ enum BlockTypes {
146 146
  */
147 147
 static void init_lengths(BinkContext *c, int width, int bw)
148 148
 {
149
+    width = FFALIGN(width, 8);
150
+
149 151
     c->bundle[BINK_SRC_BLOCK_TYPES].len = av_log2((width >> 3) + 511) + 1;
150 152
 
151 153
     c->bundle[BINK_SRC_SUB_BLOCK_TYPES].len = av_log2(((width + 7) >> 4) + 511) + 1;
... ...
@@ -30,6 +30,8 @@
30 30
 #include "libavutil/opt.h"
31 31
 #include <float.h>              /* FLT_MIN, FLT_MAX */
32 32
 
33
+#include "options_table.h"
34
+
33 35
 static const char* context_to_name(void* ptr) {
34 36
     AVCodecContext *avc= ptr;
35 37
 
... ...
@@ -63,384 +65,12 @@ static const AVClass *codec_child_class_next(const AVClass *prev)
63 63
     return NULL;
64 64
 }
65 65
 
66
-#define OFFSET(x) offsetof(AVCodecContext,x)
67
-#define DEFAULT 0 //should be NAN but it does not work as it is not a constant in glibc as required by ANSI/ISO C
68
-//these names are too long to be readable
69
-#define V AV_OPT_FLAG_VIDEO_PARAM
70
-#define A AV_OPT_FLAG_AUDIO_PARAM
71
-#define S AV_OPT_FLAG_SUBTITLE_PARAM
72
-#define E AV_OPT_FLAG_ENCODING_PARAM
73
-#define D AV_OPT_FLAG_DECODING_PARAM
74
-
75
-#define AV_CODEC_DEFAULT_BITRATE 200*1000
76
-
77
-static const AVOption options[]={
78
-{"b", "set bitrate (in bits/s)", OFFSET(bit_rate), AV_OPT_TYPE_INT, {.dbl = AV_CODEC_DEFAULT_BITRATE }, INT_MIN, INT_MAX, A|V|E},
79
-{"ab", "set bitrate (in bits/s)", OFFSET(bit_rate), AV_OPT_TYPE_INT, {.dbl = 128*1000 }, INT_MIN, INT_MAX, A|E},
80
-{"bt", "set video bitrate tolerance (in bits/s)", OFFSET(bit_rate_tolerance), AV_OPT_TYPE_INT, {.dbl = AV_CODEC_DEFAULT_BITRATE*20 }, 1, INT_MAX, V|E},
81
-{"flags", NULL, OFFSET(flags), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, UINT_MAX, V|A|E|D, "flags"},
82
-{"mv4", "use four motion vector by macroblock (mpeg4)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_4MV }, INT_MIN, INT_MAX, V|E, "flags"},
83
-{"qpel", "use 1/4 pel motion compensation", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_QPEL }, INT_MIN, INT_MAX, V|E, "flags"},
84
-{"loop", "use loop filter", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_LOOP_FILTER }, INT_MIN, INT_MAX, V|E, "flags"},
85
-{"qscale", "use fixed qscale", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_QSCALE }, INT_MIN, INT_MAX, 0, "flags"},
86
-{"gmc", "use gmc", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_GMC }, INT_MIN, INT_MAX, V|E, "flags"},
87
-{"mv0", "always try a mb with mv=<0,0>", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_MV0 }, INT_MIN, INT_MAX, V|E, "flags"},
88
-{"input_preserved", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_INPUT_PRESERVED }, INT_MIN, INT_MAX, 0, "flags"},
89
-{"pass1", "use internal 2pass ratecontrol in first  pass mode", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_PASS1 }, INT_MIN, INT_MAX, 0, "flags"},
90
-{"pass2", "use internal 2pass ratecontrol in second pass mode", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_PASS2 }, INT_MIN, INT_MAX, 0, "flags"},
91
-{"gray", "only decode/encode grayscale", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_GRAY }, INT_MIN, INT_MAX, V|E|D, "flags"},
92
-{"emu_edge", "don't draw edges", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_EMU_EDGE }, INT_MIN, INT_MAX, 0, "flags"},
93
-{"psnr", "error[?] variables will be set during encoding", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_PSNR }, INT_MIN, INT_MAX, V|E, "flags"},
94
-{"truncated", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_TRUNCATED }, INT_MIN, INT_MAX, 0, "flags"},
95
-{"naq", "normalize adaptive quantization", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_NORMALIZE_AQP }, INT_MIN, INT_MAX, V|E, "flags"},
96
-{"ildct", "use interlaced dct", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_INTERLACED_DCT }, INT_MIN, INT_MAX, V|E, "flags"},
97
-{"low_delay", "force low delay", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_LOW_DELAY }, INT_MIN, INT_MAX, V|D|E, "flags"},
98
-{"global_header", "place global headers in extradata instead of every keyframe", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_GLOBAL_HEADER }, INT_MIN, INT_MAX, V|A|E, "flags"},
99
-{"bitexact", "use only bitexact stuff (except (i)dct)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_BITEXACT }, INT_MIN, INT_MAX, A|V|S|D|E, "flags"},
100
-{"aic", "h263 advanced intra coding / mpeg4 ac prediction", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_AC_PRED }, INT_MIN, INT_MAX, V|E, "flags"},
101
-#if FF_API_MPV_GLOBAL_OPTS
102
-{"cbp", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_CBP_RD }, INT_MIN, INT_MAX, V|E, "flags"},
103
-{"qprd", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_QP_RD }, INT_MIN, INT_MAX, V|E, "flags"},
104
-#endif
105
-{"ilme", "interlaced motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_INTERLACED_ME }, INT_MIN, INT_MAX, V|E, "flags"},
106
-{"cgop", "closed gop", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_CLOSED_GOP }, INT_MIN, INT_MAX, V|E, "flags"},
107
-{"fast", "allow non spec compliant speedup tricks", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_FAST }, INT_MIN, INT_MAX, V|E, "flags2"},
108
-#if FF_API_MPV_GLOBAL_OPTS
109
-{"sgop", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_STRICT_GOP }, INT_MIN, INT_MAX, V|E, "flags2"},
110
-#endif
111
-{"noout", "skip bitstream encoding", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_NO_OUTPUT }, INT_MIN, INT_MAX, V|E, "flags2"},
112
-{"local_header", "place global headers at every keyframe instead of in extradata", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_LOCAL_HEADER }, INT_MIN, INT_MAX, V|E, "flags2"},
113
-{"showall", "Show all frames before the first keyframe", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_SHOW_ALL }, INT_MIN, INT_MAX, V|D, "flags2"},
114
-#if FF_API_SUB_ID
115
-{"sub_id", NULL, OFFSET(sub_id), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
116
-#endif
117
-{"me_method", "set motion estimation method", OFFSET(me_method), AV_OPT_TYPE_INT, {.dbl = ME_EPZS }, INT_MIN, INT_MAX, V|E, "me_method"},
118
-{"zero", "zero motion estimation (fastest)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_ZERO }, INT_MIN, INT_MAX, V|E, "me_method" },
119
-{"full", "full motion estimation (slowest)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_FULL }, INT_MIN, INT_MAX, V|E, "me_method" },
120
-{"epzs", "EPZS motion estimation (default)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_EPZS }, INT_MIN, INT_MAX, V|E, "me_method" },
121
-{"esa", "esa motion estimation (alias for full)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_FULL }, INT_MIN, INT_MAX, V|E, "me_method" },
122
-{"tesa", "tesa motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_TESA }, INT_MIN, INT_MAX, V|E, "me_method" },
123
-{"dia", "dia motion estimation (alias for epzs)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_EPZS }, INT_MIN, INT_MAX, V|E, "me_method" },
124
-{"log", "log motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_LOG }, INT_MIN, INT_MAX, V|E, "me_method" },
125
-{"phods", "phods motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_PHODS }, INT_MIN, INT_MAX, V|E, "me_method" },
126
-{"x1", "X1 motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_X1 }, INT_MIN, INT_MAX, V|E, "me_method" },
127
-{"hex", "hex motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_HEX }, INT_MIN, INT_MAX, V|E, "me_method" },
128
-{"umh", "umh motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_UMH }, INT_MIN, INT_MAX, V|E, "me_method" },
129
-{"iter", "iter motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_ITER }, INT_MIN, INT_MAX, V|E, "me_method" },
130
-{"extradata_size", NULL, OFFSET(extradata_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
131
-{"time_base", NULL, OFFSET(time_base), AV_OPT_TYPE_RATIONAL, {.dbl = 0}, INT_MIN, INT_MAX},
132
-{"g", "set the group of picture size", OFFSET(gop_size), AV_OPT_TYPE_INT, {.dbl = 12 }, INT_MIN, INT_MAX, V|E},
133
-{"ar", "set audio sampling rate (in Hz)", OFFSET(sample_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|D|E},
134
-{"ac", "set number of audio channels", OFFSET(channels), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|D|E},
135
-{"cutoff", "set cutoff bandwidth", OFFSET(cutoff), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|E},
136
-{"frame_size", NULL, OFFSET(frame_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|E},
137
-{"frame_number", NULL, OFFSET(frame_number), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
138
-{"delay", NULL, OFFSET(delay), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
139
-{"qcomp", "video quantizer scale compression (VBR)", OFFSET(qcompress), AV_OPT_TYPE_FLOAT, {.dbl = 0.5 }, -FLT_MAX, FLT_MAX, V|E},
140
-{"qblur", "video quantizer scale blur (VBR)", OFFSET(qblur), AV_OPT_TYPE_FLOAT, {.dbl = 0.5 }, -1, FLT_MAX, V|E},
141
-{"qmin", "min video quantizer scale (VBR)", OFFSET(qmin), AV_OPT_TYPE_INT, {.dbl = 2 }, -1, 69, V|E},
142
-{"qmax", "max video quantizer scale (VBR)", OFFSET(qmax), AV_OPT_TYPE_INT, {.dbl = 31 }, -1, 1024, V|E},
143
-{"qdiff", "max difference between the quantizer scale (VBR)", OFFSET(max_qdiff), AV_OPT_TYPE_INT, {.dbl = 3 }, INT_MIN, INT_MAX, V|E},
144
-{"bf", "use 'frames' B frames", OFFSET(max_b_frames), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, -1, FF_MAX_B_FRAMES, V|E},
145
-{"b_qfactor", "qp factor between p and b frames", OFFSET(b_quant_factor), AV_OPT_TYPE_FLOAT, {.dbl = 1.25 }, -FLT_MAX, FLT_MAX, V|E},
146
-{"rc_strategy", "ratecontrol method", OFFSET(rc_strategy), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
147
-{"b_strategy", "strategy to choose between I/P/B-frames", OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX, V|E},
148
-{"ps", "rtp payload size in bytes", OFFSET(rtp_payload_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
149
-{"mv_bits", NULL, OFFSET(mv_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
150
-{"header_bits", NULL, OFFSET(header_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
151
-{"i_tex_bits", NULL, OFFSET(i_tex_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
152
-{"p_tex_bits", NULL, OFFSET(p_tex_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
153
-{"i_count", NULL, OFFSET(i_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
154
-{"p_count", NULL, OFFSET(p_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
155
-{"skip_count", NULL, OFFSET(skip_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
156
-{"misc_bits", NULL, OFFSET(misc_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
157
-{"frame_bits", NULL, OFFSET(frame_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
158
-{"codec_tag", NULL, OFFSET(codec_tag), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
159
-{"bug", "workaround not auto detected encoder bugs", OFFSET(workaround_bugs), AV_OPT_TYPE_FLAGS, {.dbl = FF_BUG_AUTODETECT }, INT_MIN, INT_MAX, V|D, "bug"},
160
-{"autodetect", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_AUTODETECT }, INT_MIN, INT_MAX, V|D, "bug"},
161
-{"old_msmpeg4", "some old lavc generated msmpeg4v3 files (no autodetection)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_OLD_MSMPEG4 }, INT_MIN, INT_MAX, V|D, "bug"},
162
-{"xvid_ilace", "Xvid interlacing bug (autodetected if fourcc==XVIX)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_XVID_ILACE }, INT_MIN, INT_MAX, V|D, "bug"},
163
-{"ump4", "(autodetected if fourcc==UMP4)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_UMP4 }, INT_MIN, INT_MAX, V|D, "bug"},
164
-{"no_padding", "padding bug (autodetected)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_NO_PADDING }, INT_MIN, INT_MAX, V|D, "bug"},
165
-{"amv", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_AMV }, INT_MIN, INT_MAX, V|D, "bug"},
166
-{"ac_vlc", "illegal vlc bug (autodetected per fourcc)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_AC_VLC }, INT_MIN, INT_MAX, V|D, "bug"},
167
-{"qpel_chroma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_QPEL_CHROMA }, INT_MIN, INT_MAX, V|D, "bug"},
168
-{"std_qpel", "old standard qpel (autodetected per fourcc/version)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_STD_QPEL }, INT_MIN, INT_MAX, V|D, "bug"},
169
-{"qpel_chroma2", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_QPEL_CHROMA2 }, INT_MIN, INT_MAX, V|D, "bug"},
170
-{"direct_blocksize", "direct-qpel-blocksize bug (autodetected per fourcc/version)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_DIRECT_BLOCKSIZE }, INT_MIN, INT_MAX, V|D, "bug"},
171
-{"edge", "edge padding bug (autodetected per fourcc/version)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_EDGE }, INT_MIN, INT_MAX, V|D, "bug"},
172
-{"hpel_chroma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_HPEL_CHROMA }, INT_MIN, INT_MAX, V|D, "bug"},
173
-{"dc_clip", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_DC_CLIP }, INT_MIN, INT_MAX, V|D, "bug"},
174
-{"ms", "workaround various bugs in microsofts broken decoders", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_MS }, INT_MIN, INT_MAX, V|D, "bug"},
175
-{"trunc", "trancated frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_TRUNCATED}, INT_MIN, INT_MAX, V|D, "bug"},
176
-#if FF_API_MPV_GLOBAL_OPTS
177
-{"lelim", "single coefficient elimination threshold for luminance (negative values also consider dc coefficient)", OFFSET(luma_elim_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
178
-{"celim", "single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)", OFFSET(chroma_elim_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
179
-#endif
180
-{"strict", "how strictly to follow the standards", OFFSET(strict_std_compliance), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|V|D|E, "strict"},
181
-{"very", "strictly conform to a older more strict version of the spec or reference software", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_VERY_STRICT }, INT_MIN, INT_MAX, V|D|E, "strict"},
182
-{"strict", "strictly conform to all the things in the spec no matter what consequences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_STRICT }, INT_MIN, INT_MAX, V|D|E, "strict"},
183
-{"normal", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_NORMAL }, INT_MIN, INT_MAX, V|D|E, "strict"},
184
-{"unofficial", "allow unofficial extensions", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_UNOFFICIAL }, INT_MIN, INT_MAX, V|D|E, "strict"},
185
-{"experimental", "allow non standardized experimental things", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_EXPERIMENTAL }, INT_MIN, INT_MAX, V|D|E, "strict"},
186
-{"b_qoffset", "qp offset between P and B frames", OFFSET(b_quant_offset), AV_OPT_TYPE_FLOAT, {.dbl = 1.25 }, -FLT_MAX, FLT_MAX, V|E},
187
-{"err_detect", "set error detection flags", OFFSET(err_recognition), AV_OPT_TYPE_FLAGS, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
188
-{"crccheck", "verify embedded CRCs", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
189
-{"bitstream", "detect bitstream specification deviations", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BITSTREAM }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
190
-{"buffer", "detect improper bitstream length", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BUFFER }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
191
-{"explode", "abort decoding on minor error detection", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_EXPLODE }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
192
-{"careful",    "consider things that violate the spec and have not been seen in the wild as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CAREFUL }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
193
-{"compliant",  "consider all spec non compliancies as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_COMPLIANT }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
194
-{"aggressive", "consider things that a sane encoder shouldnt do as an error", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_AGGRESSIVE }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
195
-{"has_b_frames", NULL, OFFSET(has_b_frames), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
196
-{"block_align", NULL, OFFSET(block_align), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
197
-{"mpeg_quant", "use MPEG quantizers instead of H.263", OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
198
-{"stats_out", NULL, OFFSET(stats_out), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX},
199
-{"stats_in", NULL, OFFSET(stats_in), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX},
200
-{"qsquish", "how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)", OFFSET(rc_qsquish), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, 0, 99, V|E},
201
-{"rc_qmod_amp", "experimental quantizer modulation", OFFSET(rc_qmod_amp), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, -FLT_MAX, FLT_MAX, V|E},
202
-{"rc_qmod_freq", "experimental quantizer modulation", OFFSET(rc_qmod_freq), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
203
-{"rc_override_count", NULL, OFFSET(rc_override_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
204
-{"rc_eq", "set rate control equation", OFFSET(rc_eq), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, V|E},
205
-{"maxrate", "set max bitrate tolerance (in bits/s)", OFFSET(rc_max_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
206
-{"minrate", "set min bitrate tolerance (in bits/s)", OFFSET(rc_min_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
207
-{"bufsize", "set ratecontrol buffer size (in bits)", OFFSET(rc_buffer_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|V|E},
208
-{"rc_buf_aggressivity", "currently useless", OFFSET(rc_buffer_aggressivity), AV_OPT_TYPE_FLOAT, {.dbl = 1.0 }, -FLT_MAX, FLT_MAX, V|E},
209
-{"i_qfactor", "qp factor between P and I frames", OFFSET(i_quant_factor), AV_OPT_TYPE_FLOAT, {.dbl = -0.8 }, -FLT_MAX, FLT_MAX, V|E},
210
-{"i_qoffset", "qp offset between P and I frames", OFFSET(i_quant_offset), AV_OPT_TYPE_FLOAT, {.dbl = 0.0 }, -FLT_MAX, FLT_MAX, V|E},
211
-{"rc_init_cplx", "initial complexity for 1-pass encoding", OFFSET(rc_initial_cplx), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, -FLT_MAX, FLT_MAX, V|E},
212
-{"dct", "DCT algorithm", OFFSET(dct_algo), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, V|E, "dct"},
213
-{"auto", "autoselect a good one (default)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_AUTO }, INT_MIN, INT_MAX, V|E, "dct"},
214
-{"fastint", "fast integer", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_FASTINT }, INT_MIN, INT_MAX, V|E, "dct"},
215
-{"int", "accurate integer", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_INT }, INT_MIN, INT_MAX, V|E, "dct"},
216
-{"mmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_MMX }, INT_MIN, INT_MAX, V|E, "dct"},
217
-{"altivec", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_ALTIVEC }, INT_MIN, INT_MAX, V|E, "dct"},
218
-{"faan", "floating point AAN DCT", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_FAAN }, INT_MIN, INT_MAX, V|E, "dct"},
219
-{"lumi_mask", "compresses bright areas stronger than medium ones", OFFSET(lumi_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
220
-{"tcplx_mask", "temporal complexity masking", OFFSET(temporal_cplx_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
221
-{"scplx_mask", "spatial complexity masking", OFFSET(spatial_cplx_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
222
-{"p_mask", "inter masking", OFFSET(p_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
223
-{"dark_mask", "compresses dark areas stronger than medium ones", OFFSET(dark_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
224
-{"idct", "select IDCT implementation", OFFSET(idct_algo), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, V|E|D, "idct"},
225
-{"auto", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_AUTO }, INT_MIN, INT_MAX, V|E|D, "idct"},
226
-{"int", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_INT }, INT_MIN, INT_MAX, V|E|D, "idct"},
227
-{"simple", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLE }, INT_MIN, INT_MAX, V|E|D, "idct"},
228
-{"simplemmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEMMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
229
-{"libmpeg2mmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_LIBMPEG2MMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
230
-{"mmi", NULL, 0, AV_OPT_TYPE_CONST, { .dbl = FF_IDCT_MMI }, INT_MIN, INT_MAX, V|E|D, "idct"},
231
-{"arm", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_ARM }, INT_MIN, INT_MAX, V|E|D, "idct"},
232
-{"altivec", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_ALTIVEC }, INT_MIN, INT_MAX, V|E|D, "idct"},
233
-{"sh4", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SH4 }, INT_MIN, INT_MAX, V|E|D, "idct"},
234
-{"simplearm", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEARM }, INT_MIN, INT_MAX, V|E|D, "idct"},
235
-{"simplearmv5te", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEARMV5TE }, INT_MIN, INT_MAX, V|E|D, "idct"},
236
-{"simplearmv6", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEARMV6 }, INT_MIN, INT_MAX, V|E|D, "idct"},
237
-{"simpleneon", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLENEON }, INT_MIN, INT_MAX, V|E|D, "idct"},
238
-{"simplealpha", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEALPHA }, INT_MIN, INT_MAX, V|E|D, "idct"},
239
-{"h264", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_H264 }, INT_MIN, INT_MAX, V|E|D, "idct"},
240
-{"vp3", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_VP3 }, INT_MIN, INT_MAX, V|E|D, "idct"},
241
-{"ipp", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_IPP }, INT_MIN, INT_MAX, V|E|D, "idct"},
242
-{"xvidmmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_XVIDMMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
243
-{"faani", "floating point AAN IDCT", 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_FAAN }, INT_MIN, INT_MAX, V|D|E, "idct"},
244
-{"slice_count", NULL, OFFSET(slice_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
245
-{"ec", "set error concealment strategy", OFFSET(error_concealment), AV_OPT_TYPE_FLAGS, {.dbl = 3 }, INT_MIN, INT_MAX, V|D, "ec"},
246
-{"guess_mvs", "iterative motion vector (MV) search (slow)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_EC_GUESS_MVS }, INT_MIN, INT_MAX, V|D, "ec"},
247
-{"deblock", "use strong deblock filter for damaged MBs", 0, AV_OPT_TYPE_CONST, {.dbl = FF_EC_DEBLOCK }, INT_MIN, INT_MAX, V|D, "ec"},
248
-{"bits_per_coded_sample", NULL, OFFSET(bits_per_coded_sample), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
249
-{"pred", "prediction method", OFFSET(prediction_method), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "pred"},
250
-{"left", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PRED_LEFT }, INT_MIN, INT_MAX, V|E, "pred"},
251
-{"plane", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PRED_PLANE }, INT_MIN, INT_MAX, V|E, "pred"},
252
-{"median", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PRED_MEDIAN }, INT_MIN, INT_MAX, V|E, "pred"},
253
-{"aspect", "sample aspect ratio", OFFSET(sample_aspect_ratio), AV_OPT_TYPE_RATIONAL, {.dbl = 0}, 0, 10, V|E},
254
-{"debug", "print specific debug info", OFFSET(debug), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, INT_MAX, V|A|S|E|D, "debug"},
255
-{"pict", "picture info", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_PICT_INFO }, INT_MIN, INT_MAX, V|D, "debug"},
256
-{"rc", "rate control", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_RC }, INT_MIN, INT_MAX, V|E, "debug"},
257
-{"bitstream", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_BITSTREAM }, INT_MIN, INT_MAX, V|D, "debug"},
258
-{"mb_type", "macroblock (MB) type", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_MB_TYPE }, INT_MIN, INT_MAX, V|D, "debug"},
259
-{"qp", "per-block quantization parameter (QP)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_QP }, INT_MIN, INT_MAX, V|D, "debug"},
260
-{"mv", "motion vector", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_MV }, INT_MIN, INT_MAX, V|D, "debug"},
261
-{"dct_coeff", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_DCT_COEFF }, INT_MIN, INT_MAX, V|D, "debug"},
262
-{"skip", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_SKIP }, INT_MIN, INT_MAX, V|D, "debug"},
263
-{"startcode", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_STARTCODE }, INT_MIN, INT_MAX, V|D, "debug"},
264
-{"pts", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_PTS }, INT_MIN, INT_MAX, V|D, "debug"},
265
-{"er", "error recognition", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_ER }, INT_MIN, INT_MAX, V|D, "debug"},
266
-{"mmco", "memory management control operations (H.264)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_MMCO }, INT_MIN, INT_MAX, V|D, "debug"},
267
-{"bugs", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_BUGS }, INT_MIN, INT_MAX, V|D, "debug"},
268
-{"vis_qp", "visualize quantization parameter (QP), lower QP are tinted greener", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_QP }, INT_MIN, INT_MAX, V|D, "debug"},
269
-{"vis_mb_type", "visualize block types", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MB_TYPE }, INT_MIN, INT_MAX, V|D, "debug"},
270
-{"buffers", "picture buffer allocations", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_BUFFERS }, INT_MIN, INT_MAX, V|D, "debug"},
271
-{"thread_ops", "threading operations", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_THREADS }, INT_MIN, INT_MAX, V|D, "debug"},
272
-{"vismv", "visualize motion vectors (MVs)", OFFSET(debug_mv), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, V|D, "debug_mv"},
273
-{"pf", "forward predicted MVs of P-frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MV_P_FOR }, INT_MIN, INT_MAX, V|D, "debug_mv"},
274
-{"bf", "forward predicted MVs of B-frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MV_B_FOR }, INT_MIN, INT_MAX, V|D, "debug_mv"},
275
-{"bb", "backward predicted MVs of B-frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MV_B_BACK }, INT_MIN, INT_MAX, V|D, "debug_mv"},
276
-{"cmp", "full pel me compare function", OFFSET(me_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
277
-{"subcmp", "sub pel me compare function", OFFSET(me_sub_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
278
-{"mbcmp", "macroblock compare function", OFFSET(mb_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
279
-{"ildctcmp", "interlaced dct compare function", OFFSET(ildct_cmp), AV_OPT_TYPE_INT, {.dbl = FF_CMP_VSAD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
280
-{"dia_size", "diamond type & size for motion estimation", OFFSET(dia_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
281
-{"last_pred", "amount of motion predictors from the previous frame", OFFSET(last_predictor_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
282
-{"preme", "pre motion estimation", OFFSET(pre_me), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
283
-{"precmp", "pre motion estimation compare function", OFFSET(me_pre_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
284
-{"sad", "sum of absolute differences, fast (default)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_SAD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
285
-{"sse", "sum of squared errors", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_SSE }, INT_MIN, INT_MAX, V|E, "cmp_func"},
286
-{"satd", "sum of absolute Hadamard transformed differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_SATD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
287
-{"dct", "sum of absolute DCT transformed differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_DCT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
288
-{"psnr", "sum of squared quantization errors (avoid, low quality)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_PSNR }, INT_MIN, INT_MAX, V|E, "cmp_func"},
289
-{"bit", "number of bits needed for the block", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_BIT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
290
-{"rd", "rate distortion optimal, slow", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_RD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
291
-{"zero", "0", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_ZERO }, INT_MIN, INT_MAX, V|E, "cmp_func"},
292
-{"vsad", "sum of absolute vertical differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_VSAD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
293
-{"vsse", "sum of squared vertical differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_VSSE }, INT_MIN, INT_MAX, V|E, "cmp_func"},
294
-{"nsse", "noise preserving sum of squared differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_NSSE }, INT_MIN, INT_MAX, V|E, "cmp_func"},
295
-#if CONFIG_SNOW_ENCODER
296
-{"w53", "5/3 wavelet, only used in snow", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_W53 }, INT_MIN, INT_MAX, V|E, "cmp_func"},
297
-{"w97", "9/7 wavelet, only used in snow", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_W97 }, INT_MIN, INT_MAX, V|E, "cmp_func"},
298
-#endif
299
-{"dctmax", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_DCTMAX }, INT_MIN, INT_MAX, V|E, "cmp_func"},
300
-{"chroma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_CHROMA }, INT_MIN, INT_MAX, V|E, "cmp_func"},
301
-{"pre_dia_size", "diamond type & size for motion estimation pre-pass", OFFSET(pre_dia_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
302
-{"subq", "sub pel motion estimation quality", OFFSET(me_subpel_quality), AV_OPT_TYPE_INT, {.dbl = 8 }, INT_MIN, INT_MAX, V|E},
303
-{"dtg_active_format", NULL, OFFSET(dtg_active_format), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
304
-{"me_range", "limit motion vectors range (1023 for DivX player)", OFFSET(me_range), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
305
-{"ibias", "intra quant bias", OFFSET(intra_quant_bias), AV_OPT_TYPE_INT, {.dbl = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, V|E},
306
-{"pbias", "inter quant bias", OFFSET(inter_quant_bias), AV_OPT_TYPE_INT, {.dbl = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, V|E},
307
-#if FF_API_COLOR_TABLE_ID
308
-{"color_table_id", NULL, OFFSET(color_table_id), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
309
-#endif
310
-{"global_quality", NULL, OFFSET(global_quality), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
311
-{"coder", NULL, OFFSET(coder_type), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "coder"},
312
-{"vlc", "variable length coder / huffman coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_VLC }, INT_MIN, INT_MAX, V|E, "coder"},
313
-{"ac", "arithmetic coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_AC }, INT_MIN, INT_MAX, V|E, "coder"},
314
-{"raw", "raw (no encoding)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_RAW }, INT_MIN, INT_MAX, V|E, "coder"},
315
-{"rle", "run-length coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_RLE }, INT_MIN, INT_MAX, V|E, "coder"},
316
-{"deflate", "deflate-based coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_DEFLATE }, INT_MIN, INT_MAX, V|E, "coder"},
317
-{"context", "context model", OFFSET(context_model), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
318
-{"slice_flags", NULL, OFFSET(slice_flags), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
319
-{"xvmc_acceleration", NULL, OFFSET(xvmc_acceleration), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
320
-{"mbd", "macroblock decision algorithm (high quality mode)", OFFSET(mb_decision), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "mbd"},
321
-{"simple", "use mbcmp (default)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_MB_DECISION_SIMPLE }, INT_MIN, INT_MAX, V|E, "mbd"},
322
-{"bits", "use fewest bits", 0, AV_OPT_TYPE_CONST, {.dbl = FF_MB_DECISION_BITS }, INT_MIN, INT_MAX, V|E, "mbd"},
323
-{"rd", "use best rate distortion", 0, AV_OPT_TYPE_CONST, {.dbl = FF_MB_DECISION_RD }, INT_MIN, INT_MAX, V|E, "mbd"},
324
-{"stream_codec_tag", NULL, OFFSET(stream_codec_tag), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
325
-{"sc_threshold", "scene change threshold", OFFSET(scenechange_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
326
-{"lmin", "min lagrange factor (VBR)", OFFSET(lmin), AV_OPT_TYPE_INT, {.dbl =  2*FF_QP2LAMBDA }, 0, INT_MAX, V|E},
327
-{"lmax", "max lagrange factor (VBR)", OFFSET(lmax), AV_OPT_TYPE_INT, {.dbl = 31*FF_QP2LAMBDA }, 0, INT_MAX, V|E},
328
-{"nr", "noise reduction", OFFSET(noise_reduction), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
329
-{"rc_init_occupancy", "number of bits which should be loaded into the rc buffer before decoding starts", OFFSET(rc_initial_buffer_occupancy), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
330
-#if FF_API_INTER_THRESHOLD
331
-{"inter_threshold", NULL, OFFSET(inter_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
332
-#endif
333
-{"flags2", NULL, OFFSET(flags2), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT}, 0, UINT_MAX, V|A|E|D, "flags2"},
334
-{"error", NULL, OFFSET(error_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
335
-#if FF_API_MPV_GLOBAL_OPTS
336
-{"qns", "deprecated, use mpegvideo private options instead", OFFSET(quantizer_noise_shaping), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
337
-#endif
338
-{"threads", NULL, OFFSET(thread_count), AV_OPT_TYPE_INT, {.dbl = 1 }, 0, INT_MAX, V|E|D, "threads"},
339
-{"auto", "detect a good number of threads", 0, AV_OPT_TYPE_CONST, {.dbl = 0 }, INT_MIN, INT_MAX, V|E|D, "threads"},
340
-{"me_threshold", "motion estimaton threshold", OFFSET(me_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
341
-{"mb_threshold", "macroblock threshold", OFFSET(mb_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
342
-{"dc", "intra_dc_precision", OFFSET(intra_dc_precision), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX, V|E},
343
-{"nssew", "nsse weight", OFFSET(nsse_weight), AV_OPT_TYPE_INT, {.dbl = 8 }, INT_MIN, INT_MAX, V|E},
344
-{"skip_top", "number of macroblock rows at the top which are skipped", OFFSET(skip_top), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|D},
345
-{"skip_bottom", "number of macroblock rows at the bottom which are skipped", OFFSET(skip_bottom), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|D},
346
-{"profile", NULL, OFFSET(profile), AV_OPT_TYPE_INT, {.dbl = FF_PROFILE_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "profile"},
347
-{"unknown", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "profile"},
348
-{"aac_main", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_MAIN }, INT_MIN, INT_MAX, A|E, "profile"},
349
-{"aac_low", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_LOW }, INT_MIN, INT_MAX, A|E, "profile"},
350
-{"aac_ssr", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_SSR }, INT_MIN, INT_MAX, A|E, "profile"},
351
-{"aac_ltp", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_LTP }, INT_MIN, INT_MAX, A|E, "profile"},
352
-{"dts", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS }, INT_MIN, INT_MAX, A|E, "profile"},
353
-{"dts_es", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_ES }, INT_MIN, INT_MAX, A|E, "profile"},
354
-{"dts_96_24", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_96_24 }, INT_MIN, INT_MAX, A|E, "profile"},
355
-{"dts_hd_hra", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_HD_HRA }, INT_MIN, INT_MAX, A|E, "profile"},
356
-{"dts_hd_ma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_HD_MA }, INT_MIN, INT_MAX, A|E, "profile"},
357
-{"level", NULL, OFFSET(level), AV_OPT_TYPE_INT, {.dbl = FF_LEVEL_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "level"},
358
-{"unknown", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_LEVEL_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "level"},
359
-{"lowres", "decode at 1= 1/2, 2=1/4, 3=1/8 resolutions", OFFSET(lowres), AV_OPT_TYPE_INT, {.dbl = 0 }, 0, INT_MAX, V|A|D},
360
-{"skip_threshold", "frame skip threshold", OFFSET(frame_skip_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
361
-{"skip_factor", "frame skip factor", OFFSET(frame_skip_factor), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
362
-{"skip_exp", "frame skip exponent", OFFSET(frame_skip_exp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
363
-{"skipcmp", "frame skip compare function", OFFSET(frame_skip_cmp), AV_OPT_TYPE_INT, {.dbl = FF_CMP_DCTMAX }, INT_MIN, INT_MAX, V|E, "cmp_func"},
364
-{"border_mask", "increases the quantizer for macroblocks close to borders", OFFSET(border_masking), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, -FLT_MAX, FLT_MAX, V|E},
365
-{"mblmin", "min macroblock lagrange factor (VBR)", OFFSET(mb_lmin), AV_OPT_TYPE_INT, {.dbl = FF_QP2LAMBDA * 2 }, 1, FF_LAMBDA_MAX, V|E},
366
-{"mblmax", "max macroblock lagrange factor (VBR)", OFFSET(mb_lmax), AV_OPT_TYPE_INT, {.dbl = FF_QP2LAMBDA * 31 }, 1, FF_LAMBDA_MAX, V|E},
367
-{"mepc", "motion estimation bitrate penalty compensation (1.0 = 256)", OFFSET(me_penalty_compensation), AV_OPT_TYPE_INT, {.dbl = 256 }, INT_MIN, INT_MAX, V|E},
368
-{"skip_loop_filter", NULL, OFFSET(skip_loop_filter), AV_OPT_TYPE_INT, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
369
-{"skip_idct"       , NULL, OFFSET(skip_idct)       , AV_OPT_TYPE_INT, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
370
-{"skip_frame"      , NULL, OFFSET(skip_frame)      , AV_OPT_TYPE_INT, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
371
-{"none"            , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_NONE    }, INT_MIN, INT_MAX, V|D, "avdiscard"},
372
-{"default"         , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
373
-{"noref"           , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_NONREF  }, INT_MIN, INT_MAX, V|D, "avdiscard"},
374
-{"bidir"           , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_BIDIR   }, INT_MIN, INT_MAX, V|D, "avdiscard"},
375
-{"nokey"           , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_NONKEY  }, INT_MIN, INT_MAX, V|D, "avdiscard"},
376
-{"all"             , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_ALL     }, INT_MIN, INT_MAX, V|D, "avdiscard"},
377
-{"bidir_refine", "refine the two motion vectors used in bidirectional macroblocks", OFFSET(bidir_refine), AV_OPT_TYPE_INT, {.dbl = 1 }, 0, 4, V|E},
378
-{"brd_scale", "downscales frames for dynamic B-frame decision", OFFSET(brd_scale), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, 10, V|E},
379
-{"keyint_min", "minimum interval between IDR-frames", OFFSET(keyint_min), AV_OPT_TYPE_INT, {.dbl = 25 }, INT_MIN, INT_MAX, V|E},
380
-{"refs", "reference frames to consider for motion compensation", OFFSET(refs), AV_OPT_TYPE_INT, {.dbl = 1 }, INT_MIN, INT_MAX, V|E},
381
-{"chromaoffset", "chroma qp offset from luma", OFFSET(chromaoffset), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
382
-{"trellis", "rate-distortion optimal quantization", OFFSET(trellis), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
383
-#if FF_API_MPV_GLOBAL_OPTS
384
-{"skiprd", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_SKIP_RD }, INT_MIN, INT_MAX, V|E, "flags2"},
385
-#endif
386
-{"sc_factor", "multiplied by qscale for each frame and added to scene_change_score", OFFSET(scenechange_factor), AV_OPT_TYPE_INT, {.dbl = 6 }, 0, INT_MAX, V|E},
387
-{"mv0_threshold", NULL, OFFSET(mv0_threshold), AV_OPT_TYPE_INT, {.dbl = 256 }, 0, INT_MAX, V|E},
388
-{"b_sensitivity", "adjusts sensitivity of b_frame_strategy 1", OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.dbl = 40 }, 1, INT_MAX, V|E},
389
-{"compression_level", NULL, OFFSET(compression_level), AV_OPT_TYPE_INT, {.dbl = FF_COMPRESSION_DEFAULT }, INT_MIN, INT_MAX, V|A|E},
390
-{"min_prediction_order", NULL, OFFSET(min_prediction_order), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, A|E},
391
-{"max_prediction_order", NULL, OFFSET(max_prediction_order), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, A|E},
392
-{"timecode_frame_start", "GOP timecode frame start number, in non drop frame format", OFFSET(timecode_frame_start), AV_OPT_TYPE_INT64, {.dbl = 0 }, 0, INT64_MAX, V|E},
393
-#if FF_API_REQUEST_CHANNELS
394
-{"request_channels", "set desired number of audio channels", OFFSET(request_channels), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, A|D},
395
-#endif
396
-{"bits_per_raw_sample", NULL, OFFSET(bits_per_raw_sample), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
397
-{"channel_layout", NULL, OFFSET(channel_layout), AV_OPT_TYPE_INT64, {.dbl = DEFAULT }, 0, INT64_MAX, A|E|D, "channel_layout"},
398
-{"request_channel_layout", NULL, OFFSET(request_channel_layout), AV_OPT_TYPE_INT64, {.dbl = DEFAULT }, 0, INT64_MAX, A|D, "request_channel_layout"},
399
-{"rc_max_vbv_use", NULL, OFFSET(rc_max_available_vbv_use), AV_OPT_TYPE_FLOAT, {.dbl = 1.0/3 }, 0.0, FLT_MAX, V|E},
400
-{"rc_min_vbv_use", NULL, OFFSET(rc_min_vbv_overflow_use),  AV_OPT_TYPE_FLOAT, {.dbl = 3 },     0.0, FLT_MAX, V|E},
401
-{"ticks_per_frame", NULL, OFFSET(ticks_per_frame), AV_OPT_TYPE_INT, {.dbl = 1 }, 1, INT_MAX, A|V|E|D},
402
-{"color_primaries", NULL, OFFSET(color_primaries), AV_OPT_TYPE_INT, {.dbl = AVCOL_PRI_UNSPECIFIED }, 1, AVCOL_PRI_NB-1, V|E|D},
403
-{"color_trc", NULL, OFFSET(color_trc), AV_OPT_TYPE_INT, {.dbl = AVCOL_TRC_UNSPECIFIED }, 1, AVCOL_TRC_NB-1, V|E|D},
404
-{"colorspace", NULL, OFFSET(colorspace), AV_OPT_TYPE_INT, {.dbl = AVCOL_SPC_UNSPECIFIED }, 1, AVCOL_SPC_NB-1, V|E|D},
405
-{"color_range", NULL, OFFSET(color_range), AV_OPT_TYPE_INT, {.dbl = AVCOL_RANGE_UNSPECIFIED }, 0, AVCOL_RANGE_NB-1, V|E|D},
406
-{"chroma_sample_location", NULL, OFFSET(chroma_sample_location), AV_OPT_TYPE_INT, {.dbl = AVCHROMA_LOC_UNSPECIFIED }, 0, AVCHROMA_LOC_NB-1, V|E|D},
407
-{"log_level_offset", "set the log level offset", OFFSET(log_level_offset), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX },
408
-{"slices", "number of slices, used in parallelized encoding", OFFSET(slices), AV_OPT_TYPE_INT, {.dbl = 0 }, 0, INT_MAX, V|E},
409
-{"thread_type", "select multithreading type", OFFSET(thread_type), AV_OPT_TYPE_FLAGS, {.dbl = FF_THREAD_SLICE|FF_THREAD_FRAME }, 0, INT_MAX, V|E|D, "thread_type"},
410
-{"slice", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_THREAD_SLICE }, INT_MIN, INT_MAX, V|E|D, "thread_type"},
411
-{"frame", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_THREAD_FRAME }, INT_MIN, INT_MAX, V|E|D, "thread_type"},
412
-{"audio_service_type", "audio service type", OFFSET(audio_service_type), AV_OPT_TYPE_INT, {.dbl = AV_AUDIO_SERVICE_TYPE_MAIN }, 0, AV_AUDIO_SERVICE_TYPE_NB-1, A|E, "audio_service_type"},
413
-{"ma", "Main Audio Service", 0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_MAIN },              INT_MIN, INT_MAX, A|E, "audio_service_type"},
414
-{"ef", "Effects",            0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_EFFECTS },           INT_MIN, INT_MAX, A|E, "audio_service_type"},
415
-{"vi", "Visually Impaired",  0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED }, INT_MIN, INT_MAX, A|E, "audio_service_type"},
416
-{"hi", "Hearing Impaired",   0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED },  INT_MIN, INT_MAX, A|E, "audio_service_type"},
417
-{"di", "Dialogue",           0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_DIALOGUE },          INT_MIN, INT_MAX, A|E, "audio_service_type"},
418
-{"co", "Commentary",         0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_COMMENTARY },        INT_MIN, INT_MAX, A|E, "audio_service_type"},
419
-{"em", "Emergency",          0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_EMERGENCY },         INT_MIN, INT_MAX, A|E, "audio_service_type"},
420
-{"vo", "Voice Over",         0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_VOICE_OVER },        INT_MIN, INT_MAX, A|E, "audio_service_type"},
421
-{"ka", "Karaoke",            0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_KARAOKE },           INT_MIN, INT_MAX, A|E, "audio_service_type"},
422
-{"request_sample_fmt", "sample format audio decoders should prefer", OFFSET(request_sample_fmt), AV_OPT_TYPE_INT, {.dbl = AV_SAMPLE_FMT_NONE }, AV_SAMPLE_FMT_NONE, AV_SAMPLE_FMT_NB-1, A|D, "request_sample_fmt"},
423
-{"u8" , "8-bit unsigned integer", 0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_U8  }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
424
-{"s16", "16-bit signed integer",  0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_S16 }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
425
-{"s32", "32-bit signed integer",  0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_S32 }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
426
-{"flt", "32-bit float",           0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_FLT }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
427
-{"dbl", "64-bit double",          0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_DBL }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
428
-{NULL},
429
-};
430
-
431
-#undef A
432
-#undef V
433
-#undef S
434
-#undef E
435
-#undef D
436
-#undef DEFAULT
437
-
438 66
 static const AVClass av_codec_context_class = {
439 67
     .class_name              = "AVCodecContext",
440 68
     .item_name               = context_to_name,
441 69
     .option                  = options,
442 70
     .version                 = LIBAVUTIL_VERSION_INT,
443
-    .log_level_offset_offset = OFFSET(log_level_offset),
71
+    .log_level_offset_offset = offsetof(AVCodecContext, log_level_offset),
444 72
     .child_next              = codec_child_next,
445 73
     .child_class_next        = codec_child_class_next,
446 74
 };
447 75
new file mode 100644
... ...
@@ -0,0 +1,408 @@
0
+/*
1
+ * Copyright (c) 2001 Fabrice Bellard
2
+ * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at>
3
+ *
4
+ * This file is part of FFmpeg.
5
+ *
6
+ * FFmpeg is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * FFmpeg is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with FFmpeg; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+#ifndef AVCODEC_OPTIONS_TABLE
22
+#define AVCODEC_OPTIONS_TABLE
23
+
24
+#define OFFSET(x) offsetof(AVCodecContext,x)
25
+#define DEFAULT 0 //should be NAN but it does not work as it is not a constant in glibc as required by ANSI/ISO C
26
+//these names are too long to be readable
27
+#define V AV_OPT_FLAG_VIDEO_PARAM
28
+#define A AV_OPT_FLAG_AUDIO_PARAM
29
+#define S AV_OPT_FLAG_SUBTITLE_PARAM
30
+#define E AV_OPT_FLAG_ENCODING_PARAM
31
+#define D AV_OPT_FLAG_DECODING_PARAM
32
+
33
+#define AV_CODEC_DEFAULT_BITRATE 200*1000
34
+
35
+static const AVOption options[]={
36
+{"b", "set bitrate (in bits/s)", OFFSET(bit_rate), AV_OPT_TYPE_INT, {.dbl = AV_CODEC_DEFAULT_BITRATE }, INT_MIN, INT_MAX, A|V|E},
37
+{"ab", "set bitrate (in bits/s)", OFFSET(bit_rate), AV_OPT_TYPE_INT, {.dbl = 128*1000 }, INT_MIN, INT_MAX, A|E},
38
+{"bt", "Set video bitrate tolerance (in bits/s). In 1-pass mode, bitrate tolerance specifies how far "
39
+       "ratecontrol is willing to deviate from the target average bitrate value. This is not related "
40
+       "to min/max bitrate. Lowering tolerance too much has an adverse effect on quality.",
41
+       OFFSET(bit_rate_tolerance), AV_OPT_TYPE_INT, {.dbl = AV_CODEC_DEFAULT_BITRATE*20 }, 1, INT_MAX, V|E},
42
+{"flags", NULL, OFFSET(flags), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, UINT_MAX, V|A|E|D, "flags"},
43
+{"mv4", "use four motion vector by macroblock (mpeg4)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_4MV }, INT_MIN, INT_MAX, V|E, "flags"},
44
+{"qpel", "use 1/4 pel motion compensation", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_QPEL }, INT_MIN, INT_MAX, V|E, "flags"},
45
+{"loop", "use loop filter", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_LOOP_FILTER }, INT_MIN, INT_MAX, V|E, "flags"},
46
+{"qscale", "use fixed qscale", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_QSCALE }, INT_MIN, INT_MAX, 0, "flags"},
47
+{"gmc", "use gmc", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_GMC }, INT_MIN, INT_MAX, V|E, "flags"},
48
+{"mv0", "always try a mb with mv=<0,0>", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_MV0 }, INT_MIN, INT_MAX, V|E, "flags"},
49
+{"input_preserved", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_INPUT_PRESERVED }, INT_MIN, INT_MAX, 0, "flags"},
50
+{"pass1", "use internal 2pass ratecontrol in first  pass mode", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_PASS1 }, INT_MIN, INT_MAX, 0, "flags"},
51
+{"pass2", "use internal 2pass ratecontrol in second pass mode", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_PASS2 }, INT_MIN, INT_MAX, 0, "flags"},
52
+{"gray", "only decode/encode grayscale", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_GRAY }, INT_MIN, INT_MAX, V|E|D, "flags"},
53
+{"emu_edge", "don't draw edges", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_EMU_EDGE }, INT_MIN, INT_MAX, 0, "flags"},
54
+{"psnr", "error[?] variables will be set during encoding", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_PSNR }, INT_MIN, INT_MAX, V|E, "flags"},
55
+{"truncated", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_TRUNCATED }, INT_MIN, INT_MAX, 0, "flags"},
56
+{"naq", "normalize adaptive quantization", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_NORMALIZE_AQP }, INT_MIN, INT_MAX, V|E, "flags"},
57
+{"ildct", "use interlaced dct", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_INTERLACED_DCT }, INT_MIN, INT_MAX, V|E, "flags"},
58
+{"low_delay", "force low delay", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_LOW_DELAY }, INT_MIN, INT_MAX, V|D|E, "flags"},
59
+{"global_header", "place global headers in extradata instead of every keyframe", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_GLOBAL_HEADER }, INT_MIN, INT_MAX, V|A|E, "flags"},
60
+{"bitexact", "use only bitexact stuff (except (i)dct)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_BITEXACT }, INT_MIN, INT_MAX, A|V|S|D|E, "flags"},
61
+{"aic", "h263 advanced intra coding / mpeg4 ac prediction", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_AC_PRED }, INT_MIN, INT_MAX, V|E, "flags"},
62
+#if FF_API_MPV_GLOBAL_OPTS
63
+{"cbp", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_CBP_RD }, INT_MIN, INT_MAX, V|E, "flags"},
64
+{"qprd", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_QP_RD }, INT_MIN, INT_MAX, V|E, "flags"},
65
+#endif
66
+{"ilme", "interlaced motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_INTERLACED_ME }, INT_MIN, INT_MAX, V|E, "flags"},
67
+{"cgop", "closed gop", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG_CLOSED_GOP }, INT_MIN, INT_MAX, V|E, "flags"},
68
+{"fast", "allow non spec compliant speedup tricks", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_FAST }, INT_MIN, INT_MAX, V|E, "flags2"},
69
+#if FF_API_MPV_GLOBAL_OPTS
70
+{"sgop", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_STRICT_GOP }, INT_MIN, INT_MAX, V|E, "flags2"},
71
+#endif
72
+{"noout", "skip bitstream encoding", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_NO_OUTPUT }, INT_MIN, INT_MAX, V|E, "flags2"},
73
+{"local_header", "place global headers at every keyframe instead of in extradata", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_LOCAL_HEADER }, INT_MIN, INT_MAX, V|E, "flags2"},
74
+{"showall", "Show all frames before the first keyframe", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_SHOW_ALL }, INT_MIN, INT_MAX, V|D, "flags2"},
75
+#if FF_API_SUB_ID
76
+{"sub_id", NULL, OFFSET(sub_id), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
77
+#endif
78
+{"me_method", "set motion estimation method", OFFSET(me_method), AV_OPT_TYPE_INT, {.dbl = ME_EPZS }, INT_MIN, INT_MAX, V|E, "me_method"},
79
+{"zero", "zero motion estimation (fastest)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_ZERO }, INT_MIN, INT_MAX, V|E, "me_method" },
80
+{"full", "full motion estimation (slowest)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_FULL }, INT_MIN, INT_MAX, V|E, "me_method" },
81
+{"epzs", "EPZS motion estimation (default)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_EPZS }, INT_MIN, INT_MAX, V|E, "me_method" },
82
+{"esa", "esa motion estimation (alias for full)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_FULL }, INT_MIN, INT_MAX, V|E, "me_method" },
83
+{"tesa", "tesa motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_TESA }, INT_MIN, INT_MAX, V|E, "me_method" },
84
+{"dia", "dia motion estimation (alias for epzs)", 0, AV_OPT_TYPE_CONST, {.dbl = ME_EPZS }, INT_MIN, INT_MAX, V|E, "me_method" },
85
+{"log", "log motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_LOG }, INT_MIN, INT_MAX, V|E, "me_method" },
86
+{"phods", "phods motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_PHODS }, INT_MIN, INT_MAX, V|E, "me_method" },
87
+{"x1", "X1 motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_X1 }, INT_MIN, INT_MAX, V|E, "me_method" },
88
+{"hex", "hex motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_HEX }, INT_MIN, INT_MAX, V|E, "me_method" },
89
+{"umh", "umh motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_UMH }, INT_MIN, INT_MAX, V|E, "me_method" },
90
+{"iter", "iter motion estimation", 0, AV_OPT_TYPE_CONST, {.dbl = ME_ITER }, INT_MIN, INT_MAX, V|E, "me_method" },
91
+{"extradata_size", NULL, OFFSET(extradata_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
92
+{"time_base", NULL, OFFSET(time_base), AV_OPT_TYPE_RATIONAL, {.dbl = 0}, INT_MIN, INT_MAX},
93
+{"g", "set the group of picture size", OFFSET(gop_size), AV_OPT_TYPE_INT, {.dbl = 12 }, INT_MIN, INT_MAX, V|E},
94
+{"ar", "set audio sampling rate (in Hz)", OFFSET(sample_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|D|E},
95
+{"ac", "set number of audio channels", OFFSET(channels), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|D|E},
96
+{"cutoff", "set cutoff bandwidth", OFFSET(cutoff), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|E},
97
+{"frame_size", NULL, OFFSET(frame_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|E},
98
+{"frame_number", NULL, OFFSET(frame_number), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
99
+{"delay", NULL, OFFSET(delay), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
100
+{"qcomp", "video quantizer scale compression (VBR). Constant of ratecontrol equation. "
101
+          "Recommended range for default rc_eq: 0.0-1.0",
102
+          OFFSET(qcompress), AV_OPT_TYPE_FLOAT, {.dbl = 0.5 }, -FLT_MAX, FLT_MAX, V|E},
103
+{"qblur", "video quantizer scale blur (VBR)", OFFSET(qblur), AV_OPT_TYPE_FLOAT, {.dbl = 0.5 }, -1, FLT_MAX, V|E},
104
+{"qmin", "min video quantizer scale (VBR)", OFFSET(qmin), AV_OPT_TYPE_INT, {.dbl = 2 }, -1, 69, V|E},
105
+{"qmax", "max video quantizer scale (VBR)", OFFSET(qmax), AV_OPT_TYPE_INT, {.dbl = 31 }, -1, 1024, V|E},
106
+{"qdiff", "max difference between the quantizer scale (VBR)", OFFSET(max_qdiff), AV_OPT_TYPE_INT, {.dbl = 3 }, INT_MIN, INT_MAX, V|E},
107
+{"bf", "use 'frames' B frames", OFFSET(max_b_frames), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, -1, FF_MAX_B_FRAMES, V|E},
108
+{"b_qfactor", "qp factor between p and b frames", OFFSET(b_quant_factor), AV_OPT_TYPE_FLOAT, {.dbl = 1.25 }, -FLT_MAX, FLT_MAX, V|E},
109
+{"rc_strategy", "ratecontrol method", OFFSET(rc_strategy), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
110
+{"b_strategy", "strategy to choose between I/P/B-frames", OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX, V|E},
111
+{"ps", "rtp payload size in bytes", OFFSET(rtp_payload_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
112
+{"mv_bits", NULL, OFFSET(mv_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
113
+{"header_bits", NULL, OFFSET(header_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
114
+{"i_tex_bits", NULL, OFFSET(i_tex_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
115
+{"p_tex_bits", NULL, OFFSET(p_tex_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
116
+{"i_count", NULL, OFFSET(i_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
117
+{"p_count", NULL, OFFSET(p_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
118
+{"skip_count", NULL, OFFSET(skip_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
119
+{"misc_bits", NULL, OFFSET(misc_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
120
+{"frame_bits", NULL, OFFSET(frame_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
121
+{"codec_tag", NULL, OFFSET(codec_tag), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
122
+{"bug", "workaround not auto detected encoder bugs", OFFSET(workaround_bugs), AV_OPT_TYPE_FLAGS, {.dbl = FF_BUG_AUTODETECT }, INT_MIN, INT_MAX, V|D, "bug"},
123
+{"autodetect", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_AUTODETECT }, INT_MIN, INT_MAX, V|D, "bug"},
124
+{"old_msmpeg4", "some old lavc generated msmpeg4v3 files (no autodetection)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_OLD_MSMPEG4 }, INT_MIN, INT_MAX, V|D, "bug"},
125
+{"xvid_ilace", "Xvid interlacing bug (autodetected if fourcc==XVIX)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_XVID_ILACE }, INT_MIN, INT_MAX, V|D, "bug"},
126
+{"ump4", "(autodetected if fourcc==UMP4)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_UMP4 }, INT_MIN, INT_MAX, V|D, "bug"},
127
+{"no_padding", "padding bug (autodetected)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_NO_PADDING }, INT_MIN, INT_MAX, V|D, "bug"},
128
+{"amv", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_AMV }, INT_MIN, INT_MAX, V|D, "bug"},
129
+{"ac_vlc", "illegal vlc bug (autodetected per fourcc)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_AC_VLC }, INT_MIN, INT_MAX, V|D, "bug"},
130
+{"qpel_chroma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_QPEL_CHROMA }, INT_MIN, INT_MAX, V|D, "bug"},
131
+{"std_qpel", "old standard qpel (autodetected per fourcc/version)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_STD_QPEL }, INT_MIN, INT_MAX, V|D, "bug"},
132
+{"qpel_chroma2", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_QPEL_CHROMA2 }, INT_MIN, INT_MAX, V|D, "bug"},
133
+{"direct_blocksize", "direct-qpel-blocksize bug (autodetected per fourcc/version)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_DIRECT_BLOCKSIZE }, INT_MIN, INT_MAX, V|D, "bug"},
134
+{"edge", "edge padding bug (autodetected per fourcc/version)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_EDGE }, INT_MIN, INT_MAX, V|D, "bug"},
135
+{"hpel_chroma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_HPEL_CHROMA }, INT_MIN, INT_MAX, V|D, "bug"},
136
+{"dc_clip", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_DC_CLIP }, INT_MIN, INT_MAX, V|D, "bug"},
137
+{"ms", "workaround various bugs in microsofts broken decoders", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_MS }, INT_MIN, INT_MAX, V|D, "bug"},
138
+{"trunc", "trancated frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_BUG_TRUNCATED}, INT_MIN, INT_MAX, V|D, "bug"},
139
+#if FF_API_MPV_GLOBAL_OPTS
140
+{"lelim", "single coefficient elimination threshold for luminance (negative values also consider dc coefficient)", OFFSET(luma_elim_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
141
+{"celim", "single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)", OFFSET(chroma_elim_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
142
+#endif
143
+{"strict", "how strictly to follow the standards", OFFSET(strict_std_compliance), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|V|D|E, "strict"},
144
+{"very", "strictly conform to a older more strict version of the spec or reference software", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_VERY_STRICT }, INT_MIN, INT_MAX, V|D|E, "strict"},
145
+{"strict", "strictly conform to all the things in the spec no matter what consequences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_STRICT }, INT_MIN, INT_MAX, V|D|E, "strict"},
146
+{"normal", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_NORMAL }, INT_MIN, INT_MAX, V|D|E, "strict"},
147
+{"unofficial", "allow unofficial extensions", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_UNOFFICIAL }, INT_MIN, INT_MAX, V|D|E, "strict"},
148
+{"experimental", "allow non standardized experimental things", 0, AV_OPT_TYPE_CONST, {.dbl = FF_COMPLIANCE_EXPERIMENTAL }, INT_MIN, INT_MAX, V|D|E, "strict"},
149
+{"b_qoffset", "qp offset between P and B frames", OFFSET(b_quant_offset), AV_OPT_TYPE_FLOAT, {.dbl = 1.25 }, -FLT_MAX, FLT_MAX, V|E},
150
+{"err_detect", "set error detection flags", OFFSET(err_recognition), AV_OPT_TYPE_FLAGS, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
151
+{"crccheck", "verify embedded CRCs", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
152
+{"bitstream", "detect bitstream specification deviations", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BITSTREAM }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
153
+{"buffer", "detect improper bitstream length", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BUFFER }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
154
+{"explode", "abort decoding on minor error detection", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_EXPLODE }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
155
+{"careful",    "consider things that violate the spec and have not been seen in the wild as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CAREFUL }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
156
+{"compliant",  "consider all spec non compliancies as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_COMPLIANT }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
157
+{"aggressive", "consider things that a sane encoder shouldnt do as an error", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_AGGRESSIVE }, INT_MIN, INT_MAX, A|V|D, "err_detect"},
158
+{"has_b_frames", NULL, OFFSET(has_b_frames), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
159
+{"block_align", NULL, OFFSET(block_align), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
160
+{"mpeg_quant", "use MPEG quantizers instead of H.263", OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
161
+{"stats_out", NULL, OFFSET(stats_out), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX},
162
+{"stats_in", NULL, OFFSET(stats_in), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX},
163
+{"qsquish", "how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)", OFFSET(rc_qsquish), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, 0, 99, V|E},
164
+{"rc_qmod_amp", "experimental quantizer modulation", OFFSET(rc_qmod_amp), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, -FLT_MAX, FLT_MAX, V|E},
165
+{"rc_qmod_freq", "experimental quantizer modulation", OFFSET(rc_qmod_freq), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
166
+{"rc_override_count", NULL, OFFSET(rc_override_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
167
+{"rc_eq", "Set rate control equation. When computing the expression, besides the standard functions "
168
+          "defined in the section 'Expression Evaluation', the following functions are available: "
169
+          "bits2qp(bits), qp2bits(qp). Also the following constants are available: iTex pTex tex mv "
170
+          "fCode iCount mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex avgTex.",
171
+          OFFSET(rc_eq), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, V|E},
172
+{"maxrate", "Set max bitrate tolerance (in bits/s). Requires bufsize to be set.", OFFSET(rc_max_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
173
+{"minrate", "Set min bitrate tolerance (in bits/s). Most useful in setting up a CBR encode. It is of little use elsewise.",
174
+            OFFSET(rc_min_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
175
+{"bufsize", "set ratecontrol buffer size (in bits)", OFFSET(rc_buffer_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, A|V|E},
176
+{"rc_buf_aggressivity", "currently useless", OFFSET(rc_buffer_aggressivity), AV_OPT_TYPE_FLOAT, {.dbl = 1.0 }, -FLT_MAX, FLT_MAX, V|E},
177
+{"i_qfactor", "qp factor between P and I frames", OFFSET(i_quant_factor), AV_OPT_TYPE_FLOAT, {.dbl = -0.8 }, -FLT_MAX, FLT_MAX, V|E},
178
+{"i_qoffset", "qp offset between P and I frames", OFFSET(i_quant_offset), AV_OPT_TYPE_FLOAT, {.dbl = 0.0 }, -FLT_MAX, FLT_MAX, V|E},
179
+{"rc_init_cplx", "initial complexity for 1-pass encoding", OFFSET(rc_initial_cplx), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, -FLT_MAX, FLT_MAX, V|E},
180
+{"dct", "DCT algorithm", OFFSET(dct_algo), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, V|E, "dct"},
181
+{"auto", "autoselect a good one (default)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_AUTO }, INT_MIN, INT_MAX, V|E, "dct"},
182
+{"fastint", "fast integer", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_FASTINT }, INT_MIN, INT_MAX, V|E, "dct"},
183
+{"int", "accurate integer", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_INT }, INT_MIN, INT_MAX, V|E, "dct"},
184
+{"mmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_MMX }, INT_MIN, INT_MAX, V|E, "dct"},
185
+{"altivec", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_ALTIVEC }, INT_MIN, INT_MAX, V|E, "dct"},
186
+{"faan", "floating point AAN DCT", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DCT_FAAN }, INT_MIN, INT_MAX, V|E, "dct"},
187
+{"lumi_mask", "compresses bright areas stronger than medium ones", OFFSET(lumi_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
188
+{"tcplx_mask", "temporal complexity masking", OFFSET(temporal_cplx_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
189
+{"scplx_mask", "spatial complexity masking", OFFSET(spatial_cplx_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
190
+{"p_mask", "inter masking", OFFSET(p_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
191
+{"dark_mask", "compresses dark areas stronger than medium ones", OFFSET(dark_masking), AV_OPT_TYPE_FLOAT, {.dbl = 0 }, -FLT_MAX, FLT_MAX, V|E},
192
+{"idct", "select IDCT implementation", OFFSET(idct_algo), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, V|E|D, "idct"},
193
+{"auto", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_AUTO }, INT_MIN, INT_MAX, V|E|D, "idct"},
194
+{"int", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_INT }, INT_MIN, INT_MAX, V|E|D, "idct"},
195
+{"simple", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLE }, INT_MIN, INT_MAX, V|E|D, "idct"},
196
+{"simplemmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEMMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
197
+{"libmpeg2mmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_LIBMPEG2MMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
198
+{"mmi", NULL, 0, AV_OPT_TYPE_CONST, { .dbl = FF_IDCT_MMI }, INT_MIN, INT_MAX, V|E|D, "idct"},
199
+{"arm", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_ARM }, INT_MIN, INT_MAX, V|E|D, "idct"},
200
+{"altivec", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_ALTIVEC }, INT_MIN, INT_MAX, V|E|D, "idct"},
201
+{"sh4", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SH4 }, INT_MIN, INT_MAX, V|E|D, "idct"},
202
+{"simplearm", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEARM }, INT_MIN, INT_MAX, V|E|D, "idct"},
203
+{"simplearmv5te", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEARMV5TE }, INT_MIN, INT_MAX, V|E|D, "idct"},
204
+{"simplearmv6", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEARMV6 }, INT_MIN, INT_MAX, V|E|D, "idct"},
205
+{"simpleneon", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLENEON }, INT_MIN, INT_MAX, V|E|D, "idct"},
206
+{"simplealpha", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_SIMPLEALPHA }, INT_MIN, INT_MAX, V|E|D, "idct"},
207
+{"h264", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_H264 }, INT_MIN, INT_MAX, V|E|D, "idct"},
208
+{"vp3", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_VP3 }, INT_MIN, INT_MAX, V|E|D, "idct"},
209
+{"ipp", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_IPP }, INT_MIN, INT_MAX, V|E|D, "idct"},
210
+{"xvidmmx", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_XVIDMMX }, INT_MIN, INT_MAX, V|E|D, "idct"},
211
+{"faani", "floating point AAN IDCT", 0, AV_OPT_TYPE_CONST, {.dbl = FF_IDCT_FAAN }, INT_MIN, INT_MAX, V|D|E, "idct"},
212
+{"slice_count", NULL, OFFSET(slice_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
213
+{"ec", "set error concealment strategy", OFFSET(error_concealment), AV_OPT_TYPE_FLAGS, {.dbl = 3 }, INT_MIN, INT_MAX, V|D, "ec"},
214
+{"guess_mvs", "iterative motion vector (MV) search (slow)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_EC_GUESS_MVS }, INT_MIN, INT_MAX, V|D, "ec"},
215
+{"deblock", "use strong deblock filter for damaged MBs", 0, AV_OPT_TYPE_CONST, {.dbl = FF_EC_DEBLOCK }, INT_MIN, INT_MAX, V|D, "ec"},
216
+{"bits_per_coded_sample", NULL, OFFSET(bits_per_coded_sample), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
217
+{"pred", "prediction method", OFFSET(prediction_method), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "pred"},
218
+{"left", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PRED_LEFT }, INT_MIN, INT_MAX, V|E, "pred"},
219
+{"plane", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PRED_PLANE }, INT_MIN, INT_MAX, V|E, "pred"},
220
+{"median", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PRED_MEDIAN }, INT_MIN, INT_MAX, V|E, "pred"},
221
+{"aspect", "sample aspect ratio", OFFSET(sample_aspect_ratio), AV_OPT_TYPE_RATIONAL, {.dbl = 0}, 0, 10, V|E},
222
+{"debug", "print specific debug info", OFFSET(debug), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, INT_MAX, V|A|S|E|D, "debug"},
223
+{"pict", "picture info", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_PICT_INFO }, INT_MIN, INT_MAX, V|D, "debug"},
224
+{"rc", "rate control", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_RC }, INT_MIN, INT_MAX, V|E, "debug"},
225
+{"bitstream", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_BITSTREAM }, INT_MIN, INT_MAX, V|D, "debug"},
226
+{"mb_type", "macroblock (MB) type", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_MB_TYPE }, INT_MIN, INT_MAX, V|D, "debug"},
227
+{"qp", "per-block quantization parameter (QP)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_QP }, INT_MIN, INT_MAX, V|D, "debug"},
228
+{"mv", "motion vector", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_MV }, INT_MIN, INT_MAX, V|D, "debug"},
229
+{"dct_coeff", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_DCT_COEFF }, INT_MIN, INT_MAX, V|D, "debug"},
230
+{"skip", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_SKIP }, INT_MIN, INT_MAX, V|D, "debug"},
231
+{"startcode", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_STARTCODE }, INT_MIN, INT_MAX, V|D, "debug"},
232
+{"pts", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_PTS }, INT_MIN, INT_MAX, V|D, "debug"},
233
+{"er", "error recognition", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_ER }, INT_MIN, INT_MAX, V|D, "debug"},
234
+{"mmco", "memory management control operations (H.264)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_MMCO }, INT_MIN, INT_MAX, V|D, "debug"},
235
+{"bugs", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_BUGS }, INT_MIN, INT_MAX, V|D, "debug"},
236
+{"vis_qp", "visualize quantization parameter (QP), lower QP are tinted greener", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_QP }, INT_MIN, INT_MAX, V|D, "debug"},
237
+{"vis_mb_type", "visualize block types", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MB_TYPE }, INT_MIN, INT_MAX, V|D, "debug"},
238
+{"buffers", "picture buffer allocations", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_BUFFERS }, INT_MIN, INT_MAX, V|D, "debug"},
239
+{"thread_ops", "threading operations", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_THREADS }, INT_MIN, INT_MAX, V|D, "debug"},
240
+{"vismv", "visualize motion vectors (MVs)", OFFSET(debug_mv), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, V|D, "debug_mv"},
241
+{"pf", "forward predicted MVs of P-frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MV_P_FOR }, INT_MIN, INT_MAX, V|D, "debug_mv"},
242
+{"bf", "forward predicted MVs of B-frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MV_B_FOR }, INT_MIN, INT_MAX, V|D, "debug_mv"},
243
+{"bb", "backward predicted MVs of B-frames", 0, AV_OPT_TYPE_CONST, {.dbl = FF_DEBUG_VIS_MV_B_BACK }, INT_MIN, INT_MAX, V|D, "debug_mv"},
244
+{"cmp", "full pel me compare function", OFFSET(me_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
245
+{"subcmp", "sub pel me compare function", OFFSET(me_sub_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
246
+{"mbcmp", "macroblock compare function", OFFSET(mb_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
247
+{"ildctcmp", "interlaced dct compare function", OFFSET(ildct_cmp), AV_OPT_TYPE_INT, {.dbl = FF_CMP_VSAD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
248
+{"dia_size", "diamond type & size for motion estimation", OFFSET(dia_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
249
+{"last_pred", "amount of motion predictors from the previous frame", OFFSET(last_predictor_count), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
250
+{"preme", "pre motion estimation", OFFSET(pre_me), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
251
+{"precmp", "pre motion estimation compare function", OFFSET(me_pre_cmp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
252
+{"sad", "sum of absolute differences, fast (default)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_SAD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
253
+{"sse", "sum of squared errors", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_SSE }, INT_MIN, INT_MAX, V|E, "cmp_func"},
254
+{"satd", "sum of absolute Hadamard transformed differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_SATD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
255
+{"dct", "sum of absolute DCT transformed differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_DCT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
256
+{"psnr", "sum of squared quantization errors (avoid, low quality)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_PSNR }, INT_MIN, INT_MAX, V|E, "cmp_func"},
257
+{"bit", "number of bits needed for the block", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_BIT }, INT_MIN, INT_MAX, V|E, "cmp_func"},
258
+{"rd", "rate distortion optimal, slow", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_RD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
259
+{"zero", "0", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_ZERO }, INT_MIN, INT_MAX, V|E, "cmp_func"},
260
+{"vsad", "sum of absolute vertical differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_VSAD }, INT_MIN, INT_MAX, V|E, "cmp_func"},
261
+{"vsse", "sum of squared vertical differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_VSSE }, INT_MIN, INT_MAX, V|E, "cmp_func"},
262
+{"nsse", "noise preserving sum of squared differences", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_NSSE }, INT_MIN, INT_MAX, V|E, "cmp_func"},
263
+#if CONFIG_SNOW_ENCODER
264
+{"w53", "5/3 wavelet, only used in snow", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_W53 }, INT_MIN, INT_MAX, V|E, "cmp_func"},
265
+{"w97", "9/7 wavelet, only used in snow", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_W97 }, INT_MIN, INT_MAX, V|E, "cmp_func"},
266
+#endif
267
+{"dctmax", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_DCTMAX }, INT_MIN, INT_MAX, V|E, "cmp_func"},
268
+{"chroma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_CMP_CHROMA }, INT_MIN, INT_MAX, V|E, "cmp_func"},
269
+{"pre_dia_size", "diamond type & size for motion estimation pre-pass", OFFSET(pre_dia_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
270
+{"subq", "sub pel motion estimation quality", OFFSET(me_subpel_quality), AV_OPT_TYPE_INT, {.dbl = 8 }, INT_MIN, INT_MAX, V|E},
271
+{"dtg_active_format", NULL, OFFSET(dtg_active_format), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
272
+{"me_range", "limit motion vectors range (1023 for DivX player)", OFFSET(me_range), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
273
+{"ibias", "intra quant bias", OFFSET(intra_quant_bias), AV_OPT_TYPE_INT, {.dbl = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, V|E},
274
+{"pbias", "inter quant bias", OFFSET(inter_quant_bias), AV_OPT_TYPE_INT, {.dbl = FF_DEFAULT_QUANT_BIAS }, INT_MIN, INT_MAX, V|E},
275
+#if FF_API_COLOR_TABLE_ID
276
+{"color_table_id", NULL, OFFSET(color_table_id), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
277
+#endif
278
+{"global_quality", NULL, OFFSET(global_quality), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
279
+{"coder", NULL, OFFSET(coder_type), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "coder"},
280
+{"vlc", "variable length coder / huffman coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_VLC }, INT_MIN, INT_MAX, V|E, "coder"},
281
+{"ac", "arithmetic coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_AC }, INT_MIN, INT_MAX, V|E, "coder"},
282
+{"raw", "raw (no encoding)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_RAW }, INT_MIN, INT_MAX, V|E, "coder"},
283
+{"rle", "run-length coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_RLE }, INT_MIN, INT_MAX, V|E, "coder"},
284
+{"deflate", "deflate-based coder", 0, AV_OPT_TYPE_CONST, {.dbl = FF_CODER_TYPE_DEFLATE }, INT_MIN, INT_MAX, V|E, "coder"},
285
+{"context", "context model", OFFSET(context_model), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
286
+{"slice_flags", NULL, OFFSET(slice_flags), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
287
+{"xvmc_acceleration", NULL, OFFSET(xvmc_acceleration), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
288
+{"mbd", "macroblock decision algorithm (high quality mode)", OFFSET(mb_decision), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "mbd"},
289
+{"simple", "use mbcmp (default)", 0, AV_OPT_TYPE_CONST, {.dbl = FF_MB_DECISION_SIMPLE }, INT_MIN, INT_MAX, V|E, "mbd"},
290
+{"bits", "use fewest bits", 0, AV_OPT_TYPE_CONST, {.dbl = FF_MB_DECISION_BITS }, INT_MIN, INT_MAX, V|E, "mbd"},
291
+{"rd", "use best rate distortion", 0, AV_OPT_TYPE_CONST, {.dbl = FF_MB_DECISION_RD }, INT_MIN, INT_MAX, V|E, "mbd"},
292
+{"stream_codec_tag", NULL, OFFSET(stream_codec_tag), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
293
+{"sc_threshold", "scene change threshold", OFFSET(scenechange_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
294
+{"lmin", "min lagrange factor (VBR)", OFFSET(lmin), AV_OPT_TYPE_INT, {.dbl =  2*FF_QP2LAMBDA }, 0, INT_MAX, V|E},
295
+{"lmax", "max lagrange factor (VBR)", OFFSET(lmax), AV_OPT_TYPE_INT, {.dbl = 31*FF_QP2LAMBDA }, 0, INT_MAX, V|E},
296
+{"nr", "noise reduction", OFFSET(noise_reduction), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
297
+{"rc_init_occupancy", "number of bits which should be loaded into the rc buffer before decoding starts", OFFSET(rc_initial_buffer_occupancy), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
298
+#if FF_API_INTER_THRESHOLD
299
+{"inter_threshold", NULL, OFFSET(inter_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
300
+#endif
301
+{"flags2", NULL, OFFSET(flags2), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT}, 0, UINT_MAX, V|A|E|D, "flags2"},
302
+{"error", NULL, OFFSET(error_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
303
+#if FF_API_MPV_GLOBAL_OPTS
304
+{"qns", "deprecated, use mpegvideo private options instead", OFFSET(quantizer_noise_shaping), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
305
+#endif
306
+{"threads", NULL, OFFSET(thread_count), AV_OPT_TYPE_INT, {.dbl = 1 }, 0, INT_MAX, V|E|D, "threads"},
307
+{"auto", "detect a good number of threads", 0, AV_OPT_TYPE_CONST, {.dbl = 0 }, INT_MIN, INT_MAX, V|E|D, "threads"},
308
+{"me_threshold", "motion estimaton threshold", OFFSET(me_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
309
+{"mb_threshold", "macroblock threshold", OFFSET(mb_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
310
+{"dc", "intra_dc_precision", OFFSET(intra_dc_precision), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX, V|E},
311
+{"nssew", "nsse weight", OFFSET(nsse_weight), AV_OPT_TYPE_INT, {.dbl = 8 }, INT_MIN, INT_MAX, V|E},
312
+{"skip_top", "number of macroblock rows at the top which are skipped", OFFSET(skip_top), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|D},
313
+{"skip_bottom", "number of macroblock rows at the bottom which are skipped", OFFSET(skip_bottom), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|D},
314
+{"profile", NULL, OFFSET(profile), AV_OPT_TYPE_INT, {.dbl = FF_PROFILE_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "profile"},
315
+{"unknown", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "profile"},
316
+{"aac_main", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_MAIN }, INT_MIN, INT_MAX, A|E, "profile"},
317
+{"aac_low", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_LOW }, INT_MIN, INT_MAX, A|E, "profile"},
318
+{"aac_ssr", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_SSR }, INT_MIN, INT_MAX, A|E, "profile"},
319
+{"aac_ltp", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_AAC_LTP }, INT_MIN, INT_MAX, A|E, "profile"},
320
+{"dts", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS }, INT_MIN, INT_MAX, A|E, "profile"},
321
+{"dts_es", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_ES }, INT_MIN, INT_MAX, A|E, "profile"},
322
+{"dts_96_24", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_96_24 }, INT_MIN, INT_MAX, A|E, "profile"},
323
+{"dts_hd_hra", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_HD_HRA }, INT_MIN, INT_MAX, A|E, "profile"},
324
+{"dts_hd_ma", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_PROFILE_DTS_HD_MA }, INT_MIN, INT_MAX, A|E, "profile"},
325
+{"level", NULL, OFFSET(level), AV_OPT_TYPE_INT, {.dbl = FF_LEVEL_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "level"},
326
+{"unknown", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_LEVEL_UNKNOWN }, INT_MIN, INT_MAX, V|A|E, "level"},
327
+{"lowres", "decode at 1= 1/2, 2=1/4, 3=1/8 resolutions", OFFSET(lowres), AV_OPT_TYPE_INT, {.dbl = 0 }, 0, INT_MAX, V|A|D},
328
+{"skip_threshold", "frame skip threshold", OFFSET(frame_skip_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
329
+{"skip_factor", "frame skip factor", OFFSET(frame_skip_factor), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
330
+{"skip_exp", "frame skip exponent", OFFSET(frame_skip_exp), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
331
+{"skipcmp", "frame skip compare function", OFFSET(frame_skip_cmp), AV_OPT_TYPE_INT, {.dbl = FF_CMP_DCTMAX }, INT_MIN, INT_MAX, V|E, "cmp_func"},
332
+{"border_mask", "increases the quantizer for macroblocks close to borders", OFFSET(border_masking), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, -FLT_MAX, FLT_MAX, V|E},
333
+{"mblmin", "min macroblock lagrange factor (VBR)", OFFSET(mb_lmin), AV_OPT_TYPE_INT, {.dbl = FF_QP2LAMBDA * 2 }, 1, FF_LAMBDA_MAX, V|E},
334
+{"mblmax", "max macroblock lagrange factor (VBR)", OFFSET(mb_lmax), AV_OPT_TYPE_INT, {.dbl = FF_QP2LAMBDA * 31 }, 1, FF_LAMBDA_MAX, V|E},
335
+{"mepc", "motion estimation bitrate penalty compensation (1.0 = 256)", OFFSET(me_penalty_compensation), AV_OPT_TYPE_INT, {.dbl = 256 }, INT_MIN, INT_MAX, V|E},
336
+{"skip_loop_filter", NULL, OFFSET(skip_loop_filter), AV_OPT_TYPE_INT, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
337
+{"skip_idct"       , NULL, OFFSET(skip_idct)       , AV_OPT_TYPE_INT, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
338
+{"skip_frame"      , NULL, OFFSET(skip_frame)      , AV_OPT_TYPE_INT, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
339
+{"none"            , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_NONE    }, INT_MIN, INT_MAX, V|D, "avdiscard"},
340
+{"default"         , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_DEFAULT }, INT_MIN, INT_MAX, V|D, "avdiscard"},
341
+{"noref"           , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_NONREF  }, INT_MIN, INT_MAX, V|D, "avdiscard"},
342
+{"bidir"           , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_BIDIR   }, INT_MIN, INT_MAX, V|D, "avdiscard"},
343
+{"nokey"           , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_NONKEY  }, INT_MIN, INT_MAX, V|D, "avdiscard"},
344
+{"all"             , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_ALL     }, INT_MIN, INT_MAX, V|D, "avdiscard"},
345
+{"bidir_refine", "refine the two motion vectors used in bidirectional macroblocks", OFFSET(bidir_refine), AV_OPT_TYPE_INT, {.dbl = 1 }, 0, 4, V|E},
346
+{"brd_scale", "downscales frames for dynamic B-frame decision", OFFSET(brd_scale), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, 10, V|E},
347
+{"keyint_min", "minimum interval between IDR-frames", OFFSET(keyint_min), AV_OPT_TYPE_INT, {.dbl = 25 }, INT_MIN, INT_MAX, V|E},
348
+{"refs", "reference frames to consider for motion compensation", OFFSET(refs), AV_OPT_TYPE_INT, {.dbl = 1 }, INT_MIN, INT_MAX, V|E},
349
+{"chromaoffset", "chroma qp offset from luma", OFFSET(chromaoffset), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
350
+{"trellis", "rate-distortion optimal quantization", OFFSET(trellis), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
351
+#if FF_API_MPV_GLOBAL_OPTS
352
+{"skiprd", "Deprecated, use mpegvideo private options instead", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_SKIP_RD }, INT_MIN, INT_MAX, V|E, "flags2"},
353
+#endif
354
+{"sc_factor", "multiplied by qscale for each frame and added to scene_change_score", OFFSET(scenechange_factor), AV_OPT_TYPE_INT, {.dbl = 6 }, 0, INT_MAX, V|E},
355
+{"mv0_threshold", NULL, OFFSET(mv0_threshold), AV_OPT_TYPE_INT, {.dbl = 256 }, 0, INT_MAX, V|E},
356
+{"b_sensitivity", "adjusts sensitivity of b_frame_strategy 1", OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.dbl = 40 }, 1, INT_MAX, V|E},
357
+{"compression_level", NULL, OFFSET(compression_level), AV_OPT_TYPE_INT, {.dbl = FF_COMPRESSION_DEFAULT }, INT_MIN, INT_MAX, V|A|E},
358
+{"min_prediction_order", NULL, OFFSET(min_prediction_order), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, A|E},
359
+{"max_prediction_order", NULL, OFFSET(max_prediction_order), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, A|E},
360
+{"timecode_frame_start", "GOP timecode frame start number, in non drop frame format", OFFSET(timecode_frame_start), AV_OPT_TYPE_INT64, {.dbl = 0 }, 0, INT64_MAX, V|E},
361
+#if FF_API_REQUEST_CHANNELS
362
+{"request_channels", "set desired number of audio channels", OFFSET(request_channels), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, A|D},
363
+#endif
364
+{"bits_per_raw_sample", NULL, OFFSET(bits_per_raw_sample), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
365
+{"channel_layout", NULL, OFFSET(channel_layout), AV_OPT_TYPE_INT64, {.dbl = DEFAULT }, 0, INT64_MAX, A|E|D, "channel_layout"},
366
+{"request_channel_layout", NULL, OFFSET(request_channel_layout), AV_OPT_TYPE_INT64, {.dbl = DEFAULT }, 0, INT64_MAX, A|D, "request_channel_layout"},
367
+{"rc_max_vbv_use", NULL, OFFSET(rc_max_available_vbv_use), AV_OPT_TYPE_FLOAT, {.dbl = 1.0/3 }, 0.0, FLT_MAX, V|E},
368
+{"rc_min_vbv_use", NULL, OFFSET(rc_min_vbv_overflow_use),  AV_OPT_TYPE_FLOAT, {.dbl = 3 },     0.0, FLT_MAX, V|E},
369
+{"ticks_per_frame", NULL, OFFSET(ticks_per_frame), AV_OPT_TYPE_INT, {.dbl = 1 }, 1, INT_MAX, A|V|E|D},
370
+{"color_primaries", NULL, OFFSET(color_primaries), AV_OPT_TYPE_INT, {.dbl = AVCOL_PRI_UNSPECIFIED }, 1, AVCOL_PRI_NB-1, V|E|D},
371
+{"color_trc", NULL, OFFSET(color_trc), AV_OPT_TYPE_INT, {.dbl = AVCOL_TRC_UNSPECIFIED }, 1, AVCOL_TRC_NB-1, V|E|D},
372
+{"colorspace", NULL, OFFSET(colorspace), AV_OPT_TYPE_INT, {.dbl = AVCOL_SPC_UNSPECIFIED }, 1, AVCOL_SPC_NB-1, V|E|D},
373
+{"color_range", NULL, OFFSET(color_range), AV_OPT_TYPE_INT, {.dbl = AVCOL_RANGE_UNSPECIFIED }, 0, AVCOL_RANGE_NB-1, V|E|D},
374
+{"chroma_sample_location", NULL, OFFSET(chroma_sample_location), AV_OPT_TYPE_INT, {.dbl = AVCHROMA_LOC_UNSPECIFIED }, 0, AVCHROMA_LOC_NB-1, V|E|D},
375
+{"log_level_offset", "set the log level offset", OFFSET(log_level_offset), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX },
376
+{"slices", "number of slices, used in parallelized encoding", OFFSET(slices), AV_OPT_TYPE_INT, {.dbl = 0 }, 0, INT_MAX, V|E},
377
+{"thread_type", "select multithreading type", OFFSET(thread_type), AV_OPT_TYPE_FLAGS, {.dbl = FF_THREAD_SLICE|FF_THREAD_FRAME }, 0, INT_MAX, V|E|D, "thread_type"},
378
+{"slice", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_THREAD_SLICE }, INT_MIN, INT_MAX, V|E|D, "thread_type"},
379
+{"frame", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_THREAD_FRAME }, INT_MIN, INT_MAX, V|E|D, "thread_type"},
380
+{"audio_service_type", "audio service type", OFFSET(audio_service_type), AV_OPT_TYPE_INT, {.dbl = AV_AUDIO_SERVICE_TYPE_MAIN }, 0, AV_AUDIO_SERVICE_TYPE_NB-1, A|E, "audio_service_type"},
381
+{"ma", "Main Audio Service", 0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_MAIN },              INT_MIN, INT_MAX, A|E, "audio_service_type"},
382
+{"ef", "Effects",            0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_EFFECTS },           INT_MIN, INT_MAX, A|E, "audio_service_type"},
383
+{"vi", "Visually Impaired",  0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED }, INT_MIN, INT_MAX, A|E, "audio_service_type"},
384
+{"hi", "Hearing Impaired",   0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED },  INT_MIN, INT_MAX, A|E, "audio_service_type"},
385
+{"di", "Dialogue",           0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_DIALOGUE },          INT_MIN, INT_MAX, A|E, "audio_service_type"},
386
+{"co", "Commentary",         0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_COMMENTARY },        INT_MIN, INT_MAX, A|E, "audio_service_type"},
387
+{"em", "Emergency",          0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_EMERGENCY },         INT_MIN, INT_MAX, A|E, "audio_service_type"},
388
+{"vo", "Voice Over",         0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_VOICE_OVER },        INT_MIN, INT_MAX, A|E, "audio_service_type"},
389
+{"ka", "Karaoke",            0, AV_OPT_TYPE_CONST, {.dbl = AV_AUDIO_SERVICE_TYPE_KARAOKE },           INT_MIN, INT_MAX, A|E, "audio_service_type"},
390
+{"request_sample_fmt", "sample format audio decoders should prefer", OFFSET(request_sample_fmt), AV_OPT_TYPE_INT, {.dbl = AV_SAMPLE_FMT_NONE }, AV_SAMPLE_FMT_NONE, AV_SAMPLE_FMT_NB-1, A|D, "request_sample_fmt"},
391
+{"u8" , "8-bit unsigned integer", 0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_U8  }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
392
+{"s16", "16-bit signed integer",  0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_S16 }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
393
+{"s32", "32-bit signed integer",  0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_S32 }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
394
+{"flt", "32-bit float",           0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_FLT }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
395
+{"dbl", "64-bit double",          0, AV_OPT_TYPE_CONST, {.dbl = AV_SAMPLE_FMT_DBL }, INT_MIN, INT_MAX, A|D, "request_sample_fmt"},
396
+{NULL},
397
+};
398
+
399
+#undef A
400
+#undef V
401
+#undef S
402
+#undef E
403
+#undef D
404
+#undef DEFAULT
405
+#undef OFFSET
406
+
407
+#endif // AVCODEC_OPTIONS_TABLE
... ...
@@ -1069,8 +1069,15 @@ int attribute_align_arg avcodec_encode_audio2(AVCodecContext *avctx,
1069 1069
         if (fs_tmp)
1070 1070
             avctx->frame_size = fs_tmp;
1071 1071
     }
1072
-    if (!ret)
1072
+    if (!ret) {
1073
+        if (!user_packet && avpkt->data) {
1074
+            uint8_t *new_data = av_realloc(avpkt->data, avpkt->size);
1075
+            if (new_data)
1076
+                avpkt->data = new_data;
1077
+        }
1078
+
1073 1079
         avctx->frame_number++;
1080
+    }
1074 1081
 
1075 1082
     if (ret < 0 || !*got_packet_ptr)
1076 1083
         av_free_packet(avpkt);
... ...
@@ -642,7 +642,7 @@ void decode_mb_mode(VP8Context *s, VP8Macroblock *mb, int mb_x, int mb_y, uint8_
642 642
     if (s->segmentation.update_map) {
643 643
         int bit  = vp56_rac_get_prob(c, s->prob->segmentid[0]);
644 644
         *segment = vp56_rac_get_prob(c, s->prob->segmentid[1+bit]) + 2*bit;
645
-    } else
645
+    } else if (s->segmentation.enabled)
646 646
         *segment = ref ? *ref : *segment;
647 647
     s->segment = *segment;
648 648
 
... ...
@@ -1332,7 +1332,11 @@ int av_find_best_stream(AVFormatContext *ic,
1332 1332
                         AVCodec **decoder_ret,
1333 1333
                         int flags);
1334 1334
 
1335
+#if FF_API_READ_PACKET
1335 1336
 /**
1337
+ * @deprecated use AVFMT_FLAG_NOFILLIN | AVFMT_FLAG_NOPARSE to read raw
1338
+ * unprocessed packets
1339
+ *
1336 1340
  * Read a transport packet from a media file.
1337 1341
  *
1338 1342
  * This function is obsolete and should never be used.
... ...
@@ -1342,7 +1346,9 @@ int av_find_best_stream(AVFormatContext *ic,
1342 1342
  * @param pkt is filled
1343 1343
  * @return 0 if OK, AVERROR_xxx on error
1344 1344
  */
1345
+attribute_deprecated
1345 1346
 int av_read_packet(AVFormatContext *s, AVPacket *pkt);
1347
+#endif
1346 1348
 
1347 1349
 /**
1348 1350
  * Return the next frame of a stream.
... ...
@@ -1539,23 +1545,15 @@ int av_write_frame(AVFormatContext *s, AVPacket *pkt);
1539 1539
  */
1540 1540
 int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt);
1541 1541
 
1542
+#if FF_API_INTERLEAVE_PACKET
1542 1543
 /**
1543
- * Interleave a packet per dts in an output media file.
1544
- *
1545
- * Packets with pkt->destruct == av_destruct_packet will be freed inside this
1546
- * function, so they cannot be used after it. Note that calling av_free_packet()
1547
- * on them is still safe.
1548
- *
1549
- * @param s media file handle
1550
- * @param out the interleaved packet will be output here
1551
- * @param pkt the input packet
1552
- * @param flush 1 if no further packets are available as input and all
1553
- *              remaining packets should be output
1554
- * @return 1 if a packet was output, 0 if no packet could be output,
1555
- *         < 0 if an error occurred
1544
+ * @deprecated this function was never meant to be called by the user
1545
+ * programs.
1556 1546
  */
1547
+attribute_deprecated
1557 1548
 int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
1558 1549
                                  AVPacket *pkt, int flush);
1550
+#endif
1559 1551
 
1560 1552
 /**
1561 1553
  * Write the stream trailer to an output media file and free the
... ...
@@ -838,7 +838,7 @@ static int read_gab2_sub(AVStream *st, AVPacket *pkt) {
838 838
 
839 839
         ast->sub_ctx->pb      = pb;
840 840
         if (!avformat_open_input(&ast->sub_ctx, "", sub_demuxer, NULL)) {
841
-            av_read_packet(ast->sub_ctx, &ast->sub_pkt);
841
+            ff_read_packet(ast->sub_ctx, &ast->sub_pkt);
842 842
             *st->codec = *ast->sub_ctx->streams[0]->codec;
843 843
             ast->sub_ctx->streams[0]->codec->extradata = NULL;
844 844
             time_base = ast->sub_ctx->streams[0]->time_base;
... ...
@@ -880,7 +880,7 @@ static AVStream *get_subtitle_pkt(AVFormatContext *s, AVStream *next_st,
880 880
         ast = sub_st->priv_data;
881 881
         *pkt = ast->sub_pkt;
882 882
         pkt->stream_index = sub_st->index;
883
-        if (av_read_packet(ast->sub_ctx, &ast->sub_pkt) < 0)
883
+        if (ff_read_packet(ast->sub_ctx, &ast->sub_pkt) < 0)
884 884
             ast->sub_pkt.data = NULL;
885 885
     }
886 886
     return sub_st;
... ...
@@ -1364,7 +1364,7 @@ static void seek_subtitle(AVStream *st, AVStream *st2, int64_t timestamp)
1364 1364
     av_free_packet(&ast2->sub_pkt);
1365 1365
     if (avformat_seek_file(ast2->sub_ctx, 0, INT64_MIN, ts2, ts2, 0) >= 0 ||
1366 1366
         avformat_seek_file(ast2->sub_ctx, 0, ts2, ts2, INT64_MAX, 0) >= 0)
1367
-        av_read_packet(ast2->sub_ctx, &ast2->sub_pkt);
1367
+        ff_read_packet(ast2->sub_ctx, &ast2->sub_pkt);
1368 1368
 }
1369 1369
 
1370 1370
 static int avi_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
... ...
@@ -991,7 +991,7 @@ static int gxf_interleave_packet(AVFormatContext *s, AVPacket *out, AVPacket *pk
991 991
     if (pkt && s->streams[pkt->stream_index]->codec->codec_type == AVMEDIA_TYPE_VIDEO)
992 992
         pkt->duration = 2; // enforce 2 fields
993 993
     return ff_audio_rechunk_interleave(s, out, pkt, flush,
994
-                               av_interleave_packet_per_dts, gxf_compare_field_nb);
994
+                               ff_interleave_packet_per_dts, gxf_compare_field_nb);
995 995
 }
996 996
 
997 997
 static const AVOption options[] = {
... ...
@@ -803,6 +803,7 @@ int ff_id3v2_parse_apic(AVFormatContext *s, ID3v2ExtraMeta **extra_meta)
803 803
         st->attached_pic.size         = apic->len;
804 804
         st->attached_pic.destruct     = av_destruct_packet;
805 805
         st->attached_pic.stream_index = st->index;
806
+        st->attached_pic.flags       |= AV_PKT_FLAG_KEY;
806 807
 
807 808
         apic->data = NULL;
808 809
         apic->len  = 0;
... ...
@@ -317,4 +317,31 @@ int ff_add_param_change(AVPacket *pkt, int32_t channels,
317 317
  */
318 318
 int ff_framehash_write_header(AVFormatContext *s);
319 319
 
320
+/**
321
+ * Read a transport packet from a media file.
322
+ *
323
+ * @param s media file handle
324
+ * @param pkt is filled
325
+ * @return 0 if OK, AVERROR_xxx on error
326
+ */
327
+int ff_read_packet(AVFormatContext *s, AVPacket *pkt);
328
+
329
+/**
330
+ * Interleave a packet per dts in an output media file.
331
+ *
332
+ * Packets with pkt->destruct == av_destruct_packet will be freed inside this
333
+ * function, so they cannot be used after it. Note that calling av_free_packet()
334
+ * on them is still safe.
335
+ *
336
+ * @param s media file handle
337
+ * @param out the interleaved packet will be output here
338
+ * @param pkt the input packet
339
+ * @param flush 1 if no further packets are available as input and all
340
+ *              remaining packets should be output
341
+ * @return 1 if a packet was output, 0 if no packet could be output,
342
+ *         < 0 if an error occurred
343
+ */
344
+int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
345
+                                 AVPacket *pkt, int flush);
346
+
320 347
 #endif /* AVFORMAT_INTERNAL_H */
... ...
@@ -57,6 +57,7 @@ static const AVOption options[] = {
57 57
     { "iods_audio_profile", "iods audio profile atom.", offsetof(MOVMuxContext, iods_audio_profile), AV_OPT_TYPE_INT, {.dbl = -1}, -1, 255, AV_OPT_FLAG_ENCODING_PARAM},
58 58
     { "iods_video_profile", "iods video profile atom.", offsetof(MOVMuxContext, iods_video_profile), AV_OPT_TYPE_INT, {.dbl = -1}, -1, 255, AV_OPT_FLAG_ENCODING_PARAM},
59 59
     { "frag_duration", "Maximum fragment duration", offsetof(MOVMuxContext, max_fragment_duration), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
60
+    { "min_frag_duration", "Minimum fragment duration", offsetof(MOVMuxContext, min_fragment_duration), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
60 61
     { "frag_size", "Maximum fragment size", offsetof(MOVMuxContext, max_fragment_size), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
61 62
     { "ism_lookahead", "Number of lookahead entries for ISM files", offsetof(MOVMuxContext, ism_lookahead), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
62 63
     { NULL },
... ...
@@ -2893,21 +2894,25 @@ static int mov_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
2893 2893
     unsigned int samples_in_chunk = 0;
2894 2894
     int size= pkt->size;
2895 2895
     uint8_t *reformatted_data = NULL;
2896
+    int64_t frag_duration = 0;
2896 2897
 
2897 2898
     if (!s->pb->seekable && !(mov->flags & FF_MOV_FLAG_EMPTY_MOOV))
2898 2899
         return 0; /* Can't handle that */
2899 2900
 
2900 2901
     if (!size) return 0; /* Discard 0 sized packets */
2901 2902
 
2902
-    if ((mov->max_fragment_duration && trk->entry &&
2903
-         av_rescale_q(pkt->dts - trk->cluster[0].dts,
2904
-                      s->streams[pkt->stream_index]->time_base,
2905
-                      AV_TIME_BASE_Q) >= mov->max_fragment_duration) ||
2903
+    if (trk->entry)
2904
+        frag_duration = av_rescale_q(pkt->dts - trk->cluster[0].dts,
2905
+                                     s->streams[pkt->stream_index]->time_base,
2906
+                                     AV_TIME_BASE_Q);
2907
+    if ((mov->max_fragment_duration &&
2908
+         frag_duration >= mov->max_fragment_duration) ||
2906 2909
          (mov->max_fragment_size && mov->mdat_size + size >= mov->max_fragment_size) ||
2907 2910
          (mov->flags & FF_MOV_FLAG_FRAG_KEYFRAME &&
2908 2911
           enc->codec_type == AVMEDIA_TYPE_VIDEO &&
2909 2912
           trk->entry && pkt->flags & AV_PKT_FLAG_KEY)) {
2910
-        mov_flush_fragment(s);
2913
+        if (frag_duration >= mov->min_fragment_duration)
2914
+            mov_flush_fragment(s);
2911 2915
     }
2912 2916
 
2913 2917
     if (mov->flags & FF_MOV_FLAG_FRAGMENT) {
... ...
@@ -154,6 +154,7 @@ typedef struct MOVMuxContext {
154 154
 
155 155
     int fragments;
156 156
     int max_fragment_duration;
157
+    int min_fragment_duration;
157 158
     int max_fragment_size;
158 159
     int ism_lookahead;
159 160
     AVIOContext *mdat_buf;
... ...
@@ -318,6 +318,8 @@ static int mpeg_mux_init(AVFormatContext *ctx)
318 318
         s->packet_size = ctx->packet_size;
319 319
     } else
320 320
         s->packet_size = 2048;
321
+    if (ctx->max_delay < 0) /* Not set by the caller */
322
+        ctx->max_delay = 0;
321 323
 
322 324
     s->vcd_padding_bytes_written = 0;
323 325
     s->vcd_padding_bitrate=0;
... ...
@@ -491,6 +491,9 @@ static int mpegts_write_header(AVFormatContext *s)
491 491
     const char *provider_name;
492 492
     int *pids;
493 493
 
494
+    if (s->max_delay < 0) /* Not set by the caller */
495
+        s->max_delay = 0;
496
+
494 497
     // round up to a whole number of TS packets
495 498
     ts->pes_payload_size = (ts->pes_payload_size + 14 + 183) / 184 * 184 - 14;
496 499
 
... ...
@@ -28,6 +28,7 @@
28 28
 #include "libavutil/dict.h"
29 29
 #include "libavcodec/get_bits.h"
30 30
 #include "libavcodec/bytestream.h"
31
+#include "libavcodec/vorbis_parser.h"
31 32
 #include "avformat.h"
32 33
 #include "internal.h"
33 34
 #include "oggdec.h"
... ...
@@ -162,6 +163,9 @@ ff_vorbis_comment(AVFormatContext * as, AVDictionary **m, const uint8_t *buf, in
162 162
 struct oggvorbis_private {
163 163
     unsigned int len[3];
164 164
     unsigned char *packet[3];
165
+    VorbisParseContext vp;
166
+    int64_t final_pts;
167
+    int final_duration;
165 168
 };
166 169
 
167 170
 
... ...
@@ -251,7 +255,6 @@ vorbis_header (AVFormatContext * s, int idx)
251 251
 
252 252
         st->codec->codec_type = AVMEDIA_TYPE_AUDIO;
253 253
         st->codec->codec_id = CODEC_ID_VORBIS;
254
-        st->need_parsing = AVSTREAM_PARSE_HEADERS;
255 254
 
256 255
         if (srate > 0) {
257 256
             st->codec->sample_rate = srate;
... ...
@@ -269,15 +272,91 @@ vorbis_header (AVFormatContext * s, int idx)
269 269
             }
270 270
         }
271 271
     } else {
272
+        int ret;
272 273
         st->codec->extradata_size =
273 274
             fixup_vorbis_headers(s, priv, &st->codec->extradata);
275
+        if ((ret = avpriv_vorbis_parse_extradata(st->codec, &priv->vp))) {
276
+            av_freep(&st->codec->extradata);
277
+            st->codec->extradata_size = 0;
278
+            return ret;
279
+        }
274 280
     }
275 281
 
276 282
     return 1;
277 283
 }
278 284
 
285
+static int vorbis_packet(AVFormatContext *s, int idx)
286
+{
287
+    struct ogg *ogg = s->priv_data;
288
+    struct ogg_stream *os = ogg->streams + idx;
289
+    struct oggvorbis_private *priv = os->private;
290
+    int duration;
291
+
292
+    /* first packet handling
293
+       here we parse the duration of each packet in the first page and compare
294
+       the total duration to the page granule to find the encoder delay and
295
+       set the first timestamp */
296
+    if (!os->lastpts) {
297
+        int seg;
298
+        uint8_t *last_pkt = os->buf + os->pstart;
299
+        uint8_t *next_pkt = last_pkt;
300
+        int first_duration = 0;
301
+
302
+        avpriv_vorbis_parse_reset(&priv->vp);
303
+        duration = 0;
304
+        for (seg = 0; seg < os->nsegs; seg++) {
305
+            if (os->segments[seg] < 255) {
306
+                int d = avpriv_vorbis_parse_frame(&priv->vp, last_pkt, 1);
307
+                if (d < 0) {
308
+                    duration = os->granule;
309
+                    break;
310
+                }
311
+                if (!duration)
312
+                    first_duration = d;
313
+                duration += d;
314
+                last_pkt = next_pkt + os->segments[seg];
315
+            }
316
+            next_pkt += os->segments[seg];
317
+        }
318
+        os->lastpts = os->lastdts   = os->granule - duration;
319
+        s->streams[idx]->start_time = os->lastpts + first_duration;
320
+        if (s->streams[idx]->duration)
321
+            s->streams[idx]->duration -= s->streams[idx]->start_time;
322
+        s->streams[idx]->cur_dts    = AV_NOPTS_VALUE;
323
+        priv->final_pts             = AV_NOPTS_VALUE;
324
+        avpriv_vorbis_parse_reset(&priv->vp);
325
+    }
326
+
327
+    /* parse packet duration */
328
+    if (os->psize > 0) {
329
+        duration = avpriv_vorbis_parse_frame(&priv->vp, os->buf + os->pstart, 1);
330
+        if (duration <= 0) {
331
+            os->pflags |= AV_PKT_FLAG_CORRUPT;
332
+            return 0;
333
+        }
334
+        os->pduration = duration;
335
+    }
336
+
337
+    /* final packet handling
338
+       here we save the pts of the first packet in the final page, sum up all
339
+       packet durations in the final page except for the last one, and compare
340
+       to the page granule to find the duration of the final packet */
341
+    if (os->flags & OGG_FLAG_EOS) {
342
+        if (os->lastpts != AV_NOPTS_VALUE) {
343
+            priv->final_pts = os->lastpts;
344
+            priv->final_duration = 0;
345
+        }
346
+        if (os->segp == os->nsegs)
347
+            os->pduration = os->granule - priv->final_pts - priv->final_duration;
348
+        priv->final_duration += os->pduration;
349
+    }
350
+
351
+    return 0;
352
+}
353
+
279 354
 const struct ogg_codec ff_vorbis_codec = {
280 355
     .magic = "\001vorbis",
281 356
     .magicsize = 7,
282
-    .header = vorbis_header
357
+    .header = vorbis_header,
358
+    .packet = vorbis_packet,
283 359
 };
... ...
@@ -26,6 +26,8 @@
26 26
  * Options definition for AVFormatContext.
27 27
  */
28 28
 
29
+#include "options_table.h"
30
+
29 31
 static const char* format_to_name(void* ptr)
30 32
 {
31 33
     AVFormatContext* fc = (AVFormatContext*) ptr;
... ...
@@ -74,54 +76,6 @@ static const AVClass *format_child_class_next(const AVClass *prev)
74 74
     return NULL;
75 75
 }
76 76
 
77
-#define OFFSET(x) offsetof(AVFormatContext,x)
78
-#define DEFAULT 0 //should be NAN but it does not work as it is not a constant in glibc as required by ANSI/ISO C
79
-//these names are too long to be readable
80
-#define E AV_OPT_FLAG_ENCODING_PARAM
81
-#define D AV_OPT_FLAG_DECODING_PARAM
82
-
83
-static const AVOption options[]={
84
-{"probesize", "set probing size", OFFSET(probesize), AV_OPT_TYPE_INT, {.dbl = 5000000 }, 32, INT_MAX, D},
85
-{"packetsize", "set packet size", OFFSET(packet_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, E},
86
-{"fflags", NULL, OFFSET(flags), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, INT_MIN, INT_MAX, D|E, "fflags"},
87
-{"ignidx", "ignore index", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_IGNIDX }, INT_MIN, INT_MAX, D, "fflags"},
88
-{"genpts", "generate pts", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_GENPTS }, INT_MIN, INT_MAX, D, "fflags"},
89
-{"nofillin", "do not fill in missing values that can be exactly calculated", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_NOFILLIN }, INT_MIN, INT_MAX, D, "fflags"},
90
-{"noparse", "disable AVParsers, this needs nofillin too", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_NOPARSE }, INT_MIN, INT_MAX, D, "fflags"},
91
-{"igndts", "ignore dts", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_IGNDTS }, INT_MIN, INT_MAX, D, "fflags"},
92
-{"discardcorrupt", "discard corrupted frames", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_DISCARD_CORRUPT }, INT_MIN, INT_MAX, D, "fflags"},
93
-{"sortdts", "try to interleave outputted packets by dts", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_SORT_DTS }, INT_MIN, INT_MAX, D, "fflags"},
94
-{"keepside", "dont merge side data", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_KEEP_SIDE_DATA }, INT_MIN, INT_MAX, D, "fflags"},
95
-{"latm", "enable RTP MP4A-LATM payload", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_MP4A_LATM }, INT_MIN, INT_MAX, E, "fflags"},
96
-{"analyzeduration", "how many microseconds are analyzed to estimate duration", OFFSET(max_analyze_duration), AV_OPT_TYPE_INT, {.dbl = 5*AV_TIME_BASE }, 0, INT_MAX, D},
97
-{"cryptokey", "decryption key", OFFSET(key), AV_OPT_TYPE_BINARY, {.dbl = 0}, 0, 0, D},
98
-{"indexmem", "max memory used for timestamp index (per stream)", OFFSET(max_index_size), AV_OPT_TYPE_INT, {.dbl = 1<<20 }, 0, INT_MAX, D},
99
-{"rtbufsize", "max memory used for buffering real-time frames", OFFSET(max_picture_buffer), AV_OPT_TYPE_INT, {.dbl = 3041280 }, 0, INT_MAX, D}, /* defaults to 1s of 15fps 352x288 YUYV422 video */
100
-{"fdebug", "print specific debug info", OFFSET(debug), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, INT_MAX, E|D, "fdebug"},
101
-{"ts", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_FDEBUG_TS }, INT_MIN, INT_MAX, E|D, "fdebug"},
102
-{"max_delay", "maximum muxing or demuxing delay in microseconds", OFFSET(max_delay), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, E|D},
103
-{"fpsprobesize", "number of frames used to probe fps", OFFSET(fps_probe_size), AV_OPT_TYPE_INT, {.dbl = -1}, -1, INT_MAX-1, D},
104
-{"audio_preload", "microseconds by which audio packets should be interleaved earlier", OFFSET(audio_preload), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX-1, E},
105
-{"chunk_duration", "microseconds for each chunk", OFFSET(max_chunk_duration), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX-1, E},
106
-{"chunk_size", "size in bytes for each chunk", OFFSET(max_chunk_size), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX-1, E},
107
-/* this is a crutch for avconv, since it cannot deal with identically named options in different contexts.
108
- * to be removed when avconv is fixed */
109
-{"f_err_detect", "set error detection flags (deprecated; use err_detect, save via avconv)", OFFSET(error_recognition), AV_OPT_TYPE_FLAGS, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, D, "err_detect"},
110
-{"err_detect", "set error detection flags", OFFSET(error_recognition), AV_OPT_TYPE_FLAGS, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, D, "err_detect"},
111
-{"crccheck", "verify embedded CRCs", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, D, "err_detect"},
112
-{"bitstream", "detect bitstream specification deviations", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BITSTREAM }, INT_MIN, INT_MAX, D, "err_detect"},
113
-{"buffer", "detect improper bitstream length", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BUFFER }, INT_MIN, INT_MAX, D, "err_detect"},
114
-{"explode", "abort decoding on minor error detection", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_EXPLODE }, INT_MIN, INT_MAX, D, "err_detect"},
115
-{"careful",    "consider things that violate the spec and have not been seen in the wild as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CAREFUL }, INT_MIN, INT_MAX, D, "err_detect"},
116
-{"compliant",  "consider all spec non compliancies as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_COMPLIANT }, INT_MIN, INT_MAX, D, "err_detect"},
117
-{"aggressive", "consider things that a sane encoder shouldnt do as an error", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_AGGRESSIVE }, INT_MIN, INT_MAX, D, "err_detect"},
118
-{NULL},
119
-};
120
-
121
-#undef E
122
-#undef D
123
-#undef DEFAULT
124
-
125 77
 static const AVClass av_format_context_class = {
126 78
     .class_name     = "AVFormatContext",
127 79
     .item_name      = format_to_name,
128 80
new file mode 100644
... ...
@@ -0,0 +1,73 @@
0
+/*
1
+ * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
2
+ *
3
+ * This file is part of FFmpeg.
4
+ *
5
+ * FFmpeg is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * FFmpeg is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with FFmpeg; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+
20
+#ifndef AVFORMAT_OPTIONS_TABLE
21
+#define AVFORMAT_OPTIONS_TABLE
22
+
23
+#define OFFSET(x) offsetof(AVFormatContext,x)
24
+#define DEFAULT 0 //should be NAN but it does not work as it is not a constant in glibc as required by ANSI/ISO C
25
+//these names are too long to be readable
26
+#define E AV_OPT_FLAG_ENCODING_PARAM
27
+#define D AV_OPT_FLAG_DECODING_PARAM
28
+
29
+static const AVOption options[]={
30
+{"probesize", "set probing size", OFFSET(probesize), AV_OPT_TYPE_INT, {.dbl = 5000000 }, 32, INT_MAX, D},
31
+{"packetsize", "set packet size", OFFSET(packet_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, E},
32
+{"fflags", NULL, OFFSET(flags), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, INT_MIN, INT_MAX, D|E, "fflags"},
33
+{"ignidx", "ignore index", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_IGNIDX }, INT_MIN, INT_MAX, D, "fflags"},
34
+{"genpts", "generate pts", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_GENPTS }, INT_MIN, INT_MAX, D, "fflags"},
35
+{"nofillin", "do not fill in missing values that can be exactly calculated", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_NOFILLIN }, INT_MIN, INT_MAX, D, "fflags"},
36
+{"noparse", "disable AVParsers, this needs nofillin too", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_NOPARSE }, INT_MIN, INT_MAX, D, "fflags"},
37
+{"igndts", "ignore dts", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_IGNDTS }, INT_MIN, INT_MAX, D, "fflags"},
38
+{"discardcorrupt", "discard corrupted frames", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_DISCARD_CORRUPT }, INT_MIN, INT_MAX, D, "fflags"},
39
+{"sortdts", "try to interleave outputted packets by dts", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_SORT_DTS }, INT_MIN, INT_MAX, D, "fflags"},
40
+{"keepside", "dont merge side data", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_KEEP_SIDE_DATA }, INT_MIN, INT_MAX, D, "fflags"},
41
+{"latm", "enable RTP MP4A-LATM payload", 0, AV_OPT_TYPE_CONST, {.dbl = AVFMT_FLAG_MP4A_LATM }, INT_MIN, INT_MAX, E, "fflags"},
42
+{"analyzeduration", "how many microseconds are analyzed to estimate duration", OFFSET(max_analyze_duration), AV_OPT_TYPE_INT, {.dbl = 5*AV_TIME_BASE }, 0, INT_MAX, D},
43
+{"cryptokey", "decryption key", OFFSET(key), AV_OPT_TYPE_BINARY, {.dbl = 0}, 0, 0, D},
44
+{"indexmem", "max memory used for timestamp index (per stream)", OFFSET(max_index_size), AV_OPT_TYPE_INT, {.dbl = 1<<20 }, 0, INT_MAX, D},
45
+{"rtbufsize", "max memory used for buffering real-time frames", OFFSET(max_picture_buffer), AV_OPT_TYPE_INT, {.dbl = 3041280 }, 0, INT_MAX, D}, /* defaults to 1s of 15fps 352x288 YUYV422 video */
46
+{"fdebug", "print specific debug info", OFFSET(debug), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, INT_MAX, E|D, "fdebug"},
47
+{"ts", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = FF_FDEBUG_TS }, INT_MIN, INT_MAX, E|D, "fdebug"},
48
+{"max_delay", "maximum muxing or demuxing delay in microseconds", OFFSET(max_delay), AV_OPT_TYPE_INT, {.dbl = -1 }, -1, INT_MAX, E|D},
49
+{"fpsprobesize", "number of frames used to probe fps", OFFSET(fps_probe_size), AV_OPT_TYPE_INT, {.dbl = -1}, -1, INT_MAX-1, D},
50
+{"audio_preload", "microseconds by which audio packets should be interleaved earlier", OFFSET(audio_preload), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX-1, E},
51
+{"chunk_duration", "microseconds for each chunk", OFFSET(max_chunk_duration), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX-1, E},
52
+{"chunk_size", "size in bytes for each chunk", OFFSET(max_chunk_size), AV_OPT_TYPE_INT, {.dbl = 0}, 0, INT_MAX-1, E},
53
+/* this is a crutch for avconv, since it cannot deal with identically named options in different contexts.
54
+ * to be removed when avconv is fixed */
55
+{"f_err_detect", "set error detection flags (deprecated; use err_detect, save via avconv)", OFFSET(error_recognition), AV_OPT_TYPE_FLAGS, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, D, "err_detect"},
56
+{"err_detect", "set error detection flags", OFFSET(error_recognition), AV_OPT_TYPE_FLAGS, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, D, "err_detect"},
57
+{"crccheck", "verify embedded CRCs", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CRCCHECK }, INT_MIN, INT_MAX, D, "err_detect"},
58
+{"bitstream", "detect bitstream specification deviations", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BITSTREAM }, INT_MIN, INT_MAX, D, "err_detect"},
59
+{"buffer", "detect improper bitstream length", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_BUFFER }, INT_MIN, INT_MAX, D, "err_detect"},
60
+{"explode", "abort decoding on minor error detection", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_EXPLODE }, INT_MIN, INT_MAX, D, "err_detect"},
61
+{"careful",    "consider things that violate the spec and have not been seen in the wild as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_CAREFUL }, INT_MIN, INT_MAX, D, "err_detect"},
62
+{"compliant",  "consider all spec non compliancies as errors", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_COMPLIANT }, INT_MIN, INT_MAX, D, "err_detect"},
63
+{"aggressive", "consider things that a sane encoder shouldnt do as an error", 0, AV_OPT_TYPE_CONST, {.dbl = AV_EF_AGGRESSIVE }, INT_MIN, INT_MAX, D, "err_detect"},
64
+{NULL},
65
+};
66
+
67
+#undef E
68
+#undef D
69
+#undef DEFAULT
70
+#undef OFFSET
71
+
72
+#endif // AVFORMAT_OPTIONS_TABLE
... ...
@@ -256,7 +256,7 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,
256 256
     for (;;) {
257 257
         int i;
258 258
 
259
-        res = av_read_packet(rt->asf_ctx, pkt);
259
+        res = ff_read_packet(rt->asf_ctx, pkt);
260 260
         rt->asf_pb_pos = avio_tell(pb);
261 261
         if (res != 0)
262 262
             break;
... ...
@@ -126,7 +126,7 @@ static int rtp_write_header(AVFormatContext *s1)
126 126
     s->max_payload_size = s1->packet_size - 12;
127 127
 
128 128
     s->max_frames_per_packet = 0;
129
-    if (s1->max_delay) {
129
+    if (s1->max_delay > 0) {
130 130
         if (st->codec->codec_type == AVMEDIA_TYPE_AUDIO) {
131 131
             int frame_size = av_get_audio_frame_duration(st->codec, 0);
132 132
             if (!frame_size)
... ...
@@ -56,6 +56,7 @@
56 56
 #define MAX_TIMEOUTS READ_PACKET_TIMEOUT_S * 1000 / POLL_TIMEOUT_MS
57 57
 #define SDP_MAX_SIZE 16384
58 58
 #define RECVBUF_SIZE 10 * RTP_MAX_PACKET_LENGTH
59
+#define DEFAULT_REORDERING_DELAY 100000
59 60
 
60 61
 #define OFFSET(x) offsetof(RTSPState, x)
61 62
 #define DEC AV_OPT_FLAG_DECODING_PARAM
... ...
@@ -1421,6 +1422,9 @@ int ff_rtsp_connect(AVFormatContext *s)
1421 1421
     if (!ff_network_init())
1422 1422
         return AVERROR(EIO);
1423 1423
 
1424
+    if (s->max_delay < 0) /* Not set by the caller */
1425
+        s->max_delay = s->iformat ? DEFAULT_REORDERING_DELAY : 0;
1426
+
1424 1427
     rt->control_transport = RTSP_MODE_PLAIN;
1425 1428
     if (rt->lower_transport_mask & (1 << RTSP_LOWER_TRANSPORT_HTTP)) {
1426 1429
         rt->lower_transport_mask = 1 << RTSP_LOWER_TRANSPORT_TCP;
... ...
@@ -1861,6 +1865,9 @@ static int sdp_read_header(AVFormatContext *s)
1861 1861
     if (!ff_network_init())
1862 1862
         return AVERROR(EIO);
1863 1863
 
1864
+    if (s->max_delay < 0) /* Not set by the caller */
1865
+        s->max_delay = DEFAULT_REORDERING_DELAY;
1866
+
1864 1867
     /* read the whole sdp file */
1865 1868
     /* XXX: better loading */
1866 1869
     content = av_malloc(SDP_MAX_SIZE);
... ...
@@ -568,10 +568,22 @@ static AVPacket *add_to_pktbuf(AVPacketList **packet_buffer, AVPacket *pkt,
568 568
     return &pktl->pkt;
569 569
 }
570 570
 
571
+static void queue_attached_pictures(AVFormatContext *s)
572
+{
573
+    int i;
574
+    for (i = 0; i < s->nb_streams; i++)
575
+        if (s->streams[i]->disposition & AV_DISPOSITION_ATTACHED_PIC &&
576
+            s->streams[i]->discard < AVDISCARD_ALL) {
577
+            AVPacket copy = s->streams[i]->attached_pic;
578
+            copy.destruct = NULL;
579
+            add_to_pktbuf(&s->raw_packet_buffer, &copy, &s->raw_packet_buffer_end);
580
+        }
581
+}
582
+
571 583
 int avformat_open_input(AVFormatContext **ps, const char *filename, AVInputFormat *fmt, AVDictionary **options)
572 584
 {
573 585
     AVFormatContext *s = *ps;
574
-    int i, ret = 0;
586
+    int ret = 0;
575 587
     AVDictionary *tmp = NULL;
576 588
     ID3v2ExtraMeta *id3v2_extra_meta = NULL;
577 589
 
... ...
@@ -627,13 +639,7 @@ int avformat_open_input(AVFormatContext **ps, const char *filename, AVInputForma
627 627
         goto fail;
628 628
     ff_id3v2_free_extra_meta(&id3v2_extra_meta);
629 629
 
630
-    /* queue attached pictures */
631
-    for (i = 0; i < s->nb_streams; i++)
632
-        if (s->streams[i]->disposition & AV_DISPOSITION_ATTACHED_PIC) {
633
-            AVPacket copy = s->streams[i]->attached_pic;
634
-            copy.destruct = NULL;
635
-            add_to_pktbuf(&s->raw_packet_buffer, &copy, &s->raw_packet_buffer_end);
636
-        }
630
+    queue_attached_pictures(s);
637 631
 
638 632
     if (!(s->flags&AVFMT_FLAG_PRIV_OPT) && s->pb && !s->data_offset)
639 633
         s->data_offset = avio_tell(s->pb);
... ...
@@ -659,7 +665,7 @@ fail:
659 659
 
660 660
 /*******************************************************/
661 661
 
662
-int av_read_packet(AVFormatContext *s, AVPacket *pkt)
662
+int ff_read_packet(AVFormatContext *s, AVPacket *pkt)
663 663
 {
664 664
     int ret, i;
665 665
     AVStream *st;
... ...
@@ -756,6 +762,14 @@ int av_read_packet(AVFormatContext *s, AVPacket *pkt)
756 756
     }
757 757
 }
758 758
 
759
+#if FF_API_READ_PACKET
760
+int av_read_packet(AVFormatContext *s, AVPacket *pkt)
761
+{
762
+    return ff_read_packet(s, pkt);
763
+}
764
+#endif
765
+
766
+
759 767
 /**********************************************************/
760 768
 
761 769
 static int determinable_frame_size(AVCodecContext *avctx)
... ...
@@ -1228,7 +1242,7 @@ static int read_frame_internal(AVFormatContext *s, AVPacket *pkt)
1228 1228
         AVPacket cur_pkt;
1229 1229
 
1230 1230
         /* read next packet */
1231
-        ret = av_read_packet(s, &cur_pkt);
1231
+        ret = ff_read_packet(s, &cur_pkt);
1232 1232
         if (ret < 0) {
1233 1233
             if (ret == AVERROR(EAGAIN))
1234 1234
                 return ret;
... ...
@@ -1255,7 +1269,7 @@ static int read_frame_internal(AVFormatContext *s, AVPacket *pkt)
1255 1255
                    cur_pkt.size);
1256 1256
         }
1257 1257
         if (s->debug & FF_FDEBUG_TS)
1258
-            av_log(s, AV_LOG_DEBUG, "av_read_packet stream=%d, pts=%"PRId64", dts=%"PRId64", size=%d, duration=%d, flags=%d\n",
1258
+            av_log(s, AV_LOG_DEBUG, "ff_read_packet stream=%d, pts=%"PRId64", dts=%"PRId64", size=%d, duration=%d, flags=%d\n",
1259 1259
                    cur_pkt.stream_index,
1260 1260
                    cur_pkt.pts,
1261 1261
                    cur_pkt.dts,
... ...
@@ -1827,7 +1841,8 @@ static int seek_frame_generic(AVFormatContext *s,
1827 1827
     return 0;
1828 1828
 }
1829 1829
 
1830
-int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
1830
+static int seek_frame_internal(AVFormatContext *s, int stream_index,
1831
+                               int64_t timestamp, int flags)
1831 1832
 {
1832 1833
     int ret;
1833 1834
     AVStream *st;
... ...
@@ -1872,14 +1887,29 @@ int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp, int f
1872 1872
         return -1;
1873 1873
 }
1874 1874
 
1875
+int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
1876
+{
1877
+    int ret = seek_frame_internal(s, stream_index, timestamp, flags);
1878
+
1879
+    if (ret >= 0)
1880
+        queue_attached_pictures(s);
1881
+
1882
+    return ret;
1883
+}
1884
+
1875 1885
 int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags)
1876 1886
 {
1877 1887
     if(min_ts > ts || max_ts < ts)
1878 1888
         return -1;
1879 1889
 
1880 1890
     if (s->iformat->read_seek2) {
1891
+        int ret;
1881 1892
         ff_read_frame_flush(s);
1882
-        return s->iformat->read_seek2(s, stream_index, min_ts, ts, max_ts, flags);
1893
+        ret = s->iformat->read_seek2(s, stream_index, min_ts, ts, max_ts, flags);
1894
+
1895
+        if (ret >= 0)
1896
+            queue_attached_pictures(s);
1897
+        return ret;
1883 1898
     }
1884 1899
 
1885 1900
     if(s->iformat->read_timestamp){
... ...
@@ -2071,7 +2101,7 @@ static void estimate_timings_from_pts(AVFormatContext *ic, int64_t old_offset)
2071 2071
                 break;
2072 2072
 
2073 2073
             do {
2074
-                ret = av_read_packet(ic, pkt);
2074
+                ret = ff_read_packet(ic, pkt);
2075 2075
             } while(ret == AVERROR(EAGAIN));
2076 2076
             if (ret != 0)
2077 2077
                 break;
... ...
@@ -3354,7 +3384,9 @@ static int ff_interleave_compare_dts(AVFormatContext *s, AVPacket *next, AVPacke
3354 3354
     return comp > 0;
3355 3355
 }
3356 3356
 
3357
-int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out, AVPacket *pkt, int flush){
3357
+int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
3358
+                                 AVPacket *pkt, int flush)
3359
+{
3358 3360
     AVPacketList *pktl;
3359 3361
     int stream_count=0, noninterleaved_count=0;
3360 3362
     int64_t delta_dts_max = 0;
... ...
@@ -3413,6 +3445,14 @@ int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out, AVPacket *pk
3413 3413
     }
3414 3414
 }
3415 3415
 
3416
+#if FF_API_INTERLEAVE_PACKET
3417
+int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
3418
+                                 AVPacket *pkt, int flush)
3419
+{
3420
+    return ff_interleave_packet_per_dts(s, out, pkt, flush);
3421
+}
3422
+#endif
3423
+
3416 3424
 /**
3417 3425
  * Interleave an AVPacket correctly so it can be muxed.
3418 3426
  * @param out the interleaved packet will be output here
... ...
@@ -3429,7 +3469,7 @@ static int interleave_packet(AVFormatContext *s, AVPacket *out, AVPacket *in, in
3429 3429
             av_free_packet(in);
3430 3430
         return ret;
3431 3431
     } else
3432
-        return av_interleave_packet_per_dts(s, out, in, flush);
3432
+        return ff_interleave_packet_per_dts(s, out, in, flush);
3433 3433
 }
3434 3434
 
3435 3435
 int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt){
... ...
@@ -71,5 +71,11 @@
71 71
 #ifndef FF_API_APPLEHTTP_PROTO
72 72
 #define FF_API_APPLEHTTP_PROTO         (LIBAVFORMAT_VERSION_MAJOR < 55)
73 73
 #endif
74
+#ifndef FF_API_READ_PACKET
75
+#define FF_API_READ_PACKET             (LIBAVFORMAT_VERSION_MAJOR < 55)
76
+#endif
77
+#ifndef FF_API_INTERLEAVE_PACKET
78
+#define FF_API_INTERLEAVE_PACKET       (LIBAVFORMAT_VERSION_MAJOR < 55)
79
+#endif
74 80
 
75 81
 #endif /* AVFORMAT_VERSION_H */
... ...
@@ -38,7 +38,6 @@
38 38
 typedef struct MaxisXADemuxContext {
39 39
     uint32_t out_size;
40 40
     uint32_t sent_bytes;
41
-    uint32_t audio_frame_counter;
42 41
 } MaxisXADemuxContext;
43 42
 
44 43
 static int xa_probe(AVProbeData *p)
... ...
@@ -81,12 +80,15 @@ static int xa_read_header(AVFormatContext *s)
81 81
     avio_skip(pb, 2);       /* Skip the tag */
82 82
     st->codec->channels     = avio_rl16(pb);
83 83
     st->codec->sample_rate  = avio_rl32(pb);
84
-    /* Value in file is average byte rate*/
85
-    st->codec->bit_rate     = avio_rl32(pb) * 8;
86
-    st->codec->block_align  = avio_rl16(pb);
87
-    st->codec->bits_per_coded_sample = avio_rl16(pb);
84
+    avio_skip(pb, 4);       /* Skip average byte rate */
85
+    avio_skip(pb, 2);       /* Skip block align */
86
+    avio_skip(pb, 2);       /* Skip bits-per-sample */
87
+
88
+    st->codec->bit_rate = av_clip(15LL * st->codec->channels * 8 *
89
+                                  st->codec->sample_rate / 28, 0, INT_MAX);
88 90
 
89 91
     avpriv_set_pts_info(st, 64, 1, st->codec->sample_rate);
92
+    st->start_time = 0;
90 93
 
91 94
     return 0;
92 95
 }
... ...
@@ -100,8 +102,8 @@ static int xa_read_packet(AVFormatContext *s,
100 100
     unsigned int packet_size;
101 101
     int ret;
102 102
 
103
-    if(xa->sent_bytes > xa->out_size)
104
-        return AVERROR(EIO);
103
+    if (xa->sent_bytes >= xa->out_size)
104
+        return AVERROR_EOF;
105 105
     /* 1 byte header and 14 bytes worth of samples * number channels per block */
106 106
     packet_size = 15*st->codec->channels;
107 107
 
... ...
@@ -111,9 +113,7 @@ static int xa_read_packet(AVFormatContext *s,
111 111
 
112 112
     pkt->stream_index = st->index;
113 113
     xa->sent_bytes += packet_size;
114
-    pkt->pts = xa->audio_frame_counter;
115
-    /* 14 bytes Samples per channel with 2 samples per byte */
116
-    xa->audio_frame_counter += 28 * st->codec->channels;
114
+    pkt->duration = 28;
117 115
 
118 116
     return ret;
119 117
 }
... ...
@@ -19,6 +19,9 @@ fate-adpcm-creative-8-4bit: CMD = md5 -i $(SAMPLES)/creative/BBC_4BIT.VOC -f s16
19 19
 FATE_ADPCM += fate-adpcm-ea-mad-ea-r1
20 20
 fate-adpcm-ea-mad-ea-r1: CMD = framecrc -i $(SAMPLES)/ea-mad/NFS6LogoE.mad
21 21
 
22
+FATE_ADPCM += fate-adpcm-ea-maxis-xa
23
+fate-adpcm-ea-maxis-xa: CMD = framecrc -i $(SAMPLES)/maxis-xa/SC2KBUG.XA -frames:a 30
24
+
22 25
 FATE_ADPCM += fate-adpcm-ea-tqi
23 26
 fate-adpcm-ea-tqi: CMD = framecrc -i $(SAMPLES)/ea-wve/networkBackbone-partial.wve -frames:v 26
24 27
 
... ...
@@ -38,7 +38,7 @@ FATE_DEMUX += fate-lmlm4-demux
38 38
 fate-lmlm4-demux: CMD = framecrc -i $(SAMPLES)/lmlm4/LMLM4_CIFat30fps.divx -t 3 -acodec copy -vcodec copy
39 39
 
40 40
 FATE_DEMUX += fate-maxis-xa
41
-fate-maxis-xa: CMD = md5 -i $(SAMPLES)/maxis-xa/SC2KBUG.XA -f s16le
41
+fate-maxis-xa: CMD = framecrc -i $(SAMPLES)/maxis-xa/SC2KBUG.XA -frames:a 30 -c:a copy
42 42
 
43 43
 FATE_DEMUX += fate-mtv
44 44
 fate-mtv: CMD = framecrc -i $(SAMPLES)/mtv/comedian_auto-partial.mtv -acodec copy -pix_fmt rgb24
... ...
@@ -41,6 +41,6 @@ fate-vp8-sign-bias$(1): REF = $(SRC_PATH)/tests/ref/fate/vp8-sign-bias
41 41
 endef
42 42
 
43 43
 $(eval $(call FATE_VP8_FULL))
44
-$(eval $(call FATE_VP8_FULL,-emu-edge,-flags emu_edge))
44
+$(eval $(call FATE_VP8_FULL,-emu-edge,-flags +emu_edge))
45 45
 FATE_TESTS += $(FATE_VP8)
46 46
 fate-vp8: $(FATE_VP8)
47 47
new file mode 100644
... ...
@@ -0,0 +1,31 @@
0
+#tb 0: 1/22050
1
+0,          0,          0,       28,      112, 0x291d1be4
2
+0,         28,         28,       28,      112, 0xf08d33cc
3
+0,         56,         56,       28,      112, 0x5b1521de
4
+0,         84,         84,       28,      112, 0x57d209f6
5
+0,        112,        112,       28,      112, 0x00000000
6
+0,        140,        140,       28,      112, 0xa15e03fc
7
+0,        168,        168,       28,      112, 0x73a80bf4
8
+0,        196,        196,       28,      112, 0x916e03fc
9
+0,        224,        224,       28,      112, 0xd92603fc
10
+0,        252,        252,       28,      112, 0x097523dc
11
+0,        280,        280,       28,      112, 0xf7be45ba
12
+0,        308,        308,       28,      112, 0x0fed4db2
13
+0,        336,        336,       28,      112, 0x9fb41be4
14
+0,        364,        364,       28,      112, 0x819a0ff0
15
+0,        392,        392,       28,      112, 0xfe7f3fc0
16
+0,        420,        420,       28,      112, 0x281e1de2
17
+0,        448,        448,       28,      112, 0xa76605fa
18
+0,        476,        476,       28,      112, 0x00000000
19
+0,        504,        504,       28,      112, 0xb84705fa
20
+0,        532,        532,       28,      112, 0xdb5c0ff0
21
+0,        560,        560,       28,      112, 0xbc4305fa
22
+0,        588,        588,       28,      112, 0x7c8305fa
23
+0,        616,        616,       28,      112, 0x54ff21de
24
+0,        644,        644,       28,      112, 0xc6c535ca
25
+0,        672,        672,       28,      112, 0xa4123dc2
26
+0,        700,        700,       28,      112, 0x196523dc
27
+0,        728,        728,       28,      112, 0x80ef25da
28
+0,        756,        756,       28,      112, 0xdf742bd4
29
+0,        784,        784,       28,      112, 0xd78a21de
30
+0,        812,        812,       28,      112, 0x191f0df2
... ...
@@ -11,312 +11,312 @@
11 11
 1,       5512,       5512,     1380,     2760, 0x51f35cd4
12 12
 0,          4,          4,        1,    28800, 0x735a6b15
13 13
 0,          5,          5,        1,    28800, 0xf7e9dc8b
14
-1,       6892,       6892,     1378,     2756, 0x011c51e5
14
+1,       6891,       6891,     1378,     2756, 0x011c51e5
15 15
 0,          6,          6,        1,    28800, 0xa108b0cf
16
-1,       8270,       8270,     1378,     2756, 0x8c2c198c
16
+1,       8269,       8269,     1378,     2756, 0x8c2c198c
17 17
 0,          7,          7,        1,    28800, 0x3d11c138
18
-1,       9648,       9648,     1378,     2756, 0x2b4a3397
18
+1,       9647,       9647,     1378,     2756, 0x2b4a3397
19 19
 0,          8,          8,        1,    28800, 0xed23afda
20
-1,      11026,      11026,     1378,     2756, 0x63794f22
20
+1,      11025,      11025,     1378,     2756, 0x63794f22
21
+1,      12403,      12403,     1378,     2756, 0xfc363898
21 22
 0,          9,          9,        1,    28800, 0x713bb2dc
22
-1,      12404,      12404,     1378,     2756, 0xfc363898
23
+1,      13781,      13781,     1378,     2756, 0x0da5486e
23 24
 0,         10,         10,        1,    28800, 0x551ad51e
24
-1,      13782,      13782,     1378,     2756, 0x0da5486e
25
+1,      15159,      15159,     1378,     2756, 0xbae17a5f
25 26
 0,         11,         11,        1,    28800, 0x49dfcf2d
26
-1,      15160,      15160,     1378,     2756, 0xbae17a5f
27 27
 0,         12,         12,        1,    28800, 0x6399d5b3
28 28
 1,      16538,      16538,     1380,     2760, 0xba266e1b
29 29
 0,         13,         13,        1,    28800, 0x520ad812
30
-1,      17918,      17918,     1378,     2756, 0xdfb61002
30
+1,      17916,      17916,     1378,     2756, 0xdfb61002
31 31
 0,         14,         14,        1,    28800, 0xc46ad9da
32
-1,      19296,      19296,     1378,     2756, 0x15d029da
32
+1,      19294,      19294,     1378,     2756, 0x15d029da
33 33
 0,         15,         15,        1,    28800, 0xe79edb9e
34
-1,      20674,      20674,     1378,     2756, 0x7bc82012
34
+1,      20672,      20672,     1378,     2756, 0x7bc82012
35 35
 0,         16,         16,        1,    28800, 0xdb1acb30
36
-1,      22052,      22052,     1378,     2756, 0x002e6999
36
+1,      22050,      22050,     1378,     2756, 0x002e6999
37
+1,      23428,      23428,     1378,     2756, 0x96346ba6
37 38
 0,         17,         17,        1,    28800, 0x050fb669
38
-1,      23430,      23430,     1378,     2756, 0x96346ba6
39
+1,      24806,      24806,     1378,     2756, 0x3d54543b
39 40
 0,         18,         18,        1,    28800, 0x096ca687
40
-1,      24808,      24808,     1378,     2756, 0x3d54543b
41
+1,      26184,      26184,     1380,     2760, 0x601786e1
41 42
 0,         19,         19,        1,    28800, 0x0054a6bd
42
-1,      26186,      26186,     1380,     2760, 0x601786e1
43
+1,      27562,      27562,     1378,     2756, 0xf22a5793
43 44
 0,         20,         20,        1,    28800, 0x6d7daad2
44
-1,      27566,      27566,     1378,     2756, 0xf22a5793
45 45
 0,         21,         21,        1,    28800, 0x9c10a9dc
46
-1,      28944,      28944,     1378,     2756, 0x21f54d49
46
+1,      28941,      28941,     1378,     2756, 0x21f54d49
47 47
 0,         22,         22,        1,    28800, 0x89b1a623
48
-1,      30322,      30322,     1378,     2756, 0x0c6d4399
48
+1,      30319,      30319,     1378,     2756, 0x0c6d4399
49 49
 0,         23,         23,        1,    28800, 0xa0a19c3f
50
-1,      31700,      31700,     1378,     2756, 0x17282f8e
50
+1,      31697,      31697,     1378,     2756, 0x17282f8e
51 51
 0,         24,         24,        1,    28800, 0x26c898ad
52
-1,      33078,      33078,     1378,     2756, 0xeb698f75
52
+1,      33075,      33075,     1378,     2756, 0xeb698f75
53
+1,      34453,      34453,     1378,     2756, 0x935e1de2
53 54
 0,         25,         25,        1,    28800, 0x6f639dae
54
-1,      34456,      34456,     1378,     2756, 0x935e1de2
55
+1,      35831,      35831,     1380,     2760, 0xb6fb4293
55 56
 0,         26,         26,        1,    28800, 0xa173a9b5
56
-1,      35834,      35834,     1380,     2760, 0xb6fb4293
57
+1,      37209,      37209,     1378,     2756, 0x485053dc
57 58
 0,         27,         27,        1,    28800, 0xa309aa08
58
-1,      37214,      37214,     1378,     2756, 0x485053dc
59 59
 0,         28,         28,        1,    28800, 0x2059b6c4
60
-1,      38592,      38592,     1378,     2756, 0x24c35027
60
+1,      38588,      38588,     1378,     2756, 0x24c35027
61 61
 0,         29,         29,        1,    28800, 0x5ae8c761
62
-1,      39970,      39970,     1378,     2756, 0x09f323ee
62
+1,      39966,      39966,     1378,     2756, 0x09f323ee
63 63
 0,         30,         30,        1,    28800, 0xb780c9c5
64
-1,      41348,      41348,     1378,     2756, 0xbc7d58d5
64
+1,      41344,      41344,     1378,     2756, 0xbc7d58d5
65 65
 0,         31,         31,        1,    28800, 0xf58ac8fe
66
-1,      42726,      42726,     1378,     2756, 0xaefd487c
66
+1,      42722,      42722,     1378,     2756, 0xaefd487c
67 67
 0,         32,         32,        1,    28800, 0x9bb307e7
68
-1,      44104,      44104,     1378,     2756, 0xaca16cc0
68
+1,      44100,      44100,     1378,     2756, 0xaca16cc0
69
+1,      45478,      45478,     1380,     2760, 0x98a76091
69 70
 0,         33,         33,        1,    28800, 0xd32c3e81
70
-1,      45482,      45482,     1380,     2760, 0x98a76091
71
+1,      46856,      46856,     1378,     2756, 0x5d357141
71 72
 0,         34,         34,        1,    28800, 0x4edd51d2
72
-1,      46862,      46862,     1378,     2756, 0x5d357141
73
+1,      48234,      48234,     1378,     2756, 0x65ea2657
73 74
 0,         35,         35,        1,    28800, 0x5a88684d
74
-1,      48240,      48240,     1378,     2756, 0x65ea2657
75
+1,      49612,      49612,     1378,     2756, 0xb5e1334a
75 76
 0,         36,         36,        1,    28800, 0x5bd97f0e
76
-1,      49618,      49618,     1378,     2756, 0xb5e1334a
77 77
 0,         37,         37,        1,    28800, 0x36d67843
78
-1,      50996,      50996,     1378,     2756, 0x32cd5d91
78
+1,      50991,      50991,     1378,     2756, 0x32cd5d91
79 79
 0,         38,         38,        1,    28800, 0x0e18781d
80
-1,      52374,      52374,     1378,     2756, 0xdc23722b
80
+1,      52369,      52369,     1378,     2756, 0xdc23722b
81 81
 0,         39,         39,        1,    28800, 0xa3168807
82
-1,      53752,      53752,     1378,     2756, 0x2ba34684
82
+1,      53747,      53747,     1378,     2756, 0x2ba34684
83 83
 0,         40,         40,        1,    28800, 0xa7c575b8
84
-1,      55130,      55130,     1378,     2756, 0xf9755ba8
84
+1,      55125,      55125,     1378,     2756, 0xf9755ba8
85
+1,      56503,      56503,     1380,     2760, 0x24221ddb
85 86
 0,         41,         41,        1,    28800, 0x86367c37
86
-1,      56508,      56508,     1380,     2760, 0x24221ddb
87
+1,      57881,      57881,     1378,     2756, 0xef843aa4
87 88
 0,         42,         42,        1,    28800, 0xb0f79180
88
-1,      57888,      57888,     1378,     2756, 0xef843aa4
89
+1,      59259,      59259,     1378,     2756, 0x420442fe
89 90
 0,         43,         43,        1,    28800, 0x61da8c0f
90
-1,      59266,      59266,     1378,     2756, 0x420442fe
91 91
 0,         44,         44,        1,    28800, 0x9b11948a
92
-1,      60644,      60644,     1378,     2756, 0x5a0933cb
92
+1,      60638,      60638,     1378,     2756, 0x5a0933cb
93 93
 0,         45,         45,        1,    28800, 0xc53d9b44
94
-1,      62022,      62022,     1378,     2756, 0xef5f6d61
94
+1,      62016,      62016,     1378,     2756, 0xef5f6d61
95 95
 0,         46,         46,        1,    28800, 0xdc699185
96
-1,      63400,      63400,     1378,     2756, 0xe57e6dc0
96
+1,      63394,      63394,     1378,     2756, 0xe57e6dc0
97 97
 0,         47,         47,        1,    28800, 0x7b4f92b5
98
-1,      64778,      64778,     1378,     2756, 0xc0f0495a
98
+1,      64772,      64772,     1378,     2756, 0xc0f0495a
99 99
 0,         48,         48,        1,    28800, 0x40469065
100
-1,      66156,      66156,     1380,     2760, 0x2c3b55df
100
+1,      66150,      66150,     1380,     2760, 0x2c3b55df
101
+1,      67528,      67528,     1378,     2756, 0x39c2586c
101 102
 0,         49,         49,        1,    28800, 0x737ea07e
102
-1,      67536,      67536,     1378,     2756, 0x39c2586c
103
+1,      68906,      68906,     1378,     2756, 0x7ffc46e5
103 104
 0,         50,         50,        1,    28800, 0x0db49c8b
104
-1,      68914,      68914,     1378,     2756, 0x7ffc46e5
105
+1,      70284,      70284,     1378,     2756, 0xa2766664
105 106
 0,         51,         51,        1,    28800, 0x39249f10
106
-1,      70292,      70292,     1378,     2756, 0xa2766664
107
+1,      71662,      71662,     1378,     2756, 0xacb50c6c
107 108
 0,         52,         52,        1,    28800, 0xc182ab99
108
-1,      71670,      71670,     1378,     2756, 0xacb50c6c
109 109
 0,         53,         53,        1,    28800, 0xd8f7a7c9
110
-1,      73048,      73048,     1378,     2756, 0x7f659084
110
+1,      73041,      73041,     1378,     2756, 0x7f659084
111 111
 0,         54,         54,        1,    28800, 0x46789caa
112
-1,      74426,      74426,     1378,     2756, 0xc72e6a12
112
+1,      74419,      74419,     1378,     2756, 0xc72e6a12
113 113
 0,         55,         55,        1,    28800, 0x4759a374
114
-1,      75804,      75804,     1380,     2760, 0xdb6944df
114
+1,      75797,      75797,     1380,     2760, 0xdb6944df
115 115
 0,         56,         56,        1,    28800, 0xe621b16a
116
-1,      77184,      77184,     1378,     2756, 0x954f45c1
116
+1,      77175,      77175,     1378,     2756, 0x954f45c1
117
+1,      78553,      78553,     1378,     2756, 0xa9484240
117 118
 0,         57,         57,        1,    28800, 0xcf47a999
118
-1,      78562,      78562,     1378,     2756, 0xa9484240
119
+1,      79931,      79931,     1378,     2756, 0x1d595349
119 120
 0,         58,         58,        1,    28800, 0x801dacd4
120
-1,      79940,      79940,     1378,     2756, 0x1d595349
121
+1,      81309,      81309,     1378,     2756, 0xcf2a565e
121 122
 0,         59,         59,        1,    28800, 0xe580af51
122
-1,      81318,      81318,     1378,     2756, 0xcf2a565e
123 123
 0,         60,         60,        1,    28800, 0x03d7a887
124
-1,      82696,      82696,     1378,     2756, 0x391028d5
124
+1,      82688,      82688,     1378,     2756, 0x391028d5
125 125
 0,         61,         61,        1,    28800, 0xa67ea51d
126
-1,      84074,      84074,     1378,     2756, 0x348db7ad
126
+1,      84066,      84066,     1378,     2756, 0x348db7ad
127 127
 0,         62,         62,        1,    28800, 0x9fee0ec8
128
-1,      85452,      85452,     1380,     2760, 0xb69b5e3a
128
+1,      85444,      85444,     1380,     2760, 0xb69b5e3a
129 129
 0,         63,         63,        1,    28800, 0x7f602a5e
130
-1,      86832,      86832,     1378,     2756, 0xe3635fbe
130
+1,      86822,      86822,     1378,     2756, 0xe3635fbe
131 131
 0,         64,         64,        1,    28800, 0x100d432a
132
-1,      88210,      88210,     1378,     2756, 0xdcad3654
132
+1,      88200,      88200,     1378,     2756, 0xdcad3654
133
+1,      89578,      89578,     1378,     2756, 0x5c17abef
133 134
 0,         65,         65,        1,    28800, 0x42164dfb
134
-1,      89588,      89588,     1378,     2756, 0x5c17abef
135
+1,      90956,      90956,     1378,     2756, 0xb3235184
135 136
 0,         66,         66,        1,    28800, 0x86c05196
136
-1,      90966,      90966,     1378,     2756, 0xb3235184
137
+1,      92334,      92334,     1378,     2756, 0xdabb64a6
137 138
 0,         67,         67,        1,    28800, 0xfc225938
138
-1,      92344,      92344,     1378,     2756, 0xdabb64a6
139
+1,      93712,      93712,     1378,     2756, 0xa95dc58d
139 140
 0,         68,         68,        1,    28800, 0x81085e87
140
-1,      93722,      93722,     1378,     2756, 0xa95dc58d
141 141
 0,         69,         69,        1,    28800, 0xaa8f5d0a
142
-1,      95100,      95100,     1380,     2760, 0x8e7ac9eb
142
+1,      95091,      95091,     1380,     2760, 0x8e7ac9eb
143 143
 0,         70,         70,        1,    28800, 0x605a5f9f
144
-1,      96480,      96480,     1378,     2756, 0x492b658e
144
+1,      96469,      96469,     1378,     2756, 0x492b658e
145 145
 0,         71,         71,        1,    28800, 0x68dc64b2
146
-1,      97858,      97858,     1378,     2756, 0x377483ab
146
+1,      97847,      97847,     1378,     2756, 0x377483ab
147 147
 0,         72,         72,        1,    28800, 0xd08e710b
148
-1,      99236,      99236,     1378,     2756, 0x2c250279
148
+1,      99225,      99225,     1378,     2756, 0x2c250279
149
+1,     100603,     100603,     1378,     2756, 0x704dbdb3
149 150
 0,         73,         73,        1,    28800, 0xf8567939
150
-1,     100614,     100614,     1378,     2756, 0x704dbdb3
151
+1,     101981,     101981,     1378,     2756, 0x800d7da2
151 152
 0,         74,         74,        1,    28800, 0x8dad7a4f
152
-1,     101992,     101992,     1378,     2756, 0x800d7da2
153
+1,     103359,     103359,     1378,     2756, 0x872aa32e
153 154
 0,         75,         75,        1,    28800, 0x1a19813c
154
-1,     103370,     103370,     1378,     2756, 0x872aa32e
155 155
 0,         76,         76,        1,    28800, 0x8a157f0e
156
-1,     104748,     104748,     1378,     2756, 0x2d4837fe
156
+1,     104738,     104738,     1378,     2756, 0x2d4837fe
157 157
 0,         77,         77,        1,    28800, 0xa4fa7b9d
158
-1,     106126,     106126,     1380,     2760, 0xc89ea57e
158
+1,     106116,     106116,     1380,     2760, 0xc89ea57e
159 159
 0,         78,         78,        1,    28800, 0x093b7b36
160
-1,     107506,     107506,     1378,     2756, 0x6447d7ef
160
+1,     107494,     107494,     1378,     2756, 0x6447d7ef
161 161
 0,         79,         79,        1,    28800, 0xa925755b
162
-1,     108884,     108884,     1378,     2756, 0x144f59cc
162
+1,     108872,     108872,     1378,     2756, 0x144f59cc
163 163
 0,         80,         80,        1,    28800, 0xa5968138
164
-1,     110262,     110262,     1378,     2756, 0xc667154e
164
+1,     110250,     110250,     1378,     2756, 0xc667154e
165
+1,     111628,     111628,     1378,     2756, 0xf0de66ae
165 166
 0,         81,         81,        1,    28800, 0xe00877ac
166
-1,     111640,     111640,     1378,     2756, 0xf0de66ae
167
+1,     113006,     113006,     1378,     2756, 0xeabf3c32
167 168
 0,         82,         82,        1,    28800, 0xd736183e
168
-1,     113018,     113018,     1378,     2756, 0xeabf3c32
169
+1,     114384,     114384,     1378,     2756, 0xe98e81d1
169 170
 0,         83,         83,        1,    28800, 0x356f2068
170
-1,     114396,     114396,     1378,     2756, 0xe98e81d1
171
+1,     115762,     115762,     1380,     2760, 0x56aa5889
171 172
 0,         84,         84,        1,    28800, 0xf9a50f22
172
-1,     115774,     115774,     1380,     2760, 0x56aa5889
173 173
 0,         85,         85,        1,    28800, 0x92df2ae8
174
-1,     117154,     117154,     1378,     2756, 0x4fd34c0e
174
+1,     117141,     117141,     1378,     2756, 0x4fd34c0e
175 175
 0,         86,         86,        1,    28800, 0x67a43dc8
176
-1,     118532,     118532,     1378,     2756, 0x67cf6912
176
+1,     118519,     118519,     1378,     2756, 0x67cf6912
177 177
 0,         87,         87,        1,    28800, 0xf8ce2ead
178
-1,     119910,     119910,     1378,     2756, 0xfa944def
178
+1,     119897,     119897,     1378,     2756, 0xfa944def
179 179
 0,         88,         88,        1,    28800, 0xf42f37ee
180
-1,     121288,     121288,     1378,     2756, 0xc12f23b2
180
+1,     121275,     121275,     1378,     2756, 0xc12f23b2
181
+1,     122653,     122653,     1378,     2756, 0x5ea325a2
181 182
 0,         89,         89,        1,    28800, 0x03611f37
182
-1,     122666,     122666,     1378,     2756, 0x5ea325a2
183
+1,     124031,     124031,     1378,     2756, 0x2b245824
183 184
 0,         90,         90,        1,    28800, 0xddda2327
184
-1,     124044,     124044,     1378,     2756, 0x2b245824
185
+1,     125409,     125409,     1380,     2760, 0x90ac533e
185 186
 0,         91,         91,        1,    28800, 0xdf073d85
186
-1,     125422,     125422,     1380,     2760, 0x90ac533e
187 187
 0,         92,         92,        1,    28800, 0xa8331fee
188
-1,     126802,     126802,     1378,     2756, 0xcca34d26
188
+1,     126788,     126788,     1378,     2756, 0xcca34d26
189 189
 0,         93,         93,        1,    28800, 0x59d3490a
190
-1,     128180,     128180,     1378,     2756, 0xb5f820d0
190
+1,     128166,     128166,     1378,     2756, 0xb5f820d0
191 191
 0,         94,         94,        1,    28800, 0xa8335be6
192
-1,     129558,     129558,     1378,     2756, 0x27f24335
192
+1,     129544,     129544,     1378,     2756, 0x27f24335
193 193
 0,         95,         95,        1,    28800, 0xd5483b43
194
-1,     130936,     130936,     1378,     2756, 0x4a9e87b7
194
+1,     130922,     130922,     1378,     2756, 0x4a9e87b7
195 195
 0,         96,         96,        1,    28800, 0x23422dc9
196
-1,     132314,     132314,     1378,     2756, 0xbd076129
196
+1,     132300,     132300,     1378,     2756, 0xbd076129
197
+1,     133678,     133678,     1378,     2756, 0x2e0e3f2e
197 198
 0,         97,         97,        1,    28800, 0xc04e4689
198
-1,     133692,     133692,     1378,     2756, 0x2e0e3f2e
199
+1,     135056,     135056,     1380,     2760, 0xdf534478
199 200
 0,         98,         98,        1,    28800, 0xd4d96372
200
-1,     135070,     135070,     1380,     2760, 0xdf534478
201
+1,     136434,     136434,     1378,     2756, 0xca000a2e
201 202
 0,         99,         99,        1,    28800, 0x9c814e96
202
-1,     136450,     136450,     1378,     2756, 0xca000a2e
203
+1,     137812,     137812,     1378,     2756, 0x87472df3
203 204
 0,        100,        100,        1,    28800, 0x7c4b5d3b
204
-1,     137828,     137828,     1378,     2756, 0x87472df3
205 205
 0,        101,        101,        1,    28800, 0x6bf66c04
206
-1,     139206,     139206,     1378,     2756, 0x16733810
206
+1,     139191,     139191,     1378,     2756, 0x16733810
207 207
 0,        102,        102,        1,    28800, 0x6e8d4bb6
208
-1,     140584,     140584,     1378,     2756, 0xfa0734b4
208
+1,     140569,     140569,     1378,     2756, 0xfa0734b4
209 209
 0,        103,        103,        1,    28800, 0xad964d00
210
-1,     141962,     141962,     1378,     2756, 0x5eff3fc4
210
+1,     141947,     141947,     1378,     2756, 0x5eff3fc4
211 211
 0,        104,        104,        1,    28800, 0x1ff36bd1
212
-1,     143340,     143340,     1378,     2756, 0xf35346bd
212
+1,     143325,     143325,     1378,     2756, 0xf35346bd
213
+1,     144703,     144703,     1378,     2756, 0xac6411c5
213 214
 0,        105,        105,        1,    28800, 0xa4664c76
214
-1,     144718,     144718,     1378,     2756, 0xac6411c5
215
+1,     146081,     146081,     1380,     2760, 0x478c3c56
215 216
 0,        106,        106,        1,    28800, 0x50626d82
216
-1,     146096,     146096,     1380,     2760, 0x478c3c56
217
+1,     147459,     147459,     1378,     2756, 0xebd30bdd
217 218
 0,        107,        107,        1,    28800, 0x81906c5c
218
-1,     147476,     147476,     1378,     2756, 0xebd30bdd
219 219
 0,        108,        108,        1,    28800, 0x5060543f
220
-1,     148854,     148854,     1378,     2756, 0xaef95a31
220
+1,     148838,     148838,     1378,     2756, 0xaef95a31
221 221
 0,        109,        109,        1,    28800, 0x231c5a86
222
-1,     150232,     150232,     1378,     2756, 0x8aad29d1
222
+1,     150216,     150216,     1378,     2756, 0x8aad29d1
223 223
 0,        110,        110,        1,    28800, 0x79775d48
224
-1,     151610,     151610,     1378,     2756, 0x626863f0
224
+1,     151594,     151594,     1378,     2756, 0x626863f0
225 225
 0,        111,        111,        1,    28800, 0xbb893571
226
-1,     152988,     152988,     1378,     2756, 0x68c05707
226
+1,     152972,     152972,     1378,     2756, 0x68c05707
227 227
 0,        112,        112,        1,    28800, 0x794c49ed
228
-1,     154366,     154366,     1378,     2756, 0x437c5e8d
228
+1,     154350,     154350,     1378,     2756, 0x437c5e8d
229
+1,     155728,     155728,     1380,     2760, 0x8eca4bdb
229 230
 0,        113,        113,        1,    28800, 0x70464bac
230
-1,     155744,     155744,     1380,     2760, 0x8eca4bdb
231
+1,     157106,     157106,     1378,     2756, 0x62bd4162
231 232
 0,        114,        114,        1,    28800, 0xe79549ce
232
-1,     157124,     157124,     1378,     2756, 0x62bd4162
233
+1,     158484,     158484,     1378,     2756, 0x9f744aa4
233 234
 0,        115,        115,        1,    28800, 0xa6565555
234
-1,     158502,     158502,     1378,     2756, 0x9f744aa4
235
+1,     159862,     159862,     1378,     2756, 0x0f3f6409
235 236
 0,        116,        116,        1,    28800, 0x2ef1ad6d
236
-1,     159880,     159880,     1378,     2756, 0x0f3f6409
237 237
 0,        117,        117,        1,    28800, 0xdd22b9aa
238
-1,     161258,     161258,     1378,     2756, 0x3fee827a
238
+1,     161241,     161241,     1378,     2756, 0x3fee827a
239 239
 0,        118,        118,        1,    28800, 0x26ebaa97
240
-1,     162636,     162636,     1378,     2756, 0x48a0ac19
240
+1,     162619,     162619,     1378,     2756, 0x48a0ac19
241 241
 0,        119,        119,        1,    28800, 0x32bd979e
242
-1,     164014,     164014,     1378,     2756, 0x8e4ce0d0
242
+1,     163997,     163997,     1378,     2756, 0x8e4ce0d0
243 243
 0,        120,        120,        1,    28800, 0x4c167c9a
244
-1,     165392,     165392,     1380,     2760, 0xcda82236
244
+1,     165375,     165375,     1380,     2760, 0xcda82236
245
+1,     166753,     166753,     1378,     2756, 0x0e523255
245 246
 0,        121,        121,        1,    28800, 0xfdf76051
246
-1,     166772,     166772,     1378,     2756, 0x0e523255
247
+1,     168131,     168131,     1378,     2756, 0x84103d30
247 248
 0,        122,        122,        1,    28800, 0x966938a8
248
-1,     168150,     168150,     1378,     2756, 0x84103d30
249
+1,     169509,     169509,     1378,     2756, 0x13941cde
249 250
 0,        123,        123,        1,    28800, 0xcea3fbde
250
-1,     169528,     169528,     1378,     2756, 0x13941cde
251 251
 0,        124,        124,        1,    28800, 0x29a0c213
252
-1,     170906,     170906,     1378,     2756, 0x9fc834c5
252
+1,     170888,     170888,     1378,     2756, 0x9fc834c5
253 253
 0,        125,        125,        1,    28800, 0x5633a1c2
254
-1,     172284,     172284,     1378,     2756, 0xc0217a77
254
+1,     172266,     172266,     1378,     2756, 0xc0217a77
255 255
 0,        126,        126,        1,    28800, 0xdc0b9af8
256
-1,     173662,     173662,     1378,     2756, 0x3f643659
256
+1,     173644,     173644,     1378,     2756, 0x3f643659
257 257
 0,        127,        127,        1,    28800, 0x92138848
258
-1,     175040,     175040,     1380,     2760, 0x9dbd6002
258
+1,     175022,     175022,     1380,     2760, 0x9dbd6002
259 259
 0,        128,        128,        1,    28800, 0xd7308da5
260
-1,     176420,     176420,     1378,     2756, 0x94f046fb
260
+1,     176400,     176400,     1378,     2756, 0x94f046fb
261
+1,     177778,     177778,     1378,     2756, 0xab01fb12
261 262
 0,        129,        129,        1,    28800, 0x0c8f9b3f
262
-1,     177798,     177798,     1378,     2756, 0xab01fb12
263
+1,     179156,     179156,     1378,     2756, 0x04cffe5c
263 264
 0,        130,        130,        1,    28800, 0xd059b5d1
264
-1,     179176,     179176,     1378,     2756, 0x04cffe5c
265
+1,     180534,     180534,     1378,     2756, 0xef661c5e
265 266
 0,        131,        131,        1,    28800, 0xba6ed9cd
266
-1,     180554,     180554,     1378,     2756, 0xef661c5e
267
+1,     181912,     181912,     1378,     2756, 0x094c5fc5
267 268
 0,        132,        132,        1,    28800, 0x896c1064
268
-1,     181932,     181932,     1378,     2756, 0x094c5fc5
269 269
 0,        133,        133,        1,    28800, 0x986e2fc9
270
-1,     183310,     183310,     1378,     2756, 0xe0c1486a
270
+1,     183291,     183291,     1378,     2756, 0xe0c1486a
271 271
 0,        134,        134,        1,    28800, 0xcba94e4b
272
-1,     184688,     184688,     1380,     2760, 0x8c3535b7
272
+1,     184669,     184669,     1380,     2760, 0x8c3535b7
273 273
 0,        135,        135,        1,    28800, 0xf3e778ed
274
-1,     186068,     186068,     1378,     2756, 0x594934aa
274
+1,     186047,     186047,     1378,     2756, 0x594934aa
275 275
 0,        136,        136,        1,    28800, 0xc6cd7d48
276
-1,     187446,     187446,     1378,     2756, 0x74007238
276
+1,     187425,     187425,     1378,     2756, 0x74007238
277
+1,     188803,     188803,     1378,     2756, 0x61f1394d
277 278
 0,        137,        137,        1,    28800, 0xd9bd84d8
278
-1,     188824,     188824,     1378,     2756, 0x61f1394d
279
+1,     190181,     190181,     1378,     2756, 0x72584f07
279 280
 0,        138,        138,        1,    28800, 0x391197b4
280
-1,     190202,     190202,     1378,     2756, 0x72584f07
281
+1,     191559,     191559,     1378,     2756, 0xced9acf9
281 282
 0,        139,        139,        1,    28800, 0xf361a1d9
282
-1,     191580,     191580,     1378,     2756, 0xced9acf9
283 283
 0,        140,        140,        1,    28800, 0x9a1ea54e
284
-1,     192958,     192958,     1378,     2756, 0x7d2e3ea1
284
+1,     192938,     192938,     1378,     2756, 0x7d2e3ea1
285 285
 0,        141,        141,        1,    28800, 0x551aab57
286
-1,     194336,     194336,     1378,     2756, 0x56c06897
286
+1,     194316,     194316,     1378,     2756, 0x56c06897
287 287
 0,        142,        142,        1,    28800, 0x3af8577d
288
-1,     195714,     195714,     1380,     2760, 0x19983bbf
288
+1,     195694,     195694,     1380,     2760, 0x19983bbf
289 289
 0,        143,        143,        1,    28800, 0x10f76ed0
290
-1,     197094,     197094,     1378,     2756, 0x4f884f27
290
+1,     197072,     197072,     1378,     2756, 0x4f884f27
291 291
 0,        144,        144,        1,    28800, 0x026a7fde
292
-1,     198472,     198472,     1378,     2756, 0x81ab2f63
292
+1,     198450,     198450,     1378,     2756, 0x81ab2f63
293
+1,     199828,     199828,     1378,     2756, 0x448e681d
293 294
 0,        145,        145,        1,    28800, 0x3e0e8db8
294
-1,     199850,     199850,     1378,     2756, 0x448e681d
295
+1,     201206,     201206,     1378,     2756, 0x0ba9826e
295 296
 0,        146,        146,        1,    28800, 0x22998d2d
296
-1,     201228,     201228,     1378,     2756, 0x0ba9826e
297
+1,     202584,     202584,     1378,     2756, 0x049f36fa
297 298
 0,        147,        147,        1,    28800, 0x05978b12
298
-1,     202606,     202606,     1378,     2756, 0x049f36fa
299
+1,     203962,     203962,     1378,     2756, 0x096a2b62
299 300
 0,        148,        148,        1,    28800, 0x38b88294
300
-1,     203984,     203984,     1378,     2756, 0x096a2b62
301 301
 0,        149,        149,        1,    28800, 0x2ef677d6
302
-1,     205362,     205362,     1380,     2760, 0x579e2035
302
+1,     205341,     205341,     1380,     2760, 0x579e2035
303 303
 0,        150,        150,        1,    28800, 0x0b9a8894
304
-1,     206742,     206742,     1378,     2756, 0xd13e30e1
304
+1,     206719,     206719,     1378,     2756, 0xd13e30e1
305 305
 0,        151,        151,        1,    28800, 0x2dcb6718
306
-1,     208120,     208120,     1378,     2756, 0x30b6412b
306
+1,     208097,     208097,     1378,     2756, 0x30b6412b
307 307
 0,        152,        152,        1,    28800, 0xa31b6679
308
-1,     209498,     209498,     1378,     2756, 0xbb1c3268
308
+1,     209475,     209475,     1378,     2756, 0xbb1c3268
309
+1,     210853,     210853,     1378,     2756, 0xbc175b6a
309 310
 0,        153,        153,        1,    28800, 0x262d6a50
310
-1,     210876,     210876,     1378,     2756, 0xbc175b6a
311
+1,     212231,     212231,     1378,     2756, 0xf8d160e2
311 312
 0,        154,        154,        1,    28800, 0xff3d6d0d
312
-1,     212254,     212254,     1378,     2756, 0xf8d160e2
313
+1,     213609,     213609,     1378,     2756, 0xc1048154
313 314
 0,        155,        155,        1,    28800, 0x159d7045
314
-1,     213632,     213632,     1378,     2756, 0xc1048154
315 315
 0,        156,        156,        1,    28800, 0xf0df7800
316
-1,     215010,     215010,     1380,     2760, 0xb83548f4
316
+1,     214988,     214988,     1380,     2760, 0xb83548f4
317 317
 0,        157,        157,        1,    28800, 0xbe825ea5
318
-1,     216390,     216390,     1378,     2756, 0x22647962
318
+1,     216366,     216366,     1378,     2756, 0x22647962
319 319
 0,        158,        158,        1,    28800, 0x80e25d5a
320
-1,     217768,     217768,     1378,     2756, 0x14ca54d3
320
+1,     217744,     217744,     1378,     2756, 0x14ca54d3
321 321
 0,        159,        159,        1,    28800, 0x8cbe263f
322
-1,     219146,     219146,     1378,     2756, 0x58754b3a
322
+1,     219122,     219122,     1378,     2756, 0x58754b3a
... ...
@@ -1 +1,31 @@
1
-b4cd52fc080bffefeea94ce7c116046f
1
+#tb 0: 1/22050
2
+0,          0,          0,       28,       30, 0x51750711
3
+0,         28,         28,       28,       30, 0x9ca20c2a
4
+0,         56,         56,       28,       30, 0x7551081f
5
+0,         84,         84,       28,       30, 0x09540063
6
+0,        112,        112,       28,       30, 0x02c40018
7
+0,        140,        140,       28,       30, 0x0f6c0117
8
+0,        168,        168,       28,       30, 0x2aab0315
9
+0,        196,        196,       28,       30, 0x0e6d0117
10
+0,        224,        224,       28,       30, 0x04770036
11
+0,        252,        252,       28,       30, 0x939c090f
12
+0,        280,        280,       28,       30, 0xde511116
13
+0,        308,        308,       28,       30, 0x2f0f13f5
14
+0,        336,        336,       28,       30, 0x65bb0630
15
+0,        364,        364,       28,       30, 0x1f7a0333
16
+0,        392,        392,       28,       30, 0xa3d71008
17
+0,        420,        420,       28,       30, 0x69120801
18
+0,        448,        448,       28,       30, 0x1e7b0207
19
+0,        476,        476,       28,       30, 0x02c40018
20
+0,        504,        504,       28,       30, 0x0d050126
21
+0,        532,        532,       28,       30, 0x41c10333
22
+0,        560,        560,       28,       30, 0x16a10207
23
+0,        588,        588,       28,       30, 0x0f210207
24
+0,        616,        616,       28,       30, 0x4e4b073e
25
+0,        644,        644,       28,       30, 0xa6f20d1a
26
+0,        672,        672,       28,       30, 0xe1e40ff9
27
+0,        700,        700,       28,       30, 0x868b090f
28
+0,        728,        728,       28,       30, 0x8c85091e
29
+0,        756,        756,       28,       30, 0x5a21094b
30
+0,        784,        784,       28,       30, 0x993c0900
31
+0,        812,        812,       28,       30, 0x5b6b04e6
... ...
@@ -1,124 +1,124 @@
1 1
 #tb 0: 1/48000
2 2
 0,          0,          0,      334,     1336, 0x8e3c0abc
3
-0,        334,        334,      334,     1336, 0x99c41108
4
-0,        668,        668,      334,     1336, 0xd65be322
5
-0,       1002,       1002,      334,     1336, 0x15b575fb
6
-0,       1336,       1336,      334,     1336, 0x366f742a
7
-0,       1670,       1670,      334,     1336, 0xed72ad83
8
-0,       2004,       2004,      334,     1336, 0x73f21c93
9
-0,       2338,       2338,      334,     1336, 0x4be7a770
10
-0,       2672,       2672,      334,     1336, 0x69ecf80c
11
-0,       3006,       3006,      334,     1336, 0x835dc0e5
12
-0,       3340,       3340,      334,     1336, 0x3089458d
13
-0,       3674,       3674,      334,     1336, 0xc73b8cdc
14
-0,       4008,       4008,      334,     1336, 0xc1cdaa8f
15
-0,       4342,       4342,      334,     1336, 0x47a49186
16
-0,       4676,       4676,      334,     1336, 0x2db387e2
17
-0,       5010,       5010,      334,     1336, 0x90da9a97
18
-0,       5344,       5344,      334,     1336, 0xcd34a467
19
-0,       5678,       5678,      334,     1336, 0xdca8bd29
20
-0,       6012,       6012,      334,     1336, 0xa09f9da3
21
-0,       6346,       6346,      334,     1336, 0x47c8acf6
22
-0,       6680,       6680,      334,     1336, 0x94dfa20e
23
-0,       7014,       7014,      334,     1336, 0x2123a5f6
24
-0,       7348,       7348,      334,     1336, 0x2f1badde
25
-0,       7682,       7682,      334,     1336, 0x47579528
26
-0,       8016,       8016,      334,     1336, 0x028daa10
27
-0,       8350,       8350,      334,     1336, 0x5ed7adcd
28
-0,       8684,       8684,      334,     1336, 0xc5ee8f10
29
-0,       9018,       9018,      334,     1336, 0xcfacb489
30
-0,       9352,       9352,      334,     1336, 0x07de937b
31
-0,       9686,       9686,      334,     1336, 0x07bd8f8b
32
-0,      10020,      10020,      334,     1336, 0x4660912e
33
-0,      10354,      10354,      334,     1336, 0x047f97ad
34
-0,      10688,      10688,      334,     1336, 0xe0e8a11f
35
-0,      11022,      11022,      334,     1336, 0xcd9898e6
36
-0,      11356,      11356,      334,     1336, 0xccfda786
37
-0,      11690,      11690,      334,     1336, 0xab1b9e40
38
-0,      12024,      12024,      334,     1336, 0x2ea79ea1
39
-0,      12358,      12358,      334,     1336, 0xade2ad7e
40
-0,      12692,      12692,      334,     1336, 0xe5cf9684
41
-0,      13026,      13026,      334,     1336, 0xb57184cf
3
+0,        400,        400,      334,     1336, 0x99c41108
4
+0,        720,        720,      334,     1336, 0xd65be322
5
+0,       1040,       1040,      334,     1336, 0x15b575fb
6
+0,       1360,       1360,      334,     1336, 0x366f742a
7
+0,       1680,       1680,      334,     1336, 0xed72ad83
8
+0,       2000,       2000,      334,     1336, 0x73f21c93
9
+0,       2400,       2400,      334,     1336, 0x4be7a770
10
+0,       2720,       2720,      334,     1336, 0x69ecf80c
11
+0,       3040,       3040,      334,     1336, 0x835dc0e5
12
+0,       3360,       3360,      334,     1336, 0x3089458d
13
+0,       3680,       3680,      334,     1336, 0xc73b8cdc
14
+0,       4080,       4080,      334,     1336, 0xc1cdaa8f
15
+0,       4400,       4400,      334,     1336, 0x47a49186
16
+0,       4720,       4720,      334,     1336, 0x2db387e2
17
+0,       5040,       5040,      334,     1336, 0x90da9a97
18
+0,       5360,       5360,      334,     1336, 0xcd34a467
19
+0,       5680,       5680,      334,     1336, 0xdca8bd29
20
+0,       6080,       6080,      334,     1336, 0xa09f9da3
21
+0,       6400,       6400,      334,     1336, 0x47c8acf6
22
+0,       6720,       6720,      334,     1336, 0x94dfa20e
23
+0,       7040,       7040,      334,     1336, 0x2123a5f6
24
+0,       7360,       7360,      334,     1336, 0x2f1badde
25
+0,       7680,       7680,      334,     1336, 0x47579528
26
+0,       8080,       8080,      334,     1336, 0x028daa10
27
+0,       8400,       8400,      334,     1336, 0x5ed7adcd
28
+0,       8720,       8720,      334,     1336, 0xc5ee8f10
29
+0,       9040,       9040,      334,     1336, 0xcfacb489
30
+0,       9360,       9360,      334,     1336, 0x07de937b
31
+0,       9760,       9760,      334,     1336, 0x07bd8f8b
32
+0,      10080,      10080,      334,     1336, 0x4660912e
33
+0,      10400,      10400,      334,     1336, 0x047f97ad
34
+0,      10720,      10720,      334,     1336, 0xe0e8a11f
35
+0,      11040,      11040,      334,     1336, 0xcd9898e6
36
+0,      11360,      11360,      334,     1336, 0xccfda786
37
+0,      11760,      11760,      334,     1336, 0xab1b9e40
38
+0,      12080,      12080,      334,     1336, 0x2ea79ea1
39
+0,      12400,      12400,      334,     1336, 0xade2ad7e
40
+0,      12720,      12720,      334,     1336, 0xe5cf9684
41
+0,      13040,      13040,      334,     1336, 0xb57184cf
42 42
 0,      13360,      13360,      334,     1336, 0x0668a5ce
43
-0,      13694,      13694,      334,     1336, 0x643a9d96
44
-0,      14028,      14028,      334,     1336, 0x97dc8ecc
45
-0,      14362,      14362,      334,     1336, 0x72c2b174
46
-0,      14696,      14696,      334,     1336, 0xe39d8fc3
47
-0,      15030,      15030,      334,     1336, 0x56fc76d2
48
-0,      15364,      15364,      334,     1336, 0x91a884b3
49
-0,      15698,      15698,      334,     1336, 0x7b039a4e
50
-0,      16032,      16032,      334,     1336, 0x3770a9dd
51
-0,      16366,      16366,      334,     1336, 0x317c9cb8
52
-0,      16700,      16700,      334,     1336, 0xdd97ad48
53
-0,      17034,      17034,      334,     1336, 0x98066c1b
54
-0,      17368,      17368,      334,     1336, 0xecd3a31c
55
-0,      17702,      17702,      334,     1336, 0x0578b329
56
-0,      18036,      18036,      334,     1336, 0x6942881c
57
-0,      18370,      18370,      334,     1336, 0x56b5af29
58
-0,      18704,      18704,      334,     1336, 0xf111a48a
59
-0,      19038,      19038,      334,     1336, 0x1f5a8d45
60
-0,      19372,      19372,      334,     1336, 0x39abdded
61
-0,      19706,      19706,      334,     1336, 0xdb997fe8
62
-0,      20040,      20040,      334,     1336, 0xd7f0d0b2
63
-0,      20374,      20374,      334,     1336, 0xf3219413
64
-0,      20708,      20708,      334,     1336, 0x9d80899d
65
-0,      21042,      21042,      334,     1336, 0x7238bd63
66
-0,      21376,      21376,      334,     1336, 0x7376703e
67
-0,      21710,      21710,      334,     1336, 0x0fd56d02
68
-0,      22044,      22044,      334,     1336, 0xa6c0951e
69
-0,      22378,      22378,      334,     1336, 0xfacb674e
70
-0,      22712,      22712,      334,     1336, 0x805bd289
71
-0,      23046,      23046,      334,     1336, 0xa2a51a12
72
-0,      23380,      23380,      334,     1336, 0x8a75d91b
73
-0,      23714,      23714,      334,     1336, 0x34b1ef80
74
-0,      24048,      24048,      334,     1336, 0x902921e0
75
-0,      24382,      24382,      334,     1336, 0xc2db7895
76
-0,      24716,      24716,      334,     1336, 0x7a0db9e1
77
-0,      25050,      25050,      334,     1336, 0x66a93277
78
-0,      25384,      25384,      334,     1336, 0x30830a83
79
-0,      25718,      25718,      334,     1336, 0x251cf132
80
-0,      26052,      26052,      334,     1336, 0x08dd852c
81
-0,      26386,      26386,      334,     1336, 0x22ea164c
43
+0,      13760,      13760,      334,     1336, 0x643a9d96
44
+0,      14080,      14080,      334,     1336, 0x97dc8ecc
45
+0,      14400,      14400,      334,     1336, 0x72c2b174
46
+0,      14720,      14720,      334,     1336, 0xe39d8fc3
47
+0,      15040,      15040,      334,     1336, 0x56fc76d2
48
+0,      15360,      15360,      334,     1336, 0x91a884b3
49
+0,      15760,      15760,      334,     1336, 0x7b039a4e
50
+0,      16080,      16080,      334,     1336, 0x3770a9dd
51
+0,      16400,      16400,      334,     1336, 0x317c9cb8
52
+0,      16720,      16720,      334,     1336, 0xdd97ad48
53
+0,      17040,      17040,      334,     1336, 0x98066c1b
54
+0,      17440,      17440,      334,     1336, 0xecd3a31c
55
+0,      17760,      17760,      334,     1336, 0x0578b329
56
+0,      18080,      18080,      334,     1336, 0x6942881c
57
+0,      18400,      18400,      334,     1336, 0x56b5af29
58
+0,      18720,      18720,      334,     1336, 0xf111a48a
59
+0,      19040,      19040,      334,     1336, 0x1f5a8d45
60
+0,      19440,      19440,      334,     1336, 0x39abdded
61
+0,      19760,      19760,      334,     1336, 0xdb997fe8
62
+0,      20080,      20080,      334,     1336, 0xd7f0d0b2
63
+0,      20400,      20400,      334,     1336, 0xf3219413
64
+0,      20720,      20720,      334,     1336, 0x9d80899d
65
+0,      21040,      21040,      334,     1336, 0x7238bd63
66
+0,      21440,      21440,      334,     1336, 0x7376703e
67
+0,      21760,      21760,      334,     1336, 0x0fd56d02
68
+0,      22080,      22080,      334,     1336, 0xa6c0951e
69
+0,      22400,      22400,      334,     1336, 0xfacb674e
70
+0,      22720,      22720,      334,     1336, 0x805bd289
71
+0,      23120,      23120,      334,     1336, 0xa2a51a12
72
+0,      23440,      23440,      334,     1336, 0x8a75d91b
73
+0,      23760,      23760,      334,     1336, 0x34b1ef80
74
+0,      24080,      24080,      334,     1336, 0x902921e0
75
+0,      24400,      24400,      334,     1336, 0xc2db7895
76
+0,      24720,      24720,      334,     1336, 0x7a0db9e1
77
+0,      25120,      25120,      334,     1336, 0x66a93277
78
+0,      25440,      25440,      334,     1336, 0x30830a83
79
+0,      25760,      25760,      334,     1336, 0x251cf132
80
+0,      26080,      26080,      334,     1336, 0x08dd852c
81
+0,      26400,      26400,      334,     1336, 0x22ea164c
82 82
 0,      26720,      26720,      334,     1336, 0x3bdd91c4
83
-0,      27054,      27054,      334,     1336, 0xa4c0fbd7
84
-0,      27388,      27388,      334,     1336, 0x83aa81bd
85
-0,      27722,      27722,      334,     1336, 0x8a7b0fdb
86
-0,      28056,      28056,      334,     1336, 0x35c37b01
87
-0,      28390,      28390,      334,     1336, 0xdede811e
88
-0,      28724,      28724,      334,     1336, 0x7473a657
89
-0,      29058,      29058,      334,     1336, 0x5b917e2b
90
-0,      29392,      29392,      334,     1336, 0x1c5a7cfc
91
-0,      29726,      29726,      334,     1336, 0xeb7bab0d
92
-0,      30060,      30060,      334,     1336, 0x7337795c
93
-0,      30394,      30394,      334,     1336, 0x68da9d08
94
-0,      30728,      30728,      334,     1336, 0xe93b87fe
95
-0,      31062,      31062,      334,     1336, 0xd4639f00
96
-0,      31396,      31396,      334,     1336, 0x1070a91d
97
-0,      31730,      31730,      334,     1336, 0x50e3788f
98
-0,      32064,      32064,      334,     1336, 0x1dac6691
99
-0,      32398,      32398,      334,     1336, 0xf62c709d
100
-0,      32732,      32732,      334,     1336, 0x2369648d
101
-0,      33066,      33066,      334,     1336, 0xbfc792e6
102
-0,      33400,      33400,      334,     1336, 0x975eb8e3
103
-0,      33734,      33734,      334,     1336, 0x35c49ba6
104
-0,      34068,      34068,      334,     1336, 0xe6198aa9
105
-0,      34402,      34402,      334,     1336, 0x99f37d9d
106
-0,      34736,      34736,      334,     1336, 0x4815aff1
107
-0,      35070,      35070,      334,     1336, 0x4fd366ca
108
-0,      35404,      35404,      334,     1336, 0x43cf7bb4
109
-0,      35738,      35738,      334,     1336, 0x14a576ac
110
-0,      36072,      36072,      334,     1336, 0xc6986978
111
-0,      36406,      36406,      334,     1336, 0x10f67dc4
112
-0,      36740,      36740,      334,     1336, 0xcca07f7a
113
-0,      37074,      37074,      334,     1336, 0x6d0a5dfe
114
-0,      37408,      37408,      334,     1336, 0x4e0761ef
115
-0,      37742,      37742,      334,     1336, 0x31368e66
116
-0,      38076,      38076,      334,     1336, 0x14b895c1
117
-0,      38410,      38410,      334,     1336, 0x4bb7c111
118
-0,      38744,      38744,      334,     1336, 0x1676a8bb
119
-0,      39078,      39078,      334,     1336, 0xddaaa459
120
-0,      39412,      39412,      334,     1336, 0xc43eabce
121
-0,      39746,      39746,      334,     1336, 0x4d9f8d54
83
+0,      27120,      27120,      334,     1336, 0xa4c0fbd7
84
+0,      27440,      27440,      334,     1336, 0x83aa81bd
85
+0,      27760,      27760,      334,     1336, 0x8a7b0fdb
86
+0,      28080,      28080,      334,     1336, 0x35c37b01
87
+0,      28400,      28400,      334,     1336, 0xdede811e
88
+0,      28720,      28720,      334,     1336, 0x7473a657
89
+0,      29120,      29120,      334,     1336, 0x5b917e2b
90
+0,      29440,      29440,      334,     1336, 0x1c5a7cfc
91
+0,      29760,      29760,      334,     1336, 0xeb7bab0d
92
+0,      30080,      30080,      334,     1336, 0x7337795c
93
+0,      30400,      30400,      334,     1336, 0x68da9d08
94
+0,      30800,      30800,      334,     1336, 0xe93b87fe
95
+0,      31120,      31120,      334,     1336, 0xd4639f00
96
+0,      31440,      31440,      334,     1336, 0x1070a91d
97
+0,      31760,      31760,      334,     1336, 0x50e3788f
98
+0,      32080,      32080,      334,     1336, 0x1dac6691
99
+0,      32400,      32400,      334,     1336, 0xf62c709d
100
+0,      32800,      32800,      334,     1336, 0x2369648d
101
+0,      33120,      33120,      334,     1336, 0xbfc792e6
102
+0,      33440,      33440,      334,     1336, 0x975eb8e3
103
+0,      33760,      33760,      334,     1336, 0x35c49ba6
104
+0,      34080,      34080,      334,     1336, 0xe6198aa9
105
+0,      34400,      34400,      334,     1336, 0x99f37d9d
106
+0,      34800,      34800,      334,     1336, 0x4815aff1
107
+0,      35120,      35120,      334,     1336, 0x4fd366ca
108
+0,      35440,      35440,      334,     1336, 0x43cf7bb4
109
+0,      35760,      35760,      334,     1336, 0x14a576ac
110
+0,      36080,      36080,      334,     1336, 0xc6986978
111
+0,      36480,      36480,      334,     1336, 0x10f67dc4
112
+0,      36800,      36800,      334,     1336, 0xcca07f7a
113
+0,      37120,      37120,      334,     1336, 0x6d0a5dfe
114
+0,      37440,      37440,      334,     1336, 0x4e0761ef
115
+0,      37760,      37760,      334,     1336, 0x31368e66
116
+0,      38080,      38080,      334,     1336, 0x14b895c1
117
+0,      38480,      38480,      334,     1336, 0x4bb7c111
118
+0,      38800,      38800,      334,     1336, 0x1676a8bb
119
+0,      39120,      39120,      334,     1336, 0xddaaa459
120
+0,      39440,      39440,      334,     1336, 0xc43eabce
121
+0,      39760,      39760,      334,     1336, 0x4d9f8d54
122 122
 0,      40080,      40080,      334,     1336, 0x0ac292cb
123
-0,      40414,      40414,      334,     1336, 0x2d9c74e4
124
-0,      40748,      40748,      334,     1336, 0xe73da38f
123
+0,      40480,      40480,      334,     1336, 0x2d9c74e4
124
+0,      40800,      40800,      334,     1336, 0xe73da38f
... ...
@@ -2,424 +2,424 @@
2 2
 #tb 1: 1/22050
3 3
 0,          0,          0,        0,      734, 0x5a042c2c
4 4
 1,          0,          0,      512,     1024, 0x00000000
5
-1,        512,        512,      512,     1024, 0x00000000
6
-1,       1024,       1024,      512,     1024, 0xd89a448e
7
-1,       1536,       1536,      512,     1024, 0x695b369c
8
-1,       2048,       2048,      512,     1024, 0xc8ba5707
5
+1,        507,        507,      512,     1024, 0x00000000
6
+1,       1014,       1014,      512,     1024, 0xd89a448e
7
+1,       1521,       1521,      512,     1024, 0x695b369c
8
+1,       2029,       2029,      512,     1024, 0xc8ba5707
9 9
 0,        111,        111,        0,      763, 0xb5893f2f
10
-1,       2560,       2560,      512,     1024, 0xdf241fc6
11
-1,       3072,       3072,      512,     1024, 0x61cf4166
12
-1,       3584,       3584,      512,     1024, 0x97cbc386
13
-1,       4096,       4096,      512,     1024, 0x44899d04
14
-1,       4608,       4608,      512,     1024, 0xa7cbaa62
10
+1,       2558,       2558,      512,     1024, 0xdf241fc6
11
+1,       3065,       3065,      512,     1024, 0x61cf4166
12
+1,       3572,       3572,      512,     1024, 0x97cbc386
13
+1,       4079,       4079,      512,     1024, 0x44899d04
14
+1,       4586,       4586,      512,     1024, 0xa7cbaa62
15 15
 0,        222,        222,        0,     3023, 0x0f3907d3
16
-1,       5120,       5120,      512,     1024, 0xa7aea60c
17
-1,       5632,       5632,      512,     1024, 0xd7b18a89
18
-1,       6144,       6144,      512,     1024, 0x268e81f6
19
-1,       6656,       6656,      512,     1024, 0x9cf83a2f
20
-1,       7168,       7168,      512,     1024, 0x5559b508
16
+1,       5116,       5116,      512,     1024, 0xa7aea60c
17
+1,       5623,       5623,      512,     1024, 0xd7b18a89
18
+1,       6130,       6130,      512,     1024, 0x268e81f6
19
+1,       6637,       6637,      512,     1024, 0x9cf83a2f
20
+1,       7166,       7166,      512,     1024, 0x5559b508
21 21
 0,        333,        333,        0,     4800, 0x22e6e18a
22
-1,       7680,       7680,      512,     1024, 0xe1b9e71c
23
-1,       8192,       8192,      512,     1024, 0xdcee733e
24
-1,       8704,       8704,      512,     1024, 0xe5918f60
25
-1,       9216,       9216,      512,     1024, 0x29dbd209
26
-1,       9728,       9728,      512,     1024, 0x9bcbcf16
22
+1,       7673,       7673,      512,     1024, 0xe1b9e71c
23
+1,       8181,       8181,      512,     1024, 0xdcee733e
24
+1,       8688,       8688,      512,     1024, 0xe5918f60
25
+1,       9195,       9195,      512,     1024, 0x29dbd209
26
+1,       9724,       9724,      512,     1024, 0x9bcbcf16
27 27
 0,        444,        444,        0,     6417, 0x427adde5
28
-1,      10240,      10240,      512,     1024, 0x86f5f458
29
-1,      10752,      10752,      512,     1024, 0xabcbda86
30
-1,      11264,      11264,      512,     1024, 0xc51f77b9
31
-1,      11776,      11776,      512,     1024, 0xf6b3a504
28
+1,      10231,      10231,      512,     1024, 0x86f5f458
29
+1,      10738,      10738,      512,     1024, 0xabcbda86
30
+1,      11246,      11246,      512,     1024, 0xc51f77b9
31
+1,      11775,      11775,      512,     1024, 0xf6b3a504
32 32
 0,        555,        555,        0,     6776, 0x7a74c6ad
33
-1,      12288,      12288,      512,     1024, 0x1af3e40e
34
-1,      12800,      12800,      512,     1024, 0x3866b03b
35
-1,      13312,      13312,      512,     1024, 0xbc005403
36
-1,      13824,      13824,      512,     1024, 0xe9dfcc51
37
-1,      14336,      14336,      512,     1024, 0x83c837cb
33
+1,      12282,      12282,      512,     1024, 0x1af3e40e
34
+1,      12789,      12789,      512,     1024, 0x3866b03b
35
+1,      13296,      13296,      512,     1024, 0xbc005403
36
+1,      13803,      13803,      512,     1024, 0xe9dfcc51
37
+1,      14332,      14332,      512,     1024, 0x83c837cb
38 38
 0,        666,        666,        0,     6808, 0x1f6eb7c3
39
-1,      14848,      14848,      512,     1024, 0xfa649580
40
-1,      15360,      15360,      512,     1024, 0x519452ea
41
-1,      15872,      15872,      512,     1024, 0xd4978774
42
-1,      16384,      16384,      512,     1024, 0xe2a3b1cd
43
-1,      16896,      16896,      512,     1024, 0x9a9472ad
39
+1,      14840,      14840,      512,     1024, 0xfa649580
40
+1,      15347,      15347,      512,     1024, 0x519452ea
41
+1,      15854,      15854,      512,     1024, 0xd4978774
42
+1,      16383,      16383,      512,     1024, 0xe2a3b1cd
43
+1,      16890,      16890,      512,     1024, 0x9a9472ad
44 44
 0,        777,        777,        0,     6726, 0x452087e6
45
-1,      17408,      17408,      512,     1024, 0xa12d4060
46
-1,      17920,      17920,      512,     1024, 0x31fb0646
47
-1,      18432,      18432,      512,     1024, 0xfc44343f
48
-1,      18944,      18944,      512,     1024, 0x0847751a
49
-1,      19456,      19456,      512,     1024, 0x227968a2
45
+1,      17397,      17397,      512,     1024, 0xa12d4060
46
+1,      17905,      17905,      512,     1024, 0x31fb0646
47
+1,      18412,      18412,      512,     1024, 0xfc44343f
48
+1,      18941,      18941,      512,     1024, 0x0847751a
49
+1,      19448,      19448,      512,     1024, 0x227968a2
50 50
 0,        888,        888,        0,     6829, 0xee82b109
51
-1,      19968,      19968,      512,     1024, 0x7cce9f1c
52
-1,      20480,      20480,      512,     1024, 0xb8356713
51
+1,      19955,      19955,      512,     1024, 0x7cce9f1c
52
+1,      20462,      20462,      512,     1024, 0xb8356713
53 53
 1,      20992,      20992,      512,     1024, 0xb29f6e6f
54
-1,      21504,      21504,      512,     1024, 0x9e1430ab
55
-1,      22016,      22016,      512,     1024, 0x26d85423
54
+1,      21499,      21499,      512,     1024, 0x9e1430ab
55
+1,      22006,      22006,      512,     1024, 0x26d85423
56 56
 0,        999,        999,        0,     7055, 0xf41f1108
57
-1,      22528,      22528,      512,     1024, 0x6496547d
58
-1,      23040,      23040,      512,     1024, 0x316b1a86
59
-1,      23552,      23552,      512,     1024, 0x3cd83afc
60
-1,      24064,      24064,      512,     1024, 0x993ff633
57
+1,      22513,      22513,      512,     1024, 0x6496547d
58
+1,      23020,      23020,      512,     1024, 0x316b1a86
59
+1,      23549,      23549,      512,     1024, 0x3cd83afc
60
+1,      24057,      24057,      512,     1024, 0x993ff633
61 61
 0,       1111,       1111,        0,     6977, 0xf8fe1ede
62
-1,      24576,      24576,      512,     1024, 0x0708d1a2
63
-1,      25088,      25088,      512,     1024, 0xd7230db9
64
-1,      25600,      25600,      512,     1024, 0xbb0779ca
65
-1,      26112,      26112,      512,     1024, 0xc6094e1b
66
-1,      26624,      26624,      512,     1024, 0x15a8b039
62
+1,      24564,      24564,      512,     1024, 0x0708d1a2
63
+1,      25071,      25071,      512,     1024, 0xd7230db9
64
+1,      25578,      25578,      512,     1024, 0xbb0779ca
65
+1,      26107,      26107,      512,     1024, 0xc6094e1b
66
+1,      26614,      26614,      512,     1024, 0x15a8b039
67 67
 0,       1222,       1222,        0,     6942, 0x9ad105c6
68
-1,      27136,      27136,      512,     1024, 0xd6dbe88c
69
-1,      27648,      27648,      512,     1024, 0x7e8d1140
70
-1,      28160,      28160,      512,     1024, 0xef88e525
71
-1,      28672,      28672,      512,     1024, 0x44e21149
72
-1,      29184,      29184,      512,     1024, 0x65b0f5f4
68
+1,      27122,      27122,      512,     1024, 0xd6dbe88c
69
+1,      27629,      27629,      512,     1024, 0x7e8d1140
70
+1,      28158,      28158,      512,     1024, 0xef88e525
71
+1,      28665,      28665,      512,     1024, 0x44e21149
72
+1,      29172,      29172,      512,     1024, 0x65b0f5f4
73 73
 0,       1333,       1333,        0,     6926, 0xe239dad6
74
-1,      29696,      29696,      512,     1024, 0xb955f687
75
-1,      30208,      30208,      512,     1024, 0xc85fba9c
76
-1,      30720,      30720,      512,     1024, 0xf59655ad
77
-1,      31232,      31232,      512,     1024, 0x6de80bf1
78
-1,      31744,      31744,      512,     1024, 0x2dcf6e41
74
+1,      29679,      29679,      512,     1024, 0xb955f687
75
+1,      30186,      30186,      512,     1024, 0xc85fba9c
76
+1,      30716,      30716,      512,     1024, 0xf59655ad
77
+1,      31223,      31223,      512,     1024, 0x6de80bf1
78
+1,      31730,      31730,      512,     1024, 0x2dcf6e41
79 79
 0,       1444,       1444,        0,     6966, 0x81dcfab1
80
-1,      32256,      32256,      512,     1024, 0xd0ddcf8a
81
-1,      32768,      32768,      512,     1024, 0x00135c2d
82
-1,      33280,      33280,      512,     1024, 0x697f8efd
83
-1,      33792,      33792,      512,     1024, 0x7a9bada5
80
+1,      32237,      32237,      512,     1024, 0xd0ddcf8a
81
+1,      32766,      32766,      512,     1024, 0x00135c2d
82
+1,      33273,      33273,      512,     1024, 0x697f8efd
83
+1,      33781,      33781,      512,     1024, 0x7a9bada5
84 84
 0,       1555,       1555,        0,     6896, 0x31e6cc02
85
-1,      34304,      34304,      512,     1024, 0x0d22783c
86
-1,      34816,      34816,      512,     1024, 0x7726d07d
87
-1,      35328,      35328,      512,     1024, 0xa2f14f67
88
-1,      35840,      35840,      512,     1024, 0x7f51060d
89
-1,      36352,      36352,      512,     1024, 0xc4ec6aea
85
+1,      34288,      34288,      512,     1024, 0x0d22783c
86
+1,      34795,      34795,      512,     1024, 0x7726d07d
87
+1,      35324,      35324,      512,     1024, 0xa2f14f67
88
+1,      35831,      35831,      512,     1024, 0x7f51060d
89
+1,      36338,      36338,      512,     1024, 0xc4ec6aea
90 90
 0,       1666,       1666,        0,     6889, 0x1cc1006e
91
-1,      36864,      36864,      512,     1024, 0x9bb37ca4
92
-1,      37376,      37376,      512,     1024, 0x9b085577
93
-1,      37888,      37888,      512,     1024, 0x8812f8af
94
-1,      38400,      38400,      512,     1024, 0x788f5221
95
-1,      38912,      38912,      512,     1024, 0x3a2ce642
91
+1,      36846,      36846,      512,     1024, 0x9bb37ca4
92
+1,      37375,      37375,      512,     1024, 0x9b085577
93
+1,      37882,      37882,      512,     1024, 0x8812f8af
94
+1,      38389,      38389,      512,     1024, 0x788f5221
95
+1,      38896,      38896,      512,     1024, 0x3a2ce642
96 96
 0,       1777,       1777,        0,     6933, 0xc303f87f
97
-1,      39424,      39424,      512,     1024, 0x72415692
98
-1,      39936,      39936,      512,     1024, 0xe3dcc105
99
-1,      40448,      40448,      512,     1024, 0xb26c0599
100
-1,      40960,      40960,      512,     1024, 0x5c9e55eb
101
-1,      41472,      41472,      512,     1024, 0x8fe88707
97
+1,      39403,      39403,      512,     1024, 0x72415692
98
+1,      39933,      39933,      512,     1024, 0xe3dcc105
99
+1,      40440,      40440,      512,     1024, 0xb26c0599
100
+1,      40947,      40947,      512,     1024, 0x5c9e55eb
101
+1,      41454,      41454,      512,     1024, 0x8fe88707
102 102
 0,       1888,       1888,        0,     7034, 0xb4970a20
103
-1,      41984,      41984,      512,     1024, 0xc5d7beb6
104
-1,      42496,      42496,      512,     1024, 0xe1d3a3b4
105
-1,      43008,      43008,      512,     1024, 0x012da0c6
106
-1,      43520,      43520,      512,     1024, 0x8d010922
107
-1,      44032,      44032,      512,     1024, 0x3366eb0d
103
+1,      41983,      41983,      512,     1024, 0xc5d7beb6
104
+1,      42490,      42490,      512,     1024, 0xe1d3a3b4
105
+1,      42998,      42998,      512,     1024, 0x012da0c6
106
+1,      43505,      43505,      512,     1024, 0x8d010922
107
+1,      44012,      44012,      512,     1024, 0x3366eb0d
108 108
 0,       1999,       1999,        0,     6961, 0xf064095d
109
-1,      44544,      44544,      512,     1024, 0xc9381a27
110
-1,      45056,      45056,      512,     1024, 0x0774f685
111
-1,      45568,      45568,      512,     1024, 0xc5cae0a5
112
-1,      46080,      46080,      512,     1024, 0xa6f4737c
109
+1,      44541,      44541,      512,     1024, 0xc9381a27
110
+1,      45048,      45048,      512,     1024, 0x0774f685
111
+1,      45555,      45555,      512,     1024, 0xc5cae0a5
112
+1,      46062,      46062,      512,     1024, 0xa6f4737c
113 113
 0,       2111,       2111,        0,     7089, 0x5ba350f9
114 114
 1,      46592,      46592,      512,     1024, 0x8fb6d0d1
115
-1,      47104,      47104,      512,     1024, 0x05f579c2
116
-1,      47616,      47616,      512,     1024, 0x56905d99
117
-1,      48128,      48128,      512,     1024, 0x002ee18d
118
-1,      48640,      48640,      512,     1024, 0xeb37ef51
115
+1,      47099,      47099,      512,     1024, 0x05f579c2
116
+1,      47606,      47606,      512,     1024, 0x56905d99
117
+1,      48113,      48113,      512,     1024, 0x002ee18d
118
+1,      48620,      48620,      512,     1024, 0xeb37ef51
119 119
 0,       2222,       2222,        0,     7078, 0xa83f3e88
120
-1,      49152,      49152,      512,     1024, 0x38025635
121
-1,      49664,      49664,      512,     1024, 0x4fe643c8
122
-1,      50176,      50176,      512,     1024, 0x11d66ab1
123
-1,      50688,      50688,      512,     1024, 0xcc3051e9
124
-1,      51200,      51200,      512,     1024, 0xcd93e854
120
+1,      49149,      49149,      512,     1024, 0x38025635
121
+1,      49657,      49657,      512,     1024, 0x4fe643c8
122
+1,      50164,      50164,      512,     1024, 0x11d66ab1
123
+1,      50671,      50671,      512,     1024, 0xcc3051e9
124
+1,      51178,      51178,      512,     1024, 0xcd93e854
125 125
 0,       2333,       2333,        0,     7147, 0xcda66cfc
126
-1,      51712,      51712,      512,     1024, 0x38f1196d
127
-1,      52224,      52224,      512,     1024, 0x657a15fc
128
-1,      52736,      52736,      512,     1024, 0x669ce2a9
129
-1,      53248,      53248,      512,     1024, 0x95862dda
130
-1,      53760,      53760,      512,     1024, 0x1726a7b2
126
+1,      51707,      51707,      512,     1024, 0x38f1196d
127
+1,      52214,      52214,      512,     1024, 0x657a15fc
128
+1,      52722,      52722,      512,     1024, 0x669ce2a9
129
+1,      53229,      53229,      512,     1024, 0x95862dda
130
+1,      53758,      53758,      512,     1024, 0x1726a7b2
131 131
 0,       2444,       2444,        0,     7173, 0xb7455859
132
-1,      54272,      54272,      512,     1024, 0xd6ece2a1
133
-1,      54784,      54784,      512,     1024, 0x33ab9553
134
-1,      55296,      55296,      512,     1024, 0xd50c73a6
135
-1,      55808,      55808,      512,     1024, 0xfe25b63a
136
-1,      56320,      56320,      512,     1024, 0x7e2959e3
132
+1,      54265,      54265,      512,     1024, 0xd6ece2a1
133
+1,      54772,      54772,      512,     1024, 0x33ab9553
134
+1,      55279,      55279,      512,     1024, 0xd50c73a6
135
+1,      55786,      55786,      512,     1024, 0xfe25b63a
136
+1,      56316,      56316,      512,     1024, 0x7e2959e3
137 137
 0,       2555,       2555,        0,     7213, 0x97b89994
138
-1,      56832,      56832,      512,     1024, 0xa4c07b34
139
-1,      57344,      57344,      512,     1024, 0xd6d8f15c
140
-1,      57856,      57856,      512,     1024, 0x1eccddd7
141
-1,      58368,      58368,      512,     1024, 0x2b69f9cb
138
+1,      56823,      56823,      512,     1024, 0xa4c07b34
139
+1,      57330,      57330,      512,     1024, 0xd6d8f15c
140
+1,      57837,      57837,      512,     1024, 0x1eccddd7
141
+1,      58366,      58366,      512,     1024, 0x2b69f9cb
142 142
 0,       2666,       2666,        0,     7170, 0xca8b2948
143
-1,      58880,      58880,      512,     1024, 0x667b775f
144
-1,      59392,      59392,      512,     1024, 0xad3b84e9
145
-1,      59904,      59904,      512,     1024, 0x4f29fc67
146
-1,      60416,      60416,      512,     1024, 0x8d611ab7
147
-1,      60928,      60928,      512,     1024, 0x278966ea
143
+1,      58874,      58874,      512,     1024, 0x667b775f
144
+1,      59381,      59381,      512,     1024, 0xad3b84e9
145
+1,      59888,      59888,      512,     1024, 0x4f29fc67
146
+1,      60395,      60395,      512,     1024, 0x8d611ab7
147
+1,      60924,      60924,      512,     1024, 0x278966ea
148 148
 0,       2777,       2777,        0,     7174, 0xc7cc6bbb
149
-1,      61440,      61440,      512,     1024, 0xaf33812b
150
-1,      61952,      61952,      512,     1024, 0xa55f4265
151
-1,      62464,      62464,      512,     1024, 0x023cb51c
152
-1,      62976,      62976,      512,     1024, 0x1d1f1005
153
-1,      63488,      63488,      512,     1024, 0x874cccf7
149
+1,      61431,      61431,      512,     1024, 0xaf33812b
150
+1,      61938,      61938,      512,     1024, 0xa55f4265
151
+1,      62446,      62446,      512,     1024, 0x023cb51c
152
+1,      62975,      62975,      512,     1024, 0x1d1f1005
153
+1,      63482,      63482,      512,     1024, 0x874cccf7
154 154
 0,       2888,       2888,        0,     7235, 0xc2e68d2b
155
-1,      64000,      64000,      512,     1024, 0xda705428
156
-1,      64512,      64512,      512,     1024, 0x48d9b440
157
-1,      65024,      65024,      512,     1024, 0xa14e0712
158
-1,      65536,      65536,      512,     1024, 0x7efbad1f
159
-1,      66048,      66048,      512,     1024, 0xdb82c17f
155
+1,      63989,      63989,      512,     1024, 0xda705428
156
+1,      64496,      64496,      512,     1024, 0x48d9b440
157
+1,      65003,      65003,      512,     1024, 0xa14e0712
158
+1,      65533,      65533,      512,     1024, 0x7efbad1f
159
+1,      66040,      66040,      512,     1024, 0xdb82c17f
160 160
 0,       3000,       3000,        0,     7261, 0x8204a423
161
-1,      66560,      66560,      512,     1024, 0xcbe87613
162
-1,      67072,      67072,      512,     1024, 0x3a63df1d
163
-1,      67584,      67584,      512,     1024, 0xd5636bba
164
-1,      68096,      68096,      512,     1024, 0x9397af23
161
+1,      66547,      66547,      512,     1024, 0xcbe87613
162
+1,      67054,      67054,      512,     1024, 0x3a63df1d
163
+1,      67583,      67583,      512,     1024, 0xd5636bba
164
+1,      68090,      68090,      512,     1024, 0x9397af23
165 165
 0,       3111,       3111,        0,     7353, 0xacc7e7c0
166
-1,      68608,      68608,      512,     1024, 0x32a07c98
167
-1,      69120,      69120,      512,     1024, 0x202ca667
168
-1,      69632,      69632,      512,     1024, 0xdf969011
169
-1,      70144,      70144,      512,     1024, 0xc434d238
170
-1,      70656,      70656,      512,     1024, 0xe9ad7562
166
+1,      68598,      68598,      512,     1024, 0x32a07c98
167
+1,      69105,      69105,      512,     1024, 0x202ca667
168
+1,      69612,      69612,      512,     1024, 0xdf969011
169
+1,      70141,      70141,      512,     1024, 0xc434d238
170
+1,      70648,      70648,      512,     1024, 0xe9ad7562
171 171
 0,       3222,       3222,        0,     7065, 0x45035c5c
172
-1,      71168,      71168,      512,     1024, 0xb51b6b50
173
-1,      71680,      71680,      512,     1024, 0xe70aecd3
172
+1,      71155,      71155,      512,     1024, 0xb51b6b50
173
+1,      71662,      71662,      512,     1024, 0xe70aecd3
174 174
 1,      72192,      72192,      512,     1024, 0x03c816b2
175
-1,      72704,      72704,      512,     1024, 0x869fdf25
176
-1,      73216,      73216,      512,     1024, 0xd40a0a62
175
+1,      72699,      72699,      512,     1024, 0x869fdf25
176
+1,      73206,      73206,      512,     1024, 0xd40a0a62
177 177
 0,       3333,       3333,        0,     7269, 0x72edbb76
178
-1,      73728,      73728,      512,     1024, 0x5af7dd35
179
-1,      74240,      74240,      512,     1024, 0x891ffc72
180
-1,      74752,      74752,      512,     1024, 0x1ff68a08
181
-1,      75264,      75264,      512,     1024, 0x5a7517a9
182
-1,      75776,      75776,      512,     1024, 0x0f959f74
178
+1,      73713,      73713,      512,     1024, 0x5af7dd35
179
+1,      74220,      74220,      512,     1024, 0x891ffc72
180
+1,      74750,      74750,      512,     1024, 0x1ff68a08
181
+1,      75257,      75257,      512,     1024, 0x5a7517a9
182
+1,      75764,      75764,      512,     1024, 0x0f959f74
183 183
 0,       3444,       3444,        0,     7220, 0xb926772f
184
-1,      76288,      76288,      512,     1024, 0xe92a12a2
185
-1,      76800,      76800,      512,     1024, 0x38000e55
186
-1,      77312,      77312,      512,     1024, 0x39fbdd70
187
-1,      77824,      77824,      512,     1024, 0xca3d9184
188
-1,      78336,      78336,      512,     1024, 0x66c8995b
184
+1,      76271,      76271,      512,     1024, 0xe92a12a2
185
+1,      76778,      76778,      512,     1024, 0x38000e55
186
+1,      77307,      77307,      512,     1024, 0x39fbdd70
187
+1,      77814,      77814,      512,     1024, 0xca3d9184
188
+1,      78322,      78322,      512,     1024, 0x66c8995b
189 189
 0,       3555,       3555,        0,     7326, 0x0a66c632
190
-1,      78848,      78848,      512,     1024, 0xac25acea
191
-1,      79360,      79360,      512,     1024, 0x3cd1046c
192
-1,      79872,      79872,      512,     1024, 0x6a1df31c
193
-1,      80384,      80384,      512,     1024, 0x21ca10a1
190
+1,      78829,      78829,      512,     1024, 0xac25acea
191
+1,      79358,      79358,      512,     1024, 0x3cd1046c
192
+1,      79865,      79865,      512,     1024, 0x6a1df31c
193
+1,      80372,      80372,      512,     1024, 0x21ca10a1
194 194
 0,       3666,       3666,        0,     7225, 0xe39076ab
195
-1,      80896,      80896,      512,     1024, 0x1aeccedc
196
-1,      81408,      81408,      512,     1024, 0xddea1335
197
-1,      81920,      81920,      512,     1024, 0x19f5ca9f
198
-1,      82432,      82432,      512,     1024, 0x88e95e43
199
-1,      82944,      82944,      512,     1024, 0x726284fe
195
+1,      80879,      80879,      512,     1024, 0x1aeccedc
196
+1,      81387,      81387,      512,     1024, 0xddea1335
197
+1,      81916,      81916,      512,     1024, 0x19f5ca9f
198
+1,      82423,      82423,      512,     1024, 0x88e95e43
199
+1,      82930,      82930,      512,     1024, 0x726284fe
200 200
 0,       3777,       3777,        0,     7265, 0xe0209036
201
-1,      83456,      83456,      512,     1024, 0x6b85b40e
202
-1,      83968,      83968,      512,     1024, 0x111fee2a
203
-1,      84480,      84480,      512,     1024, 0x3656b588
204
-1,      84992,      84992,      512,     1024, 0xa5a2b552
205
-1,      85504,      85504,      512,     1024, 0x38fb2467
201
+1,      83437,      83437,      512,     1024, 0x6b85b40e
202
+1,      83966,      83966,      512,     1024, 0x111fee2a
203
+1,      84474,      84474,      512,     1024, 0x3656b588
204
+1,      84981,      84981,      512,     1024, 0xa5a2b552
205
+1,      85488,      85488,      512,     1024, 0x38fb2467
206 206
 0,       3888,       3888,        0,     7337, 0x7a5dc093
207
-1,      86016,      86016,      512,     1024, 0xaa919ccc
208
-1,      86528,      86528,      512,     1024, 0x15993dbc
209
-1,      87040,      87040,      512,     1024, 0xbe01a7b9
210
-1,      87552,      87552,      512,     1024, 0xefe93c09
211
-1,      88064,      88064,      512,     1024, 0x1bb566e5
207
+1,      85995,      85995,      512,     1024, 0xaa919ccc
208
+1,      86524,      86524,      512,     1024, 0x15993dbc
209
+1,      87031,      87031,      512,     1024, 0xbe01a7b9
210
+1,      87538,      87538,      512,     1024, 0xefe93c09
211
+1,      88046,      88046,      512,     1024, 0x1bb566e5
212 212
 0,       4000,       4000,        0,     7246, 0x519a7a3c
213
-1,      88576,      88576,      512,     1024, 0x15ce6237
214
-1,      89088,      89088,      512,     1024, 0xa8552e66
215
-1,      89600,      89600,      512,     1024, 0x9d80187e
216
-1,      90112,      90112,      512,     1024, 0x5df3fc30
217
-1,      90624,      90624,      512,     1024, 0x1a312aa5
213
+1,      88575,      88575,      512,     1024, 0x15ce6237
214
+1,      89082,      89082,      512,     1024, 0xa8552e66
215
+1,      89589,      89589,      512,     1024, 0x9d80187e
216
+1,      90096,      90096,      512,     1024, 0x5df3fc30
217
+1,      90603,      90603,      512,     1024, 0x1a312aa5
218 218
 0,       4111,       4111,        0,     7266, 0x352c8078
219
-1,      91136,      91136,      512,     1024, 0x6bb8e302
220
-1,      91648,      91648,      512,     1024, 0xbd9684bb
221
-1,      92160,      92160,      512,     1024, 0x78b0b166
222
-1,      92672,      92672,      512,     1024, 0xd9af5eae
219
+1,      91133,      91133,      512,     1024, 0x6bb8e302
220
+1,      91640,      91640,      512,     1024, 0xbd9684bb
221
+1,      92147,      92147,      512,     1024, 0x78b0b166
222
+1,      92654,      92654,      512,     1024, 0xd9af5eae
223 223
 0,       4222,       4222,        0,     7323, 0xcaf69d7c
224
-1,      93184,      93184,      512,     1024, 0xdb90fe82
225
-1,      93696,      93696,      512,     1024, 0x327614e9
226
-1,      94208,      94208,      512,     1024, 0x1f19b7fe
227
-1,      94720,      94720,      512,     1024, 0x46c53f96
228
-1,      95232,      95232,      512,     1024, 0x921b2189
224
+1,      93183,      93183,      512,     1024, 0xdb90fe82
225
+1,      93690,      93690,      512,     1024, 0x327614e9
226
+1,      94198,      94198,      512,     1024, 0x1f19b7fe
227
+1,      94705,      94705,      512,     1024, 0x46c53f96
228
+1,      95212,      95212,      512,     1024, 0x921b2189
229 229
 0,       4333,       4333,        0,     7309, 0x98c1e6f7
230
-1,      95744,      95744,      512,     1024, 0xa8fbc85a
231
-1,      96256,      96256,      512,     1024, 0xabfdaaae
232
-1,      96768,      96768,      512,     1024, 0x6acc7387
233
-1,      97280,      97280,      512,     1024, 0x0d9c27b5
230
+1,      95741,      95741,      512,     1024, 0xa8fbc85a
231
+1,      96248,      96248,      512,     1024, 0xabfdaaae
232
+1,      96755,      96755,      512,     1024, 0x6acc7387
233
+1,      97263,      97263,      512,     1024, 0x0d9c27b5
234 234
 1,      97792,      97792,      512,     1024, 0xba4dd809
235 235
 0,       4444,       4444,        0,     7121, 0x913d5bd6
236
-1,      98304,      98304,      512,     1024, 0x2a2ad521
237
-1,      98816,      98816,      512,     1024, 0x892de38a
238
-1,      99328,      99328,      512,     1024, 0xdc97a2eb
239
-1,      99840,      99840,      512,     1024, 0x4f614ca4
240
-1,     100352,     100352,      512,     1024, 0x9c8a77ea
236
+1,      98299,      98299,      512,     1024, 0x2a2ad521
237
+1,      98806,      98806,      512,     1024, 0x892de38a
238
+1,      99313,      99313,      512,     1024, 0xdc97a2eb
239
+1,      99820,      99820,      512,     1024, 0x4f614ca4
240
+1,     100350,     100350,      512,     1024, 0x9c8a77ea
241 241
 0,       4555,       4555,      111,     7088, 0x56302362
242
-1,     100864,     100864,      512,     1024, 0x2d30e646
243
-1,     101376,     101376,      512,     1024, 0x74e800a7
244
-1,     101888,     101888,      512,     1024, 0x1e01fb02
245
-1,     102400,     102400,      512,     1024, 0x4ed2c1d8
242
+1,     100857,     100857,      512,     1024, 0x2d30e646
243
+1,     101364,     101364,      512,     1024, 0x74e800a7
244
+1,     101871,     101871,      512,     1024, 0x1e01fb02
245
+1,     102378,     102378,      512,     1024, 0x4ed2c1d8
246 246
 0,       4666,       4666,      111,     7104, 0xc0d14f78
247
-1,     102912,     102912,      512,     1024, 0xf2fdbe63
248
-1,     103424,     103424,      512,     1024, 0x8d6f63a1
249
-1,     103936,     103936,      512,     1024, 0xded468d9
250
-1,     104448,     104448,      512,     1024, 0xccad839e
251
-1,     104960,     104960,      512,     1024, 0xdde7c082
247
+1,     102907,     102907,      512,     1024, 0xf2fdbe63
248
+1,     103414,     103414,      512,     1024, 0x8d6f63a1
249
+1,     103922,     103922,      512,     1024, 0xded468d9
250
+1,     104429,     104429,      512,     1024, 0xccad839e
251
+1,     104958,     104958,      512,     1024, 0xdde7c082
252 252
 0,       4777,       4777,      111,     7169, 0xd03c825b
253
-1,     105472,     105472,      512,     1024, 0x548613c5
254
-1,     105984,     105984,      512,     1024, 0x383909bd
255
-1,     106496,     106496,      512,     1024, 0xfd37627b
256
-1,     107008,     107008,      512,     1024, 0x6d95a481
257
-1,     107520,     107520,      512,     1024, 0x56aa87fa
253
+1,     105465,     105465,      512,     1024, 0x548613c5
254
+1,     105972,     105972,      512,     1024, 0x383909bd
255
+1,     106479,     106479,      512,     1024, 0xfd37627b
256
+1,     106987,     106987,      512,     1024, 0x6d95a481
257
+1,     107516,     107516,      512,     1024, 0x56aa87fa
258 258
 0,       4888,       4888,      111,     7038, 0x1ecc201d
259
-1,     108032,     108032,      512,     1024, 0x7b67258c
260
-1,     108544,     108544,      512,     1024, 0x7dd99a92
261
-1,     109056,     109056,      512,     1024, 0x4a66d102
262
-1,     109568,     109568,      512,     1024, 0x7b3fce51
263
-1,     110080,     110080,      512,     1024, 0xbbd968aa
259
+1,     108023,     108023,      512,     1024, 0x7b67258c
260
+1,     108530,     108530,      512,     1024, 0x7dd99a92
261
+1,     109037,     109037,      512,     1024, 0x4a66d102
262
+1,     109566,     109566,      512,     1024, 0x7b3fce51
263
+1,     110074,     110074,      512,     1024, 0xbbd968aa
264 264
 0,       5000,       5000,      111,     7015, 0x83c94454
265
-1,     110592,     110592,      512,     1024, 0x8283ec36
266
-1,     111104,     111104,      512,     1024, 0x3c96493d
267
-1,     111616,     111616,      512,     1024, 0xfa4f8cf8
268
-1,     112128,     112128,      512,     1024, 0xe2cf872d
269
-1,     112640,     112640,      512,     1024, 0x0a9e7aa6
265
+1,     110581,     110581,      512,     1024, 0x8283ec36
266
+1,     111088,     111088,      512,     1024, 0x3c96493d
267
+1,     111595,     111595,      512,     1024, 0xfa4f8cf8
268
+1,     112124,     112124,      512,     1024, 0xe2cf872d
269
+1,     112631,     112631,      512,     1024, 0x0a9e7aa6
270 270
 0,       5111,       5111,      111,     6983, 0x9e51f54d
271
-1,     113152,     113152,      512,     1024, 0x6e7a0550
272
-1,     113664,     113664,      512,     1024, 0x3acfea2f
273
-1,     114176,     114176,      512,     1024, 0x7111d0fa
274
-1,     114688,     114688,      512,     1024, 0xe9a1eca9
271
+1,     113139,     113139,      512,     1024, 0x6e7a0550
272
+1,     113646,     113646,      512,     1024, 0x3acfea2f
273
+1,     114175,     114175,      512,     1024, 0x7111d0fa
274
+1,     114682,     114682,      512,     1024, 0xe9a1eca9
275 275
 0,       5222,       5222,      111,     7088, 0x70d33de1
276
-1,     115200,     115200,      512,     1024, 0x24da6c46
277
-1,     115712,     115712,      512,     1024, 0x117cff37
278
-1,     116224,     116224,      512,     1024, 0x0f27cab6
279
-1,     116736,     116736,      512,     1024, 0x69b6b4e6
280
-1,     117248,     117248,      512,     1024, 0x1e6cc841
276
+1,     115189,     115189,      512,     1024, 0x24da6c46
277
+1,     115696,     115696,      512,     1024, 0x117cff37
278
+1,     116204,     116204,      512,     1024, 0x0f27cab6
279
+1,     116733,     116733,      512,     1024, 0x69b6b4e6
280
+1,     117240,     117240,      512,     1024, 0x1e6cc841
281 281
 0,       5333,       5333,      111,     7096, 0x4d0f81b5
282
-1,     117760,     117760,      512,     1024, 0xb01e2365
283
-1,     118272,     118272,      512,     1024, 0x14e200d3
284
-1,     118784,     118784,      512,     1024, 0xd1184c98
285
-1,     119296,     119296,      512,     1024, 0xef9140e9
286
-1,     119808,     119808,      512,     1024, 0x4cbb645e
282
+1,     117747,     117747,      512,     1024, 0xb01e2365
283
+1,     118254,     118254,      512,     1024, 0x14e200d3
284
+1,     118783,     118783,      512,     1024, 0xd1184c98
285
+1,     119290,     119290,      512,     1024, 0xef9140e9
286
+1,     119798,     119798,      512,     1024, 0x4cbb645e
287 287
 0,       5444,       5444,      111,     7106, 0xd1a83ddc
288
-1,     120320,     120320,      512,     1024, 0xe7fe2f06
289
-1,     120832,     120832,      512,     1024, 0xf8c45028
290
-1,     121344,     121344,      512,     1024, 0x561358f4
291
-1,     121856,     121856,      512,     1024, 0xd0129b77
292
-1,     122368,     122368,      512,     1024, 0xcc636e88
288
+1,     120305,     120305,      512,     1024, 0xe7fe2f06
289
+1,     120812,     120812,      512,     1024, 0xf8c45028
290
+1,     121341,     121341,      512,     1024, 0x561358f4
291
+1,     121848,     121848,      512,     1024, 0xd0129b77
292
+1,     122355,     122355,      512,     1024, 0xcc636e88
293 293
 0,       5555,       5555,      111,     7219, 0x20f47fe4
294
-1,     122880,     122880,      512,     1024, 0xe9406321
294
+1,     122863,     122863,      512,     1024, 0xe9406321
295 295
 1,     123392,     123392,      512,     1024, 0x9f16a041
296
-1,     123904,     123904,      512,     1024, 0x468bf409
297
-1,     124416,     124416,      512,     1024, 0x3df70f7b
298
-1,     124928,     124928,      512,     1024, 0xa880b11b
296
+1,     123899,     123899,      512,     1024, 0x468bf409
297
+1,     124406,     124406,      512,     1024, 0x3df70f7b
298
+1,     124913,     124913,      512,     1024, 0xa880b11b
299 299
 0,       5666,       5666,      111,     7184, 0x45dc6a0e
300
-1,     125440,     125440,      512,     1024, 0x3286c489
301
-1,     125952,     125952,      512,     1024, 0x39fe9ebc
302
-1,     126464,     126464,      512,     1024, 0xc533d83b
303
-1,     126976,     126976,      512,     1024, 0x153b195d
300
+1,     125420,     125420,      512,     1024, 0x3286c489
301
+1,     125950,     125950,      512,     1024, 0x39fe9ebc
302
+1,     126457,     126457,      512,     1024, 0xc533d83b
303
+1,     126964,     126964,      512,     1024, 0x153b195d
304 304
 0,       5777,       5777,      111,     7222, 0x488c6499
305
-1,     127488,     127488,      512,     1024, 0xd84786a1
306
-1,     128000,     128000,      512,     1024, 0xdc295aaa
307
-1,     128512,     128512,      512,     1024, 0xfb764d8c
308
-1,     129024,     129024,      512,     1024, 0xeebc9db9
309
-1,     129536,     129536,      512,     1024, 0x7ba9403e
305
+1,     127471,     127471,      512,     1024, 0xd84786a1
306
+1,     127978,     127978,      512,     1024, 0xdc295aaa
307
+1,     128507,     128507,      512,     1024, 0xfb764d8c
308
+1,     129015,     129015,      512,     1024, 0xeebc9db9
309
+1,     129522,     129522,      512,     1024, 0x7ba9403e
310 310
 0,       5888,       5888,      111,     7254, 0xbd097ba7
311
-1,     130048,     130048,      512,     1024, 0x4e5571ec
312
-1,     130560,     130560,      512,     1024, 0xd965fad4
313
-1,     131072,     131072,      512,     1024, 0x87e259f2
314
-1,     131584,     131584,      512,     1024, 0xae7e533b
315
-1,     132096,     132096,      512,     1024, 0x313cf4d6
311
+1,     130029,     130029,      512,     1024, 0x4e5571ec
312
+1,     130558,     130558,      512,     1024, 0xd965fad4
313
+1,     131065,     131065,      512,     1024, 0x87e259f2
314
+1,     131572,     131572,      512,     1024, 0xae7e533b
315
+1,     132080,     132080,      512,     1024, 0x313cf4d6
316 316
 0,       6000,       6000,      111,     7189, 0x46e06d43
317
-1,     132608,     132608,      512,     1024, 0xe1844c90
318
-1,     133120,     133120,      512,     1024, 0xbb057b44
319
-1,     133632,     133632,      512,     1024, 0xa5099687
320
-1,     134144,     134144,      512,     1024, 0xbff10707
321
-1,     134656,     134656,      512,     1024, 0x37c4ffc0
317
+1,     132587,     132587,      512,     1024, 0xe1844c90
318
+1,     133116,     133116,      512,     1024, 0xbb057b44
319
+1,     133623,     133623,      512,     1024, 0xa5099687
320
+1,     134130,     134130,      512,     1024, 0xbff10707
321
+1,     134637,     134637,      512,     1024, 0x37c4ffc0
322 322
 0,       6111,       6111,      111,     7283, 0x19dd7319
323
-1,     135168,     135168,      512,     1024, 0xf9fb6caa
324
-1,     135680,     135680,      512,     1024, 0x3b6a3a1f
325
-1,     136192,     136192,      512,     1024, 0x83431edb
326
-1,     136704,     136704,      512,     1024, 0x1eb713cf
323
+1,     135166,     135166,      512,     1024, 0xf9fb6caa
324
+1,     135674,     135674,      512,     1024, 0x3b6a3a1f
325
+1,     136181,     136181,      512,     1024, 0x83431edb
326
+1,     136688,     136688,      512,     1024, 0x1eb713cf
327
+1,     137195,     137195,      512,     1024, 0xd7b07a6d
327 328
 0,       6222,       6222,      111,     7161, 0x23171d02
328
-1,     137216,     137216,      512,     1024, 0xd7b07a6d
329
-1,     137728,     137728,      512,     1024, 0x81ae3391
330
-1,     138240,     138240,      512,     1024, 0xf150130a
331
-1,     138752,     138752,      512,     1024, 0x09678eaa
332
-1,     139264,     139264,      512,     1024, 0xb94e06f1
329
+1,     137724,     137724,      512,     1024, 0x81ae3391
330
+1,     138231,     138231,      512,     1024, 0xf150130a
331
+1,     138739,     138739,      512,     1024, 0x09678eaa
332
+1,     139246,     139246,      512,     1024, 0xb94e06f1
333 333
 0,       6333,       6333,      111,     6976, 0xcc610c26
334
-1,     139776,     139776,      512,     1024, 0x67b1dbc9
335
-1,     140288,     140288,      512,     1024, 0xd6edc235
336
-1,     140800,     140800,      512,     1024, 0x34e4c499
337
-1,     141312,     141312,      512,     1024, 0xeefd89c0
338
-1,     141824,     141824,      512,     1024, 0x38afdaf1
334
+1,     139775,     139775,      512,     1024, 0x67b1dbc9
335
+1,     140282,     140282,      512,     1024, 0xd6edc235
336
+1,     140789,     140789,      512,     1024, 0x34e4c499
337
+1,     141296,     141296,      512,     1024, 0xeefd89c0
338
+1,     141804,     141804,      512,     1024, 0x38afdaf1
339 339
 0,       6444,       6444,      111,     7056, 0x6cd917b0
340
-1,     142336,     142336,      512,     1024, 0x29a60d76
341
-1,     142848,     142848,      512,     1024, 0xe28a4372
342
-1,     143360,     143360,      512,     1024, 0x7089454d
343
-1,     143872,     143872,      512,     1024, 0x0c01bb7b
344
-1,     144384,     144384,      512,     1024, 0xbd776a72
340
+1,     142333,     142333,      512,     1024, 0x29a60d76
341
+1,     142840,     142840,      512,     1024, 0xe28a4372
342
+1,     143347,     143347,      512,     1024, 0x7089454d
343
+1,     143854,     143854,      512,     1024, 0x0c01bb7b
344
+1,     144383,     144383,      512,     1024, 0xbd776a72
345 345
 0,       6555,       6555,      111,     6736, 0x02b78951
346
-1,     144896,     144896,      512,     1024, 0x86776fd0
347
-1,     145408,     145408,      512,     1024, 0xb37c88f7
348
-1,     145920,     145920,      512,     1024, 0x5f90aaf8
349
-1,     146432,     146432,      512,     1024, 0x203d4222
350
-1,     146944,     146944,      512,     1024, 0x382692a6
346
+1,     144891,     144891,      512,     1024, 0x86776fd0
347
+1,     145398,     145398,      512,     1024, 0xb37c88f7
348
+1,     145905,     145905,      512,     1024, 0x5f90aaf8
349
+1,     146412,     146412,      512,     1024, 0x203d4222
350
+1,     146941,     146941,      512,     1024, 0x382692a6
351 351
 0,       6666,       6666,      111,     6540, 0x767e0854
352
-1,     147456,     147456,      512,     1024, 0xf37c95fd
353
-1,     147968,     147968,      512,     1024, 0x6c0b8877
354
-1,     148480,     148480,      512,     1024, 0x2e54a8b6
352
+1,     147448,     147448,      512,     1024, 0xf37c95fd
353
+1,     147956,     147956,      512,     1024, 0x6c0b8877
354
+1,     148463,     148463,      512,     1024, 0x2e54a8b6
355 355
 1,     148992,     148992,      512,     1024, 0x7f266488
356 356
 0,       6777,       6777,      111,     6170, 0xc84962fb
357
-1,     149504,     149504,      512,     1024, 0xfbf20f9a
358
-1,     150016,     150016,      512,     1024, 0xf2985cc0
359
-1,     150528,     150528,      512,     1024, 0xc7075340
360
-1,     151040,     151040,      512,     1024, 0xe4585695
361
-1,     151552,     151552,      512,     1024, 0xbdffa380
357
+1,     149499,     149499,      512,     1024, 0xfbf20f9a
358
+1,     150006,     150006,      512,     1024, 0xf2985cc0
359
+1,     150513,     150513,      512,     1024, 0xc7075340
360
+1,     151020,     151020,      512,     1024, 0xe4585695
361
+1,     151550,     151550,      512,     1024, 0xbdffa380
362 362
 0,       6888,       6888,      111,     6169, 0x27e06c03
363
-1,     152064,     152064,      512,     1024, 0x2422a8a9
364
-1,     152576,     152576,      512,     1024, 0x59cbd75f
365
-1,     153088,     153088,      512,     1024, 0x04ad1a8c
366
-1,     153600,     153600,      512,     1024, 0x33c09191
367
-1,     154112,     154112,      512,     1024, 0x55efa6fd
363
+1,     152057,     152057,      512,     1024, 0x2422a8a9
364
+1,     152564,     152564,      512,     1024, 0x59cbd75f
365
+1,     153071,     153071,      512,     1024, 0x04ad1a8c
366
+1,     153578,     153578,      512,     1024, 0x33c09191
367
+1,     154107,     154107,      512,     1024, 0x55efa6fd
368 368
 0,       7000,       7000,      111,     5864, 0xd14db83f
369
-1,     154624,     154624,      512,     1024, 0xf73d0e5d
370
-1,     155136,     155136,      512,     1024, 0x6141ebae
371
-1,     155648,     155648,      512,     1024, 0x7db17a68
372
-1,     156160,     156160,      512,     1024, 0xa6c690b6
373
-1,     156672,     156672,      512,     1024, 0xa6fd6725
369
+1,     154615,     154615,      512,     1024, 0xf73d0e5d
370
+1,     155122,     155122,      512,     1024, 0x6141ebae
371
+1,     155629,     155629,      512,     1024, 0x7db17a68
372
+1,     156158,     156158,      512,     1024, 0xa6c690b6
373
+1,     156665,     156665,      512,     1024, 0xa6fd6725
374 374
 0,       7111,       7111,      111,     5375, 0x4a21055d
375
-1,     157184,     157184,      512,     1024, 0x50a90b9b
376
-1,     157696,     157696,      512,     1024, 0xef990dc8
377
-1,     158208,     158208,      512,     1024, 0x75adf6b5
378
-1,     158720,     158720,      512,     1024, 0x61eac43e
379
-1,     159232,     159232,      512,     1024, 0x67797a19
375
+1,     157172,     157172,      512,     1024, 0x50a90b9b
376
+1,     157680,     157680,      512,     1024, 0xef990dc8
377
+1,     158187,     158187,      512,     1024, 0x75adf6b5
378
+1,     158716,     158716,      512,     1024, 0x61eac43e
379
+1,     159223,     159223,      512,     1024, 0x67797a19
380 380
 0,       7222,       7222,      111,     5206, 0x95ead3cb
381
-1,     159744,     159744,      512,     1024, 0xf325277a
382
-1,     160256,     160256,      512,     1024, 0x18bf254a
383
-1,     160768,     160768,      512,     1024, 0x2ce6bee3
384
-1,     161280,     161280,      512,     1024, 0x8d320860
381
+1,     159730,     159730,      512,     1024, 0xf325277a
382
+1,     160237,     160237,      512,     1024, 0x18bf254a
383
+1,     160767,     160767,      512,     1024, 0x2ce6bee3
384
+1,     161274,     161274,      512,     1024, 0x8d320860
385 385
 0,       7333,       7333,      111,     5220, 0xcfdcc37e
386
-1,     161792,     161792,      512,     1024, 0xc979b6e8
387
-1,     162304,     162304,      512,     1024, 0xdb644b41
388
-1,     162816,     162816,      512,     1024, 0xe1b368ba
389
-1,     163328,     163328,      512,     1024, 0xacc53d15
390
-1,     163840,     163840,      512,     1024, 0x42ea8c18
386
+1,     161781,     161781,      512,     1024, 0xc979b6e8
387
+1,     162288,     162288,      512,     1024, 0xdb644b41
388
+1,     162795,     162795,      512,     1024, 0xe1b368ba
389
+1,     163324,     163324,      512,     1024, 0xacc53d15
390
+1,     163832,     163832,      512,     1024, 0x42ea8c18
391 391
 0,       7444,       7444,      111,     4946, 0x2d864a77
392
-1,     164352,     164352,      512,     1024, 0xe52c99a4
393
-1,     164864,     164864,      512,     1024, 0xd7db54a6
394
-1,     165376,     165376,      512,     1024, 0x7f27a7e3
395
-1,     165888,     165888,      512,     1024, 0xf7ffeaa9
396
-1,     166400,     166400,      512,     1024, 0x792b6088
392
+1,     164339,     164339,      512,     1024, 0xe52c99a4
393
+1,     164846,     164846,      512,     1024, 0xd7db54a6
394
+1,     165375,     165375,      512,     1024, 0x7f27a7e3
395
+1,     165882,     165882,      512,     1024, 0xf7ffeaa9
396
+1,     166389,     166389,      512,     1024, 0x792b6088
397 397
 0,       7555,       7555,      111,     4390, 0x2ab9f462
398
-1,     166912,     166912,      512,     1024, 0x61d99724
399
-1,     167424,     167424,      512,     1024, 0x5213720e
400
-1,     167936,     167936,      512,     1024, 0xac09dd30
401
-1,     168448,     168448,      512,     1024, 0x960bf6bb
402
-1,     168960,     168960,      512,     1024, 0xc90168e1
398
+1,     166896,     166896,      512,     1024, 0x61d99724
399
+1,     167404,     167404,      512,     1024, 0x5213720e
400
+1,     167933,     167933,      512,     1024, 0xac09dd30
401
+1,     168440,     168440,      512,     1024, 0x960bf6bb
402
+1,     168947,     168947,      512,     1024, 0xc90168e1
403 403
 0,       7666,       7666,      111,     4051, 0x1d09592e
404
-1,     169472,     169472,      512,     1024, 0x43b45768
405
-1,     169984,     169984,      512,     1024, 0x935d60a1
406
-1,     170496,     170496,      512,     1024, 0x9a342ef2
407
-1,     171008,     171008,      512,     1024, 0xc894709f
404
+1,     169454,     169454,      512,     1024, 0x43b45768
405
+1,     169983,     169983,      512,     1024, 0x935d60a1
406
+1,     170491,     170491,      512,     1024, 0x9a342ef2
407
+1,     170998,     170998,      512,     1024, 0xc894709f
408 408
 0,       7777,       7777,      111,     3680, 0x39bd6a12
409
-1,     171520,     171520,      512,     1024, 0x59b43b07
410
-1,     172032,     172032,      512,     1024, 0x36a1a98d
411
-1,     172544,     172544,      512,     1024, 0x9e1a121c
412
-1,     173056,     173056,      512,     1024, 0x02208b78
413
-1,     173568,     173568,      512,     1024, 0xd1d7b274
409
+1,     171505,     171505,      512,     1024, 0x59b43b07
410
+1,     172012,     172012,      512,     1024, 0x36a1a98d
411
+1,     172541,     172541,      512,     1024, 0x9e1a121c
412
+1,     173048,     173048,      512,     1024, 0x02208b78
413
+1,     173556,     173556,      512,     1024, 0xd1d7b274
414 414
 0,       7888,       7888,      111,     2910, 0x6337ece9
415
-1,     174080,     174080,      512,     1024, 0xdacd5096
415
+1,     174063,     174063,      512,     1024, 0xdacd5096
416 416
 1,     174592,     174592,      512,     1024, 0x51b71ead
417
-1,     175104,     175104,      512,     1024, 0xd009a7ca
418
-1,     175616,     175616,      512,     1024, 0xb6d5a938
419
-1,     176128,     176128,      512,     1024, 0xf3d45e47
417
+1,     175099,     175099,      512,     1024, 0xd009a7ca
418
+1,     175606,     175606,      512,     1024, 0xb6d5a938
419
+1,     176113,     176113,      512,     1024, 0xf3d45e47
420 420
 0,       8000,       8000,      111,     2153, 0xf4e3bc17
421
-1,     176640,     176640,      512,     1024, 0xea8e04fc
422
-1,     177152,     177152,      512,     1024, 0x0b928bd8
423
-1,     177664,     177664,      512,     1024, 0x0f02caec
424
-1,     178176,     178176,      512,     1024, 0xe2b137a8
425
-1,     178688,     178688,      512,     1024, 0xd5f94892
421
+1,     176620,     176620,      512,     1024, 0xea8e04fc
422
+1,     177150,     177150,      512,     1024, 0x0b928bd8
423
+1,     177657,     177657,      512,     1024, 0x0f02caec
424
+1,     178164,     178164,      512,     1024, 0xe2b137a8
425
+1,     178671,     178671,      512,     1024, 0xd5f94892
... ...
@@ -16,205 +16,205 @@
16 16
 0,          6,          6,        1,   161280, 0x79d717ae
17 17
 1,      18956,      18956,     2708,    10832, 0x401ed099
18 18
 0,          7,          7,        1,   161280, 0x1a87e2cb
19
-1,      21664,      21664,     2708,    10832, 0x432a53bd
19
+1,      21665,      21665,     2708,    10832, 0x432a53bd
20 20
 0,          8,          8,        1,   161280, 0xe5c000ac
21
-1,      24372,      24372,     2708,    10832, 0xc4276bfd
21
+1,      24373,      24373,     2708,    10832, 0xc4276bfd
22 22
 0,          9,          9,        1,   161280, 0xa5827077
23
-1,      27080,      27080,     2708,    10832, 0x51f0fa8c
23
+1,      27081,      27081,     2708,    10832, 0x51f0fa8c
24 24
 0,         10,         10,        1,   161280, 0xfd0615ee
25
-1,      29788,      29788,     2708,    10832, 0xcebae622
25
+1,      29789,      29789,     2708,    10832, 0xcebae622
26 26
 0,         11,         11,        1,   161280, 0xc6fdc861
27
-1,      32496,      32496,     2708,    10832, 0xe9f6dc1f
28
-1,      35204,      35204,     2708,    10832, 0xda087fee
27
+1,      32497,      32497,     2708,    10832, 0xe9f6dc1f
28
+1,      35205,      35205,     2708,    10832, 0xda087fee
29 29
 0,         12,         12,        1,   161280, 0xaa007c7e
30
-1,      37912,      37912,     2708,    10832, 0x67a621bb
30
+1,      37913,      37913,     2708,    10832, 0x67a621bb
31 31
 0,         13,         13,        1,   161280, 0xf15e3a96
32
-1,      40620,      40620,     2708,    10832, 0xd7be207f
32
+1,      40621,      40621,     2708,    10832, 0xd7be207f
33 33
 0,         14,         14,        1,   161280, 0xce827ae1
34
-1,      43328,      43328,     2708,    10832, 0x19d32507
34
+1,      43329,      43329,     2708,    10832, 0x19d32507
35 35
 0,         15,         15,        1,   161280, 0xf379fc13
36
-1,      46036,      46036,     2708,    10832, 0xe1a3fbfa
36
+1,      46037,      46037,     2708,    10832, 0xe1a3fbfa
37 37
 0,         16,         16,        1,   161280, 0x89686a0c
38
-1,      48744,      48744,     2708,    10832, 0xd10df779
38
+1,      48745,      48745,     2708,    10832, 0xd10df779
39 39
 0,         17,         17,        1,   161280, 0x7e8342bd
40
-1,      51452,      51452,     2708,    10832, 0x4428e1a7
40
+1,      51453,      51453,     2708,    10832, 0x4428e1a7
41 41
 0,         18,         18,        1,   161280, 0x640dab86
42
-1,      54160,      54160,     2708,    10832, 0x7ea9b33d
42
+1,      54161,      54161,     2708,    10832, 0x7ea9b33d
43 43
 0,         19,         19,        1,   161280, 0xc6a86456
44
-1,      56868,      56868,     2708,    10832, 0x6852a5a5
44
+1,      56869,      56869,     2708,    10832, 0x6852a5a5
45 45
 0,         20,         20,        1,   161280, 0xe360b538
46
-1,      59576,      59576,     2708,    10832, 0xfeb78863
46
+1,      59578,      59578,     2708,    10832, 0xfeb78863
47 47
 0,         21,         21,        1,   161280, 0xbcc21064
48
-1,      62284,      62284,     2708,    10832, 0xf157f928
48
+1,      62286,      62286,     2708,    10832, 0xf157f928
49 49
 0,         22,         22,        1,   161280, 0x95bc4e63
50
-1,      64992,      64992,     2708,    10832, 0x86414b3e
50
+1,      64994,      64994,     2708,    10832, 0x86414b3e
51 51
 0,         23,         23,        1,   161280, 0x390fa1bd
52
-1,      67700,      67700,     2708,    10832, 0x2e28cdf6
53
-1,      70408,      70408,     2708,    10832, 0x00212e44
52
+1,      67702,      67702,     2708,    10832, 0x2e28cdf6
53
+1,      70410,      70410,     2708,    10832, 0x00212e44
54 54
 0,         24,         24,        1,   161280, 0xa35b3bb9
55
-1,      73116,      73116,     2708,    10832, 0x2d7f9378
55
+1,      73118,      73118,     2708,    10832, 0x2d7f9378
56 56
 0,         25,         25,        1,   161280, 0x730b0779
57
-1,      75824,      75824,     2708,    10832, 0x84cb25d7
57
+1,      75826,      75826,     2708,    10832, 0x84cb25d7
58 58
 0,         26,         26,        1,   161280, 0xf3c3a3eb
59
-1,      78532,      78532,     2708,    10832, 0x3aca41fa
59
+1,      78534,      78534,     2708,    10832, 0x3aca41fa
60 60
 0,         27,         27,        1,   161280, 0x676ecbaa
61
-1,      81240,      81240,     2708,    10832, 0x27ad34b9
61
+1,      81242,      81242,     2708,    10832, 0x27ad34b9
62 62
 0,         28,         28,        1,   161280, 0x06c4a4e5
63
-1,      83948,      83948,     2708,    10832, 0xe665144a
63
+1,      83950,      83950,     2708,    10832, 0xe665144a
64 64
 0,         29,         29,        1,   161280, 0x177d26d9
65
-1,      86656,      86656,     2708,    10832, 0xf9546626
65
+1,      86658,      86658,     2708,    10832, 0xf9546626
66 66
 0,         30,         30,        1,   161280, 0xdaf69ebe
67
-1,      89364,      89364,     2708,    10832, 0xe71c4f22
67
+1,      89366,      89366,     2708,    10832, 0xe71c4f22
68 68
 0,         31,         31,        1,   161280, 0xabadc296
69
-1,      92072,      92072,     2708,    10832, 0x5e61869c
69
+1,      92074,      92074,     2708,    10832, 0x5e61869c
70 70
 0,         32,         32,        1,   161280, 0xec144665
71
-1,      94780,      94780,     2708,    10832, 0x571d2c10
71
+1,      94782,      94782,     2708,    10832, 0x571d2c10
72 72
 0,         33,         33,        1,   161280, 0x6785aa48
73
-1,      97488,      97488,     2708,    10832, 0xf0e08cd5
73
+1,      97490,      97490,     2708,    10832, 0xf0e08cd5
74 74
 0,         34,         34,        1,   161280, 0x2a0cfcaf
75
-1,     100196,     100196,     2708,    10832, 0x66650e49
75
+1,     100199,     100199,     2708,    10832, 0x66650e49
76 76
 0,         35,         35,        1,   161280, 0x9288d513
77
-1,     102904,     102904,     2708,    10832, 0x4024deaf
78
-1,     105612,     105612,     2708,    10832, 0xda7bdb14
77
+1,     102907,     102907,     2708,    10832, 0x4024deaf
78
+1,     105615,     105615,     2708,    10832, 0xda7bdb14
79 79
 0,         36,         36,        1,   161280, 0x1d295ad0
80
-1,     108320,     108320,     2708,    10832, 0xc27a342f
80
+1,     108323,     108323,     2708,    10832, 0xc27a342f
81 81
 0,         37,         37,        1,   161280, 0xb9fd8406
82
-1,     111028,     111028,     2708,    10832, 0x574fe679
82
+1,     111031,     111031,     2708,    10832, 0x574fe679
83 83
 0,         38,         38,        1,   161280, 0x98bced49
84
-1,     113736,     113736,     2708,    10832, 0x37db464e
84
+1,     113739,     113739,     2708,    10832, 0x37db464e
85 85
 0,         39,         39,        1,   161280, 0x42e6fbae
86
-1,     116444,     116444,     2708,    10832, 0xb1fa2a83
86
+1,     116447,     116447,     2708,    10832, 0xb1fa2a83
87 87
 0,         40,         40,        1,   161280, 0xfd218209
88
-1,     119152,     119152,     2708,    10832, 0x3d98d9b7
88
+1,     119155,     119155,     2708,    10832, 0x3d98d9b7
89 89
 0,         41,         41,        1,   161280, 0x21c2ef31
90
-1,     121860,     121860,     2708,    10832, 0xb7c908e2
90
+1,     121863,     121863,     2708,    10832, 0xb7c908e2
91 91
 0,         42,         42,        1,   161280, 0xce4be932
92
-1,     124568,     124568,     2708,    10832, 0x9f7e44d8
92
+1,     124571,     124571,     2708,    10832, 0x9f7e44d8
93 93
 0,         43,         43,        1,   161280, 0xd5c0d5fc
94
-1,     127276,     127276,     2708,    10832, 0xae9b8774
94
+1,     127279,     127279,     2708,    10832, 0xae9b8774
95 95
 0,         44,         44,        1,   161280, 0xf8d13076
96
-1,     129984,     129984,     2708,    10832, 0x36916e3f
96
+1,     129987,     129987,     2708,    10832, 0x36916e3f
97 97
 0,         45,         45,        1,   161280, 0xdbf86007
98
-1,     132692,     132692,     2708,    10832, 0xd785f5ef
98
+1,     132695,     132695,     2708,    10832, 0xd785f5ef
99 99
 0,         46,         46,        1,   161280, 0x9475a651
100
-1,     135400,     135400,     2708,    10832, 0x2a3a5673
101
-1,     138108,     138108,     2708,    10832, 0x7320e379
100
+1,     135403,     135403,     2708,    10832, 0x2a3a5673
101
+1,     138112,     138112,     2708,    10832, 0x7320e379
102 102
 0,         47,         47,        1,   161280, 0x41bf1542
103
-1,     140816,     140816,     2708,    10832, 0xec787be5
103
+1,     140820,     140820,     2708,    10832, 0xec787be5
104 104
 0,         48,         48,        1,   161280, 0x6945297f
105
-1,     143524,     143524,     2708,    10832, 0xd0d13aa0
105
+1,     143528,     143528,     2708,    10832, 0xd0d13aa0
106 106
 0,         49,         49,        1,   161280, 0x2282025e
107
-1,     146232,     146232,     2708,    10832, 0x34dfcb17
107
+1,     146236,     146236,     2708,    10832, 0x34dfcb17
108 108
 0,         50,         50,        1,   161280, 0x55aace0c
109
-1,     148940,     148940,     2708,    10832, 0x1a9c29f1
109
+1,     148944,     148944,     2708,    10832, 0x1a9c29f1
110 110
 0,         51,         51,        1,   161280, 0xc78aa51c
111
-1,     151648,     151648,     2708,    10832, 0x3e73dcc1
111
+1,     151652,     151652,     2708,    10832, 0x3e73dcc1
112 112
 0,         52,         52,        1,   161280, 0xb4b84e6c
113
-1,     154356,     154356,     2708,    10832, 0x7855b053
113
+1,     154360,     154360,     2708,    10832, 0x7855b053
114 114
 0,         53,         53,        1,   161280, 0x3bbb3e44
115
-1,     157064,     157064,     2708,    10832, 0x5588df8f
115
+1,     157068,     157068,     2708,    10832, 0x5588df8f
116 116
 0,         54,         54,        1,   161280, 0x4dd89d80
117
-1,     159772,     159772,     2708,    10832, 0x6f621299
117
+1,     159776,     159776,     2708,    10832, 0x6f621299
118 118
 0,         55,         55,        1,   161280, 0xa446a5c5
119
-1,     162480,     162480,     2708,    10832, 0xce7f39c2
119
+1,     162484,     162484,     2708,    10832, 0xce7f39c2
120 120
 0,         56,         56,        1,   161280, 0x8f56b1d6
121
-1,     165188,     165188,     2708,    10832, 0xd88e6552
121
+1,     165192,     165192,     2708,    10832, 0xd88e6552
122 122
 0,         57,         57,        1,   161280, 0xa170df87
123
-1,     167896,     167896,     2708,    10832, 0xddc63597
123
+1,     167900,     167900,     2708,    10832, 0xddc63597
124 124
 0,         58,         58,        1,   161280, 0x4740a4df
125
-1,     170604,     170604,     2708,    10832, 0xe3071865
126
-1,     173312,     173312,     2708,    10832, 0x2a44a123
125
+1,     170608,     170608,     2708,    10832, 0xe3071865
126
+1,     173316,     173316,     2708,    10832, 0x2a44a123
127 127
 0,         59,         59,        1,   161280, 0x86608ee7
128
-1,     176020,     176020,     2708,    10832, 0x08d85d45
128
+1,     176024,     176024,     2708,    10832, 0x08d85d45
129 129
 0,         60,         60,        1,   161280, 0x629b4543
130
-1,     178728,     178728,     2708,    10832, 0x4dc5f83a
130
+1,     178733,     178733,     2708,    10832, 0x4dc5f83a
131 131
 0,         61,         61,        1,   161280, 0x697fb952
132
-1,     181436,     181436,     2708,    10832, 0x89497812
132
+1,     181441,     181441,     2708,    10832, 0x89497812
133 133
 0,         62,         62,        1,   161280, 0x98e84a51
134
-1,     184144,     184144,     2708,    10832, 0x9ee1db54
134
+1,     184149,     184149,     2708,    10832, 0x9ee1db54
135 135
 0,         63,         63,        1,   161280, 0x97949a90
136
-1,     186852,     186852,     2708,    10832, 0x5277d611
136
+1,     186857,     186857,     2708,    10832, 0x5277d611
137 137
 0,         64,         64,        1,   161280, 0x6a8c9b96
138
-1,     189560,     189560,     2708,    10832, 0x570a619c
138
+1,     189565,     189565,     2708,    10832, 0x570a619c
139 139
 0,         65,         65,        1,   161280, 0xafa714ab
140
-1,     192268,     192268,     2708,    10832, 0xa217d70f
140
+1,     192273,     192273,     2708,    10832, 0xa217d70f
141 141
 0,         66,         66,        1,   161280, 0x0cf39314
142
-1,     194976,     194976,     2708,    10832, 0x6f0ecbf4
142
+1,     194981,     194981,     2708,    10832, 0x6f0ecbf4
143 143
 0,         67,         67,        1,   161280, 0x9ccc8171
144
-1,     197684,     197684,     2708,    10832, 0x2704b114
144
+1,     197689,     197689,     2708,    10832, 0x2704b114
145 145
 0,         68,         68,        1,   161280, 0x8232d5a8
146
-1,     200392,     200392,     2708,    10832, 0xf24e679f
146
+1,     200397,     200397,     2708,    10832, 0xf24e679f
147 147
 0,         69,         69,        1,   161280, 0x250dd5cb
148
-1,     203100,     203100,     2708,    10832, 0x05572099
148
+1,     203105,     203105,     2708,    10832, 0x05572099
149 149
 0,         70,         70,        1,   161280, 0xf764e43a
150
-1,     205808,     205808,     2708,    10832, 0x33942d0c
151
-1,     208516,     208516,     2708,    10832, 0xa77ea674
150
+1,     205813,     205813,     2708,    10832, 0x33942d0c
151
+1,     208521,     208521,     2708,    10832, 0xa77ea674
152 152
 0,         71,         71,        1,   161280, 0x2f4bec00
153
-1,     211224,     211224,     2708,    10832, 0xeba663bc
153
+1,     211229,     211229,     2708,    10832, 0xeba663bc
154 154
 0,         72,         72,        1,   161280, 0x76f1598b
155
-1,     213932,     213932,     2708,    10832, 0x1338524a
155
+1,     213937,     213937,     2708,    10832, 0x1338524a
156 156
 0,         73,         73,        1,   161280, 0xa91b84da
157
-1,     216640,     216640,     2708,    10832, 0x6182b0b3
157
+1,     216645,     216645,     2708,    10832, 0x6182b0b3
158 158
 0,         74,         74,        1,   161280, 0x011a77fb
159
-1,     219348,     219348,     2708,    10832, 0xa410a364
159
+1,     219354,     219354,     2708,    10832, 0xa410a364
160 160
 0,         75,         75,        1,   161280, 0xdbf5341c
161
-1,     222056,     222056,     2708,    10832, 0x2f4374b0
161
+1,     222062,     222062,     2708,    10832, 0x2f4374b0
162 162
 0,         76,         76,        1,   161280, 0x40d5abfa
163
-1,     224764,     224764,     2708,    10832, 0xf41f3a07
163
+1,     224770,     224770,     2708,    10832, 0xf41f3a07
164 164
 0,         77,         77,        1,   161280, 0x9fb8360c
165
-1,     227472,     227472,     2708,    10832, 0x2b1c50c6
165
+1,     227478,     227478,     2708,    10832, 0x2b1c50c6
166 166
 0,         78,         78,        1,   161280, 0xabc5fba8
167
-1,     230180,     230180,     2708,    10832, 0x3692ac89
167
+1,     230186,     230186,     2708,    10832, 0x3692ac89
168 168
 0,         79,         79,        1,   161280, 0x98090909
169
-1,     232888,     232888,     2708,    10832, 0x5d6bc87e
169
+1,     232894,     232894,     2708,    10832, 0x5d6bc87e
170 170
 0,         80,         80,        1,   161280, 0x9a3613bd
171
-1,     235596,     235596,     2708,    10832, 0x1b1cda0c
171
+1,     235602,     235602,     2708,    10832, 0x1b1cda0c
172 172
 0,         81,         81,        1,   161280, 0x9071024f
173
-1,     238304,     238304,     2708,    10832, 0x11eaa15f
174
-1,     241012,     241012,     2708,    10832, 0x73c7d7ef
173
+1,     238310,     238310,     2708,    10832, 0x11eaa15f
174
+1,     241018,     241018,     2708,    10832, 0x73c7d7ef
175 175
 0,         82,         82,        1,   161280, 0x4df39487
176
-1,     243720,     243720,     2708,    10832, 0x65d7e3be
176
+1,     243726,     243726,     2708,    10832, 0x65d7e3be
177 177
 0,         83,         83,        1,   161280, 0x17658524
178
-1,     246428,     246428,     2708,    10832, 0xb9c00688
178
+1,     246434,     246434,     2708,    10832, 0xb9c00688
179 179
 0,         84,         84,        1,   161280, 0xbcd794df
180
-1,     249136,     249136,     2708,    10832, 0x0b98c125
180
+1,     249142,     249142,     2708,    10832, 0x0b98c125
181 181
 0,         85,         85,        1,   161280, 0x2a14ae05
182
-1,     251844,     251844,     2708,    10832, 0x331ed413
182
+1,     251850,     251850,     2708,    10832, 0x331ed413
183 183
 0,         86,         86,        1,   161280, 0x664feab2
184
-1,     254552,     254552,     2708,    10832, 0x9b68f485
184
+1,     254558,     254558,     2708,    10832, 0x9b68f485
185 185
 0,         87,         87,        1,   161280, 0xf6b721f4
186
-1,     257260,     257260,     2708,    10832, 0x1b865c55
186
+1,     257267,     257267,     2708,    10832, 0x1b865c55
187 187
 0,         88,         88,        1,   161280, 0xfec565f3
188
-1,     259968,     259968,     2708,    10832, 0x68cef565
188
+1,     259975,     259975,     2708,    10832, 0x68cef565
189 189
 0,         89,         89,        1,   161280, 0xd39aabee
190
-1,     262676,     262676,     2708,    10832, 0x3a605f15
190
+1,     262683,     262683,     2708,    10832, 0x3a605f15
191 191
 0,         90,         90,        1,   161280, 0x1f3d5de7
192
-1,     265384,     265384,     2708,    10832, 0xd72ff22e
192
+1,     265391,     265391,     2708,    10832, 0xd72ff22e
193 193
 0,         91,         91,        1,   161280, 0xaf97f50c
194
-1,     268092,     268092,     2708,    10832, 0x1c672b67
194
+1,     268099,     268099,     2708,    10832, 0x1c672b67
195 195
 0,         92,         92,        1,   161280, 0xe34b6b6a
196
-1,     270800,     270800,     2708,    10832, 0xfd1a7e7e
196
+1,     270807,     270807,     2708,    10832, 0xfd1a7e7e
197 197
 0,         93,         93,        1,   161280, 0x4117371e
198
-1,     273508,     273508,     2708,    10832, 0x9bf20ead
199
-1,     276216,     276216,     2708,    10832, 0x00000000
198
+1,     273515,     273515,     2708,    10832, 0x9bf20ead
199
+1,     276223,     276223,     2708,    10832, 0x00000000
200 200
 0,         94,         94,        1,   161280, 0x4117371e
201
-1,     278924,     278924,     2708,    10832, 0x00000000
201
+1,     278931,     278931,     2708,    10832, 0x00000000
202 202
 0,         95,         95,        1,   161280, 0xe555b55e
203
-1,     281632,     281632,     2708,    10832, 0x00000000
203
+1,     281639,     281639,     2708,    10832, 0x00000000
204 204
 0,         96,         96,        1,   161280, 0xe555b55e
205
-1,     284340,     284340,     2708,    10832, 0x00000000
205
+1,     284347,     284347,     2708,    10832, 0x00000000
206 206
 0,         97,         97,        1,   161280, 0xe555b55e
207
-1,     287048,     287048,     2708,    10832, 0x00000000
207
+1,     287055,     287055,     2708,    10832, 0x00000000
208 208
 0,         98,         98,        1,   161280, 0xe555b55e
209
-1,     289756,     289756,     2708,    10832, 0x00000000
209
+1,     289763,     289763,     2708,    10832, 0x00000000
210 210
 0,         99,         99,        1,   161280, 0xe555b55e
211
-1,     292464,     292464,     2708,    10832, 0x00000000
211
+1,     292471,     292471,     2708,    10832, 0x00000000
212 212
 0,        100,        100,        1,   161280, 0xe555b55e
213
-1,     295172,     295172,     2708,    10832, 0x00000000
213
+1,     295179,     295179,     2708,    10832, 0x00000000
214 214
 0,        101,        101,        1,   161280, 0xe555b55e
215
-1,     297880,     297880,     2708,    10832, 0x00000000
215
+1,     297888,     297888,     2708,    10832, 0x00000000
216 216
 0,        102,        102,        1,   161280, 0xe555b55e
217
-1,     300588,     300588,     2708,    10832, 0x00000000
217
+1,     300596,     300596,     2708,    10832, 0x00000000
218 218
 0,        103,        103,        1,   161280, 0xe555b55e
219
-1,     303296,     303296,     2708,    10832, 0x00000000
219
+1,     303304,     303304,     2708,    10832, 0x00000000
220 220
 0,        104,        104,        1,   161280, 0xe555b55e
... ...
@@ -16,31 +16,31 @@
16 16
 0,          6,          6,        1,    69120, 0x433bb6f6
17 17
 1,      18956,      18956,     2708,    10832, 0x88f5271a
18 18
 0,          7,          7,        1,    69120, 0xdbac8bee
19
-1,      21664,      21664,     2708,    10832, 0x55c6bbe5
19
+1,      21665,      21665,     2708,    10832, 0x55c6bbe5
20 20
 0,          8,          8,        1,    69120, 0x88e2a799
21
-1,      24372,      24372,     2708,    10832, 0x9b51ae82
21
+1,      24373,      24373,     2708,    10832, 0x9b51ae82
22 22
 0,          9,          9,        1,    69120, 0x49617b26
23
-1,      27080,      27080,     2708,    10832, 0xcdf2409b
23
+1,      27081,      27081,     2708,    10832, 0xcdf2409b
24 24
 0,         10,         10,        1,    69120, 0xeb44ca01
25
-1,      29788,      29788,     2708,    10832, 0x0933b1a4
25
+1,      29789,      29789,     2708,    10832, 0x0933b1a4
26 26
 0,         11,         11,        1,    69120, 0x6fea37e8
27
-1,      32496,      32496,     2708,    10832, 0x24b77006
28
-1,      35204,      35204,     2708,    10832, 0xf612fa8a
27
+1,      32497,      32497,     2708,    10832, 0x24b77006
28
+1,      35205,      35205,     2708,    10832, 0xf612fa8a
29 29
 0,         12,         12,        1,    69120, 0xf55d74c7
30
-1,      37912,      37912,     2708,    10832, 0x99884b06
30
+1,      37913,      37913,     2708,    10832, 0x99884b06
31 31
 0,         13,         13,        1,    69120, 0xb5082ca7
32
-1,      40620,      40620,     2708,    10832, 0x3c746fbe
32
+1,      40621,      40621,     2708,    10832, 0x3c746fbe
33 33
 0,         14,         14,        1,    69120, 0x5876d758
34
-1,      43328,      43328,     2708,    10832, 0x05f3b08a
34
+1,      43329,      43329,     2708,    10832, 0x05f3b08a
35 35
 0,         15,         15,        1,    69120, 0x45e7dd5c
36
-1,      46036,      46036,     2708,    10832, 0xa6560483
37
-1,      48744,      48744,     2708,    10832, 0xd98a8e19
38
-1,      51452,      51452,     2708,    10832, 0xf98a0b2e
39
-1,      54160,      54160,     2708,    10832, 0xb1039582
40
-1,      56868,      56868,     2708,    10832, 0x85dd5c3f
41
-1,      59576,      59576,     2708,    10832, 0x19fc801a
42
-1,      62284,      62284,     2708,    10832, 0x95805089
43
-1,      64992,      64992,     2708,    10832, 0x576fdec3
44
-1,      67700,      67700,     2708,    10832, 0x704a0905
45
-1,      70408,      70408,     2708,    10832, 0xf87ce1fa
46
-1,      73116,      73116,     2708,    10832, 0xfc0076b9
36
+1,      46037,      46037,     2708,    10832, 0xa6560483
37
+1,      48745,      48745,     2708,    10832, 0xd98a8e19
38
+1,      51453,      51453,     2708,    10832, 0xf98a0b2e
39
+1,      54161,      54161,     2708,    10832, 0xb1039582
40
+1,      56869,      56869,     2708,    10832, 0x85dd5c3f
41
+1,      59578,      59578,     2708,    10832, 0x19fc801a
42
+1,      62286,      62286,     2708,    10832, 0x95805089
43
+1,      64994,      64994,     2708,    10832, 0x576fdec3
44
+1,      67702,      67702,     2708,    10832, 0x704a0905
45
+1,      70410,      70410,     2708,    10832, 0xf87ce1fa
46
+1,      73118,      73118,     2708,    10832, 0xfc0076b9